吳恩達機器學習系列17:支援向量機

SuperFeng發表於2019-04-17

支援向量機(Support vector machine是一種強大的機器學習演算法,和神經網路相比,它在學習複雜的非線性方程時,能夠提供更清晰和更加強大的方式。為了學習支援向量機,我們可以先從邏輯迴歸開始,看看如何經過小小的改動能得到支援向量機。


在邏輯迴歸中,假設函式 h_θ(x) 為:

未命名圖片.png

影象為:

未命名圖片.png

對於一個樣本來說,代價函式為:

未命名圖片.png

當 y =1 時,第二項為 0,只需要考慮第一項,畫出第一項的影象:

未命名圖片.png

我們把這個影象稍微修改一下,趨勢與邏輯迴歸相似,就變成了支援向量機代價函式一部分的影象 cost_1(z),如下圖粉色線:未命名圖片.png

第二項同樣道理,cost_0(z):

未命名圖片.png

邏輯迴歸中正則化代價函式為:

未命名圖片.png

將其中係數 1/m 去掉,把紅色部分換成上面粉色影象的函式:

未命名圖片.png

接著將淺藍色和粉色部分調換一下權重:

未命名圖片.png

這樣就得到支援向量機的代價函式:

未命名圖片.png

只需要將這個函式最小化即可得到引數。以上就是從邏輯迴歸推出支援向量機的整個過程。




ps. 本篇文章是根據吳恩達機器學習課程整理的學習筆記。如果想要一起學習機器學習,可以關注微信公眾號「SuperFeng」,期待與你的相遇。

請關注公眾號.PNG


相關文章