支持向量机回归&使用MATLAB fitrsvm函数进行预测

时间:2017-04-24 02:32:38

标签: matlab regression svm libsvm

我对使用SVM相对较新,我对如何使用SVM回归的结果有疑问。我发现了许多关于SVM分类的易于理解的文档,我可以理解如何使用SVM的结果进行二进制分类(即支持向量一侧的数据标记为1,数据位于另一侧。支持向量被标记为另一个),但我无法在SVM回归中找到这样的提示 - 这就是我遇到以下问题的原因:

在MATLAB中使用libsvm包和fitrsvm函数,我能够成功生成能够拟合鲍鱼数据集的模型。 libsvm(使用svmtrain函数)的结果与svmpredict一起用于成功预测新输入参数如下:

model=svmtrain(age_train,X_train,['-s 3 -t 2 -c 2 -g 2']);
[prediction,accuracy,~]=svmpredict(age_eval,X_eval,model);

另外,正如我所说,我能够使用fitrsvm函数获得相同的结果:

model1=fitrsvm(X_train,age_train,'OptimizeHyperparameters','auto',...
    'HyperparameterOptimizationOptions',struct('AcquisitionFunctionName',...
    'expected-improvement-plus'),'KernelFunction','rbf');
age_predict1=predict(model1,X_eval);

现在我的问题是,svmpredict函数(在libsvm包的情况下)和预测函数(在MATLAB中的fitrsvm函数的情况下)如何获取训练模型中的值并将它们应用于新的输入数据?例如,是否有一个数学方程式,我将训练模型的参数(例如fitrsvm结果中的'Mu'和'Sigma'参数)应用于新的输入数据以获得结果?

如果有人可以帮助我,或者将我推荐给可以帮助我的某个人/某个地方,我将非常感激,非常感谢你们。

0 个答案:

没有答案