1 % 生成待回归的数据 2 clear; 3 X=-4*pi:0.05:4*pi; 4 %X=1:100; 5 Y=[]; 6 P=length(X); 7 for i=1:P 8 %Y(i)=1/X(i)^0.5; 9 Y(i)=(sin(X(i))/X(i))^2; 10 %Y(i)=exp(-X(i)^2)*sin(X(i)^2); 11 end 12 scatter(X',Y',20,'b'); 13 hold on; 14 model = svmtrain(Y',X','-s 3 -t 2 -c 2.2 -g 2.8 -p 0.01'); 15 % 利用建立的模型看其在训练集合上的回归效果 16 [py] = svmpredict(Y',X',model); 17 plot(X',py,'r*');
注意这里的svmpredict();如果是写成两个输出参数:[py,accuracy]=svmpredict(Y',X',model);那么输出是空;必须写成一个或者三个输出参数:[py,accuracy,decision_values]=svmpredict(Y',X',model);