如何在 svm 中使用 QP=Quadratic Programming

how to use QP=Quadratic Programming in svm

我正在使用 svm 进行异常检测,如下所示

svmStruct = svmtrain(tr,label,'kernel_function','rbf','ShowPlot',true);
ok1 = svmclassify(svmStruct,test1,'ShowPlot',true);

默认的分离超平面方法是 SMO,但我想使用 QP,即二次规划。如何在上面的代码中使用它。

您可以将 svmtrain'method' 属性 设置为 'QP'documentation of svmtrain

中说明
svmStruct = svmtrain(tr,label,'kernel_function','rbf','ShowPlot',true,'method','QP');

文档部分:

'QP' — Quadratic programming (requires an Optimization Toolbox™ license). The classifier is a 2-norm soft-margin support vector machine. Give quadratic programming options with the options name-value pair, and create options with optimset.

svmtrain 将在未来的 Matlab 版本中删除,因此如果您计划在未来使用它,请考虑使用 fitcsvm.