运用支持向量机对实测数据进行分析,为什么与预期的相差甚远呢?
clcclear
close all
A=load('data.txt') %读取所有数据
%---------------------------------------------------------
%选取1-400个数据
x=1:1:400
y=A(1:1:400)
%选取1-400,间隔为2的200个数据作为样本数据
x_train=1:2:400
y_train=A(1:2:400)
%选取2-400,间隔为2的200个数据作为测试数据
x_test=2:2:400
y_test=A(2:2:400)
%定义SVR 参数
global p1 ;
p1=3
ker='erbf'; % 核函数 k = exp(-(u-v)*(u-v)'/(2*p1^2))
C=10000000;
e=0.1;
loss='einsensitive';
%训练支持向量机
= svr(x_train',y_train,ker,C,loss,e); % 训练样本数据。
y_test1 = svroutput(x_train',x_test',ker,beta,bias); % 测试样本数据
plot(x_train,y_train,'g:',x_test,y_test,'b-',x_test,y_test1 ,'r-')
title('绿色——样本数据,蓝色——实际数据,红色——测试数据')
y_test1
grid on
[ 本帖最后由 lzh19840809 于 2009-5-10 19:30 编辑 ] 绿色的是用来训练的值,红色的是预测的值,蓝色的是实际的值,应该是红色的逼近蓝色的才对啊,怎么感觉红色的是逼近绿色的?是我的参数选择的不好吗? 你的核函数应该选用rbf吧 ,而不是erbf。
我觉得c和p1也应该对结果有影响 想看一下
补充内容 (2015-12-23 09:26):
为什么运行会出现qp.dll不是有效的win32应用程序呢 这是什么原因呢
页:
[1]