编程知识 cdmana.com

【 modèle de prévision】 basé sur l'algorithme chaos Grey Wolf pour optimiser SVM pour réaliser la prédiction des données matlab source

1 Modèle

Support Vector Machine(SVM)Est un petit ensemble de données arithmétiques qui a été créé dans le cadre du problème de classification,La classification non linéaire des hautes latitudes peut être réalisée,Avec une bonne extensibilité.Mais,Dans la traditionSVMPendant la formation,SVMLe résultat de l'opération est étroitement lié au choix des paramètres,Et l'algorithme de sélection des paramètres actuellement utilisé présente de nombreux défauts.Donc,,En réponse aux questions ci - dessus,Dans l'algorithme Grey Wolf(GWO)Ajouter des séquences chaotiques,Modifier la répartition initiale des loups,Construire un algorithme d'optimisation chaotique pour les loups gris(CGWO),Amélioration de l'uniformité de la répartition des loups et de l'ergothérapie de recherche des loups,Beaucoup plus.GWOVitesse et précision de fonctionnement de l'algorithme,Enfin, une meilleure optimisationSVM.UtiliserMirjaliliLes données open source fournies ont été mélangées avec les données originales comme ensemble d'essai de la machine vectorielle pour l'analyse expérimentale Contrastive,Les résultats expérimentaux montrent que,CGWOL'algorithme a une amélioration significative des performances;Optimisé par l'algorithme chaotique du loup grisSVMEt l'algorithme d'optimisation des loups grisSVM,Colonies artificiellesSVM,Recherche gravitationnelleSVMEt les algorithmes traditionnels optimisésSVMComparé à,Il a une plus grande précision de calcul,Moins d'erreurs,Moins de temps.

​【Modèle de prévision】Optimisation de la machine vectorielle de soutien basée sur l'algorithme chaotique du loup grisSVMRéalisation des prévisions de donnéesmatlabCode source_SVRPrévisions de régression

​【Modèle de prévision】Optimisation de la machine vectorielle de soutien basée sur l'algorithme chaotique du loup grisSVMRéalisation des prévisions de donnéesmatlabCode source_SVRPrévisions de régression_02

​【Modèle de prévision】Optimisation de la machine vectorielle de soutien basée sur l'algorithme chaotique du loup grisSVMRéalisation des prévisions de donnéesmatlabCode source_SVRPrévisions de régression_03

​【Modèle de prévision】Optimisation de la machine vectorielle de soutien basée sur l'algorithme chaotique du loup grisSVMRéalisation des prévisions de donnéesmatlabCode source_SVRPrévisions de régression_04

​【Modèle de prévision】Optimisation de la machine vectorielle de soutien basée sur l'algorithme chaotique du loup grisSVMRéalisation des prévisions de donnéesmatlabCode source_SVRPrévisions de régression_05

​【Modèle de prévision】Optimisation de la machine vectorielle de soutien basée sur l'algorithme chaotique du loup grisSVMRéalisation des prévisions de donnéesmatlabCode source_SVRPrévisions de régression_06

​【Modèle de prévision】Optimisation de la machine vectorielle de soutien basée sur l'algorithme chaotique du loup grisSVMRéalisation des prévisions de donnéesmatlabCode source_SVRPrévisions de régression_07

​【Modèle de prévision】Optimisation de la machine vectorielle de soutien basée sur l'algorithme chaotique du loup grisSVMRéalisation des prévisions de donnéesmatlabCode source_SVRPrévisions de régression_08

​【Modèle de prévision】Optimisation de la machine vectorielle de soutien basée sur l'algorithme chaotique du loup grisSVMRéalisation des prévisions de donnéesmatlabCode source_SVRPrévisions de régression_09

​【Modèle de prévision】Optimisation de la machine vectorielle de soutien basée sur l'algorithme chaotique du loup grisSVMRéalisation des prévisions de donnéesmatlabCode source_SVRPrévisions de régression_10

2 Code partiel

       
tic % Minuterie
  • 1.
       
%% Vider les variables d'environnement
  • 1.
       
close all
  • 1.
       
clear
  • 1.
       
clc
  • 1.
       
format compact
  • 1.
       
%% Extraction des données
  • 1.
       
% Chargement des données d'essai wine, Il contient les données suivantes: classnumber = 3,wine:178*13La matrice de,wine_labes:178*1Vecteur de colonne pour
  • 1.
       
load wine.mat
  • 1.
       
% Sélection des ensembles d'entraînement et d'essai
  • 1.
       
% De la première catégorie 1-30, Catégorie II 60-95, Catégorie III 131-153 En tant qu'ensemble d'entraînement
  • 1.
       
train_wine = [wine(1:30,:);wine(60:95,:);wine(131:153,:)];
  • 1.
       
% Les étiquettes de l'ensemble d'entraînement correspondant doivent également être séparées.
  • 1.
       
train_wine_labels = [wine_labels(1:30);wine_labels(60:95);wine_labels(131:153)];
  • 1.
       
