西瓜書第六章支持向量機(6.1-6.2)

記錄記錄,好記性不如爛筆頭膏燃,本系列博客是我以后復習使用,所以沒有按照順序來寫何什。這一篇blog講SVM的兩個難題组哩,一個是拉格朗日乘子,一個是KKT條件。

支持向量機SVM

支持向量機(SVM)伶贰,全稱是support vector machine,簡單來說蛛砰,它是一種二類分類器,基本模型就是在特征空間上尋找間隔最大的線性分類器黍衙,基于這個模型我們更改核函數就可以把它應用于非線性問題之中泥畅,首先我們看他的定義,什么是“在特征空間中尋找間隔最大的線性分類器”琅翻?首先我們應該知道什么是線性分類器位仁,詳情見上一篇博文,其中描述的logistic regression 便是我們的基礎方椎,假設SVM是一個二分類器聂抢,那么顯而易見,我們需要將輸出結果轉換為兩種類別棠众。下面舉一個簡單的例子


二分類問題

圓圈與叉叉分別表示兩種不同的種類琳疏,顯而易見,我們可以通過logistic regression來擬合一條直線分類這兩種不同的類別闸拿,擬合之后他大概長這個樣子空盼。


logistic regression

因為w*x+b輸出的是一個連續(xù)值,比如說0.8,1.5新荤,需要將他同1,-1,0比較我注,上圖中最左邊那條虛線表示的是通過了最近的一個反例,同理最右邊那條虛線表示的是通過了最近的一個正例迟隅,這些被邊緣線通過的點被叫做支持向量但骨,他們是最重要的,哪怕不要其他點智袭。因為他們規(guī)定了正例以及反例的邊緣奔缠。

關于求解SVM時候的拉格朗日乘子以及KKT條件

我們再重新看一遍關于SVM的定義,目的是取得間隔最大化的學習器吼野,當超平面距離數據點越遠時候校哎,分類的確信度也越大,為了讓確信度足夠高我們應該讓所選擇的超平面最大化這個“間隔”值瞳步,兩個經過異類支持向量點的超平面之間距離為2/||w||,就是我們需要最大化的間隔闷哆。如下圖所示


支持向量機

我們的超平面對數據進行正常分類那么必定存在下面的不等式,對于正例y=+1单起,我們的超平面需要將他預測為>=1的情況抱怔,如果y=-1那么我們的超平面需要將他預測為<=-1。


這是很容易理解的嘀倒,當樣例為正例時我們應該把他預測至少=1或者>1,反之也是成立的屈留。那么問題現在就清楚了局冰,我們應該在他滿足正常分類的條件下,求得||w||的最小值灌危,也就是我們想要最大化||w||^2


目標函數與約束條件

上式中w,b是模型參數康二,現在我們面臨的是一個最優(yōu)化問題,怎么求解呢勇蝙?這是一個凸優(yōu)化問題(y(x),h(x)是凸函數沫勿,并且h(x)為仿射函數),我們可以用現成的工具包來解味混,但是我們這里采用的是另一種解法藕帜,可以順勢引出核函數等。
這時候我們需要構造一個拉格朗日函數惜傲,拉格朗日函數就是將約束條件分別和拉格朗日乘子相乘洽故,然后再與目標函數相加,這樣我們的關系式就可以用一個方程標示出來了盗誊,但是我們面臨一個問題时甚,就是約束條件可能是等式,也可能是不等式哈踱,我們要分開考慮兩種情況荒适。

等式約束

考慮一個簡單的問題目標函數f(x) = x1 + x2,等式約束h(x)=x1^2 + x2^2 ?2开镣,求解極小值點刀诬。f(x)在二維平面上畫出等高線(contour)就是一條條斜率相同的直線,h(x)=0在二維平面上畫出等高線就是一個圓邪财,如下圖所示陕壹。可以明顯的看出树埠,在圓圈h(x)的限制下糠馆,直線f(x)的最小值為-2,在左下角直線x1+x2=2和圓的交點上怎憋。


我們從梯度方向考慮一下又碌,如果不考慮限制條件的話,目標函數將會向他梯度的反方向移動绊袋,如下方深藍色箭頭毕匀。但是如果考慮限制的話我們只能取得圓圈上的值那么他只能向h(x)梯度正切方向移動,(注意h(x)函數是那個圓癌别,梯度是指向圓外的)皂岔,紅粗線表示目標函數移動方向,細紅線表示限制函數的梯度规个。


我們可以發(fā)現凤薛,在關鍵的極小值處姓建,我們的目標函數和限制條件的梯度是在一條直線上的诞仓,可能是同向的也可能是反向的缤苫,在極小值點有如下情況


在最小值時候梯度共線
梯度關系

也就是說,我們對于f(x)以及h(x)來說當滿足上面的式子時候墅拭,就是目標函數和限制條件在同一條直線時候活玲,并且此時的h(x)=0(因為是在圓上)時候解得的x就是我們需要的極值點,為了做到上面這個條件谍婉,我們構造一個拉格朗日函數舒憾,對函數令偏導數為0求解,這時候恰好等價于“滿足上面那個式子穗熬,并且h(x)=0”镀迂,那么此時我們求解出來的x就是我們所需要的極值點,和就是拉格朗日乘子法唤蔗。



上面我們提到的求||w||^2的最小值探遵,限制條件是要求正確分類那些點,那么就可以轉換成拉格朗日函數來求解妓柜。


拉格朗日函數

其中第二張圖片中的x就是我們需要求解的變量箱季,也就是上面問題中的w,接下來我們就需要該函數分別對x和拉格朗日乘子分別求偏導數等于0棍掐,對x求偏導為0表示滿足梯度在一條直線藏雏,對拉格朗日乘子求偏導為0表示h(x)=0,這樣求解出來的x就是極值點作煌。

不等式約束

在不等式約束中有兩種情況我們需要討論掘殴,這里需要注意以下,很多blog上面都沒有寫清楚為什么g(x)<0情況下約束條件是不起作用的粟誓,參閱了另外一篇博客時候發(fā)現了解釋杯巨,最后寫出參考的blog網址,在不等式約束g(x)<0情況下努酸,我們將極值點情況分為兩類服爷,這是一種分類思想,將極值點分為在約束域中以及約束域外获诈,首先我們來看極值點在約束域內的話是什么情況仍源。

極值點在約束域內

考慮目標函數f(x)=x12+x22,不等值約束g(x)=x12+x22?1舔涎,顯然f(x)的極小值為原點(0,0)笼踩,落在可行域內⊥鱿樱可行域以原點為圓心嚎于,半徑為1掘而。

極值點在內

如果極值點在約束條件以內,那么不管存不存在約束條件于购,我們的函數都是可以找到同一個極值點袍睡,也就是說這種情況下約束條件是沒用的,這種情況下如何來計算呢肋僧?既然約束條件沒用斑胜,那我們直接將約束條件前的拉格朗日乘子置為零,并且對目標函數求偏導數那么求出來的極值點就是我們需要的嫌吠。

極值點在約束域外

考慮目標函數f(x)=(x1?1.1)2+(x2+1.1)2 止潘,不等值約束g(x)=x12+x22?1,顯然f(x)的極小值為原點(1.1, -1.1)辫诅,落在可行域外凭戴。可行域以原點為圓心炕矮,半徑為1么夫。這種情況下我們的約束條件是有效的,因為極值點在約束域外吧享,所以我們的取值不能取到全局的極值點魏割,只能取到在約束域上的極小值。

極值點在外

圖中藍色表示的是目標函數f(x)的梯度的反方向(向梯度反方向移動下降得最快)钢颂,圖中紅色表示約束條件的梯度钞它,我們可以看出我們取得的極值點一定是在約束域邊上的,也就是表示g(x)=0殊鞭,當取得約束域上的極小值時候我們的目標函數梯度和約束條件函數梯度一定是反向的遭垛,那么他們就存在上圖下面那個函數式的關系。

我們可以總結一下不等式情況下有什么特點操灿,我們可以發(fā)現锯仪,不管是極值點在約束域內亦或者是在約束域外,我們都會有這個關系



當極值點在約束域內的時候因為約束條件是沒用的趾盐,所以我們應該讓拉格朗日乘子等于0庶喜,如果極值點在約束域之外的時候存在g(x)=0。

KKT條件

