Matlab中使用LibSVM进行支持向量回归的参数

时间:2013-05-29 18:13:08

标签: matlab libsvm

我正在尝试使用LibSVM进行回归。我试图检测面孔(10类不同的面孔)。我将1-10标记为面部类,11标记为非面部。我想开发一个脚本usig LibSVM,如果测试图像落到10个面部类中的任何一个,它将给出0-1之间的连续分数,否则它将给我-1(非面部)。从这个分数,我可以预测我的calss。如果测试图像与第一类匹配,则分数应该在.1左右。同样,如果测试图像与10级匹配,则分数应为1左右(任何连续值接近1)。我正在尝试使用LibSVM来解决这个问题。我可以通过分类轻松获得预测课程。但我想要一个连续的得分值,我可以通过回归得到。现在,我正在网上查找使用LibSVM的SVR函数中的函数或参数,但我找不到任何东西。有人可以帮我这方面吗?

1 个答案:

答案 0 :(得分:1)

这不是回归问题。通过回归解决它不会产生良好的结果。

您正在处理多类分类问题。解决这个问题的最佳方法是使用概率输出构造10个一对一分类器。要获得概率输出(例如在区间[0,1]中),您可以使用-b 1选项训练和预测C-SVC(-s 0)。

如果10个分类器中的任何一个为其正类产生足够大的概率,则使用该概率(接近1)。如果10个分类器中没有一个产生具有足够高置信度的正标签,则可以默认为-1。

简而言之:制作一个包含具有概率输出的一对一分类器的多类分类器。随后使用您选择的概率阈值(例如0.7)对我所描述的预测进行后处理。