從零開始SVM算法(2)-SVM方程推導(dǎo)


上一章我們介紹了SVM算法的意義,SVM是large-margin算法畦幢,旨在找到一條能夠完全區(qū)分訓(xùn)練集而且擁有最大margin值的直線坎吻。在這一章節(jié)里,我們將推導(dǎo)margin的計(jì)算方式和SVM最終要解決的問題的方程表達(dá)式宇葱。

任意點(diǎn)到?jīng)Q策邊界距離(1) - 初步表達(dá)式

上章節(jié)我們提到瘦真,margin值就是所有數(shù)據(jù)點(diǎn)到?jīng)Q策邊界的距離里面的最小值刊头,所以首先我們要計(jì)算平面內(nèi)任意一點(diǎn)到?jīng)Q策邊界的距離。為了使得表述和理解更簡(jiǎn)單诸尽,在下面的所有推導(dǎo)中原杂,我們都采用二維平面內(nèi)的數(shù)據(jù)作為例子去做解釋。二維平面得到的結(jié)論可以推廣到任意維度的空間當(dāng)中您机。

上圖是一個(gè)在上一章節(jié)用過的二維數(shù)據(jù)集例子穿肄。在圖中,紅色的數(shù)據(jù)點(diǎn)是需要計(jì)算到?jīng)Q策邊界距離的點(diǎn)际看,我們標(biāo)注其為X咸产。X1為決策邊界上的點(diǎn)。注意仲闽,這里的X1跟坐標(biāo)軸上的x1不一樣脑溢,這里的X1是一個(gè)點(diǎn),也是一個(gè)擁有兩個(gè)維度的向量焚志。坐標(biāo)軸上的x1是兩個(gè)維度對(duì)應(yīng)的值的大小,是標(biāo)量。圖中的distance是我們需要計(jì)算的距離,該線段與決策邊界垂直且與點(diǎn)X相交巡揍。

現(xiàn)在腮敌,假定圖中的決策邊界是由特征權(quán)重向量W和偏差值b決定的糜工,既對(duì)于任意數(shù)據(jù)點(diǎn),h(X) = sign(WTX + b),該分類器是一個(gè)線性分類器(linear classifier)凤覆。對(duì)于任意數(shù)據(jù)X,當(dāng)WTX + b > 0的時(shí)候預(yù)測(cè)該點(diǎn)為正類渤刃,當(dāng)WTX + b < 0的時(shí)候預(yù)測(cè)該點(diǎn)為負(fù)類。當(dāng)WTX + b = 0的時(shí)候诫舅,該點(diǎn)正好落在決策邊緣上虚汛,此時(shí)分類器將其預(yù)測(cè)為正類來打破平衡(tie-break)属拾。因此礼预,我們很容易得到?jīng)Q策邊界的方程為WTX + b = 0。

為了計(jì)算點(diǎn)X到?jīng)Q策邊界的距離刨疼,我們做了一條輔助線泉唁,這條輔助線穿過點(diǎn)X和決策邊界上的一點(diǎn)X1。根據(jù)高中幾何知識(shí)我們知道X到?jīng)Q策邊緣的距離D揩慕,是向量X X1長(zhǎng)度在垂直于決策邊界方向上的投影亭畜,既Distance = ||X - X1||cos(a),a為向量XX1與垂直于決策邊界方向的夾角迎卤。

此時(shí)拴鸵,要計(jì)算Distance大小我們有兩個(gè)方法,第一個(gè)方法是計(jì)算角度a以及||X - X1||的大小蜗搔,第二個(gè)方法是找到一個(gè)垂直于決策邊界的向量劲藐,假設(shè)是P。則距離

對(duì)于以上的公式推導(dǎo)樟凄,我們將會(huì)在下面演示聘芜。

根據(jù)經(jīng)驗(yàn)而言,求法向量P往往比求角度a要簡(jiǎn)單一些不同,所以我們?cè)谶@里采用第二種方法厉膀。由于我們最終需要用權(quán)重向量W和偏差b來表示距離大小,所以上面公式的是距離的初步表達(dá)式二拐,我們還需要進(jìn)行進(jìn)一步推算服鹅。

任意點(diǎn)到?jīng)Q策邊界距離(2) - 初步表達(dá)式的證明

剛剛我們提到了第二種計(jì)算距離的方法,并給出了計(jì)算公式百新,現(xiàn)在我們要證明計(jì)算公式的正確性企软。

首先根據(jù)向量相乘公式我們知道,兩個(gè)向量相乘等于向量長(zhǎng)度的乘積再與向量夾角余弦值的乘積饭望。既


