0

我想通过使用 Suykens 等人提出的用于回归的最小二乘支持向量机来进行预测。我正在使用 LS-SVMlab,您可以在此处找到 MATLAB 工具箱。假设我有一个自变量 X 和一个因变量 Y,它们都是模拟的。我正在按照教程中的说明进行操作。

>>X = linspace(-1,1,50)';
>>Y = (15*(X.^2-1).^2.*X.^4).*exp(-X)+normrnd(0,0.1,length(X),1);
>>type = '功能估计';
>>[gam,sig2] = tunelssvm({X,Y,type,[], [],'RBF_kernel'},'simplex',...'leaveoneoutlssvm','mse'});
>>[alpha,b] = trainlssvm({X,Y,type,gam,sig2,'RBF_kernel'});
>>plotlssvm({X,Y,type,gam,sig2,'RBF_kernel'},{alpha,b});

上面的代码使用单纯形法和留一法交叉验证找到最佳参数,并训练模型并给我 alphas(训练集中所有数据点的支持向量值)和 b 系数。但是,它没有给我变量 Y 的预测。它只绘制情节。在一些文章中,我看到了如下图, 在此处输入图像描述

正如我之前所说,LS-SVM 工具箱没有给我 Y 的预测值,它只绘制绘图但在工作区中没有值。如何获取这些值并绘制预测值与实际值的图表?

我想到了一种解决方案。通过在训练集中使用 X 值,我重新运行模型并使用simlssvm命令获得 Y 值的预测,但这对我来说似乎不合理。您可以提供任何解决方案吗?提前致谢。

4

2 回答 2

0

恐怕你已经回答了你自己的问题。在 LS-SVMLab 中获得训练点预测的唯一方法是在训练模型后模拟训练点。

于 2013-05-05T15:53:50.343 回答
0

[yp,alpha,b,gam,sig2,model] = lssvm(x,y,'f')

当你使用这个函数时,yp 是预测值

于 2013-10-10T19:15:16.833 回答