深入理解拉格朗日乘子法(Lagrange Multiplier) 和KKT条件(转)
關于鞍點的定義可以參考論文
《鞍點定理在Lagrange乘數法上的應用》
下面這篇文章的重點是是提到了鞍點
?在學習之前,先說一些題外話,由于博主學習模式識別沒多久,所以可能對許多問題還沒有深入的認識和正確的理解,如有不妥,還望海涵,另請各路前輩不吝賜教。
? ? ? ?好啦,我們開始學習吧。。
? ? ? ?同樣假設有樣本集:
由于線性不可分,所以?不會對每一個樣本都滿足,就是說肯定會有一些小于1的樣本,對于這些樣本我們怎么辦呢,想象一下,如果我們在不等式兩邊同時加上一個正數,是不是總會讓它不小于1,基于這樣一個想法,我們對每一個樣本引入一個非負的松弛因子將上述不等式變為:
? ? ? ? ?(1)
? ? ? ?當樣本出現錯分時,則該樣本對應的,為了保證式(1)非負,那么必然>0,而對于那些被正確分類的樣本來說,=0;為了保證分類的準確性和可靠性,就是在樣本不可分的情況下,我們要盡可能少的出現錯分,因此可以通過對錯分樣本對應的松弛因子求和來增加對錯誤的懲罰,這個求和用來來表示在整個訓練樣本集上的樣本錯分程度,當這個求和越小,表明錯分程度越小;回憶下之前的線性可分下的SVM它的目標函數,在它的基礎上我們通過增加一個懲罰項來定義不可分下的目標函數:? ? ? ? (2)
? ? ? ?在上述目標函數中,我們的目的有兩個:(1)使分類間隔盡可能大;(2)使錯分程度盡可能小;gamma表示在上述兩個目的之間的平衡參數,這個參數比較重要,值的選擇很關鍵,值太大時,說明我們對樣本錯分的容忍小,值太小,說明對錯分容忍稍大,而比較重視大間隔分類。
? ? ? ?基于上面兩個期望,同樣使用拉格朗日乘法來求解:
? ? ? ? ? ? ? ? ? ? ? ? (3)
? ? ? ?較可分情況而言,這是一個廣義的最優分類面問題,具體求解方法同可分情況類似,這里不再贅述,詳細過程請見http://blog.csdn.net/eternity1118_/article/details/51474693。
對上式泛函求導(注意上面的連接沒有寫清楚Q(a) 是怎么來的,所以這里可以跳過,看別的資料即可),得到下面的解:
? ? ?(4)
? ? ? ? ? ? (5)
注意,這里的跟線性可分下的不同,這里不再只是單單的大于0就行,而是? ? ? ? ?(6)
另外得到w的解:
? ? ? ? (7)
于是廣義問題的判別函數為:
? ? ? ?(8)
到這里,你會發現上面幾個式子和線性可分下的完全一模一樣,唯一的不同是多了一個上界C。
? ? ? ?下面,來看一看這種情況下的支持向量都有哪些樣本組成。
根據庫恩-塔克條件(KKT條件),泛函的鞍點出滿足以下式子:
? ? ? ?(9) ?以及 ? ??? ? ? ? (10)
對右邊式子來說,=C時,才有>0,此時這些對應的樣本正是被錯分的樣本,而本身非負,所以其余的樣本對應=0;
對左邊式子來說,與之前分析的一樣,{}中的那一項等于0時,才有可能使得>0,此時這些樣本又分為兩類,一類是正確分類但是位于分類邊界面上的樣本,它們滿足,=0;一類是被錯分的樣本,它們滿足=C,>0。上述兩類樣本組成了不可分下的支持向量,一類叫做邊界支持向量,一類叫做錯分支持向量。同樣b的獲得,可以通過對的樣本代入公式(9)得到,也可以進一步取平均。
? ? ? 至此,可以發現,線性不可分的情況包含了可分的情況的,所以我們通常所說的SVM其實就是廣義的最優分類面形式,即無需考慮樣本可分不可分。
?
?
總結
以上是生活随笔為你收集整理的深入理解拉格朗日乘子法(Lagrange Multiplier) 和KKT条件(转)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 支持向量机的最大分类间隔(转)
- 下一篇: SVM基本思想及入门学习(转载+自己解释