吳恩達機器學習系列19:將核函數應用於支持向量機

當咱們在已知參數的狀況下,如何用帶有核函數支持向量機(SVM去訓練假設函數呢?web


首先咱們將樣本作爲標記:算法

未命名圖片.png

對於每個 x,都要計算出它的特徵 f,f 爲一個向量:微信

未命名圖片.png

若是下式成立,就能夠預測 y 等於 1,也就是爲正樣本:機器學習

未命名圖片.png


可是如何選取參數呢?咱們最小化下面這個函數的時候,就能夠獲得參數向量:編輯器

未命名圖片.png


如今還有兩個係數沒有選擇,C 和 σ^2 。C 至關於 1/λ,以前咱們學過,λ 的變化會影響高誤差或高方差。所以按照 1/λ 對高誤差或高方差的影響表現選取便可。函數


如今咱們用數據實際觀察一下 C 對 SVM 的影響。當 C 很小時,對於下列數據的決策邊界以下:學習

未命名圖片.png

若是將 C 換成 100,咱們再來看此時的決策邊界:spa

未命名圖片.png

如今你對 C 是否是有一個直觀的認識了呢?3d


σ^2 很大時,圖像爲:orm

未命名圖片.png

特徵 f 變化平滑,所以表現爲高誤差,低方差。σ^2 很小時,圖像爲:

未命名圖片.png

特徵 f 變化激烈,所以表現爲高方差,低誤差。


這樣,一個完整的利用核函數的支持向量機算法就算是完成了。



如何選擇使用邏輯迴歸或者SVM


若是特徵的數量遠大於樣本數,就要用邏輯迴歸或者線性核函數(不帶核函數的SVM)。


若是特徵的數量比較小,而樣本的數目正好合適,就用高斯核函數。


若是特徵的數量比較小,而樣本的數目很是大,就要用邏輯迴歸或者線性核函數(不帶核函數的SVM)。





ps. 本篇文章是根據吳恩達機器學習課程整理的學習筆記。若是想要一塊兒學習機器學習,能夠關注微信公衆號「SuperFeng」,期待與你的相遇。

請關注公衆號.PNG

相關文章
相關標籤/搜索