二、對偶問題
1、優化問題的類型
(1)無約束優化問題:
求解方法:求取函數f(x)的導數,然后令其為零,可以求得候選最優值,再在這些候選值中驗證;如果是凸函數,可以保證是最優解。
(2)有等式約束的優化問題:
即把等式約束hi(x)用一個系數與f(x)寫為一個式子,稱為拉格朗日函數,而系數稱為拉格朗日乘子。通過拉格朗日函數對各個變量求導,令其為零,可以求得候選值集合,然后驗證求得最優值。
(3)有不等式約束的優化問題:
把所有的等式約束、不等式約束與f(x)寫成一個式子,這個式子也叫拉格朗日函數,系數也稱為拉格朗日乘子。
通過一些條件,可以求出最優值的必要條件,這個條件就稱為 KKT條件。
2、對偶問題
對SVM基本型使用拉格朗日乘子可得其“對偶問題”(dual problem)。
求解步驟:
解的稀疏性: 訓練完成后 , 最終模型僅與支持向量有關
支持向量機(Support Vector Machine, SVM) 因此而得名
3、硬間隔與軟間隔
硬間隔:不允許樣本分類錯誤
軟間隔:允許一定量的樣本分類錯誤
假如現在有一份數據分布如下圖:
按照線性可分支持向量機的思想,黃色的線就是最佳的決策邊界。很明顯,這條線的泛化性不是很好,造成這樣結果的原因就是數據中存在着異常點,那么如何解決這個問題呢,支持向量機引入了軟間隔最大化的方法來解決。
所謂的軟間隔,是相對於硬間隔說的,即之前我們所講的支持向量機學習方法。回顧下硬間隔最大化的條件:
接着我們再看如何可以軟間隔最大化呢?SVM 對訓練集里面的每個樣本 ( xi , yi ) 引入了一個松弛變量 xi ≥ 0 , 使函數間隔加上松弛變量大於等於 1 ,也就是說:
對比硬間隔最大化,可以看到我們對樣本到超平面的函數距離的要求放松了,之前是一定要大於等於 1 ,現在只需要加上一個大於等於 0 的松弛變量能大於等於 1 就可以了。也就是允許支持向量機在一些樣本上出錯,如下圖:
基本思路: