SVM的核心思想
支持向量機(jī)的最核心的想法就是從輸入空間到更加高維度的特征空間映射揩尸,這里有一點(diǎn)像是神經(jīng)網(wǎng)絡(luò)中的,針對(duì)輸入在隱含層進(jìn)行一個(gè)轉(zhuǎn)換孵奶,最后所生成的特征拿去進(jìn)行分類疲酌。
就是說不是在原始空間中進(jìn)行分類,而是在一個(gè)新的空間中進(jìn)行分類,在新的空間(高維度)中朗恳,會(huì)認(rèn)為這個(gè)分類問題會(huì)得到一定程度的簡化湿颅。
在高維度空間中,之前(低緯度空間)的線性不可分的問題就會(huì)被認(rèn)為是一個(gè)線性可分的問題粥诫。
最大間隔
wx + b = 0中w的方向是垂直于超平面的
空間中任意一點(diǎn)到超平面的距離
問題引入:選擇哪個(gè)超平面油航?
很多的超平面都可以使得在當(dāng)前的訓(xùn)練集的條件之下,做到訓(xùn)練誤差為0怀浆,那么問題來了谊囚,到底選擇哪個(gè)呢?
其實(shí)問題的關(guān)鍵不是其在訓(xùn)練集上面的表現(xiàn)执赡,而是其在測試集上面的表現(xiàn)是怎么樣的(也就是說需要考察其泛化性能)镰踏。
概念:間隔和支持向量
support vectors 決定了分離超平面所能夠移動(dòng)的范圍,這個(gè)范圍就是叫做margin沙合。
如何使用數(shù)學(xué)語言定義間隔奠伪?
只有使用數(shù)學(xué)的形式定義margin才可以去優(yōu)化和求解。
假設(shè)我的樣本是線性可分的首懈,那么绊率,我就一定可以找到平行的兩條線:
使得:
然后通過一系列的縮放變換可以得到,周老師的書中(周志華《機(jī)器學(xué)習(xí)》究履,也就是上面截圖的書)的樣子:
下面我給出相關(guān)的變換的思路:
然后我們就是找到間隔最大的這個(gè)w0(我這里設(shè)置的就是w0)滤否,然后w0x + b0?= 0就是我們要找的分離超平面。
線性可分的SVM
目標(biāo)函數(shù)
線性可分的支持向量機(jī)其實(shí)有兩個(gè)目標(biāo):
第一最仑,就是你需要把所有的樣本都分對(duì):
第二藐俺,就是在所有的樣本全部都分對(duì)的情況之下使得間隔(margin)最大化:
所以,目標(biāo)函數(shù)的數(shù)學(xué)形式如下:
求解目標(biāo)函數(shù):拉格朗日乘數(shù)法
原始問題:
對(duì)偶問題:一般而言盯仪,原始問題和對(duì)偶問題是不等價(jià)的紊搪,但是在SVM中的原始問題同對(duì)偶問題之間是等價(jià)的(這個(gè)是不用深究的),我們現(xiàn)在所要研究的問題就是變成了如何優(yōu)化新的目標(biāo)函數(shù)的問題全景。
下面是w和b的解:
下面是一個(gè)簡單的例子展示svm如何求解:
軟間隔:含有噪聲的線性可分情況
目標(biāo)函數(shù)和拉格朗日函數(shù):
回代以及對(duì)偶問題求解:
非線性可分SVM
一維空間到二維空間映射的一個(gè)例子
所映射到的空間:特征空間
映射方法
基本的映射變換
高維空間中兩個(gè)向量(樣本)作內(nèi)積
核函數(shù):高維空間內(nèi)積和低維空間內(nèi)積的聯(lián)系
核技巧
從低維空間到高維空間的優(yōu)缺點(diǎn)
優(yōu)點(diǎn):數(shù)據(jù)的可分性增加
缺點(diǎn):計(jì)算的復(fù)雜度增加
核技巧主要干一件什么樣子的事情
所以說SVM為啥這么好
即利用了高維空間中的數(shù)據(jù)比較好分耀石。
又避免了高維空間中的計(jì)算復(fù)雜度較高這個(gè)缺點(diǎn)。
核函數(shù)到底長啥樣爸黄?(不同類型的核函數(shù))
字符型核
非線性情況之下的w和b的求解
致敬
SVM的發(fā)展歷程回顧
SVM之父
模型效能
VC維(建議看林軒田《機(jī)器學(xué)習(xí)基石》)
所謂的VC dimension就是你的模型最多可以shatter多少個(gè)點(diǎn):
VC dimension是一個(gè)比較保守的估計(jì)滞伟,其認(rèn)為樣本可以進(jìn)行任意打標(biāo)簽,但是實(shí)際的問題是沒有這么復(fù)雜的:
所謂的VC dimension炕贵,就是模型的能力梆奈,對(duì)于h個(gè)點(diǎn),不管如何打標(biāo)簽称开,這個(gè)模型都可以將其分開亩钟,那么我們就可以說這個(gè)模型的VC dimension就是h:
超平面在n維空間中乓梨,其VC dimension就是n + 1。
樹的葉子節(jié)點(diǎn)的數(shù)量決定了其VC dimensiion清酥,越復(fù)雜的決策樹扶镀,其VC dimension就越高。
對(duì)于SVM而言焰轻,其VC dimension就是取決于其使用了何種的核函數(shù)臭觉。
數(shù)據(jù)挖掘的基本假設(shè)的問題探討
數(shù)據(jù)挖掘中所使用的數(shù)據(jù)都被假設(shè)是有規(guī)律分布的,如果都是噪聲辱志,那么你怎么進(jìn)行數(shù)據(jù)挖掘的行為都是沒有用處的蝠筑。
所以,基于以上假設(shè)揩懒,我們可以使用線性模型去對(duì)成千上萬的點(diǎn)進(jìn)行分類什乙,如果嚴(yán)格按照VC dimension的理論的話線性模型是無法做到對(duì)成千上萬個(gè)隨機(jī)的點(diǎn)進(jìn)行分類的。
為什么優(yōu)先選擇簡單的(vc dimention較低)的模型
h值越大旭从,這里的后面的公式就是bound稳强,就會(huì)越大,說明訓(xùn)練誤差和測試誤差之間的距離越大和悦。
也就是說,同樣的兩個(gè)模型渠缕,如果具有相同的訓(xùn)練誤差鸽素,我們應(yīng)該是偏向于使用比較簡單的那個(gè)模型的,而不是比較復(fù)雜的那個(gè)模型(也就是VC dimension較高的那個(gè)模型)亦鳞。
越復(fù)雜的模型馍忽,其risk一般而言會(huì)比較大,其在未知樣本上的performance就更加難以把握燕差。