svm超詳細推導

   支持向量機是一種二分類模型,他的基本想法就是基於訓練集和樣本空間中找到一個最好的劃分超平面,將兩類樣本分割開來,首先你就要知道什麼樣的劃分發才能稱爲“最”好劃分

  看上圖,二維平面上有兩類樣本,一類是用‘+’表示,另一類用‘-’表示,那麼中間那幾條劃分線每條都能將兩類樣本分割開來,但我們我們一眼就注意到中間那條加粗的劃分超平面,似乎他是最好的,因爲兩類的樣本點都離他挺遠的,專業點說就是該劃分超平面對訓練樣本局部擾動的‘容忍’性最好。好,這還只是個二維平面,我們可以通過可視化大概尋找這樣一個超平面,但如果三維,四維,五維呢,我們必須用我們擅長的數學去描述它,推導它。        

        在樣本空間中,劃分超平面可用表示,記爲(w,b),樣本點(xi,yi)到劃分超平面的函數間隔爲,幾何間隔爲:


     若,可知函數間隔和幾何間隔相等,若超平面參數w,b成比例的改變(超平面沒有變),則函數間隔也是成比例的改變,而幾何間隔不變。

   支持向量機的基本想法就是求解能夠正確劃分訓練數據集並且幾何間隔最大的分離超平面,表達爲數學公式即爲:發    

       其實函數間隔的取值並不影響最優化問題的解,假設將w和b成倍的改變爲aw,ab,那麼函數間隔也會相應變成a,函數間隔的對上面最優化問題的不等式沒有影響,也對目標函數沒有影響,因此爲簡便,取,而且我們注意到最大化等價於最小化(爲啥取平方呢,因爲後面好求導),便可得到下面支持線性可分(線性不可分的情況後面會提到的支持向量機的最優化問題

這是一個凸二次優化的問題,可以直接求解,但是爲了簡便呢,我們要應用拉格朗日對偶性,求解他的對偶問題

    其實求解對偶問題相比於原問題有一下幾點好處(1).對偶問題更容易求解,因爲不用求w了 (2)我們可以自然引入核函數,這樣可以推廣到線性不可分分類問題上

   建立拉格朗日函數,引進拉格朗日乘子,定義拉格朗日函數:


根據原始問題的對偶性,原始問題的對偶性是極大極小問題,即


首先我們來求最小,零L(w,b,a)分別對w和b求導爲零可得



將其代入對偶問題,可得



解出alpha之後,那麼w,b也相應得到啦


接下來,我們看看很有意思的上式不等式約束的kkt條件(不懂請百度)帶給我們的信息


咦,對於任意訓練樣本,總有或者,也就是說最終與模型有關的的樣本點都位於最大間隔的邊界上,我們稱之爲支持向量,其餘的樣本點與模型無關


在前面的討論中,我們都是聊的線性可分的情況,那麼大多數情況下都線性不可分怎麼辦,比如這樣(如左)


山人自有妙計,我們可以將樣本先映射到高維特徵空間,然後就可以繼續分割了(如右)

前面我們說到了對偶問題是


公式中涉及到計算,xi,xj是映射到特徵空間之後的內積,由於特徵維數可能會很高,甚至是無窮多維,直接計算很困難,所以我們引入了核函數


這樣我們就可以不用麻煩的計算內積了





發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章