資料探勘演算法之支援向量機(SVM)(二)

2021-10-08 07:16:42 字數 2973 閱讀 3644

在第一篇中我們講解了線性可分下的硬間隔分類器,但那只是svm演算法的起點。現實中許多問題並不是線性可分的,如果樣本不能被完全分開,那麼就是:間隔為負,原問題的可行域為空,對偶問題的目標函式無限,這將導致相應的最優化問題無解。

今天我們就講下針對近似線性可分情況下的軟間隔優化。

在軟間隔分類器中,允許存在少量的「噪音資料」,這些樣本點被認為是訓練錯誤。具體地說,就是引入鬆弛變數ξ

iξ_i

ξi​來量化分類器的違規行為:

其中引數c用來平衡機器的複雜度和不可分數據點的數量,是乙個使用者設定的「正則化」引數。

鬆弛變數的乙個直接幾何解釋是:乙個錯分例項到超平面的距離。這個距離度量的是錯分例項相對於理想的可分模式的偏差程度。

該優化問題的解法和前篇類似,這是乙個包含兩個不等式約束的極值問題,直接套用拉格朗日乘子法,為兩個不等式約束引入兩個拉格朗日乘子ɑi,

其對偶問題為:

簡單說就是將min、max互換。但是值得注意的是,第乙個問題,也就是原問題是關於w、b、和ξ的函式,對偶問題是關於ɑ、β的函式。

現在帶約束的最優化問題就轉化成了無約束的優化問題(其實仍然有約束,但是是對拉格朗日乘子的約束,對變數已經沒有約束了,所以我們稱之為無約束)。求解這樣的拉格朗日函式,就是對w、b和ξ求偏導數:

將求得的結果帶入拉格朗日函式,得:

上面的是目標優化函式,還要加上約束。由前面求偏導時得到的βi=

c−αi

和βi⩾

0\beta_i = c - \alpha_i 和 \beta_i \geqslant 0

βi​=c−

αi​和

βi​⩾

0,可得0⩽α

i⩽c0 \leqslant \alpha_i \leqslant c

0⩽αi​⩽

c,於是,最終完整的優化函式為:

不難看出,鬆弛變數並沒有出現在對偶問題裡,線性可分與不可分的差異體現在約束ai≥

0(可分

)a_i≥0(可分)

ai​≥0(

可分)被替換為更嚴格的約束0≤a

i≤c(

不可分)

0≤a_i≤c(不可分)

0≤ai​≤

c(不可

分)。軟間隔svm的超平面引數(w,b)同樣由支援向量決定,推導其支援向量需要用到 (1.3) 式最優解的 kkt 條件:

分情況討論:

(1)若?_?=0, 由 (1.4) 式 ?=0 ,不是支援向量。

(2)00⟹(1.13)式:??=0⟹(1.12)式:??(?⊤??+?)=1 ,該樣本在間隔邊界上。

(3)?_?=?⟹(1.11)式:??=0⟹(1.13)式:??>0⟹

有了上述討論後,我們來看軟間隔svm如何得到最終引數(w,b)。其中w和硬間隔一樣,由(1.4)式得出;對於b,任選乙個支援向量(x_s,y_s)使得a_i>0,則由(1.12)式並利用y_s^2=1可得:

顯然,?和b都未知的情況下,我們無法求出b。或許你已經意識到,軟間隔svm求b的方法和硬間隔有所不同——不再是任選支援向量,而是必須滿足必須恰好在間隔邊界上的支援向量,即上面討論的情況(2),?為0,故

b =y

s−wt

∗xsb=y_s - w^t*x_s

b=ys​−

wt∗x

s​我們的目標函式就是:f(x

)=si

gn(w

t∗x+

b)f(x) = sign(w^t * x + b)

f(x)=s

ign(

wt∗x

+b)其中:

w =∑

i=1m

αiyi

xib=

ys−y

sξs−

w⊤xs

((xs

,ys)

為決策邊

界上的一

支援向量

)\boldsymbol = \sum\limits_^m \alpha_i y_i \boldsymbol_i \qquad\qquad \\ b = y_s - y_s\xi_s - \boldsymbol^\boldsymbol_s \\ ((x_s,y_s)為決策邊界上的一支援向量)

w=i=1∑

m​αi

​yi​

xi​b

=ys​

−ys​

ξs​−

w⊤xs

​((x

s​,y

s​)為

決策邊界

上的一支

持向量)

支援向量機(SVM)演算法

支援向量機 support vector machine 是一種分類演算法,通過尋求結構化風險最小來提高學習機泛化能力,實現經驗風險和置信範圍的最小化,從而達到在統計樣本量較少的情況下,亦能獲得良好統計規律的目的。通俗來講,它是一種二類分類模型,其基本模型定義為特徵空間上的間隔最大的線性分類器,即支...

分類演算法之支援向量機(SVM)

一 概念 支援向量機是一類按監督學習方式對資料進行二元分類的廣義線性分類器,如果進行修改之後也是可以用於多類別問題的分類。支援向量機可以分為線性和非線性兩大類。其主要思想為找到空間中的乙個更夠將所有資料樣本劃開的超平面,並且使得樣本集中所有資料到這個超平面的距離最短。其決策邊界是對學習樣本求解的最大...

分類演算法SVM(支援向量機

支援向量機 support vector machine svm 的主要思想是 建立乙個最優決策超平面,使得該平面兩側距離該平面最近的兩類樣本之間的距離最大化,從而對分類問題提供良好的泛化能力。對於乙個多維的樣本集,系統隨機產生乙個超平面並不斷移動,對樣本進行分類,直到訓練樣本中屬於不同類別的樣本點...