推导SVM对偶形式方程

enter image description here

对于上述SVM的拉格朗日函数,我可以得到如下偏导数:enter image description here

然而,我不明白如何将它们代入拉格朗日函数来推导出对偶形式?W可以被替换,但b去哪儿了?

enter image description here

能否请有人解释一下并给出详细步骤?


回答:

你的拉格朗日函数形式如下:

L(w, b, a) = 1/2 ||w||^2 + SUM_i a_i (1 - y_i(<w, x_i> + b))

为了达到极值,你需要满足以下条件:

w = SUM_i a_i y_i x_i  SUM_i a_i y_i = 0

我们首先代入w

L(w, b, a) = 1/2 <SUM_i a_i y_i x_i, SUM_j a_i y_i x_i>                + SUM_i a_i (1 - y_i(<SUM_j a_j y_j x_j , x_i> + b))           = 1/2 SUM_i,j a_i a_j y_i y_j <x_i, x_j>                + SUM_i a_i               - SUM_i (a_i y_i( SUM_j a_j y_j <x_j, x_i> + b))           = 1/2 SUM_i,j a_i a_j y_i y_j <x_i, x_j>                + SUM_i a_i               - SUM_i (a_i y_i SUM_j ( a_j y_j <x_j, x_i> ) + a_i y_i b)           = 1/2 SUM_i,j a_i a_j y_i y_j <x_i, x_j>                + SUM_i a_i               - SUM_i a_i y_i SUM_j ( a_j y_j <x_j, x_i> )               - SUM_i a_i y_i b           = 1/2 SUM_i,j a_i a_j y_i y_j <x_i, x_j>                + SUM_i a_i               - SUM_i a_i a_j y_i y_j <x_j, x_i>               - SUM_i a_i y_i b           =   + SUM_i a_i            -1/2 SUM_i a_i a_j y_i y_j <x_j, x_i>               - b (SUM_i a_i y_i)

现在我们代入SUM_i a_i y_i = 0,得到:

L(w, b, a) = SUM_i a_i - 1/2 SUM_i a_i a_j y_i y_j <x_j, x_i>

因此,从程序员的角度来看,在优化过程中你不需要关心b,因为你可以在不知道b的情况下找到最优的a!一旦你有了优化a的代码,你就可以使用原始方程等来恢复b

Related Posts

Keras Dense层输入未被展平

这是我的测试代码: from keras import…

无法将分类变量输入随机森林

我有10个分类变量和3个数值变量。我在分割后直接将它们…

如何在Keras中对每个输出应用Sigmoid函数?

这是我代码的一部分。 model = Sequenti…

如何选择类概率的最佳阈值?

我的神经网络输出是一个用于多标签分类的预测类概率表: …

在Keras中使用深度学习得到不同的结果

我按照一个教程使用Keras中的深度神经网络进行文本分…

‘MatMul’操作的输入’b’类型为float32,与参数’a’的类型float64不匹配

我写了一个简单的TensorFlow代码,但不断遇到T…

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注