上面的式子說的是向量P和向量||X - X1||的乘積仗哨,因?yàn)?em>P是垂直于決策邊界,所以PX - X1向量的夾角就是第一個(gè)坐標(biāo)圖中的角a铅辞。之前我們提到過,所求距離Distance = ||X - X1|| cos(a)斟珊。因此根據(jù)上面的得到的公式我們可以推出:

任意點(diǎn)到?jīng)Q策邊界距離(3) - 找到跟決策邊界垂直的向量P

在前面我們介紹并推導(dǎo)了任意點(diǎn)到?jīng)Q策邊界距離的初步表達(dá)式。現(xiàn)在,我們要找到公式當(dāng)中的向量P,一個(gè)垂直于決策邊界的向量示惊。


現(xiàn)在我們?cè)俣x另一個(gè)落在決策邊界上的點(diǎn)X2。
X1和X2都落在決策邊界上,因此對(duì)于點(diǎn)X1和X2阔拳,滿足決策邊界方程

我們把方程組中的上下兩式相減得到 WT (X1 - X2) = 0。向量相乘等于零說明向量方向互相垂直类嗤。因此我們可以得到WT ⊥ (X1 - X2)糊肠。由于X1X2都落在決策邊界上,所以遗锣,(X1 - X2)的方向就是決策邊界的方向货裹。因此WT就是我們要找的垂直于決策邊界的向量P

任意點(diǎn)到?jīng)Q策邊界距離(4)- 最終表達(dá)式

上面我們得到了垂直于決策邊界的向量 WT精偿,現(xiàn)在我們把WT代入到前面的得到的距離初步表達(dá)式當(dāng)中弧圆,

我們把WT放到后面的括號(hào)里面:

因?yàn)?em>X1是決策邊界上的一點(diǎn),所以有


把上式代入Distance公式當(dāng)中得到

為了讓式子看著更簡(jiǎn)單笔咽,我們把||WT||換成||W||搔预,因?yàn)?br> W的長(zhǎng)度與其轉(zhuǎn)置的長(zhǎng)度一樣。

這個(gè)距離公式還存在一個(gè)問題叶组,就是WTX + b的值有可能為負(fù)拯田,這樣算出來的距離就會(huì)為負(fù)值,這不符合我們常規(guī)當(dāng)中對(duì)距離大小的認(rèn)識(shí)甩十,我們常識(shí)當(dāng)中總認(rèn)為距離是非負(fù)的船庇。因此我們?cè)?em>WTX + b外面加上一個(gè)絕對(duì)值符號(hào),確保其非負(fù)侣监。下面就是任意點(diǎn)X到?jīng)Q策邊界的距離最終表達(dá)式:

Margin表達(dá)式的推導(dǎo)

前面我們推導(dǎo)了任意點(diǎn)到?jīng)Q策平面的距離表達(dá)式鸭轮,下面我們要把問題回歸到SVM,推導(dǎo)Margin值的表達(dá)式橄霉。
在上一章節(jié)我們提到窃爷,SVM的前提是要把訓(xùn)練集無錯(cuò)誤地分開,也就是說,對(duì)于所有訓(xùn)練數(shù)據(jù)X, WTX + b 于這個(gè)點(diǎn)的分類值yn必須是同號(hào)吞鸭,即yn (WTX + b) > 0寺董。
因?yàn)閥n只有兩個(gè)值,+1和-1, 我們可以把距離公式當(dāng)中的絕對(duì)值符號(hào)去掉刻剥,但是要添加一個(gè)條件:

s.t. 后面的是等式成立的條件遮咖,這也是SVM的前提。
我們已經(jīng)知道造虏,Margin值就是所有點(diǎn)Distance的最小值御吞,因此我們得到Margin的表達(dá)式:

Margin表達(dá)式的簡(jiǎn)化

上面我們得到了Margin的表達(dá)式,然而要得到上面表達(dá)式的最大值仍然有點(diǎn)復(fù)雜漓藕,不便于計(jì)算陶珠,因此我們還需要對(duì)表達(dá)式進(jìn)行進(jìn)一步的簡(jiǎn)化,以方便計(jì)算享钞。

通過觀察上面的表達(dá)式揍诽,我們可以把1 / ||W||提到min函數(shù)的前面去,因?yàn)? / ||W||跟n并無關(guān)系栗竖,margin公式轉(zhuǎn)換成了:

