為什麼SVM要用拉格朗日對偶演算法來解問題?

時間 2021-05-06 00:58:09

1樓:HighburyTing

產生這樣的困惑說明你沒有區分清拉格朗日乘子法拉格朗日對偶性兩個概念。

拉格朗日乘子法是通過求

去求g約束下的f的極值,作為求最值時的可疑點。

拉格朗日對偶性是在滿足一定條件的情況下原始問題和對偶問題等價。

通過令偏導為零,求解原始問題/對偶問題的最大化/最小化的過程,形式上就和拉格朗日乘子法相同,只不過原始問題/對偶問題求導和代入的順序不同(這種情況下求原始問題和對偶問題的過程看起來就很相似,所以導致了你的困惑)。但是求最大化/最小化有很多方法,採用其他方法求解時,兩者形式上的差別可能就很大了;並且哪怕只是求導和代入的順序不同,依然可能帶來計算效率上的差異。

2樓:阿達

原問題的優化是乙個二次規劃問題,求解較麻煩,用拉格朗日乘子法轉換後可以用smo等演算法更簡單地優化。

另外,由於轉換後的假設函式主要由內積運算構成,可以使用核函式簡化特徵對映到高維空間後的內積運算,高效地求解非線性問題。

3樓:qxred

主要是為了簡化約束:把一般的線性約束Ax+b<=0變成盒狀約束C>=x>=0

這樣做的好處是可以很方便地求出更新自變數時的步長。比如如果用梯度下降法,x = x + step* f'(x),為了保證更新後的x仍舊滿足約束Ax+b<=0,我們需要求解乙個線性方程才能知道step的範圍。但是如果約束是C>=x>=0,這個step就非常好求。

最常用的SMO演算法,也是得益於C>=x>=0,使得更新變數的時候只需比較二次函式最低點以及邊界點0 和 C,而如果不用對偶,則需要求解乙個一般線性約束 Ax+b<=0 下的二次規劃子問題,這樣做成本高很多。

4樓:程式設計師和藝術家

之前寫過相關部落格:

5樓:李欣宜

你是在問為什麼要用Lagrange乘子法,還是為什麼在Lagrange乘子法中要把對Lagrange函式的優化轉化成這種形式?

如果問是否一定要用Lagrange乘子法才能求出解,那肯定不是的。哪怕不是線性的SVM,也可以輕鬆的通過一些變形轉換成quadratic programming的標準形式即

以簡單的線性SVM的primal problem為例

可以以作為引數代入現成的QP solver求解得到 ,反正QP已經是很成熟的優化問題了,能直接用的程式設計工具也不少,沒有說一定要用Lagrange乘子法,常用的解法如橢球法,內點法,增廣Lagrange法,梯度投影法等等。

但當引入核函式時,隨著特徵空間變換到很高的維數 ,輸入引數 也隨之增大到 維,而且不是正定的,此時這個QP問題是NP-complete問題,而且區域性極小點並不唯一。因此不是特別有效率的解法。而Lagrange乘子法可以始終把約束和需要求解的變數限定在o(n)內。

至於第二個問題為什麼要交換優化目標的順序,兩個優化過程的物理意義肯定是不一樣的,但因為這個問題性質特殊所以可以通過變換順序得到相同的結果。原問題的Lagrange函式為

這種轉換是把不等式約束放進了函式中,體現在如果最終得到的結果 錯誤分類了任何乙個樣本點,那麼就有 0" eeimg="1"/>,通過調整對應非負係數 的大小可以使整個函式值取到無窮大。因此回到原問題如果想讓原來的目標函式最小,且不違反約束,需要

Lagrange乘子 用於表達約束,這就是primal problem,意思是找到最好的 使得對於任意的非負 都能使得 最小值,這個情況下當然不能對 直接求偏導,這時求偏導來找極值的意義是假設 是固定值的情況下找令括號中的表示式取到最大的 ,就目前到此的推導來說,這對解出 是沒有任何直接意義的。

所以primal problem沒法直接做,需要轉換成dual problem。對於乙個假設已經找到的最優的 怎樣取 才能使得函式值最大,這是可以直接通過你說的求偏導的方法解決的。至於這兩個問題的關係也很好找,對於上面那個表示式,對於任意一組非負係數 ,必然有

當 恰好是使得 取到最大值的 取值時,可以得到結論

即 ,這是弱對偶關係,對於一般的QP問題都可以成立。SVM問題同時滿足所有Slater's condition: convex primal,在可行域內能找到解(即在特徵空間線性可分,或引入kernel後在新的特徵空間可分),約束是線性的,因此滿足強對偶性可以直接取等號,得到dual problem的解等於直接解出primal problem,因此用這個變換來求解。

任意拉格朗日尤拉描述(ALE)與拉格朗日描述和尤拉描述有啥區別?

郭大海 拉格朗日座標,尤拉座標,ALE座標,都可以用來描述運動和物理定律,數學上而言就是個變數替換而已,對於乙個方程,你隨便可以寫成以上任何一種。對於流體而言完全用ALE座標的情況 Total ALE 很少,更多的是物質時間導數用ALE時間導數,空間導數仍採用尤拉描述,這叫updated ALE,很...

泰勒公式的拉格朗日餘項怎麼理解?

夏洛克 就是我們的餘項,顯然它是乙個從 開始的 有無窮多項的 多項式函式 1 2 n 對 做 n 次積分就得到 還記得之前說過的嗎 是乙個從開始的多項式函式 這說明 在 n 次求導過程中,的 一直殘留著,故 總是為零,也就是說,的導函式們起點全都是零,所以積分的時候不必擔心初始值的累積,幹就完事兒!...

如何直觀地理解拉格朗日插值法?

我有乙個感受 就是基礎的兩個插值法拉格朗日和牛頓如果從兩點確定一條直線的角度來看的話,分別是兩點式和點斜式,只是由於點多了,沒法用一條直線過所有點,所以將這兩個方法衍生了。 Xipan Xiao 常規的證明方法大家都說了,我說乙個稍微不那麼常見的角度,我從我同學劉師兄那裡學到的,就是拉格朗日插值法其...