拉格朗日乘子和 KTT 条件的关系
1、拉格朗日乘子法(等式约束)
问题形式:最小化目标函数f(x),满足h(x) = 0。
核心思想:在最优解 x∗ 处,目标函数的梯度 ∇f 必须与约束曲面的法向量平行。因为如果它们不平行,我们就可以沿着约束曲面“滑动”来进一步降低 f的值。
构造拉格朗日函数:L(x,λ)=f(x)+λh(x)。其中,λ称为拉格朗日乘子。
对拉格朗日求梯度(对 x 和λ)并设为零:
- ∇xL=∇f(x∗)+λ∇h(x∗)=0 (平稳性条件)
- ∇λL=h(x∗)=0 (原始可行性条件)
2、KKT 条件 (不等式约束与一般情况)
当问题包含不等式约束时,情况变得更复杂,KKT 条件是拉格朗日乘子法的推广。
问题形式:
- min f(x)
- st. gi(x)≤0,i=1,…,m(不等式约束), hj(x)=0,j=1,…,p(等式约束
构造广义拉格朗日函数
$$\displaystyle{\displaylines{L(x,\lambda,\mu)=f(x)+\sum_{i=1}^{m}\lambda_{i}g_{i}(x)+\sum_{j=1}^{p}\mu_{j}h_{j}(x)}}$$
2.1 KKT 条件
- 平稳性条件 L(x,λ,μ) 的导数为 0
- 原始可行性条件,gi(x∗)≤0, hj(x∗)=0,j=1,…,p
- 对偶可行性条件:λi∗≥0,i=1,…,m
- 互补松弛条件 λi∗gi(x∗)=0,i=1,…,m
例如 SVM 求解中,将原始问题转化为对偶问题,KKT提供了求解途径。并且在对偶问题的目标函数中,样本仅以内积形式出现,这允许我们使用核函数技巧。将内积代替为 Kernel(xi, xj)
谢谢!

浙公网安备 33010602011771号