% De la première catégorie 31-59, Catégorie II 96-130, Catégorie III 154-178 En tant qu'ensemble de tests
  • 1.
       
test_wine = [wine(31:59,:);wine(96:130,:);wine(154:178,:)];
  • 1.
       
% L'étiquette de l'ensemble d'essai correspondant doit également être séparée.
  • 1.
       
test_wine_labels = [wine_labels(31:59);wine_labels(96:130);wine_labels(154:178)];
  • 1.
       
%% Prétraitement des données
  • 1.
       
% Prétraitement des données, Normaliser les ensembles d'entraînement et d'essai [0,1]Section
  • 1.
       
[mtrain,ntrain] = size(train_wine);
  • 1.
       
[mtest,ntest] = size(test_wine);
  • 1.
       
dataset = [train_wine;test_wine];
  • 1.
       
% mapminmaxPourMATLAB Fonction de normalisation autonome
  • 1.
       
[dataset_scale,ps] = mapminmax(dataset',0,1);
  • 1.
       
dataset_scale = dataset_scale';
  • 1.
       
train_wine = dataset_scale(1:mtrain,:);
  • 1.
       
l=l+1;
  • 1.
       
Convergence_curve(l)=Alpha_score;
  • 1.
       
end
  • 1.
       
bestc=Alpha_pos(1,1);
  • 1.
       
bestg=Alpha_pos(1,2);
  • 1.
       
bestGWOaccuarcy=Alpha_score;
  • 1.
       
%% Imprimer les résultats de la sélection des paramètres
  • 1.
       
disp(' Imprimer les résultats de la sélection ');
  • 1.
       
str=sprintf('Best Cross Validation Accuracy = %g%%,Best c = %g,Best g = %g',bestGWOaccuarcy*100,bestc,bestg);
  • 1.
       
disp(str)
  • 1.
       
%% Utiliser les meilleurs paramètres SVMFormation en ligne
  • 1.
       
cmd_gwosvm = ['-c ',num2str(bestc),' -g ',num2str(bestg)];
  • 1.
       
model_gwosvm = svmtrain(train_wine_labels,train_wine,cmd_gwosvm);
  • 1.
       
%% SVMPrévisions du réseau
  • 1.
       
[predict_label,accuracy,~] = svmpredict(test_wine_labels,test_wine,model_gwosvm);
  • 1.
       
% Précision de la classification des ensembles de tests d'impression
  • 1.
       
total = length(test_wine_labels);
  • 1.
       
right = sum(predict_label == test_wine_labels);
  • 1.
       
disp(' Précision de la classification des ensembles de tests d'impression ');
  • 1.
       
str = sprintf( 'Accuracy = %g%% (%d/%d)',accuracy(1),right,total);
  • 1.
       
disp(str);
  • 1.
       
%% Analyse des résultats
  • 1.
       
% Classification réelle et prévue des ensembles d'essais
  • 1.
       
figure;
  • 1.
       
hold on;
  • 1.
       
plot(test_wine_labels,'o');
  • 1.
       
plot(predict_label,'r*');
  • 1.
       
xlabel(' Échantillon de l'ensemble d'essai ','FontSize',12);
  • 1.
       
ylabel(' Étiquette de catégorie ','FontSize',12);
  • 1.
       
legend(' Classification réelle de l'ensemble d'essai ',' Classification des ensembles d'essais de prévision ');
  • 1.
       
title(' Classification réelle et prévue des ensembles d'essais ','FontSize',12);
  • 1.
       
grid on
  • 1.
       
snapnow
  • 1.
       
%% Afficher le temps d'exécution du programme
  • 1.
       
toc
  • 1.


3 Résultats de la simulation

​【Modèle de prévision】Optimisation de la machine vectorielle de soutien basée sur l'algorithme chaotique du loup grisSVMRéalisation des prévisions de donnéesmatlabCode source_SVRPrévisions de régression_11

​【Modèle de prévision】Optimisation de la machine vectorielle de soutien basée sur l'algorithme chaotique du loup grisSVMRéalisation des prévisions de donnéesmatlabCode source_SVRPrévisions de régression_12

4 Références

[1]Wang Yan, Pei shichun , Wang cuntang ,Attendez.. Optimisation des paramètres de la machine vectorielle de soutien basée sur l'algorithme bat [J]. JOURNAL OF BAOJI COLLEGE OF ARTS AND SCIENCES :Édition des sciences naturelles, 2015.

[2] Wang Zhihua , ROZZI. , and Liu shaoting . " Algorithme d'optimisation chaotique du loup gris SVM Recherche sur les classificateurs ." Ingénierie informatique et sciences 40.11(2018):138-144.

​【Modèle de prévision】Optimisation de la machine vectorielle de soutien basée sur l'algorithme chaotique du loup grisSVMRéalisation des prévisions de donnéesmatlabCode source_SVRPrévisions de régression_13


版权声明
本文为[MATLAB Research Assistant]所创,转载请带上原文链接,感谢
https://cdmana.com/2021/10/20211013210522048D.html

Tags mod le pr vision bas
Scroll to Top