機器學習(6) -- 支持向量機

6.1 間隔與支持向量

優化

6.2 對偶問題

對上式使用拉格朗日乘子法可得其對偶問題

分別對我w,b求偏導

代入L(w,b,α),消去w,b,即得

----------1式

求解α,代入模型

上述過程滿足KKT條件:

這個是拉格朗日乘子

約束條件

這個是拉格朗日乘子

 

求解1式,SMO算法

SMO算法基本思路是先固定之外的所有參數,然後求上的極值。由於存在約束 ,於是每次選擇兩個變量 ,並固定其他參數,參數初始化後,SMO不斷執行如下兩步:

選取一對需要更新的變量

固定以外的參數,求解1式獲得更新後的

直觀看,KKT條件違背的程度越大,則變量更新後可能導致的目標函數值減幅越大。於是,SMO先選取違背KKT 條件程度最大的變量。

SMO採用了啓發式:使選取的兩變量所對應樣本之間的間隔最大。直觀解釋是這樣的兩個變量有很大差別,與對兩個相似的變量進行更新相比,對他們進行更新會帶給目標函數值更大的變化

6.3 核函數

原始樣本空間不存在能正確劃分兩類樣本的超平面,如異或問題。

於是將原始空間映射到一個更高維的特徵空間,使得樣本在這個特徵空間內線性可分。

如果原始空間是有限維,即屬性數有限,那麼一定存在一個高維特徵空間使樣本可分。

 

於是,劃分超平面對應的模型爲

 

優化目標

 

對偶問題

 

核函數:

 

替換,求解:

 

只要一個對稱函數所對應的核矩陣半正定,它就能作爲核函數使用。對於一個半正定 核矩陣,總能找到一個與之對應的映射φ。也就是,任何一個核函數都隱式地定義了一個稱爲“ 再生核希爾伯特空間”的特徵空間。

 

若K1,K2是核函數,則γ1K1+γ2K2,,K(x,z)=g(x)K1(x,z)g(z) 也是核函數

6.4 軟間隔與正則化

允許支持向量機在樣本上出錯

於是,優化目標寫爲:

C無窮大時迫使所有樣本滿足約束,當C取有限值時,允許一些樣本不滿足約束

數學性質不好,於是用其他函數替代 , 稱爲替代損失

hinge損失

引入鬆弛變量

 

拉格朗日乘子法

 

通過採用hinge損失扔保持了稀疏性

使用對率損失幾乎得到了對率迴歸模型,兩者優化目標相近,性能也相當。

對率迴歸輸出概率,支持向量機不具備概率意義

對率迴歸能直接應用於多分類任務,支持向量機需要推廣

是光滑遞減函數,不能導出類似支持向量的概念,因此對率迴歸的解依賴更多樣本,預測開銷大

 

優化目標一般形式:

---------2式

Ω(f):結構風險,描述模型f的某些性質

:經驗風險,描述模型與訓練數據的契合程度

C:對二者折中

 

從經驗風險最小化角度看,Ω(f)表述了我們希望獲得具有何種性質的模型(例如希望獲得複雜度較小的模型),另一方面,該信息有助於削減假設空間,從而降低了最小化訓練誤差的過擬合風險,從這個角度說,2式稱爲“正則化問題”,Ω(f)爲正則化項,C爲正則化常數。

 

正則化可理解爲一種“罰函數法”,即對不希望得到的結果施以懲罰,從而使得優化過程趨向於希望目標。從貝葉斯估計角度來看,正則化項可以認爲是提供了模型的先驗概率。

 

6.5 支持向量迴歸SVR

傳統迴歸基於模型f(x)與真實輸出y之間的差別來計算損失,當且僅當f(x)與y完全相同時損失才爲0。

支持向量迴歸假設我們能容忍f(x)與y之間最多有ε的偏差,即僅當f(x)與Y之間的差別絕對值大於ε時才計算損失,這相當於以ε爲中心,構建了一個寬度爲2ε的間隔帶,若樣本落入此帶,則認爲是被預測正確的

於是

引入鬆弛變量

拉格朗日函數

 

對偶問題

解形如

僅當(xi,yi)不落入ε間隔帶中,相 應的 才能取非零值。

 

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章