p121 - p146
今天負能量比較爆,所以現(xiàn)在沉下來看會書反而覺得心情好了些。
第六章 支持向量機
6.1 間隔和支持向量
給定一個訓練集,最基本的想法就是找一個超平面劃分他們。
在這些超平面中,正中間的顯然“容忍性”最好,即“魯棒”性
超平面可用以下式子來描述:
w`x + b = 0
任意x到平面距離可寫為:
r = |w'x+b| / ||w||
假設(shè)這個面能正確分類,即對于y=1,w'x+b>0;y=-1,w`x+b<0。
放在實際里,可能不僅是>0 <0,如>=1與<=-1。
距離超平面最近的幾個點使=1和=-1成立,這些點對應的向量稱為支持向量(SV)
兩個異類SV到平面距離之和為 r = 2/ ||w||,稱為間隔(margin)
想要找到最大間隔的超平面,就是找w和b使得r最大,即:max 2/||w||
即min 1/2 * ||w||^2,s.t. yi (w`xi + b) >= 1。(※)
※式便是SVM的基本型。
6.2 對偶問題
※式是一個凸二次規(guī)劃問題,可以用現(xiàn)成包解決。
但有更高效方法:拉格朗日乘子法——得到對偶問題。
具體過程見p123-p124。
最終得到一個性質(zhì):訓練完成后,大部分訓練樣本對計算過程是沒用的,即最終效果只與支持向量有關(guān)。
在問題規(guī)模正比于樣本數(shù)情況下,如何具體求解?
高效算法SMO
具體過程見p124-125
6.3 核函數(shù)
不是線性可分咋辦?如異或問題。
答:映射到高維空間。
這時應用6.1與6.2的方法計算時會出現(xiàn)問題:
特征維數(shù)太大,計算困難。
引出核函數(shù)。見p127
若知道怎么映射,即φ的具體形式,就能寫出核函數(shù)k()的具體形式。
但通常不知道φ,那么怎么確定k()呢?
定理6.1(核函數(shù)定理)。p128
由此可見,“核函數(shù)選擇”成為了SVM的最大變數(shù),核函數(shù)選擇的好性能就好。
p128 6.1列出了常用的核函數(shù)。
核函數(shù)的計算準則:核函數(shù)的線性組合,直積、型都是核函數(shù)。
6.4 軟間隔與正則化
之前我們一直假定訓練樣本在樣本空間或者特征空間是線性可分的。
但是,核函數(shù)難找。
退一步說,即使找到了,恰好找到一個,也是有很大的過擬合嫌疑的。
緩解策略:允許SVM在一些樣本上出錯。
引進“軟間隔”概念
即允許某些樣本不滿足約束 yi(w'xi + b) >= 1。(※※)
同時,不滿足的應該盡可能少。
即優(yōu)化目標為:
min 1/2 * ||w||^2 + C∑ bool_func(yi(w'xi + b) - 1) (※※※)
其中bool_func稱為0/1損失函數(shù)。
定義見p130 ,但實際上我們自己是能寫出來的。。。
顯然,C為無窮大時,可理解成迫使所有樣本滿足(※※)
然而,bool_func性質(zhì)不太好(非凸,非連續(xù)),使得優(yōu)化目標不易求解。所以實際常用一些其他函數(shù)來代替bool_func,如p130 6.31-6.33三個函數(shù)。
若采用6.31的hinge損失: hinge(z) = max(0,1-z),并引入“松弛變量”
就是常用的“軟間隔支持向量機”
經(jīng)過復雜的計算推導過程(p131-132)。。
我們會發(fā)現(xiàn):
軟間隔SVM最終模型也是只和SV有關(guān),即hinge函數(shù)使訓練保持了稀疏性
可以發(fā)現(xiàn),如果使用6.33作為bool_func,幾乎得到了第三章中的對率回歸模型。
注:博主第三章看的不太明白,因為數(shù)學有些多,之后要找機會重刷一遍。
總而言之,無論使用什么模型,基本形式都會是※※※形式。
前一項稱作“結(jié)構(gòu)風險”
后一項稱作“經(jīng)驗風險”
C用來對兩者進行折中。
從這個角度來說,※※※這樣的式子稱為“正則化問題”,前一項稱為正則化問題,C稱為正則化常數(shù)。
6.5 支持向量回歸(SVR)
考慮回歸問題,即希望得到一個類似w'x+b = 0這樣的模型。
與傳統(tǒng)回歸不同,傳統(tǒng)回歸當且僅當y與f(x)相同時,才認為損失為0
SVR假設(shè)我們能容忍f(x)與y之間最多有ε的偏差,即只有誤差大于ε才計算損失,落到中間寬度為2ε的間隔帶里不計算損失。
經(jīng)過復雜的數(shù)學推導。。。(p134-136),得到解:式6.53
SVR的支持向量是間隔帶之外的向量,即其解仍具有稀疏性。
若考慮特征映射? 就是式6.56。
6.6 核方法
回顧SVM和SVR,我們發(fā)現(xiàn)學得的模型總能表示成核函數(shù)的線性組合。
實際上會有一個更普遍的結(jié)論:
定理6.2 表示定理 p137
意味著對于一般的損失函數(shù)和正則化項,優(yōu)化問題的最優(yōu)解都可以表示為k的線性組合。
這說明核函數(shù)真的很厲害。。
6.7 閱讀材料
SVM直接掀起了統(tǒng)計學習浪潮
SVM如何提高效率,應用于大規(guī)模數(shù)據(jù)一直是研究熱點。
SVM是針對二分類設(shè)計的,對多分類要進行專門的推廣。
核函數(shù)太關(guān)鍵,“多核學習”借助集成學習思想,使用多個核函數(shù)。
休息一會兒
Nothing is more practical than a good theory.
神經(jīng)網(wǎng)絡(luò)和SVM的神奇的聯(lián)系。(在注解中)
最后貼張圖,難得看書真的動了動筆
