以下內(nèi)容參考《機器學(xué)習(xí)》周志華(西瓜書)以及《機器學(xué)習(xí)公式詳解》datawhale(南瓜書)
支持向量
給定訓(xùn)練樣本D赛糟,分類學(xué)習(xí)最基本的想法就是基于訓(xùn)練集D鞍恢,在樣本空間中找到一個劃分超平面腊敲,將不同類別的樣本分開缅疟。
問題在于:選擇什么樣的超平面捍靠?
超平面可以表示為:
.
如果超平面能夠?qū)颖菊_分類囚戚,y值為正負(fù)1,對于正樣本有轧简,負(fù)樣本?, 所以存在縮放弯淘,成立:
使的等式成立的樣本稱為支持向量,兩個異類支持向量到超平面的距離:,稱為間隔吉懊。
于是庐橙,找到最大間隔,也即:
等價于
稱為SVM的基本型借嗽。
對偶問題
對于上式使用拉格朗日乘子法态鳖,得到
令L對w,b的偏導(dǎo)數(shù)為0,可轉(zhuǎn)化為:
解出即可求出w,b恶导,進(jìn)而獲取模型浆竭。
求解方法:SMO算法,避開問題規(guī)模正比于訓(xùn)練樣本數(shù)的障礙惨寿。不斷執(zhí)行如下步驟直至收斂邦泄。
* 選取一對需要更新的變量
* 固定之外的參數(shù)裂垦,求解目標(biāo)函數(shù)獲得更新后的
由于KKT條件:
于是,對于任意的訓(xùn)練樣本有:,前者對f沒有影響蕉拢,后者代表支持向量特碳。
SMO算法:選擇兩變量對應(yīng)樣本之間的間隔最大,這樣更新后能夠?qū)δ繕?biāo)函數(shù)值帶來更大的變化晕换。
求出后可以獲取w午乓,利用支持向量的平均值可以獲取b
核函數(shù)
對于線性不可分的問題,可以將樣本從原始空間映射到一個更高維的特征空間闸准,使得樣本在這個特征空間線性可分益愈。利用作為映射,超平面可以記為:.
類似未做映射的SVM夷家,可以得知計算w蒸其,b 需要,設(shè)想函數(shù),
于是可以得到
即核函數(shù)或辖。
什么樣的函數(shù)可以做核函數(shù)?
一個對稱函數(shù)枣接,對應(yīng)的核矩陣半正定,就能作為核函數(shù)使用缺谴。
注意但惶,核函數(shù)可以通過組合得到:
1. 若為核函數(shù)湿蛔,任意正數(shù),線性組合為核函數(shù)阳啥;
2. 若為核函數(shù),直積為核函數(shù)察迟;
2. 若為核函數(shù)斩狱,對于任意,是核函數(shù)。
軟間隔
允許支持向量機在一些樣本上出錯扎瓶,也就是不滿足約束所踊。由于希望不滿足約束的樣本盡可能少,于是優(yōu)化目標(biāo)為:
由于l的連續(xù)性與凸不好误证,有替代損失函數(shù)继薛,如:
引入松弛變量,模型變?yōu)?/p>
即軟間隔支持向量機愈捅。類似的遏考,拉格朗日獲得對偶問題求解。
支持向量回歸
簡稱SVR蓝谨,以f為中心構(gòu)建了一個間隔帶诈皿,若訓(xùn)練樣本落入間隔帶,被認(rèn)為預(yù)測正確像棘。
核方法
一系列基于核函數(shù)的學(xué)習(xí)方法稽亏,常見的是核化將線性學(xué)習(xí)器擴(kuò)展為非線性學(xué)習(xí)器。