考慮約束最優化問題:
設$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的求解思路。