kkt条件的matlab仿真,请教关于SVM中KKT条件的推导
KKT條件第一項(xiàng)是說最優(yōu)點(diǎn)必須滿足所有等式及不等式限制條件,也就是說最優(yōu)點(diǎn)必須是一個(gè)可行解,這一點(diǎn)自然是毋庸置疑的。第二項(xiàng)表明在最優(yōu)點(diǎn) x*, ?f 必須是 ?hj 和 ?gk 的線性組合,和都叫作拉格朗日乘子。所不同的是不等式限制條件有方向性,所以每一個(gè) kμ都必須大於或等於零,而等式限制條件沒有方向性,所 以 jλ沒有符號(hào)的限制,其符號(hào)要視等式限制條件的寫法而定。
設(shè)想我們優(yōu)化如下的目標(biāo)函數(shù):
minimize? ? f_0(x)
s.t.? ?? ???f_i(x)<=0,??i=1,2,...,m
h_i(x)=0,? ?i=1,2,...,p
我們把這個(gè)目標(biāo)函數(shù)稱為原函數(shù)
構(gòu)造該函數(shù)的對(duì)偶函數(shù)如下:
maximize
g(r,v)=inf_x {f_0(x)+sum_{i=1}^m r_i*f_i(x)+sum_{i=1}^p v_i*h_i(x)}
s.t.? ? r_i>=0??i=1,2,...,m
假設(shè)x'是原函數(shù)的一個(gè)可行點(diǎn)(滿足原函數(shù)的約束),r',v'是對(duì)偶函數(shù)的一個(gè)可行點(diǎn)
因?yàn)閞'_i>=0,f_i(x')<=0,所以sum_{i=1}^m r'_i*f_i(x')<=0,同理
sum_{i=1}^p v'_i*h_i(x')=0
因此,我們有,對(duì)于任意的滿足原函數(shù)約束的x和滿足對(duì)偶函數(shù)約束的r,v
g(r,v)<={f_0(x)+sum_{i=1}^m r_i*f_i(x)+sum_{i=1}^p v_i*h_i(x)}
<=f_0(x)
記x^* 為原函數(shù)的一個(gè)最優(yōu)點(diǎn),最優(yōu)值為p^*
r^*,v^*為對(duì)偶函數(shù)的一個(gè)最優(yōu)點(diǎn),最優(yōu)值為d^*
我們有
p^*>=d^*(weak duality)
如果x^*,r^*,v^*能夠使得p^*=d^*成立,
則稱strong duality成立,即
f_0(x^*)=g(r^*,v^*)
現(xiàn)在假設(shè)strong duality能夠成立,并且假設(shè)x^*是原函數(shù)的最優(yōu)解,r^*,v^*為對(duì)偶函數(shù)
的一個(gè)最優(yōu)點(diǎn),那么
f_0(x^*)=g(r^*,v^*)
=inf_x {f_0(x)+sum_{i=1}^m r^*_i*f_i(x)+sum_{i=1}^p v^*_i*h_i(x)}
<=f_0(x^*)+sum_{i=1}^m r^*_i*f_i(x^*)+sum_{i=1}^p v^*_i*h_i(x^*)
<=f_0(x^*)
第一個(gè)等式是strong duality,第二行等式是對(duì)偶函數(shù)的定義,第三行不等式是inf的定
義,第四行不等式是因?yàn)閞^*_i>=0,f_i(x^*)<=0,h_i(x^*)=0
因此,我們有sum_{i=1}^m r^*_i*f_i(x^*)=0,
因?yàn)閷?duì)每個(gè)i, r^*_i*f_i(x^*)<=0,
所以有
r^*_i*f_i(x^*)=0(Complementary slackness)
因?yàn)閤^*是使得g(r^*,v^*)最小的點(diǎn),(注意上面的第三行等式成立)
所以g(r^*,v^*)關(guān)于x的導(dǎo)數(shù)在x^*處為0
f_0'(x^*)+sum_{i=1}^m r^*_i*f_i'(x^*)+sum_{i=1}^p v^*_i*h_i'(x^*)=0
綜上所述我們得到了f_0(x^*)=g(r^*,v^*)的條件:
f_i(x^*)<=0? ???i=1,2,...,m
h_i(x^*)=0? ?? ?i=1,2,...,p
r^*_i>=0? ?? ???i=1,2,...,m
r^*_i*f_i(x^*)=0? ? i=1,2,...,m
f_0'(x^*)+sum_{i=1}^m r^*_i*f_i'(x^*)+sum_{i=1}^p v^*_i*h_i'(x^*)=0
這就是KKT條件~~
以上是摘自Information Retrieval Blog的部分內(nèi)容,希望對(duì)你能有點(diǎn)點(diǎn)啟發(fā)~~
總結(jié)
以上是生活随笔為你收集整理的kkt条件的matlab仿真,请教关于SVM中KKT条件的推导的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 动态链接库(DLL)开发基础
- 下一篇: matlab判断电话播键音,MATLAB