吴恩达《Machine Learning》精炼笔记 7:支持向量机 SVM
作者 | Peter
編輯 |?AI有道
系列文章:
吳恩達《Machine Learning》精煉筆記 1:監督學習與非監督學習
吳恩達《Machine Learning》精煉筆記 2:梯度下降與正規方程
吳恩達《Machine Learning》精煉筆記 3:回歸問題和正則化
吳恩達《Machine Learning》精煉筆記 4:神經網絡基礎
吳恩達《Machine Learning》精煉筆記 5:神經網絡
吳恩達《Machine Learning》精煉筆記 6:關于機器學習的建議
今天帶來第七周課程的筆記:關于支持向量機SVM的相關知識點。內容包含:
硬間隔
支持向量
軟間隔
對偶問題
優化目標Optimization Objectives
主要是講解如何從邏輯回歸慢慢的推導出本質上的支持向量機。邏輯回歸的假設形式:
左邊是假設函數
右邊是Sigmoid激活函數
令z=θTx,如果滿足:
若y=1,希望h(θ)約為1,將樣本正確分類,那么z必須滿足z>>0
若y=0,希望h(θ)約為0,將樣本正確分類,那么z必須滿足z<<0
樣本正確分類指的是:假設函數h(x)得到的結果和真實值y是一致的
總代價函數通常是對所有的訓練樣本進行求和,并且每個樣本都會為總代價函數增加上式的最后一項(還有個系數1/m,系數忽略掉)
如果y=1,目標函數中只有第一項起作用,得到了表達式 :
支持向量機
根據邏輯回歸推導得到的支持向量機的公式 :
兩個cost函數是上面提到的兩條直線。對于邏輯回歸,在目標函數中有兩項:
第一個是訓練樣本的代價
第二個是正則化項
大邊界的直觀解釋
下面是支持向量機的代價函數模型。
SVM決策邊界
SVM魯棒性:間隔最大化,是一種大間距分類器。
關于上圖的解釋:
C太大的話,將是粉色的線
C不是過大的話,將是黑色的線
大間距分類器的描述,僅僅是從直觀上給出了正則化參數C非常大的情形,C的作用類似于之前使用過的正則化參數1λ
C較大,可能導致過擬合,高方差
C較小,可能導致低擬合,高偏差
硬間隔模型
間隔和支持向量
注釋:本文中全部采用列向量:
給定一個樣本訓練集D=(x1,y1),(x2,y2),…,(xm,ym),其中yi∈(?1,+1)
分類學習的基本思想就是:基于訓練集D在樣本空間上找到一個劃分的超平面
上面紅色的線是最好的。所產生的分類結果是最魯棒的,最穩定的,泛化能力是最好的。
劃分超平面的的線性描述:
W稱之為法向量(看做是列向量),決定平面的方向;b是位移項,決定了超平面和原點之間的距離。
空間中任意一點x到超平面(w,b)的距離是:
在+區域的點滿足y=+1:
在?區域的點滿足y=?1:
綜合上面的兩個式子有:
支持向量
距離超平面最近的幾個點(帶上圓圈的幾個點)稱之為支持向量support vector,這個點到超平面到距離稱之為間隔margin
剛好在決策邊界上的點(下圖中帶上圓圈的點)滿足上式中的等號成立:
間距margin
求解間距margin就是求解向量(x+?x?)在法向量上的投影
決策邊界上的正例表示為:
決策邊界行的負例表示為:
將兩個結果帶入margin 的表達式中:
SVM的基本模型
最大間隔化只需要將||w||最小化即可:
SVM-對偶模型
模型參數推導
希望求解上面基本模型對應超平面的模型:
利用拉格朗日乘子αi,改成拉格朗日函數:
分別對w,b求導,可以得到:
對偶模型
原始問題是極大轉成最大值問題:
帶入拉格朗日函數中,得到對偶問題(全部是關于α系數):
轉換一下,變成最小值問題(上面的式子加上負號):
那么超平面的模型 :
SMO算法
思想
SMO算法指的是Sequential Minimal Optimization,序列最小優化算法。算法的根本思路是:
所有的α滿足:
先選取需要更新的變量αi和αj
固定變量αi和αj以外的參數,求解更新后的變量αi和αj
其中c使得上式成立:
將變量αi和αj的其中一個用另一個來表示,得到關于αi的單變量二次規劃問題,就可以求出來變量αi
軟間隔最大化
上面的結論和推導都是針對的線性可分的數據。線性不可分數據意味著某些樣本點(xi,yi)不再滿足函數間隔大于等于1的約束條件,比如下圖中的紅圈中的點,故引入了松弛變量ξi≥0,滿足:
因此,目標函數由原來的1/2||w||*||w||變成了
其中C≥0是懲罰項參數,C值越大對誤分類的越大,C越小對誤分類的懲罰越小。
至此,第七周的課程筆記完畢!
推薦閱讀
(點擊標題可跳轉閱讀)
干貨 | 公眾號歷史文章精選
我的深度學習入門路線
我的機器學習入門路線圖
重磅!
AI有道年度技術文章電子版PDF來啦!
掃描下方二維碼,添加?AI有道小助手微信,可申請入群,并獲得2020完整技術文章合集PDF(一定要備注:入群?+ 地點 + 學校/公司。例如:入群+上海+復旦。?
長按掃碼,申請入群
(添加人數較多,請耐心等待)
感謝你的分享,點贊,在看三連↓
與50位技術專家面對面20年技術見證,附贈技術全景圖總結
以上是生活随笔為你收集整理的吴恩达《Machine Learning》精炼笔记 7:支持向量机 SVM的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 吴恩达《Machine Learning
- 下一篇: c/c++视频教程哪个比较好? 能学下去