機器學習筆記之—SVM
假定有一個訓練集 ,它要麼屬於正例,要麼屬於負例。在分類問題當中,我們最基本的想法就是基於訓練集D在樣本空間中找到一個劃分超平面,將不同的樣本分開。這樣的劃分平面有很多,哪一個是最好的呢?
1.png
假設其中一個劃分超平面是魯棒性、泛化能力最好的,對訓練樣本區域性擾動的“容忍性”也最好,這個劃分超平面用如下方程式描述:
2.png
3.png
樣本空間到這個超平面的距離d表示為:
3.png
,沿用一般求點到直線的距離公示,即可得出該距離公式。
4.png
對於這個超平面,上半區域是大於0的,都為正例;下半區域是小於0的,都為負例。所以有:
5.png
6.png
因為w,b等比縮放後,方程式依然不變
7.png
所以若將w,b等比縮放的話,就可得到以下公式:
8.png
再合併一下,就得到如下公式:
9.png
回到最原始的問題,怎樣的超平面才是我們想要的超平面呢?回到樣本空間,如果我們沿著超平面,一遇到正例、負例就作它的平行超平面,這些點就是離超平面最近的點。當這幾個點離超平面距離越大,間隔越大,說明這個樣本空間就劃分的更好,對訓練樣本局本部擾動的“容忍”性就最好
8.png
那麼這個長得像街道的街寬要怎麼求呢?
9.png
由剛剛的公示,知道街邊的點滿足Yi* (w*x+b)=1。令街邊的點的向量分別為X+,X-,那麼街寬就為(X+-X-)在W法向量上的分量
10.png
11.png
於是,求最大街寬的問題,就轉化為求最大 的問題。
原目標函式:
12.png
13.png
轉化一下:
14.png
現在是如何求最優的w,b來來獲得最大間隔
在數學中,求最小值可以用到拉格朗日定理
15.png
16.png
17.png
18.png
我們可以發現,原問題的對偶問題,現在是極大極小問題
19.png
對w,b分別求偏導可得:
20.png
再帶入原公式:
21.png
現在轉化為求最優α,求到了α,就求到了最優w,b,那麼超平面就求到了,分類決策函式也就求到了。
之前提到的資料集都是線性可分的,如果資料集如下圖該怎麼辦呢?
22.png
上面的資料並不是線性可分的,那麼我們就可以利用核函式,來解決這個問題。
23.gif
這個方法的核心是將樣本從原始空間對映到一個更高維的特徵空間。
該特徵空間中劃分超平面所對應的模型可表示為:
24.png
其中ϕ(x)表示對映後的特徵向量
像線性可分情況一樣,也會有一下公式:
25.png
26.png
27.png
〖ϕ(x_i )〗^T ϕ(x_j)往往很難計算,於是可以設想一個核函式
28.png
資料集形成的M*M個核矩陣要是半正定的
29.png
現在已經有很多的核函式,比如多項式核、高斯核、SigMoid核等等,在實際應用中,往往依賴鮮豔領域知識/交叉驗證等方案才能選擇有效的核函式。沒有更多先驗資訊,則使用高斯核函式。對於高斯核函式,我還沒有進入更深一層次的研究。
在現實任務中,往往很難確定合適的核函式是的訓練集在特徵空間中線性可分。樣本資料本身線性不可分;不一定分類完全正確的超平面就是最好的。
在圖中會發現幾個離群點,如果不考慮這些離群點,有可能劃分的超平面就不一樣。
考慮這些離群點有時候會出現過擬合的現象,
緩解該問題的一個辦法就是允許支援向量機在樣本上出錯,因此,引入軟間隔的概念。
30.png
增加一個鬆弛因子ξi≥0
31.png
目標函式就變為:
32.png
C越小,對錯誤越能容忍。C越大,對我們的訓練越能達到一個更好的結果。防止過擬合的話,C儘量小
帶鬆弛因子的SVM拉格朗日函式
33.png
34.png
35.png