現(xiàn)在再次觀察新的margin表達(dá)式暑脆,容易看出我們或許可以嘗試對(duì)公式當(dāng)中min后面的式子進(jìn)行簡(jiǎn)化。假若我們能夠把后面的min值簡(jiǎn)化成一個(gè)常數(shù)狐肢,甚至讓后面的min值簡(jiǎn)化成1添吗,那么margin表達(dá)式就會(huì)剩下一個(gè) 1 / ||W||,計(jì)算量將會(huì)大大減少份名。

事實(shí)上碟联,我們確實(shí)可以把表達(dá)式當(dāng)中的min值簡(jiǎn)化成1。在說明白這個(gè)道理之前僵腺,先看一個(gè)例子鲤孵。

對(duì)于平面內(nèi)任意決策邊界,WTX + b = 0〕饺纾現(xiàn)在讓其W和b同時(shí)放大三倍裤纹,既 3WTX + 3b = 0∩ッ唬可以很容易知道鹰椒,放大三倍之后的決策邊界跟放大之前的決策邊界是同一條邊界,因此我們可以知道呕童,對(duì)W和b同時(shí)進(jìn)行縮放漆际,不會(huì)影響決策邊界的位置。

現(xiàn)在我們回到剛剛的margin表達(dá)式夺饲,我們可以對(duì)決策邊界參數(shù)做一個(gè)特殊的縮放奸汇,假設(shè)縮放倍數(shù)為n施符,使得其永遠(yuǎn)滿足以下條件:

剛剛提到,對(duì)決策邊界參數(shù)同時(shí)做相同倍數(shù)的縮放不影響決策邊界的位置擂找,因此戳吝,WTX + b = 0 與 nWTX + nb = 0是同一條直線。所以可以得到相同的結(jié)論:

因此我們可以對(duì)margin表達(dá)式再次簡(jiǎn)化為:


注意贯涎,s.t.條件當(dāng)中原來有的 yn (WTX + b) > 0 這個(gè)條件在這里我們省略不寫听哭,原因是只要滿足了yn (WTX + b)的最小值為1的話,必然滿足原來大于0的條件塘雳,所以為了簡(jiǎn)化陆盘,我們省略原來的條件不寫。

把最小化條件放松

上面我們得到了簡(jiǎn)化的margin表達(dá)式及其成立條件败明,表達(dá)式只是剩下一個(gè)1 / ||W||隘马,已經(jīng)足夠簡(jiǎn)單。然而妻顶,在讓表達(dá)式簡(jiǎn)單的同時(shí)酸员,我們卻把s.t.后面的條件變得更復(fù)雜了:


原來的條件是一個(gè)不等式,現(xiàn)在變成了一個(gè)最小化問題讳嘱,問題變得更加復(fù)雜了沸呐,所以現(xiàn)在我們要做的就是把最小化條件放松,使條件再次變成一個(gè)不等式呢燥。關(guān)于為什么不等式條件會(huì)比最小化條件容易解決,我們會(huì)在以后的章節(jié)有所解釋≡⒚洌現(xiàn)在我們暫且認(rèn)同這一點(diǎn)叛氨。

現(xiàn)在我們嘗試把原來的最小化條件放松成以下條件:


這個(gè)條件是原來最小化條件的必要條件,即滿足原來?xiàng)l件棘伴,必定滿足新的條件寞埠,即若滿足yn (WTX + b)的最小值為1必定滿足對(duì)于所有的n,yn (WTX + b) >= 1焊夸。
但是對(duì)于新條件是否是原來?xiàng)l件的充分條件仁连,我們還需證明。

現(xiàn)在用反證法證明新條件是舊條件的充分條件
假設(shè)一個(gè)最大的margin值對(duì)應(yīng)的最優(yōu)解為(W, b)阱穗,假設(shè)這個(gè)最優(yōu)解滿足 :

此時(shí)這個(gè)最優(yōu)解滿足新的不等式條件饭冬,但是不滿足舊的最小化條件。
此時(shí)可以把不等式兩邊同時(shí)除以1.1揪阶,使其與原來的不等式條件一致:

這時(shí)的最優(yōu)解就變成了(W / 1.1, b / 1.1)昌抠。

把新的參數(shù)代入margin:


我們發(fā)現(xiàn),當(dāng)W變成W / 1.1的時(shí)候鲁僚,||W||的值會(huì)變小炊苫,margin的值就會(huì)更大裁厅,解比原來的W更優(yōu)。因此這與原來假設(shè)的(W, b)是最優(yōu)解相互矛盾侨艾。

