拉格朗日乘子法

拉格朗日乘子法

約束優化問題

考慮約束最優化問題:
$f(x), c_i(x), h_j(x)$是定義在$R^n$空間上的連續可微函數,稱函數

\min_{x \in R^n} \quad f(x)

s.t. \quad c_i(x) \le 0 \quad i = 1,2,...,k

\quad \quad h_j(x) = 0 \quad j = 1,...,l

爲約束優化問題的原問題。優化

拉格朗日極小極大問題

爲了解決以上問題,首先引入廣義拉格朗日函數(generalized Lagrange function)code

L(x, \alpha, \beta) = f(x) + \sum_{i=1}^{k} \alpha_i c_i(x) + 
\sum_{j=1}^{l} \beta_j h_j(x)

其中,$\alpha_i \ge 0$io

能夠證實,無約束優化問題function

\min_{x \in R^n} \max_{\alpha,\beta}L(x, \alpha, \beta)

等價於原問題,稱爲廣義拉格朗日函數的極小極大問題。class

證實
co

\theta(x)=\max_{\alpha,\beta}L(x,\alpha,\beta)

=\max_{\alpha,\beta} \{ f(x) + \sum_{i=1}^{k} \alpha_i c_i(x) + 
\sum_{j=1}^{l} \beta_j h_j(x) \}

a. 若$x$不知足約束條件,也即math

c_i(x) > 0

h_j(x) \ne 0

$\theta(x)=+\infty$,所以不多是極小極大問題ab

\min_{x \in R^n} \quad \theta(x)

的解。

b. 若x知足約束條件,也即

c_i(x) \le 0

h_j(x) = 0

\theta(x)=f(x)

\min_{x \in R^n} \quad \theta(x) = \min_{x \in R^n} f(x)

綜上所述,拉格朗日極小極大問題的解就是原問題的解。

對偶問題

令原問題爲

p^{*}=\min_{x \in R^n} \theta(x)=\min_{x \in R^n}\max_{\alpha,\beta} L(x,\alpha,\beta)

則其對偶問題爲

d^{*}=\max_{\alpha,\beta}\theta(\alpha,\beta)=\max_{\alpha, \beta} \min_{x \in R^n}L(x, \alpha, \beta)

能夠證實,$d^{*} \le q^{*}$,當且僅當知足KKT條件時,等號成立,且對偶問題的解就是原問題的解。

KKT條件
對於原問題和對偶問題,$f(x)$$c_i(x)$爲凸函數,$h_j(x)$爲仿射函數,且$c_i(x)$嚴格可行,也即$\exists x, \forall{i}, c_i(x) < 0$,則$x^{*},\alpha^{*},\beta^{*}$是原問題和對偶問題的解的充分必要條件

\nabla_{x} L(x^{*},\alpha^{*},\beta^{*})=0

\nabla_{\alpha} L(x^{*},\alpha^{*},\beta^{*})=0

\nabla_{\beta} L(x^{*},\alpha^{*},\beta^{*})=0

c_i(x^{*}) \le 0, \quad i = 1,2,...,k

h_j(x^{*}) = 0, \quad j = 1,2,...,l

\alpha_{i}^{*} \ge 0, \quad i = 1,2,...,k

\alpha_{i}^{*}c_i(x^{*}) = 0, \quad i = 1,2,...,k

其中,最後一個條件稱爲KKT對偶互補條件。

一般狀況下,能夠先求解對偶問題,獲得最優解$\alpha^{*}, \beta^{*}$,而後經過KKT條件,解得原問題的解$x^{*}$,這個就是SVM的求解思路。

相關文章
相關標籤/搜索