乙個支援向量機解決乙個二分類問題
假設乙個超平面 wtx+b=0能將正反例正確劃分
超平面上方為正例+1,下方為反例-1
那麼正例(xi,yi),使 wtxi+b>0,yi = +1
那麼反例(xi,yi),使 wtxi+b<0,yi = -1
任意點到超平面的距離可寫為:r = |wtxi+b| / ||w||
任意正反例的距離 |wtxi+
+b - (wtxi-
+b)| / ||w||
假設wtxi+
+b = +1,(>0 即可,也可以是 +100 或者 +0.1)
假設wtxi-
+b = -1,(<0 即可,也可以是 -50 或者 -0.1)
那麼正反例的距離等於 |1-(-1)|/||w|| = 2 / ||w||(也可以是150 / ||w||,或者 0.2 / ||w||,分子多大都沒關係,不影響我們的目標:最大化間隔,等價於求分母最小化)
我們希望離劃分超平面最近的正反例(即:支援向量),之間的**距離(即:間隔)**最大化,這樣的劃分魯棒性最好(健壯)。
那麼需要求得w和b,令 2 / ||w|| 最大化,這等價於求得w和b,使得 0.5||w||2最小化,約束條件為:yi(wtx+b)>0
對每條約束新增拉格朗日乘子,將約束條件的最優化問題轉化為無約束問題:
l = 0.5||w||2 + σai(-yi(wtx+b))
對w求偏導為零可得:
w = σaiyixi
對b求偏導為零可得:
0 = σaiyi
將w和b代入原式l,再考慮約束,得 0.5||w||2 的對偶問題:(疑惑)
max|a:σai - 0.5σσaiajyiyjxi
txjs.t:σaiyi = 0,ai >= 0
解出a後(通過smo演算法求解),可求出 w 與 b ,即可得模型:
f(x) = wtx+b = σaiyixi
tx+b
smo演算法固定ai和yi之外的所有引數(即c),對ai、yi求解
c = - σakyk,k!=i,j
aiyi + ajyj = c
將 aj = (c-aiyi) / yj 代入: max|a:σai - 0.5σσaiajyiyjxi
txj得到的是關於ai的單變數二次規劃問題,僅有約束是ai>=0,具有閉式解,可高效計算出更新後的ai和yi。
約束要求滿足kkt條件:
ai >= 0;
yif(xi) - 1 >= 0;
ai (yif(xi) - 1 ) = 0;
對任意訓練樣本,總有ai = 0,或者 yif(xi) = 1
若 ai = 0,則該樣本不會在求和式**現,也就不會對f(x)有任何影響。
若 ai > 0,則該樣本位於最大間隔邊界上,是乙個支援向量。
因此:訓練完成後,大部分的訓練樣本都不需要保留,最終模型僅與支援向量有關。
如果原始空間是有限維,即屬性有限,那麼一定存在乙個高維特徵空間使樣本可分。
核技巧:不必直接去計算高維甚至無窮維特徵空間中的內積,而是通過核函式來展開,即可求出最優解。
通常,我們只需在已有的常用候選核函式中選擇出適合解決我們任務的乙個,而不需要自己去定義乙個新的核函式。
我們要求所有樣本滿足約束條件,這是硬間隔。相對的,軟間隔允許某些樣本不滿足約束。
我們希望不滿足約束的樣本盡量少,於是加入了損失函式,由於損失函式不容易求解,於是又有了替代損失函式如:
hinge損失函式
指數損失函式
對率損失函式
引入常數c以及鬆弛變數,變化出軟間隔支援向量機
常數c控制滿足約束的樣本量多少,c越大,需要越多樣本滿足約束,反之,越小容忍度越大。
傳統回歸模型只有當f(x)和yi完全一致時才不計入損失。
svr則以f(x)=wx+b為中心,構建乙個寬度為2e的間隔帶,若訓練樣本落入此間隔帶,則不計算損失,被認為是**正確的。
問題變化為:
min 0.5||w||2+cσle(f(x)-yi),
f(x) - yi
<= e,損失為0,否則損失為f(x) - yi - e
c是正則化常數
經過各種推導,svr可表示為:
f(x) = σ(ai
』-ai)k(x,xi)+b
其中k為核函式。
若不考慮偏移項b,則無論svm還是svr,學得的模型總能表示成核函式k(x,xi)的線性組合。
這章的公式太多了,很多推導不好理解,看了好多天沒看明白,所以暫時放下,接著看後面幾章吧。
西瓜書 支援向量機svm原型推導
第一次聽說支援向量機這個名詞或許有點懵,這好像有點難以理解這個演算法到底是幹什麼的。其實svm這個演算法這個演算法是用來分類的。目的是找到乙個超平面然後把一堆資料劃分成不同類別。對映到二維資料上面,那個超平面就是一條線了。如下圖所示 我們也能看到有很多的線可以劃分這兩類資料,那我們的目的就是要找一條...
第 7 章 支援向量機
支援向量機 support vector machine,svm 是一種二類分類模型,它的基本模型是定義在特徵空間上的間隔最大的線性分類器,間隔最大使它有別於感知機 支援向量機還包括核技巧,這使它成為實質上的非線性分類器,支援向量機的學習策略就是間隔最大化,可形式化為乙個求解凸二次規劃 convex...
西瓜書第1章習題
1.1 試給出相應的版本空間。首先有乙個 假設空間 現實問題中假設空間一般很大。然後有許多策略是可以對假設空間進行搜尋,搜尋過程中刪除與正例不一致的假設 和反例一致的假設。最後選出來的假設的集合,就叫做 版本空間 1.2 若使用最多包含k個合取式的析合正規化來表達表1.1西瓜分類問題的假設空間,估算...