SVM

https://github.com/apachecn/hands_on_Ml_with_Sklearn_and_TF/blob/dev/docs/5.%E6%94%AF%E6%8C%81%E5%90%91%E9%87%8F%E6%9C%BA.md#%E5%A2%9E%E5%8A%A0%E7%9B%B8%E4%BC%BC%E7%89%B9%E5%BE%81

線性SVM分類器在很多情況下表現得出乎意料地好

但是很多數據集並不是線性可分的。

處理非線性數據集方法:
1.增加更多的特徵。例如多項式特徵(正如你在第4章所做的那樣);在某些情況下可以變成線性可分的數據。
但是低次數的多項式不能處理非常複雜的數據集,而高次數的多項式卻產生了大量的特徵,會使模型變得慢。
你可以運用一個被稱爲“核技巧”(kernel trick)的神奇數學技巧。它可以取得就像你添加了許多多項式,甚至有高次數的多項式。
2.定義一個相似函數,即高斯徑向基函數(Gaussian Radial Basis Function,RBF)轉換特徵,特徵轉換後變爲線性可分特徵。
最簡單的方法是在數據集中的每一個樣本的位置創建地標。這將產生更多的維度從而增加了轉換後數據集是線性可分的可能性。但缺點是,m個樣本,n個特徵的訓練集被轉換成了m個實例,m個特徵的訓練集(假設你刪除了原始特徵)。這樣一來,如果你的訓練集非常大,你最終會得到同樣大的特徵。
“核” 技巧再一次顯現了它在 SVM 上的神奇之處:高斯核讓你可以獲得同樣好的結果成爲可能,就像你在相似特徵法添加了許多相似特徵一樣。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章