SVM的應用領域很廣,分類、迴歸、密度估計、聚類等,但我以爲最成功的仍是在分類這一塊。ide
用於分類問題時,SVM可供選擇的參數並很少,懲罰參數C,核函數及其參數選擇。對於一個應用,是選擇線性核,仍是多項式核,仍是高斯核?仍是有一些規則的。函數
實際應用中,多數狀況是特徵維數很是高。如OCR中的漢字識別,提取8方向梯度直方圖特徵,歸一化的字符被等分紅8*8的網格,每一個網格計算出長度爲8的方向直方圖,特徵維數是8*8*8 = 512維。在這樣的高維空間中,想把兩個字符類分開,用線性SVM是垂手可得的事,固然用其它核也能把它們分開。那爲何要選擇線性核,由於,線性核有兩個很是大的優勢:學習
預測函數簡單f(x) = w’*x+b,分類速度快。對於類別多的問題,分類速度的確須要考慮到,線性分類器的w能夠事先計算出來,而非線性分類器在高維空間時支持向量數會很是多,分類速度遠低於線性分類器。測試
線性SVM的推廣性有保證,而非線性如高斯核有可能過學習。再舉個例子,基於人臉的性別識別,即給定人臉圖像,判斷這我的是男仍是女。咱們提取了3700多維的特徵,用線性SVM就能在測試集上達到96%的識別正確率。所以,線性SVM是實際應用最多的,實用價值最大的。spa
若是在你的應用中,特徵維數特別低,樣本數遠超過特徵維數,則選用非線性核如高斯核是比較合理的。若是兩類有較多重疊,則非線性SVM的支持向量特別多,選擇稀疏的非線性SVM會是一個更好的方案,支持向量少分類速度更快,以下圖:ci
如今對選用線性SVM仍是非線性SVM有一個基本認識了吧?以上爲我的的一些理解,不免有誤差之處,歡迎你們指正或補充。後面會繼續寫一些SVM方面的帖子,但願對感興趣的人有點用處。it
轉自:http://xiaozu.renren.com/xiaozu/121443/356866219class