SVM從入門到精通(三)
阿新 • • 發佈:2018-12-08
前面,對於線性可分的資料,我們採用硬間隔最大化的策略,來訓練線性可分支援向量機。回憶一下,之前的最優化問題的表示為:
我們可以將其稱為原始問題。通過拉格朗日對偶性,通過求解對偶問題(dual problem)來得到原始問題(primal problem)的最優解。這就是線性可分支援向量機的對偶演算法。引入對偶問題的主要目的就是讓問題更容易求解。還有一點就是自然引入核函式,從而將SVM推廣到非線性分類問題中。
拉格朗日函式
原始問題
我們說利用拉格朗日對偶性去簡化問題,那拉格朗日對偶性是啥呢?(大學微積分裡好像學過···) 接下來進行簡單介紹。
首先,拉格朗日對偶性主要是用來求解約束最優化問題的。那問題的表現形式是什麼呢?也就是原始問題:假設
是定義在
上的連續可微函式,考慮約束最優化問題:
那麼拉格朗日對偶性怎麼用到這個問題上呢?
首先,我們引入拉格朗日函式 這裡 就是拉格朗日乘子, .
由上面的(2)式,我們知道 是都為0的,所以和也應該是0的; ,而它的拉格朗日系數 優勢大於等於0的,所以二者的乘積和是小於等於0的。我們的優化目的是使 最小,那麼三者相加,也就是我們的拉格朗日函式L = 待求最小+非正數+0,如果f(x)最小的話,那麼就需要拉格朗日函式 最大,並且最大為f(x)。也就是,我們的原始問題可以變成以下的描述形式: 這裡的下標p表示primal,原始問題。
我們假設,給定某個x違反了原始問題的約束條件,那麼 ,相反的,如果x滿足條件,就會像剛才我們分析的那樣, .所以,