1. 程式人生 > >選擇支援向量機(SVM)核函式

選擇支援向量機(SVM)核函式

SVM核函式通常有四種: 
1. Linear 
2. Polynomial 
3. Gaussian (RBF) 
4. Sigmoid/Logistic 
不知為何,RBF最常用

  • 一般情況下,給定隨意的資料集,你不知道該用什麼樣的核函式,通常先用簡單的對映方式,然後再一步步的複雜化。
  • 如果資料集是線性可分的,用linear當然足夠;如果資料集線性不可分,這個核函式就顯然不行了

2-dimensions

  • 為了描述簡單和視覺化,我們使用二維資料集 
    下圖是iris資料集使用linear的SVM分類器的分類結果 
    這裡寫圖片描述 
    結果還不錯!下圖是iris資料集使用RBF的SVM分類器的分類結果 
    這裡寫圖片描述

OK,很顯然,兩種核函式都能讓我們接受,具有很強的說服力。這時候通常選擇簡單的那個,即線性核函式,因為不論是引數個數上還是複雜度上,還是對映計算上,線性核函式比RBF強,另外RBF可能會導致過擬合。

好吧,似乎上面說的對linear很有好感。但事實上,如果要一句話總結如何選擇核函式,那就是—dataset。毫無疑問,如果是下圖的資料,再用linear核函式,顯然是不行的。 
這裡寫圖片描述 
下面是RBF核函式的結果,很精妙! 
這裡寫圖片描述

告一段落

多項式核函式

  • 在任何情況下,都很少用多項式核,效率不高,結果也不優於RBF
  • 於是現在得到一個結論:線性可分時用linear,線性不可分時用RBF核。 
    這裡寫圖片描述 
    事實上,更樸實一點的說法,RBF通過對映到高維的最終目標還是線性可分。