千秋摄于黄山
最近看了 《最优化理论与方法》, 学习了常见的优化问题以及解决方法。同时,之前学习 SVM
时,对拉格朗日乘法以及 KKT
条件有一些疑问,这里做一下学习笔记,便于后面复习和理解!
Notion: 同时参考了网上找到的一个PPT(见附件),觉得写的相当棒!
主要设计四种优化问题:
- 无约束优化
- 等式约束优化
- 不等式约束优化
- 等式和不等式约束优化
讨论的对象是优化问题的标准形式:
公式(1):优化问题的标准形式
1. 无约束优化
无约束优化的标准形式为:
公式(2):无约束优化的标准形式
假设f(x)在X上处处可导,则局部最优点
公式(3)
证明
充分条件
必要条件
1. 若f(x) 在 处可导且取得局部最小值,则有
证明,使用反证法:
2. 若f(x) 在 处可导且取得局部最小值,且 ,则( 半 正 定 矩 阵 )
证明:
2. 等式约束优化
其实一般有两种做法,拉格朗日乘法和消元法,但是消元法遇到等式约束较多时比较难以处理。因此,使用拉格朗日乘法较为方便。
转化为拉格朗日乘法:
以一个具体的例子为例:
没有加等式约束时,它的最小值时不存在的(无穷小)
而加了等式约束之后,假设当前点为
要保证:
要保证:
同样由几何意义可知,
即,f(x) 取得极值的地方为: 约束g(x) = 0 与 f(x) = C (等值线)相切的地方,如上图M1,M2。
此时有:
因此可以,构造
另一种理解,KKT条件
构造
- x 满足
, 此时 - x 不满足
, 此时 存在
而,
此时要求条件为:
3. 不等式约束
假设局部最小值点为
在约束条件之内
此时,处理方式与无约束问题一样
在约束条件之外
此时由几何关系可知,局部最小值位于g(x) = 0 与 f(x) = C 的切线上,由等式约束可知,此时有
综合以上有:
拉格朗日乘法:
以上便是KKT条件
另一个直观的解释为:
构造
- x 满足
, 此时 - x 满足
, 此时 - x 不满足
, 此时
而,
此时要求条件为:
4. 等式和不等式约束
此时,是2,3 的综合情况,只需要构造拉格朗日乘法
若
5. 附件📎
- 本文标题:拉格朗日乘法和KKT条件
- 本文作者:codeflysafe
- 创建时间:2021-08-18 16:14:19
- 本文链接:https://codeflysafe.github.io/2021/08/18/拉格朗日乘法和KKT条件/
- 版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!