資源簡(jiǎn)介
基于支持向量機(jī)的故障診斷,代碼中有一些注釋?zhuān)梢愿鶕?jù)里面的注釋修改,會(huì)測(cè)的最佳正確率,以及預(yù)測(cè)樣本和測(cè)試樣本的誤差,真實(shí)可信
代碼片段和文件信息
function?[r_Ydr_errr_Ys]?=?SVM(traindatagoaldataperiod)
%?使用循環(huán)語(yǔ)句對(duì)每一種參數(shù)組合都進(jìn)行回歸找出最優(yōu)結(jié)果
%?r_Yd?最優(yōu)的回歸結(jié)果
%?r_err?最優(yōu)回歸的樣本誤差
%?r_Ys?預(yù)測(cè)結(jié)果
%?------------------------------------------------------------%
%?Training?Samples?構(gòu)造訓(xùn)練樣本
%?clear;
%?data=load(‘testData.txt‘);
n=length(traindata);?????%?樣本數(shù)量
X=traindata(1:n-period:);
X=X.‘;???????????????????%?訓(xùn)練樣本d×n的矩陣n為樣本個(gè)數(shù)d為樣本維數(shù)
Y=goaldata(period+1:n:);
Y=Y.‘;???????????????????%?訓(xùn)練目標(biāo)1×n的矩陣n為樣本個(gè)數(shù)值為期望輸出
Xs=traindata(n-period+1:n:);
Xs=Xs.‘;?????????????????%?預(yù)測(cè)的自變量d×1的矩陣d為樣本維數(shù)
%?------------------------------------------------------------%
%初始化一個(gè)較大的樣本誤差
r_err=1e10;
%?------------------------------------------------------------%
%尋找適合的懲罰系數(shù),不敏感損失函數(shù)的參數(shù)以及核函數(shù)
for?c=0:2
??for?e=0:2
??????for?ty=1:?4???????????%確定核函數(shù)類(lèi)型
???????????%?------------------------------------------------------------%
???????????%?ker??核參數(shù)(結(jié)構(gòu)體變量)
???????????%?the?following?fields:
???????????%???type???-?linear?:??k(xy)?=?x‘*y
???????????%????????????poly???:??k(xy)?=?(x‘*y+c)^d
???????????%????????????gauss??:??k(xy)?=?exp(-0.5*(norm(x-y)/s)^2)
???????????%????????????tanh???:??k(xy)?=?tanh(g*x‘*y+c)
???????????%???degree?-?Degree?d?of?polynomial?kernel?(positive?scalar).
???????????%???offset?-?Offset?c?of?polynomial?and?tanh?kernel?(scalar?negative?for?tanh).
???????????%???width??-?Width?s?of?Gauss?kernel?(positive?scalar).
???????????%???gamma??-?Slope?g
評(píng)論
共有 條評(píng)論