機器學習 SVM核函式的計算

2021-07-25 06:30:47 字數 1934 閱讀 1539

在【機器學習】推導支援向量機svm二分類中,我們已經推導出線性核svm的對偶優化問題:j=

∑iαi

−12∑

i∑jα

iαjd

idjk

(xi)

tk(x

j)=∑

iαi−

12∑i

∑jαi

αjdi

djk(

xi,x

j)su

bjec

tto∑

αidi

=0,0

≤αi≤

c 在優化好αi

拉格朗日量後,我們得到的w和b為:w=

∑αid

ixib

=−(y

1+y−

1)/2

需要注意的是,

w 的表示式中有xi

。 我們引入核函式k(

xi,x

j)到svm,必須注意到k(

xi,x

j)=ϕ

(xi)

tϕ(x

j),也就是說理論上核函式應該能拆開。在引入核函式的前提下,w的表示式為w=

∑αid

iϕ(x

i)t

我們已知幾個常用核函式,比如多項式核函式和徑向基核函式。多項式核函式的的定義為k(

xi,x

j)=(

xtix

j+1)

n 假設n=2,那麼拆開為k(

xi,x

j)=(

xti)

2x2j

+2xi

xj+1

=[(x

ti)2

,2‾‾

√xti

,1][

(xtj

)2,2

‾‾√x

tj,1

]t這裡,我們可以確實求出w的值。

徑向基核函式定義為k(

xi,x

j)=e

−(xi

−xj)

2σ2=

e−x2

iσ2e

−x2j

σ2ex

tixj

σ2=e

−x2i

σ2e−

x2jσ

2∑k=

0∞(2

xtix

j/σ2

)kk!

=[e−

x2iσ

2,1,

21‾‾

√xiσ

,222

!‾‾‾

√(xi

σ)2,

...]

[e−x

2jσ2

,1,2

1‾‾√

xjσ,

222!

‾‾‾√

(xjσ

)2,.

..]t

結果表明,φ(

x)函式是乙個無限維度的函式。這說明,在工程上我們不一定能夠完美地拆開核函式為k(

xi,x

j)=ϕ

(xi)

tϕ(x

j)。之後還有很多各種型別的核函式,比如使用了tanh函式的核函式,這些核函式在工程上是很難拆分求解的,很難獲取ϕ(

x)函式,亦難以求取w的確切值。

那麼如何求解引入複雜核函式的svm呢?在優化求解j之後,我們可以獲取並儲存αi

。由於svm只有少量支援向量(資料)對決策超平面有決定作用,很多拉格朗日引數αi

→0,我們可以只儲存足夠大的αi

以及對應的訓練資料xi

、標記di

,不直接計算出w的確切值,這在工程上是確實可行的。

當我們需要進行**的時候,我們匯入αi

,xi 和

di,然後把新資料x代入核函式,計算y=

∑iαi

dik(

xi,x

)+b 即可。

機器學習 SVM(核函式 高斯核函式RBF)

1 格式 2 多項式核函式 對傳入的樣本資料點新增多項式項 新的樣本資料點進行點乘,返回點乘結果 一維特徵的樣本,兩種型別,分布如圖,線性不可分 為樣本新增乙個特徵 x2 使得樣本在二維平面內分布,此時樣本在 x 軸公升的分布位置不變 如圖,可以線性可分 3 優點 特點 一般將原始樣本變形,通常是將...

機器學習 SVM(3)核函式

更詳細的講解可以參考原部落格。1 為什麼引入核函式呢?為了回答這個問題,我們先來說明什麼是線性不可分資料。如下左圖所示,如果資料能用一條直線或乙個超平面分開的資料,就是線性不可分資料。那麼什麼是線性不可分資料呢?如下右圖所示,我們無法用一條直線或乙個超平面分開的資料。很不幸的是我們之前介紹的svm是...

機器學習(7) SVM與核函式

是乙個類似於邏輯回歸的方法,用於對不同因素影響的某個結果的分類。但邏輯回歸主要採用的是sigmoid函式,svm有自己常用的核函式 linear線性核 rbf徑向基 poly多項式 比方說,要對一堆香蕉和黃瓜進行分類 首先要明確的是,我們常見的香蕉為黃色,黃瓜為綠色 為什麼不叫綠瓜?但是香蕉有綠色的...