這顯示出支持向量機(jī)的一個(gè)重要性質(zhì):訓(xùn)練完成后,大部分的訓(xùn)練樣本都不許保留,最后模型只與支持向量有關(guān)。
具體求解算法截圖原文信息如下:
3. 核函數(shù)(核函數(shù),核矩陣+RKHS)
現(xiàn)實(shí)中,不一定訓(xùn)練集是線性可分的。比如:
對(duì)這樣的問(wèn)題,我們考慮將樣本從原始空間映射到一個(gè)更高維度的特征空間,使得樣本在這個(gè)特征空間內(nèi)是線性可分,(例如上圖所示)那么問(wèn)題轉(zhuǎn)化為了怎樣求這個(gè)映射。幸運(yùn)的是,只要原始空間是有限維的,即屬性數(shù)有限,那么一定存在一個(gè)高維特征空間使得樣本可分。
設(shè)這個(gè)映射為
那么在特征空間里劃分超平面對(duì)應(yīng)的模型可表示為
類似(1.2)有
得到對(duì)偶問(wèn)題為:
求解(6.21)涉及計(jì)算
,這是特征向量映射到特征空間之后的內(nèi)積。由于特征空間維數(shù)可能很高甚至無(wú)窮維,因此計(jì)算這個(gè)
不容易,為了避開,可以設(shè)想一個(gè)函數(shù)
=\phi(\pmb{x}_i)^T\phi(\pmb{x}_j)" src="" />
有了函數(shù)就不需要計(jì)算內(nèi)積,于是(6.21)可寫成
求解后可以得到
這里的函數(shù)
就是“核函數(shù)”( )。
(6.24)顯示,我們把求變換和對(duì)應(yīng)的超平面的優(yōu)化過(guò)程支持向量機(jī) 邏輯回歸,求模型的最優(yōu)解可通過(guò)訓(xùn)練樣本的核函數(shù)展開,這一展式亦稱為“支持向量展式”( )。
問(wèn)題:我們都不知道
,怎么求核函數(shù)
?我們有下述定理
定理6.1表示,只要一個(gè)對(duì)稱函數(shù)生成核矩陣半正定,就可以做為核函數(shù)使用。事實(shí)上,對(duì)于一個(gè)半正定核矩陣,總有一個(gè)對(duì)應(yīng)映射
。換言之,對(duì)于任何一個(gè)核函數(shù)都隱式定義一個(gè)稱為“再生核希爾伯特空間”( Space,簡(jiǎn)稱為RKHS)的特征空間。
注:
常用核函數(shù):
核函數(shù)性質(zhì):
4. 軟間隔與正則化
假設(shè)是線性可分的也未必可行,很難確定合適的核函數(shù),即使找到了,也不知道是不是過(guò)擬合。
緩解這種糟糕的情況出現(xiàn)的方法是允許SVM在一些樣本出錯(cuò),為此,要引入軟間隔(soft )的概念,如圖:
用一句比較俗的話,是盼計(jì)算機(jī)學(xué)得好(以防欠擬合)、又怕它學(xué)得太好(以防過(guò)擬合),所以要留一點(diǎn)余地。
這個(gè)0/1損失函數(shù)性質(zhì)不好(非凸、非連續(xù),數(shù)學(xué)性質(zhì)不好),因此通常用其他的代替,稱為“替代函數(shù)”( loss)。如:
以hinge損失為例:
類似地,帶入(6.36)可得
與前面的(6.23)相比,目標(biāo)函數(shù)是一樣的,只有約束多了上界,因此支持向量展式也相同。
類似地,得到KKT條件要求:
有類似的分析,對(duì)于
有影響的
,一定滿足
,這樣本是支持向量。
其它替代損失函數(shù)?
5. 支持向量回歸
現(xiàn)在我們來(lái)考慮回歸問(wèn)題. 給定訓(xùn)練樣本
,希望學(xué)得一個(gè)形如式(6.7)的回歸模型,使得
與
盡可能接近,
和
是待確定的模型參數(shù)。
對(duì)樣本
支持向量機(jī) 邏輯回歸,傳統(tǒng)回歸模型通常直接基于模型輸出
與真實(shí)輸出
之間的差別來(lái)計(jì)算損失,當(dāng)且僅當(dāng)
與
完全相同時(shí),損失才為零。與此不同,支持向量回歸( , 簡(jiǎn)稱 SVR)假設(shè)我們能容忍
與
之間最多有
的偏差,即僅當(dāng)
與
之間的差別絕對(duì)值大于
時(shí)才計(jì)算損失. 如圖6.6所示,這相當(dāng)于以
為中心,構(gòu)建了一個(gè)寬度為
的間隔帶,若訓(xùn)練樣本落入此間隔帶,則被認(rèn)為是預(yù)測(cè)正確的。
于是,SVR問(wèn)題可形式化為
松弛變量的引入常常是為了便于在更大的可行域內(nèi)求解。若為0,則收斂到原有狀態(tài),若大于零,則約束松弛。
對(duì)線性規(guī)劃問(wèn)題的研究是基于標(biāo)準(zhǔn)型進(jìn)行的。因此對(duì)于給定的非標(biāo)準(zhǔn)型線性規(guī)劃問(wèn)題的數(shù)學(xué)模型,則需要將其化為標(biāo)準(zhǔn)型。一般地,對(duì)于不同形式的線性規(guī)劃模型,可以采用一些方法將其化為標(biāo)準(zhǔn)型。其中,
當(dāng)約束條件為“≤”(“≥”)類型的線性規(guī)劃問(wèn)題,可在不等式左邊加上(或者減去)一個(gè)非負(fù)的新變量,即可化為等式。這個(gè)新增的非負(fù)變量稱為松弛變量(或剩余變量),也可統(tǒng)稱為松弛變量。在目標(biāo)變量中一般認(rèn)為新增的松弛變量的系數(shù)為零。
?
(6.47)代入(6.7)知道,解為
能使得
不為零的樣本就是支持向量,且落在間隔帶之外,同樣,我們只關(guān)注SVR中的支持向量,是訓(xùn)練樣本中的一部分,解有稀疏性。
如果考慮特征映射,那么式子將形如
SVR可表示為
6. 核方法
回顧 式(6.24)和(6.56)可 發(fā)現(xiàn),給定訓(xùn)練樣本
了,若不考慮偏移項(xiàng)
,則無(wú)論SVM 還是SVR, 學(xué)得的模型總能表示成核函數(shù)
的線性組合.不僅如此,事實(shí)上我們有下面這個(gè)稱為 “表示定理” ( )的更一般的結(jié)論:
表示定理對(duì)損失西數(shù)沒有限制,對(duì)正則化項(xiàng)
僅要求單調(diào)遞增,甚至不要求是凸函數(shù),意味著對(duì)于一般的損失函數(shù)和正則化項(xiàng),優(yōu)化問(wèn)題(6.57)的最優(yōu)解h*(x)都可表示為核函數(shù)
的線性組合;這顯示出核函數(shù)的巨大威力。
人們發(fā)展出一系列基于核函數(shù)的學(xué)習(xí)方法,統(tǒng)稱為 “核方法” ()。最常見的,是通過(guò)“核化”(即引入核函數(shù))來(lái)將線性學(xué)習(xí)器拓展為非線性學(xué)習(xí)器。
下面我們以線性判別分析為例來(lái)演示如何通過(guò)核化來(lái)對(duì)其進(jìn)行非線性拓展,從而得到“核線性判別分析” ( , 簡(jiǎn)稱 KLDA)。(略過(guò))
【結(jié)論】
核方法,通過(guò)證明找到一個(gè)核函數(shù),能把原本無(wú)法通過(guò)超平面分割的點(diǎn)集映射到可分的高維,并且數(shù)學(xué)上證明了其存在性條件。但是實(shí)際上在使用中,我們大多數(shù)情況下并不會(huì)真的去找到這樣一個(gè)核函數(shù),而是用常用的核函數(shù)直接用(經(jīng)驗(yàn)公式大概率可以用)。