? 我的微信公眾號: s406205391; 歡迎大家一起學(xué)習(xí)恩急,一起進(jìn)步!J摇!
? 有些人認(rèn)為腾夯,支持向量機(jī)(SVM)是最好的現(xiàn)成的分類器颊埃,這里說的“現(xiàn)成”指的是分類器不加修改即可直接使用。同時蝶俱,這就意味著在數(shù)據(jù)上應(yīng)用基本形式的SVM分類器就可以得到低錯誤率的結(jié)果竟秫。SVM能夠?qū)τ?xùn)練集之外的數(shù)據(jù)點(diǎn)做出很好的分類決策。
?
距離的定義:基于最大間隔分隔數(shù)據(jù)
? 假設(shè)在一個平面上有如下兩組數(shù)據(jù)跷乐,我們可以用如下一條直線將兩組數(shù)據(jù)分隔開(我們將上述可以把數(shù)據(jù)集分隔開的直線稱為分隔超平面)肥败。圖左和圖右兩條直線均可有效的將數(shù)據(jù)分隔開。那么愕提,哪一條直線的分隔效果更好呢馒稍?很明顯圖右的直線分隔效果更好,因為它距離兩組數(shù)據(jù)的距離相對于圖左直線更遠(yuǎn)浅侨。支持向量就是離分隔超平面最近的那些點(diǎn)纽谒。
? 那么,我們在設(shè)計分類器之前如输,就先得學(xué)會如何計算支持向量到分隔超平面之間的距離鼓黔。假設(shè)由圖點(diǎn)x是分隔超平面的支持向量央勒,w是超平面上的法向量,w'和w''是超平面上的兩個點(diǎn)澳化。我們定義超平面方程為wTx+b=0崔步。那么我們可以得到兩個等式:
w'和w''在超平面上:wTx' = -b; WTx'' = -b
-
法向量與w'和w''的向量垂直:
? 我們要求點(diǎn)到直線的距離,其實也就是求向量(x - x’)與法向量w的單位向量的投影(內(nèi)積)缎谷。那么公式即為:
因為w'是隨機(jī)找的一個點(diǎn)井濒,因此必然可以約分,將w'約分完之后列林,即可得到最終的表達(dá)式瑞你。
優(yōu)化目標(biāo): 找到一條線(w和b),是的離該線最近的點(diǎn)能夠最遠(yuǎn)
? 有了距離公式,那么也有了我們機(jī)器學(xué)習(xí)的優(yōu)化方向:讓支持向量與超平面的距離最遠(yuǎn)希痴。在做SVM機(jī)器學(xué)習(xí)的時候者甲,我們首先需要定義標(biāo)簽,即將我們的訓(xùn)練數(shù)據(jù)進(jìn)行分類砌创。在這里虏缸,為了后期計算方便,我們將數(shù)據(jù)分類兩類纺铭,分別用1和-1表示刀疙。那么就有了如下的決策方程:
這里的φ(x)我們可以先暫時理解為x
將距離公式帶入到?jīng)Q策方程,可得: (由于
, 所有將絕對值展開谦秧,公式依舊成立。)
對于該決策方程疚鲤,我們設(shè)計優(yōu)化目標(biāo),找到一條離支持向量的點(diǎn)最遠(yuǎn)的直線集歇,優(yōu)化目標(biāo)如下:
目標(biāo)函數(shù):
求解目標(biāo)函數(shù)
? 上述的目標(biāo)函數(shù)看起來很復(fù)雜,通俗的將诲宇,大括號內(nèi)的意思即為,找到在整個樣本中姑蓝,距離決策邊界距離最小的樣本。大括號外面即纺荧,找到與這些這些樣本距離最大的線旭愧。
放縮變換
? 對于決策方程颅筋,不太好求解,我們這里可以做一下變換输枯。我們通過放縮變換使得:對于決策方程(w,b),其結(jié)果 (之前我們認(rèn)為恒大于0议泵,現(xiàn)在更嚴(yán)格了一些)
由于 , 那么,其最小值就為1用押,那么肢簿,我們只需要考慮
。
當(dāng)前目標(biāo):蜻拨,約束條件:
函數(shù)變換
? 對于上述目標(biāo)函數(shù)池充,我們適當(dāng)轉(zhuǎn)換一下,方便求解缎讼。我們可以將上述函數(shù)的求最大值問題收夸,改為求極小值問題:
轉(zhuǎn)換函數(shù)
? 轉(zhuǎn)換思路為:先將轉(zhuǎn)換成其倒數(shù),再取其平方血崭,再添加一個常規(guī)項1/2卧惜。雖然做了如下操作之后,最后得到的點(diǎn)的值會發(fā)生變換夹纫,但是咽瓷,取到的點(diǎn)是不變的。
對于這個函數(shù)舰讹,我們可以用拉格朗日乘子法求解茅姜。
求解拉格朗日乘子法
? 拉格朗日乘子法是專門用來求解帶約束條件的問題的。他的基本公式為:
?
? 把我們的方程代入月匣,即得:
? 約束條件:
? 上式有三個未知量钻洒,w, α,b。如果我們能求得這三個變量之間的關(guān)系锄开,即可得到方程的解素标。我們分別對w和b求偏導(dǎo),得:
? 對w求偏導(dǎo):
? 對b求偏導(dǎo):
? 我們帶入原式即得:
?
? 其中:;
?
? 完成了第一步求解minL(w,b,α)
? 求解該式的極值
繼續(xù)求解
? 我們需要求解上式的極大值萍悴,添加一個符號头遭,我們轉(zhuǎn)換為求解該式的極小值。
即: ; 條件:
實例求解
我們現(xiàn)在以一個實例癣诱,求解上述方程。
? 我們將上面數(shù)據(jù)代入即可得:
對α1和α2求偏導(dǎo)即可得: ;
這里享潜,α2小于0嗅蔬,不滿足約束條件疾就,所以應(yīng)該在邊界上猬腰。此時α1=0或者α2=0.
將α結(jié)果代入求解:; 平面方程為:
軟間隔問題
核函數(shù)
? 核函數(shù)即為了解決低維不可分問題姑荷,通過核函數(shù)將我們的數(shù)據(jù)轉(zhuǎn)換到高維的層面缩擂,這里就不多介紹了。我們最常用的一個核函數(shù)即為高斯核函數(shù)懈费。