机器学习方法篇(13)------KKT条件

● 每周一言

实现目标的最大敌人,是时间。

导语

上一节讲了带等式约束条件的拉格朗日乘子法,本节讲讲带不等式约束条件的函数凸优化方法——KKT条件,为之后深入讲解SVM做准备。

KKT条件

任何不等式约束条件的函数凸优化问题,都可以转化为约束方程小于0且语义不变的形式,以便于使用KKT条件。和上节一样,我们通过一个简单的例子来讲解KKT条件的使用方法。

有如下不等式约束的凸优化问题,求解f的最小值:

fig1

转化为约束方程小于(或小于等于)0且语义不变的条件如下:
fig2

上节说到KKT条件是拉格朗日乘子法的加强版,这个加强版的拉格朗日公式如下:
fig3

其中,g是不等式约束方程,h是等式约束方程。对于上式函数的凸优化问题,KKT条件一共包含三个条件:
1. L对x的一阶导数为0
2. h(x) = 0
3. α·g(x) = 0,α ≥0

对于第1个条件,就是我们上一节所讲的拉格朗日乘子法;第2个条件,可以作为等式约束条件的语义来理解;而对于第3个条件,言下之意是要么α为0,要么函数g为0。根据加强版的拉格朗日公式,可以写出如下式子:

fig4

根据KKT条件的第1条,f对x1、x2求偏导,得到:
fig5

根据KKT条件的第3条,则可以得到:
fig6

接下来就只需要枚举讨论这第3个条件中α和g为0的情况了。这种组合情况一共有4种:α1与α2等于0,α1与g2等于0,α2与g1等于0,g1与g2等于0。

分别计算以上四种情况发现,只有g1与g2等于0满足原方程的解。需要特别注意的是,由于原不等式约束条件是小于,而开口条件存在无限接近的情况,才使得这里的g1和g2可以取0

以上便是KKT条件的讲解。关于条件的深入证明,有兴趣的读者可以自行查阅资料。敬请期待下节内容。

文中举例来源:http://blog.csdn.net/on2way/article/details/47729419

结语

感谢各位的耐心阅读,后续文章于每周日奉上,敬请期待。欢迎大家关注小斗公众号 对半独白

face

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值