上面哪個關系式子是我們將目標函數轉換成為拉格朗日函數之后的一個限制條件救鲤,并且我們知道在不等式的兩種情況下拉格朗日乘子都是>0的久窟,同樣的這也是拉格朗日函數的一個限制條件。如果在凸優(yōu)化問題中這兩個條件都滿足那么我們求出來的極值點就是全局最小的極值點本缠,如果不是凸優(yōu)化問題那么上述條件只是必要條件不是充分條件斥扛,我們求解出來的可能不是全局極值點也可能是駐點。而我們上述的條件就是KKT條件


KKT條件

上述所有就是我們在求解SVM時候需要考慮的兩個難點丹锹,過了這道坎之后SVM大概也完成了不到一半吧稀颁,后面還有一個SMO算法以及關于核函數的問題芬失,任重而道遠哦~

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市匾灶,隨后出現的幾起案子棱烂,更是在濱河造成了極大的恐慌,老刑警劉巖粘昨,帶你破解...
    沈念sama閱讀 221,198評論 6 514
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件垢啼,死亡現場離奇詭異窜锯,居然都是意外死亡张肾,警方通過查閱死者的電腦和手機,發(fā)現死者居然都...
    沈念sama閱讀 94,334評論 3 398
  • 文/潘曉璐 我一進店門锚扎,熙熙樓的掌柜王于貴愁眉苦臉地迎上來吞瞪,“玉大人,你說我怎么就攤上這事驾孔∩指眩” “怎么了?”我有些...
    開封第一講書人閱讀 167,643評論 0 360
  • 文/不壞的土叔 我叫張陵翠勉,是天一觀的道長妖啥。 經常有香客問我,道長对碌,這世上最難降的妖魔是什么荆虱? 我笑而不...
    開封第一講書人閱讀 59,495評論 1 296
  • 正文 為了忘掉前任,我火速辦了婚禮朽们,結果婚禮上怀读,老公的妹妹穿的比我還像新娘。我一直安慰自己骑脱,他們只是感情好菜枷,可當我...
    茶點故事閱讀 68,502評論 6 397
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著叁丧,像睡著了一般啤誊。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上拥娄,一...
    開封第一講書人閱讀 52,156評論 1 308
  • 那天蚊锹,我揣著相機與錄音,去河邊找鬼条舔。 笑死枫耳,一個胖子當著我的面吹牛,可吹牛的內容都是我干的孟抗。 我是一名探鬼主播迁杨,決...
    沈念sama閱讀 40,743評論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼钻心,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了铅协?” 一聲冷哼從身側響起捷沸,我...
    開封第一講書人閱讀 39,659評論 0 276
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎狐史,沒想到半個月后痒给,有當地人在樹林里發(fā)現了一具尸體,經...
    沈念sama閱讀 46,200評論 1 319
  • 正文 獨居荒郊野嶺守林人離奇死亡骏全,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 38,282評論 3 340
  • 正文 我和宋清朗相戀三年苍柏,在試婚紗的時候發(fā)現自己被綠了。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片姜贡。...
    茶點故事閱讀 40,424評論 1 352
  • 序言:一個原本活蹦亂跳的男人離奇死亡试吁,死狀恐怖,靈堂內的尸體忽然破棺而出楼咳,到底是詐尸還是另有隱情熄捍,我是刑警寧澤,帶...
    沈念sama閱讀 36,107評論 5 349
  • 正文 年R本政府宣布母怜,位于F島的核電站余耽,受9級特大地震影響,放射性物質發(fā)生泄漏苹熏。R本人自食惡果不足惜碟贾,卻給世界環(huán)境...
    茶點故事閱讀 41,789評論 3 333
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望柜裸。 院中可真熱鬧缕陕,春花似錦、人聲如沸疙挺。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,264評論 0 23
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽铐然。三九已至蔬崩,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間搀暑,已是汗流浹背沥阳。 一陣腳步聲響...
    開封第一講書人閱讀 33,390評論 1 271
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留自点,地道東北人桐罕。 一個月前我還...
    沈念sama閱讀 48,798評論 3 376
  • 正文 我出身青樓,卻偏偏與公主長得像,于是被迫代替她去往敵國和親功炮。 傳聞我的和親對象是個殘疾皇子溅潜,可洞房花燭夜當晚...
    茶點故事閱讀 45,435評論 2 359

推薦閱讀更多精彩內容