| ²é¿´: 477 | »Ø¸´: 2 | |||
| µ±Ç°Ö÷ÌâÒѾ´æµµ¡£ | |||
[½»Á÷]
¡¾ÇóÖú¡¿svm»Ø¹éЧ¹û²»ºÃÇë´ó¼Ò°ïÎÒ¿´¿´³ÌÐòÄÇ´íÁË
|
|||
|
ÓÃLIBSVM×öµÄ»Ø¹é£¬Ð§¹ûºÜ²»ºÃ£¬ÕÒ²»µ½ÔÒò£¬Çë´ó¼Ò°ïæÕÒÕÒ¡£ ÏÂÃæÕâ¸ö³ÌÐòÊÇÌôÑ¡×î¼ÑcºÍgµÄ£¬°ïÎÒÕÒÕÒ´íÎó£¬Ð»Ð»ÁË¡£ load principal28 ; %ÔØÈëÊý¾Ý¾ØÕóPCA28£¨24*6£© [pn,minp,maxp] = premnmx(PCA28); indices=crossvalind('kfold',24,24); y1 =[4.9085;5.2529;4.9370;8.400;6.600;5.900;7.200;9.9494;6.2787;6.3711;7.1139;6.3617;5.4314;4.7160;7.0414;6.8751;8.4472;7.1461;8.477;8.431;7.6628;6.041;6.3824;7.6532]; tt = 2; Count = 0; for Gamma = -15 :3 g = 2.^Gamma; Count = Count + 1; GG(Count) = Gamma; Tim = 0; for Penalty = -5 :15 c = 2.^Penalty; Tim = Tim + 1; CC(Tim) = Penalty; predict = []; MSE =[]; d =[]; for k = 1 : 24 test = ( indices24 == k); train = ~test; xtest = pn(test, ; xlearn = pn(train, ; ytest = y1(test); ylearn = y1(train); eval(['model = svmtrain(ylearn, xlearn, ''-s 3 ' '-t ' num2str(tt) ' -g ' num2str(g) ' -c ' num2str(c) '-p 0.1 '');']) [predict_label,accuracy] = svmpredict(ytest, xtest, model,'-b 0 ' ); d=cat(1,d,ytest); predict = cat(1,predict,predict_label); end h=1:24; mse(Count,Tim) = sqrt(sum ((predict(h) -d(h) ).^2)/24); MSE =cat(1,MSE,mse); r=sqrt((sum((predict-mean(d)).^2))/(sum((d-mean(d)).^2))); R2=1-(sum((d-predict).^2)/sum((mean(ytest)-d).^2)); SE=sqrt((sum((d-predict).^2))/24); end end [AA, BB] = find( MSE == min(min(MSE ))); Gamma = GG(AA) ; bg = 2.^Gamma; Penalty = CC(BB); bc = 2.^Penalty; save bestc bc save bestg bg |
» ²ÂÄãϲ»¶
2±¾£¬³õÊÔ303£¬0860Çóµ÷¼Á
ÒѾÓÐ4È˻ظ´
286Çóµ÷¼Á
ÒѾÓÐ26È˻ظ´
335Çóµ÷¼Á
ÒѾÓÐ11È˻ظ´
293Çóµ÷¼Á
ÒѾÓÐ9È˻ظ´
290µ÷¼ÁÉúÎï0860
ÒѾÓÐ25È˻ظ´
295·ÖÇóµ÷¼Á
ÒѾÓÐ11È˻ظ´
Ò»Ö¾Ô¸»ªÖÐũ΢ÉúÎ288·Ö£¬ÈýÄêʵÑé¾Àú
ÒѾÓÐ11È˻ظ´
²ÄÁÏÏà¹Ø×¨Òµ344Çóµ÷¼ÁË«·Ç¹¤¿ÆÑ§Ð£»ò¿ÎÌâ×é
ÒѾÓÐ4È˻ظ´
ÇóÖúµ÷¼Á£¬¿çµ÷
ÒѾÓÐ12È˻ظ´
308Çóµ÷¼Á
ÒѾÓÐ5È˻ظ´
Õâ¸öÊÇÔ¤²âµÄ³ÌÐò
|
Õâ¸öÊÇÔ¤²âµÄ³ÌÐò load principal28 ; bc=£¿;%ÉÏÒ»³ÌÐòËùµÃÖµ bg=£¿;%ÉÏÒ»³ÌÐòËùµÃÖµ [pn,minp,maxp] = premnmx(PCA28); ylearn =[4.9085;5.2529;4.9370;8.400;6.600;5.900;7.200;9.9494;6.2787;6.3711;7.1139;6.3617;5.4314;4.7160;7.0414;6.8751;8.4472;7.1461;8.477;8.431;7.6628;6.041;6.3824;7.6532]; xlearn= [pn(1,:);pn(2,:);pn(3,:);pn(4,:);pn(5,:);pn(6,:);pn(7,:);pn(8,:);pn(9,:);pn(10,:);pn(11,:);pn(12,:);pn(17,:);pn(18,:);pn(19,:);pn(20,:);pn(21,:);pn(22,:);pn(23,:);pn(24,:);pn(25,:);pn(26,:);pn(27,:);pn(28,:);]; Xtest =[pn(13,:);pn(14,:);pn(15,:);pn(16,:)]; Ytest =[6.0792;7.3424;4.8921;5.9345;]; tt = 2; predict = []; eval(['model= svmtrain(ylearn, xlearn, ''-s 3 ' '-t ' num2str(tt) ' -g ' num2str(bg) ' -c ' num2str(bc) '-p 0.1 -b 0 '');']) [predict_label,accuracy] = svmpredict(Ytest, Xtest, model ,'-b 0 ' ); predict = cat(1,predict,predict_label); Q=sqrt(1-(sum((Ytest-predict).^2)/sum((Ytest-sum(Ytest)/4).^2))); SE=sqrt((sum(( Ytest-predict).^2))/24); |
2Â¥2009-09-30 21:03:37
3Â¥2009-10-10 13:03:33













; xlearn = pn(train,
»Ø¸´´ËÂ¥