SVM 的核函數(shù)選擇和調(diào)參


本文結(jié)構(gòu):

  1. 什么是核函數(shù)
  2. 都有哪些 & 如何選擇
  3. 調(diào)參

1. 什么是核函數(shù)

核函數(shù)形式 K(x, y) = <f(x), f(y)>,
其中 x, y 為 n 維,f 為 n 維到 m 維的映射,<f(x), f(y)> 表示內(nèi)積。

在用SVM處理問題時(shí),如果數(shù)據(jù)線性不可分,希望通過 將輸入空間內(nèi)線性不可分的數(shù)據(jù) 映射到 一個(gè)高維的特征空間內(nèi),使數(shù)據(jù)在特征空間內(nèi)是線性可分的,這個(gè)映射記作 ?(x),

之后優(yōu)化問題中就會(huì)有內(nèi)積 ?i??j,
這個(gè)內(nèi)積的計(jì)算維度會(huì)非常大,因此引入了核函數(shù),
kernel 可以幫我們很快地做一些計(jì)算, 否則將需要在高維空間中進(jìn)行計(jì)算。


2. 都有哪些 & 如何選擇

下表列出了 9 種核函數(shù)以及它們的用處和公式,常用的為其中的前四個(gè):linear,Polynomial,RBF,Sigmoid

核函數(shù) 用處 公式
linear kernel 線性可分時(shí),特征數(shù)量多時(shí),樣本數(shù)量多再補(bǔ)充一些特征時(shí),linear kernel可以是RBF kernel的特殊情況
Polynomial kernel image processing,參數(shù)比RBF多,取值范圍是(0,inf)
Gaussian radial basis function (RBF) 通用,線性不可分時(shí),特征維數(shù)少 樣本數(shù)量正常時(shí),在沒有先驗(yàn)知識(shí)時(shí)用,取值在[0,1]
Sigmoid kernel 生成神經(jīng)網(wǎng)絡(luò),在某些參數(shù)下和RBF很像,可能在某些參數(shù)下是無效的
Gaussian kernel 通用,在沒有先驗(yàn)知識(shí)時(shí)用
Laplace RBF kernel 通用,在沒有先驗(yàn)知識(shí)時(shí)用
Hyperbolic tangent kernel neural networks中用
Bessel function of the first kind Kernel 可消除函數(shù)中的交叉項(xiàng)
ANOVA radial basis kernel 回歸問題
Linear splines kernel in one-dimension text categorization,回歸問題,處理大型稀疏向量

其中 linear kernel 和 RBF kernel 在線性可分和不可分的對(duì)比可視化例子如下:

linear kernel RBF kernel
線性可分
線性不可分

3. 調(diào)參

在 sklearn 中可以用 grid search 找到合適的 kernel,以及它們的 gamma,C 等參數(shù),那么來看看各 kernel 主要調(diào)節(jié)的參數(shù)是哪些:

核函數(shù) 公式 調(diào)參
linear kernel
Polynomial kernel
-d:多項(xiàng)式核函數(shù)的最高次項(xiàng)次數(shù),-g:gamma參數(shù),-r:核函數(shù)中的coef0
Gaussian radial basis function (RBF)
-g:gamma參數(shù),默認(rèn)值是1/k
Sigmoid kernel
-g:gamma參數(shù),-r:核函數(shù)中的coef0

其中有兩個(gè)重要的參數(shù),即 C(懲罰系數(shù)) 和 gamma,
gamma 越大,支持向量越少,gamma 越小,支持向量越多。
而支持向量的個(gè)數(shù)影響訓(xùn)練和預(yù)測(cè)的速度。
C 越高,容易過擬合。C 越小,容易欠擬合。


學(xué)習(xí)資料:
https://data-flair.training/blogs/svm-kernel-functions/
https://www.quora.com/What-are-kernels-in-machine-learning-and-SVM-and-why-do-we-need-them
https://www.zhihu.com/question/21883548
https://www.quora.com/How-do-I-select-SVM-kernels


推薦閱讀 歷史技術(shù)博文鏈接匯總
http://www.lxweimin.com/p/28f02bb59fe5
也許可以找到你想要的:
[入門問題][TensorFlow][深度學(xué)習(xí)][強(qiáng)化學(xué)習(xí)][神經(jīng)網(wǎng)絡(luò)][機(jī)器學(xué)習(xí)][自然語(yǔ)言處理][聊天機(jī)器人]

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

推薦閱讀更多精彩內(nèi)容

  • 標(biāo)簽: PRML; 核函數(shù) 備注:文中可能存在錯(cuò)誤,敬請(qǐng)指正。 聲明:本文主要整理思路,原創(chuàng)參考資料列在文末,在...
    zjdxwsn閱讀 780評(píng)論 0 0
  • 本文是scikit-learn 支持向量機(jī)的翻譯,原文地址:http://scikit-learn.org/sta...
    學(xué)以致用123閱讀 3,049評(píng)論 0 4
  • 支持向量機(jī):是一種監(jiān)督式學(xué)習(xí)的方法,可廣泛地應(yīng)用于統(tǒng)計(jì)分類以及回歸分析。支持向量機(jī)屬于一般化線性分類器,這族分類器...
    Vince_zzhang閱讀 1,297評(píng)論 0 0
  • 流行(pop) 韓流(korean pop) 韓?。╧orean drama) 話?。╠rama) 電視(TV)劇...
    shelley_hu閱讀 183評(píng)論 0 0
  • 周一,一周的開始,對(duì)我來說,永遠(yuǎn)在打仗拼殺中度過,周末積攢的郵件回復(fù),三個(gè)業(yè)務(wù)例會(huì)的參加,上一周遺留下來需要繼續(xù)跟...
    心芒咨詢閱讀 664評(píng)論 0 4