【发布时间】:2016-06-20 12:10:16
【问题描述】:
我了解由拉格朗日对偶和所有内容组成的整体 SVM 算法,但我无法理解为什么特别是支持向量的拉格朗日乘数大于零。
谢谢。
【问题讨论】:
-
您可以在 stats stack stats.stackexchange.com/questions/54976/…找到这个答案有帮助
标签: machine-learning statistics svm
我了解由拉格朗日对偶和所有内容组成的整体 SVM 算法,但我无法理解为什么特别是支持向量的拉格朗日乘数大于零。
谢谢。
【问题讨论】:
标签: machine-learning statistics svm
我也想不通……
如果我们举一个简单的例子,比如说 3 个数据点,2 个正类 (yi=1): (1,2) (3,1) 和一个负类 (yi=-1): (-1, -1) - 我们使用拉格朗日乘数计算,我们将得到一个完美的 w (0.25,0.5) 和 b = -0.25,但我们的一个 alpha 是负数(a1 = 6/32, a2 = -1/32, a3 = 5/32)。
【讨论】:
这可能是一个迟到的答案,但我将我的理解放在此处以供其他访问者使用。
拉格朗日乘数,通常用α表示,是所有训练点的权重作为支持向量的向量。
假设有 m 个训练样例。那么 α 是一个大小为 m 的向量。现在关注 α 的任何第 i 个元素:αi。很明显,αi 捕获了第 i 个训练示例的权重作为支持向量。 αi 的值越高,意味着第 i 个训练样本作为支持向量的重要性越高;例如,如果要进行预测,那么第 i 个训练示例在得出决策时会更重要。
现在谈到 OP 的关注点:
我无法理解为什么特别是拉格朗日乘数 支持向量大于零。
这只是一个构造。当你说 αi=0 时,只是第 i 个训练样本作为支持向量的权重为零。您也可以说第 i 个示例不是支持向量。
旁注:KKT 的条件之一是互补松弛:对于所有 i,αigi(w)=0。对于支持向量,它必须位于边缘,这意味着 gi(w)=0。现在 αi 可以或不能为零;无论如何,它满足互补松弛条件。 对于 αi=0,您可以根据上面的讨论选择是否要将这些点称为支持向量。但是对于非支持向量,αi 必须为零才能满足互补松弛,因为 gi(w) 不为零。
【讨论】: