机器学习:SVM算法的对偶形式
文章目錄
- 楔子
- 廣義拉格朗日函數
- 原問題和對偶問題
- KKT條件
- SVM對偶形式推導
- 原始優化問題
- 原問題拉格朗日函數:
- 對拉格朗日函數對原始問題的變量:w,b及各個$\xi_i$求偏導,求極小值:
- 得到結果帶入拉格朗日函數,對變量$\alpha_i$和$\beta_i$,求極大值
- 以上優化變成一個凸二次優化問題,原始問題的解和對偶問題的解滿足KKT條件:
- 硬間隔和軟間隔對偶性形式對比
- 硬間隔對偶形式
- 軟間隔對偶形式
- 對比
- 對偶問題的解和原問題的解關系和區別
- $\alpha_i^*$ ,$\xi_i^*$,分離超平面位置的關系:
楔子
廣義拉格朗日函數
問題:
轉化為無約束的拉格朗日形式:
原問題和對偶問題
primal problem opt (原始問題最優化(極小值)):
dual problem opt (對偶問題最優化(極大值)):
KKT條件
關于KKT 條件的理解:前面三個條件是由解析函數的知識,對于各個變量的偏導數為0(這就解釋了一開始為什么假設三個函數連續可微,如果不連續可微的話,這里的偏導數存不存在就不能保證),后面三個條件就是原始問題的約束條件以及拉格朗日乘子需要滿足的約束。剩下一個就是***對偶互補條件***,就是添加項每一項均為0.
SVM對偶形式推導
我們以軟間隔為例:
原始優化問題
原問題拉格朗日函數:
對拉格朗日函數對原始問題的變量:w,b及各個ξi\xi_iξi?求偏導,求極小值:
得到結果帶入拉格朗日函數,對變量αi\alpha_iαi?和βi\beta_iβi?,求極大值
實際上βi\beta_iβi?和αi\alpha_iαi?相關的,可以消去βi\beta_iβi?,βi\beta_iβi?約束為:0<=βi\beta_iβi?<=C。
以上優化變成一個凸二次優化問題,原始問題的解和對偶問題的解滿足KKT條件:
硬間隔和軟間隔對偶性形式對比
硬間隔對偶形式
軟間隔對偶形式
對比
看到沒?目標函數一模一樣,差別就在于約束條件αi\alpha_iαi?的取值范圍。
對偶形式可以看成樣本的線性組合,權重不為0的樣本構成了支持向量。
還可以看出對偶性形式樣本只以內積的形式出現,這個給核方法提供了可乘之機。
對偶問題的解和原問題的解關系和區別
對偶形式的解為α?\alpha^*α?=(α1,…,αN)T(\alpha_1,…,\alpha_N)^T(α1?,…,αN?)T
容易求出原問題的解為:
b?b^*b?表達式中出現的 j 是滿足0<αj\alpha_jαj?<C的下標,為什么呢?
首先支持向量一定在αi\alpha_iαi?>0里面,體會一下:
也就是說由于松弛變量的引入,間隔邊界變成一條河了,河里面的點都是支持向量。
所以取0<αj\alpha_jαj?<C,xjx_jxj?必定是在函數間隔上為支持向量,求出的b,就是分割超平面的參數。
αi?\alpha_i^*αi?? ,ξi?\xi_i^*ξi??,分離超平面位置的關系:
總結
以上是生活随笔為你收集整理的机器学习:SVM算法的对偶形式的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 机器学习:梯度下降法,几种实现策略
- 下一篇: 机器学习:核方法