SVM 的核函式選擇和調參

joytoy發表於2021-09-09

本文結構:

  1. 什麼是核函式

  2. 都有哪些 & 如何選擇

  3. 調參


1. 什麼是核函式

核函式形式 K(x, y) =
其中 x, y  為 n 維,f 為 n 維到 m 維的對映, 表示內積。

在用SVM處理問題時,如果資料線性不可分,希望透過 將輸入空間內線性不可分的資料 對映到 一個高維的特徵空間內,使資料在特徵空間內是線性可分的,這個對映記作 ϕ(x),

圖片描述

之後最佳化問題中就會有內積 ϕi⋅ϕj,
這個內積的計算維度會非常大,因此引入了核函式,
kernel 可以幫我們很快地做一些計算, 否則將需要在高維空間中進行計算。


2. 都有哪些 & 如何選擇

圖片描述

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

核函式 用處 公式
linear kernel 線性可分時,特徵數量多時,樣本數量多再補充一些特徵時,linear kernel可以是RBF kernel的特殊情況

圖片描述

Polynomial kernel image processing,引數比RBF多,取值範圍是(0,inf)

圖片描述

Gaussian radial basis function (RBF) 通用,線性不可分時,特徵維數少 樣本數量正常時,在沒有先驗知識時用,取值在[0,1]

圖片描述

Sigmoid kernel 生成神經網路,在某些引數下和RBF很像,可能在某些引數下是無效的

圖片描述

Gaussian kernel 通用,在沒有先驗知識時用

圖片描述

Laplace RBF kernel 通用,在沒有先驗知識時用

圖片描述

Hyperbolic tangent kernel neural networks中用

圖片描述

Bessel function of the first kind Kernel 可消除函式中的交叉項

圖片描述

ANOVA radial basis kernel 迴歸問題

圖片描述

Linear splines kernel in one-dimension text categorization,迴歸問題,處理大型稀疏向量

圖片描述

其中 linear kernel  和 RBF kernel 線上性可分和不可分的對比視覺化例子如下:


linear kernel RBF kernel
線性可分

圖片描述

圖片描述

線性不可分

圖片描述

圖片描述


3. 調參

在 sklearn 中可以用 grid search 找到合適的 kernel,以及它們的 gamma,C 等引數,那麼來看看各 kernel 主要調節的引數是哪些:

核函式 公式 調參
linear kernel

圖片描述


Polynomial kernel

圖片描述

-d:多項式核函式的最高次項次數,-g:gamma引數,-r:核函式中的coef0
Gaussian radial basis function (RBF)

圖片描述

-g:gamma引數,預設值是1/k
Sigmoid kernel

圖片描述

-g:gamma引數,-r:核函式中的coef0

其中有兩個重要的引數,即 C(懲罰係數) 和 gamma,
gamma 越大,支援向量越少,gamma 越小,支援向量越多。
而支援向量的個數影響訓練和預測的速度。
C 越高,容易過擬合。C 越小,容易欠擬合。


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/4650/viewspace-2811370/,如需轉載,請註明出處,否則將追究法律責任。

相關文章