上一篇大概講了一下拉格朗日對(duì)偶法以及KKT條件卵迂,這一篇推導(dǎo)一下SVM的公式。下一篇舉個(gè)例子绒净,差不多就結(jié)束了见咒。
線性可分支持向量機(jī)
首先,考慮一下原始問題
我們其實(shí)是想找出一個(gè)分割面來疯溺,把兩個(gè)空間的元素一一分開论颅。
假設(shè),這個(gè)分割面為:
間隔
間隔分為兩種囱嫩,函數(shù)間隔和幾何間隔恃疯。
預(yù)備知識(shí)
設(shè)直線 L 的方程為 ,點(diǎn) P 的坐標(biāo)為墨闲,則點(diǎn) P 到直線 L 的距離為
接下來的很多地方會(huì)看到這個(gè)式子的影子今妄。
函數(shù)間隔
- 前提
一般來說,一個(gè)點(diǎn)距離分離超平面的遠(yuǎn)近可以表示分類預(yù)測(cè)的確定成都鸳碧,即距離越遠(yuǎn)盾鳞,越確定,距離越近瞻离,越不確定腾仅。 - 距離
給定分割平面: ,那么把點(diǎn) 代入 其實(shí)就是點(diǎn)x距離超平面的距離套利。(回憶一下預(yù)備知識(shí)上邊那個(gè)式子) - 概念
與 標(biāo)記的符號(hào)是否一致推励,表示分類是否正確鹤耍。所以可以使用 表示分類正確性及確信度。
對(duì)于一個(gè)訓(xùn)練樣本, 我們定義它到超平面的函數(shù)間隔為:
超平面的定義验辞,其實(shí)只需要最核心部分的向量稿黄,就是被稱作支持向量的點(diǎn)。
幾何間隔
同樣的
那么幾何間隔與函數(shù)間隔是什么關(guān)系呢?
增加了一個(gè) 保證函數(shù)間隔不會(huì)亂跑
間隔最大化
原始約束最優(yōu)化問題
- 最大間隔超平面
我們的目標(biāo)是求得一個(gè)幾何間隔最大的超平面杆怕,即最大間隔超平面。
- 幾何間隔 換成 函數(shù)間隔
因?yàn)閹缀伍g隔太復(fù)雜 ( 其實(shí)就是為了一會(huì)推公式方便
- 令
因?yàn)楹瘮?shù)間隔取多少,并不影響該 最優(yōu)化問題撑碴,又由于最大化 與最小化 是等價(jià)的撑教,于是可獲得
為什么要搞這么多次變換,因?yàn)槔窭嗜粘俗臃ǖ慕Y(jié)構(gòu)限制醉拓,詳情見SVM(1) 之 拉格朗日乘子法和KKT條件
需要注意的一點(diǎn)是這里是伟姐,使用拉格朗日算子法的時(shí)候留意。
對(duì)偶算法
拉格朗日函數(shù)
首先構(gòu)造拉格朗日函數(shù)
這里負(fù)號(hào)和注意 有關(guān)
得
再將求得的帶回可得到
將極大轉(zhuǎn)換成極小亿卤,得到下面與之等價(jià)的對(duì)偶最優(yōu)化問題:
原始問題對(duì)求導(dǎo)的時(shí)候得到了 第一個(gè)式子愤兵,把第一個(gè)式子帶回得到第二個(gè)式子
綜上所述,對(duì)于給定的線性可分訓(xùn)練數(shù)據(jù)集排吴,可以首先求對(duì)偶問題(2)的解秆乳;再利用上式求得原始問題的解;從而得到分離超平面及分類決策函數(shù)钻哩。這種算法稱為線性可分支持向量機(jī)的對(duì)偶學(xué)習(xí)算法屹堰,是線性可分支持向量機(jī)學(xué)習(xí)的基本算法。
小結(jié):線性可分支持向量機(jī)對(duì)偶學(xué)習(xí)算法
輸入:線性可分訓(xùn)練數(shù)據(jù)集
其中街氢, 扯键。
輸出:最大間隔分離超平面和分類決策函數(shù)。
(1) 構(gòu)造并求解約束最優(yōu)化問題:
用SMO算法求
(2 )計(jì)算
(3) 求得分離超平面
分類決策函數(shù):