統(tǒng)計機器學(xué)習(xí)-拉格朗日對偶性

將有原始問題轉(zhuǎn)化成對偶問題,通過求解對偶問題解決原始問題。

原始問題

假設(shè)f(x)c_i(x),h_j(x)是定義在\textbf R^n上的連續(xù)可微函數(shù),考慮約束最優(yōu)化問題
\min_{x\in \textbf R^n}f(x)\\\tag1

\mathrm{s.t.}\ \ c_i(x)\leq0,\ \ i=1,2,\cdots,k\\\tag2

h_j(x)=0,\ \ j=1,2,\cdots,l\tag3

稱此約束最優(yōu)化問題為原始最優(yōu)化問題或原始問題。

如果只是極小化(1)是比較容易的,但是加上約束就不太好處理,于是首先引入廣義拉格朗日函數(shù)
L(x,\alpha,\beta)=f(x)+\sum_{i=1}^k\alpha_ic_i(x)+\sum_{j=1}^l\beta_jh_j(x)\tag4
\alpha_i\beta_j是拉格朗日乘子,規(guī)定\alpha_i\geq0。定義函數(shù)
\theta_P(x)=\max_{\alpha,\beta:\alpha_i\geq0}L(x,\alpha,\beta)\\ =\max_{\alpha,\beta:\alpha_i\geq0}\bigg (f(x)+\sum_{i=1}^k\alpha_ic_i(x)+\sum_{j=1}^l\beta_jh_j(x)\bigg )\tag5
這是一個關(guān)于x的函數(shù)。首先把x看做一個常量,再此基礎(chǔ)上確定使(4)最大的\alpha_i\beta_j,然后帶入(5)就成為了一個關(guān)于x的函數(shù)。

如果滿足了約束,很容易得到\theta_P(x)=f(x)。因為第二項中\alpha_i\geq0,且條件c_i(x)\leq0,所以乘積\alpha_ic_i(x)\leq0,取最大則等于0,第三項滿足條件時為0,所以\theta_P(x)=f(x)。

如果不滿足條件,則會得到
\theta_P(x)=\max_{\alpha,\beta:\alpha_i\geq0}\bigg (f(x)+\sum_{i=1}^k\alpha_ic_i(x)+\sum_{j=1}^l\beta_jh_j(x)\bigg )=+\infty\tag6
因為如果c_i(x)\gt0,則可以使\alpha_i=+\infty。同理,如果h_j(x)\neq0,也可以找到\beta_j使\beta_jh_j(x)=+\infty。

所以(5)可以改寫成
\theta_P(x)=\begin{cases}f(x),\ x滿足原始問題約束\\ +\infty,\ 其他 \end{cases}\tag7
于是原始問題就等于極小化問題
\min_{x}\theta_P(x)=\min_x\max_{\alpha,\beta:\alpha_i\geq0}L(x,\alpha,\beta)\tag8
稱為廣義拉格朗日函數(shù)的極大極小問題。定義原始問題的最優(yōu)值
p^*=\min_x\theta_P(x)\tag9

對偶問題

定義
\theta_D(\alpha,\beta)=\min_xL(x,\alpha,\beta)\tag{10}
類似的,這是一個關(guān)于\alpha\beta的函數(shù)。首先把\alpha\beta看做一個常量,再此基礎(chǔ)上確定使(10)最大的x,然后帶入(10)就成為了一個關(guān)于\alpha\beta的函數(shù)。

對公式(10)極大化,即
\max_{\alpha,\beta:\alpha_i\geq0}\theta_D(\alpha,\beta)=\max_{\alpha,\beta:\alpha_i\geq0}\min_xL(x,\alpha,\beta)\\ =\max_{\alpha,\beta:\alpha_i\geq0}\min_x\bigg (f(x)+\sum_{i=1}^k\alpha_ic_i(x)+\sum_{j=1}^l\beta_jh_j(x)\bigg )\tag{11}
稱為廣義拉格朗日函數(shù)的極大極小問題。(11)等價于約束最優(yōu)化問題
\max_{\alpha,\beta}\theta_D(\alpha,\beta)=\max_{\alpha,\beta}\min_xL(x,\alpha,\beta)\tag{12}

\mathrm{s.t.}\ \ \alpha_i\geq0,\ i=1,2,\cdots,k\tag{13}

定義對偶問題的最優(yōu)值
d^*=\max_{\alpha,\beta:\alpha_i\geq0}\theta_D(\alpha,\beta)\tag{14}

原始問題和對偶問題的關(guān)系

定理1

若原始問題和對偶問題都有最優(yōu)值,則
d^*\leq p^*\tag{15}
證明略。即當(dāng)原始問題和對偶問題都有最優(yōu)值時,原始問題的最優(yōu)值大于等于對偶問題的最優(yōu)值。

推論1

設(shè)x^*\alpha^*,\beta^*分別是原始問題(1)-(3)和對偶問題(12)-(13)的可行解,并且d^*= p^*,則x^*\alpha^*,\beta^*分別是原始問題和對偶問題的最優(yōu)解。

證明略。即兩者都是最優(yōu)解時,d^*= p^*。

于是存在某些條件下可以用解對偶問題代替解原始問題,且d^*= p^*

定理2

對于原始問題(1)-(3)和對偶問題(12)-(13)。假設(shè)函數(shù)f(x)c_i(x)是凸函數(shù),h_j(x)是仿射函數(shù);并且假設(shè)不等式約束c_i(x)是嚴(yán)格可行的,即存在x,對所有ic_i(x)\lt0,則存在x^*\alpha^*,\beta^*,使x^*是原始問題的解,\alpha^*\beta^*是對偶問題的解,并且
d^*= p^*=L(x^*,\alpha^*,\beta^*)\tag{16}

定理3

對于原始問題(1)-(3)和對偶問題(12)-(13)。假設(shè)函數(shù)f(x)c_i(x)是凸函數(shù),h_j(x)是仿射函數(shù);并且假設(shè)不等式約束c_i(x)是嚴(yán)格可行的,則x^*\alpha^*,\beta^*分別是原始問題和對偶問題的解充分必要條件是x^*,\alpha^*,\beta^*滿足Karush Kuhn Tucker(KKT)條件:
\nabla_xL(x^*,\alpha^*,\beta^*)=0\tag{17}

\alpha_i^*c_i(x^*)=0,\ \ i=1,2,\cdots,k\tag{18}

c_i(x^*)\leq0,\ \ i=1,2,\cdots,k\tag{19}

\alpha_i^*\geq0,\ \ i=1,2,\cdots,k\tag{20}

h_j(x^*)=0,\ \ j=1,2,\cdots,k\tag{21}

(20)稱為KKT的對偶互補條件,由此條件可知,若\alpha_i^*\gt0,則c_i(x^*)=0

PS:

凸函數(shù):類似滿足條件
\frac{f(x_1)+f(x_2)}{2}\geq f(\frac{x_1+x_2}{2})
的函數(shù),二階導(dǎo)數(shù)大于等于0或海塞矩陣正定。

仿射函數(shù):最高次數(shù)為1的函數(shù),例如f(x)=Ax+b。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

友情鏈接更多精彩內(nèi)容