【问题标题】:How to get the predicted values in training data set for Least Squares Support Vector Regression如何获得最小二乘支持向量回归训练数据集中的预测值
【发布时间】:2013-04-26 17:36:26
【问题描述】:

我想使用 Suykens 等人提出的用于回归的最小二乘支持向量机进行预测。我正在使用 LS-SVMlab,你可以找到 MATLAB 工具箱here。假设我有一个自变量 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 值的预测,但这对我来说似乎不合理。您可以提供任何解决方案吗?提前致谢。

【问题讨论】:

    标签: regression svm least-squares


    【解决方案1】:

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

    【讨论】:

    • 非常感谢!我想没有什么可做的了。
    【解决方案2】:

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

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

    【讨论】:

      猜你喜欢
      • 2018-07-31
      • 1970-01-01
      • 2018-12-23
      • 2017-08-08
      • 2021-11-11
      • 2019-03-02
      • 2021-01-19
      • 1970-01-01
      • 2015-02-12
      相关资源
      最近更新 更多