第七章 支持向量機(二)線性支持向量機與軟間隔最大化

線性支持向量機與軟間隔最大化

一、線性可分SVM的問題

【1】
現實中數據往往是線性不可分的。
這裏寫圖片描述
即使可分,也會因異常點(藍色的)影響模型的泛化效果。
不考慮藍色異常點,分類超平面爲橙色。加入藍色點。分離超平面爲黑色。這樣會嚴重影響模型的預測效果。
這裏寫圖片描述

二、線性SVM與軟間隔最大化

線性不可分意味着某些樣本點不能滿足函數間隔大於等於1。
軟間隔是相對於硬間隔而言的,對此我們放鬆了函數間隔的要求,之前是一定要大於等於1,現在只需要加上一個大於等於0的鬆弛變量能大於1就行。
對每一個樣本 ( x i , y i ) 引入一個鬆弛變量 ξ i 0 。約束條件變爲

y i ( w x i + b ) + ξ i 1

鬆弛變量的引入是需要付出代價的,也就是說我們要懲罰那些誤分類的點。
線性SVM(包括了線性可分和線性不可分)的原始問題如下
(1) m i n w , b , ξ 1 2 | | w | | 2 + C i = 1 n ξ i

(2) s . t . y i ( w x i + b ) 1 ξ i , i = 1 , 2 , . . n

(3) ξ i 0 , i = 1 , 2 , . . . n


目標函數儘量小,即間隔儘量大 ,同時誤分類點的個數儘量小, C > 0 是調和二者的係數。

三、對偶算法

根據上篇對偶算法的一般步驟有
公式繁瑣,有機會再重敲ヽ(`Д´)ノ︵ ┻━┻ ┻━┻
這裏寫圖片描述
由此我們得到了線性SVM的對偶問題

(4) m a x α 1 2 i = 1 n j = 1 n α i α j y i y j ( x i x j ) + i = 1 n α i

(5) s . t . i = 1 n α i y i = 0

(6) 0 α i C , i = 1 , 2 , . . . n

與線性可分SVM的對偶問題對比,只多了 α i C
4. 線性支持向量機的KKT條件
解的偏導=0
w L ( w , b , ξ , α , μ ) = w i = 1 n α i y i x i = 0

b L ( w , b , ξ , α , μ ) = i = 1 n α i y i = 0

ξ L ( w , b , ξ , α , μ ) = C α μ = 0

解滿足不等式約束,
y i ( w x i + b ) 1 + ξ 0

ξ 0

拉格朗日乘子大於0
α i 0

μ i 0

對偶互補:拉格朗日乘子大於0時,解的不等式約束的等號成立
α i ( y i ( w x i + b ) 1 + ξ i ) = 0

μ i ξ i = 0 , i = 1 , 2 , . . . n

由第一個偏導得到
(7) w = i α i y i x i

參數b是根據對偶互補條件得到的。
存在 0 < α j < C , C α j μ j = 0 μ j 0
互補條件2得, ξ j = 0
帶到互補條件1, y j ( w x j + b ) 1 = 0

(8) b = y j i = 1 n α i y i ( x i x j )

w , b 與線性可分SVM對比

【2】p101 線性可分SVM, w , b 是唯一的
【2】p109 線性SVM,可以證明 w 的解是唯一的,但 b 的解是不唯一的, b 的解存在於一個區間。
在計算的時候, b 可以取所有符合條件的樣本的平均值。

四、支持向量

由公式(7)(8)知, w b 只依賴於訓練數據集中 α > 0 的樣本點(稱這樣的點爲支持向量),而其他樣本點對 w b 沒有影響。這和線性可分SVM定義的支持向量是一致的。
線性可分SVM中的支持向量在間隔邊界上
線性SVM的支持向量可以在
間隔邊界上,間隔邊界與超平面之間,分離超平面誤分一側
這裏寫圖片描述
1.若 0 < α i < C ,上面已經推了一遍了, ξ i = 0 ,鬆弛變量爲0,支持向量在間隔邊界上
2.若 α i = C
- 0 < ξ i < 1 ,分類正確,樣本在間隔邊界與分類超平面之間
- ξ i = 1 ,樣本在分離超平面上
- ξ i > 1 ,樣本在分離超平面誤分一側

五、合頁損失函數(hinge loss)

線性SVM的另一種解釋
最小化合頁損失函數

(9) i = 1 n [ 1 y i ( w x i + b ) ] + + λ | | w | | 2

其中 [ z ] + 爲取正值函數
[ z ] + = { z , z > 0 0 , z 0

目標函數表示第一項當樣本點被正確分類且函數間隔(確信度) y i ( w x i + b ) 大於1時,損失是0。
否則,損失是 1 y i ( w x i + b ) ,第二項表示正則化項。
感知機的損失函數是 [ y i ( w x i + b ) ] + ,當樣本點被正確分類時,損失是0。
否則,損失是 y i ( w x i + b )
合頁損失函數不僅要求分類正確,而且確信度足夠高時損失纔是0。
0-1 損失函數,是可以用於二分類問題的損失函數,分類正確,損失是0;否則,損失是1。

【1】
這裏寫圖片描述
橫座標表示函數間隔,縱座標表示損失。
其他的損失函數???先挖個坑

下面證明最小化合頁損失函數(公式9)和軟間隔最大化(線性SVM的原始問題公式1-3)是等價的

[ 1 y i ( w x i + b ) ] + = ξ i

取正值函數知, ξ i 0 ,公式3成立;
[ 1 y i ( w x i + b ) ] + = { 1 y i ( w x i + b ) , 1 y i ( w x i + b ) > 0 0 , 1 y i ( w x i + b ) 0

1 y i ( w x i + b ) > 0 y i ( w x i + b ) = 1 ξ i
1 y i ( w x i + b ) 0 ξ i = 0 1 y i ( w x i + b ) ξ i
因此公式2成立;
公式9改寫爲
m i n w , b i = 1 n ξ i + λ | | w | | 2

λ = 1 2 C
m i n w , b 1 C ( 1 2 | | w | | 2 + C i = 1 n ξ i )

公式1成立。

參考文獻

【1】http://www.cnblogs.com/pinard/p/6100722.html 【2】統計學習方法