SVM是机器学习中的一种经典方法,除了硬间隔SVM之外,还包括软间隔SVM,核技巧等SVM的变种,本文主要介绍硬间隔SVM的推导。
假设两类样本点是可以被准确分开的,那么则可以使用硬间隔SVM来进行分类,假设分隔的超平面方程为 w⋅x+b=0 w ⋅ x + b = 0 ,则每个样本点 xi x i 到该超平面的距离为 |w⋅xi+b| | w ⋅ x i + b | ,如果设定与超平面之间的距离为正的点为正分类,即 yi=+1 y i = + 1 ,相反负距离的点为负分类,即 yi=−1 y i = − 1 ,那么可以将样本点到分离超平面的距离表示为 γ^i=yi(w⋅xi+b) γ ^ i = y i ( w ⋅ x i + b ) ,这称为样本点到分离超平面之间的函数距离。
令 γ^=min(γ^i) γ ^ = m i n ( γ ^ i ) ,即为最小函数距离。需要注意到,函数距离 γ^i=yi(w⋅xi+b) γ ^ i = y i ( w ⋅ x i + b ) 在 w w 和 b b 同时增大某个比例倍数时,函数间隔会增大但是超平面不会发生改变,此时便需要将超平面的 w w 进行约束,比如令 ||w||=1 | | w | | = 1 ,我们可以重新定义距离为 γi=yi(w||w||⋅xi+b||w||) γ i = y i ( w | | w | | ⋅ x i + b | | w | | ) ,称之为几何距离,令 γ=min(γi) γ = m i n ( γ i ) ,即可以得到 γ=γ^||w|| γ = γ ^ | | w | | 。
那么最大化分隔距离的优化问题即可表示如下:
即
注意上式中,函数间隔 γ^ γ ^ 的取值并不会影响最优化问题的解,不妨假设 γ^=1 γ ^ = 1 ,并且注意到最大化 1||w|| 1 | | w | | 与最小化 12||w||2 1 2 | | w | | 2 等价,那么上述问题即可以等价为:
上述问题即为一个不等式约束的最优化问题,可以利用拉格朗日乘子法与KKT条件来求解,令 α=[α1,α2,α3,...,αn]T α = [ α 1 , α 2 , α 3 , . . . , α n ] T ,首先构造拉格朗日函数为:
假设 W∗,b∗,α∗ W ∗ , b ∗ , α ∗ 是优化问题的最优解,那么根据KKT条件, W∗,b∗,α∗ W ∗ , b ∗ , α ∗ 一定满足以下方程:
KKT条件主要包括几个方面的内容:
1.拉格朗日函数对于原始优化变量的梯度为0,如(1)和(2)
2.拉格朗日乘子和不等式约束的左式(化为标准形式)的乘积全为0,如(3)
3.原问题的约束条件,如(4)
4.拉格朗日乘子非负,如(5)
由(1)和(2)可以得到:
根据拉格朗日对偶性,原问题可以化为:
即
其中 minw,b 12||w||2−∑iαiyi(w⋅xi+b)+∑iαi m i n w , b 1 2 | | w | | 2 − ∑ i α i y i ( w ⋅ x i + b ) + ∑ i α i 问题的最优解由KKT条件可以得到为 w∗=∑Niα∗iyixi w ∗ = ∑ i N α i ∗ y i x i ,并且有 ∑Niα∗iyi=0 ∑ i N α i ∗ y i = 0 ,代入上式即可将原问题化为:
在求解了 α∗ α ∗ 之后,即可根据 w∗=∑Niα∗iyixi w ∗ = ∑ i N α i ∗ y i x i 求得 w∗ w ∗ ,由于分离超平面的参数是 w∗,b∗ w ∗ , b ∗ 决定的,而分离超平面由 αi≠0 α i ≠ 0 的 αi,xi,yi α i , x i , y i 决定的,因此再选取任意 j j 使得 αj≠0 α j ≠ 0 ,得到 b∗=yj−w∗⋅xj b ∗ = y j − w ∗ ⋅ x j ,这样便可以得到分离超平面 w∗⋅x+b∗=0 w ∗ ⋅ x + b ∗ = 0 。
对于上面的求解 α∗ α ∗ 的优化问题,我们在下文将会介绍SMO算法来求解
To be continuue…