所以执虹,我們可以下結(jié)論,當(dāng)(W, b)為最優(yōu)解時(shí)唠梨,最小化條件和不等式條件是互為充要條件袋励,可以作出最小化條件放松的操作。

現(xiàn)在姻成,我們得到了更簡(jiǎn)單的margin計(jì)算方程插龄,這里把最小化條件去掉了:

margin最大化問題

上面我們得到了margin的計(jì)算表達(dá)式,現(xiàn)在可以得到我們需要優(yōu)化的模型:

總結(jié)

在這一章節(jié)里科展,主要講解了如何計(jì)算平面內(nèi)任意一點(diǎn)到?jīng)Q策邊界的距離均牢,之后還推導(dǎo)了margin最大化問題的模型。在后面的章節(jié)里才睹,將會(huì)繼續(xù)介紹如何解決這一章得到的最大化問題徘跪,從而得到最優(yōu)解。

引用

本章節(jié)某些內(nèi)容引用了臺(tái)灣大學(xué)林軒田老師Standard_Large-Margin_Problem一章節(jié)課件內(nèi)容

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末琅攘,一起剝皮案震驚了整個(gè)濱河市垮庐,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌坞琴,老刑警劉巖哨查,帶你破解...
    沈念sama閱讀 206,723評(píng)論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異剧辐,居然都是意外死亡寒亥,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,485評(píng)論 2 382
  • 文/潘曉璐 我一進(jìn)店門荧关,熙熙樓的掌柜王于貴愁眉苦臉地迎上來溉奕,“玉大人,你說我怎么就攤上這事忍啤〖忧冢” “怎么了?”我有些...
    開封第一講書人閱讀 152,998評(píng)論 0 344
  • 文/不壞的土叔 我叫張陵同波,是天一觀的道長(zhǎng)鳄梅。 經(jīng)常有香客問我,道長(zhǎng)未檩,這世上最難降的妖魔是什么卫枝? 我笑而不...
    開封第一講書人閱讀 55,323評(píng)論 1 279
  • 正文 為了忘掉前任,我火速辦了婚禮讹挎,結(jié)果婚禮上校赤,老公的妹妹穿的比我還像新娘吆玖。我一直安慰自己,他們只是感情好马篮,可當(dāng)我...
    茶點(diǎn)故事閱讀 64,355評(píng)論 5 374
  • 文/花漫 我一把揭開白布沾乘。 她就那樣靜靜地躺著,像睡著了一般浑测。 火紅的嫁衣襯著肌膚如雪翅阵。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 49,079評(píng)論 1 285
  • 那天迁央,我揣著相機(jī)與錄音掷匠,去河邊找鬼。 笑死岖圈,一個(gè)胖子當(dāng)著我的面吹牛讹语,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播蜂科,決...
    沈念sama閱讀 38,389評(píng)論 3 400
  • 文/蒼蘭香墨 我猛地睜開眼顽决,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來了导匣?” 一聲冷哼從身側(cè)響起才菠,我...
    開封第一講書人閱讀 37,019評(píng)論 0 259
  • 序言:老撾萬榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎贡定,沒想到半個(gè)月后赋访,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 43,519評(píng)論 1 300
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡缓待,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 35,971評(píng)論 2 325
  • 正文 我和宋清朗相戀三年蚓耽,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片命斧。...
    茶點(diǎn)故事閱讀 38,100評(píng)論 1 333
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖嘱兼,靈堂內(nèi)的尸體忽然破棺而出国葬,到底是詐尸還是另有隱情,我是刑警寧澤芹壕,帶...
    沈念sama閱讀 33,738評(píng)論 4 324
  • 正文 年R本政府宣布汇四,位于F島的核電站,受9級(jí)特大地震影響踢涌,放射性物質(zhì)發(fā)生泄漏通孽。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,293評(píng)論 3 307
  • 文/蒙蒙 一睁壁、第九天 我趴在偏房一處隱蔽的房頂上張望背苦。 院中可真熱鬧互捌,春花似錦、人聲如沸行剂。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,289評(píng)論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽厚宰。三九已至腌巾,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間铲觉,已是汗流浹背澈蝙。 一陣腳步聲響...
    開封第一講書人閱讀 31,517評(píng)論 1 262
  • 我被黑心中介騙來泰國(guó)打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留撵幽,地道東北人灯荧。 一個(gè)月前我還...
    沈念sama閱讀 45,547評(píng)論 2 354
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像并齐,于是被迫代替她去往敵國(guó)和親漏麦。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 42,834評(píng)論 2 345

推薦閱讀更多精彩內(nèi)容