我正在使用svm light来训练二进制分类模型。使用该模型,我测试了一些示例。我很惊讶地看到预测文件的输出,它包含大于 1 和小于 -1 的值。我认为范围是[-1,1]。难道我做错了什么?
问问题
479 次
1 回答
2
如果您了解 SVM 的工作原理,为什么这些值不受 [-1, 1] 区间的限制是有道理的。SVM 尝试绘制将负数据点和正数据点分开的线,同时最大化它们与线的距离。
预测文件中的值表示数据与 SVM 最优超平面的距离,其中正值位于超平面的正类一侧,负值位于超平面的负类一侧。这些距离可以任意大或小,并且不受此图像所示的限制:
我见过一些 SVM 实现,例如Weka对Platt 的 SMO的实现,它对值进行归一化,以便它们是由 [0, 1] 区间界定的正类的置信值,但两种方法都可以很好地确定一个SVM 属于分类,因为远离超平面的数据点比靠近超平面的数据点更确定。
于 2017-07-20T22:44:42.263 回答