機器學習----支援向量機(核函式)
阿新 • • 發佈:2019-01-29
#線性不可分
我們的SVM是找到一條分割直線,但是如果線性不可分怎麼辦?如下圖:
maxα∑ipαi−12∑i,j=1pyiyjαiαjxTi⋅xj
現在改寫成:
m axα∑ipαi−12∑i,j=1pyiyjαiαjϕ(xi)T⋅ϕ(xj)
接下來我們就要說核函數了(kernel)。注意到先變換再內積的複雜(二維就是2×2,三維就是3×3),我們就像有沒有函式κ 它滿足這樣優良的性質:
ϕ(xi)T⋅ϕ(xj)=κ(xi,xj)
即它能把問題變成先低維預算,再直接對映的效果,我們把κ 就叫做核函式。
常見的核函式有:
可以看出,是有一個明顯的分割線的,但是不是直線,這種情況下我們怎麼用SVM呢?我們可以找到一種變化,讓變換後的資料線性可分,用圖形象的表示為:
圖中的
核函式
我們接著說線性不可分問題。我們怎麼找
比如原始資料滿足的是二次函式規律那把原來的X,擴充套件成[X | X2]的形式,這樣我們就又能進行線性迴歸了。同理,如果是三次,就擴充套件成[X | X2| X3],記作
正常線性可分問題dual問題為:
現在改寫成:
接下來我們就要說核函數了(kernel)。注意到先變換再內積的複雜(二維就是2×2,三維就是3×3),我們就像有沒有函式
即它能把問題變成先低維預算,再直接對映的效果,我們把
常見的核函式有:
名稱 | 表示式 | 引數 |
---|---|---|
線性核 | ||
多項式核 | ||
高斯核 | ||
拉普拉斯核 | ||
Sigmoid核 | tanh為雙曲正切函式, |
下圖是高斯核的例子: