Math-04.优化-06.约束优化与Lagrange

本页讲解约束优化Lagrange 乘子(Lagrange multiplier)——SVM、最大熵、RLHF 中的 KL 约束都依赖这一框架。

段末注释KKT 条件(Karush–Kuhn–Tucker conditions)为约束优化最优性的必要条件(凸问题下亦充分);Lagrange 乘子 $\lambda$ 量化约束收紧时对目标的边际影响。

系列入口00.系列规划 | 前置:02 凸优化


1. 约束问题形式(D2)

图 1 可行域与最优

$$
\min_{\mathbf{x}} f(\mathbf{x}) \quad \text{s.t.} \quad g_i(\mathbf{x}) \le 0,\ i=1,\ldots,m;\quad h_j(\mathbf{x}) = 0,\ j=1,\ldots,p
$$

可行域 $\mathcal{F} = {\mathbf{x}: g_i \le 0,, h_j=0}$。最优解在可行域边界或内部(无约束段)。


2. Lagrange 函数(D3)

图 2 L(x, lambda, nu)

等式约束 $h(\mathbf{x})=0$,引入 $\boldsymbol{\nu}$:

$$
\mathcal{L}(\mathbf{x}, \boldsymbol{\nu}) = f(\mathbf{x}) + \boldsymbol{\nu}^\top h(\mathbf{x})
$$

不等式约束 $g_i(\mathbf{x}) \le 0$,引入 $\lambda_i \ge 0$:

$$
\mathcal{L}(\mathbf{x}, \boldsymbol{\lambda}, \boldsymbol{\nu}) = f(\mathbf{x}) + \sum_i \lambda_i g_i(\mathbf{x}) + \boldsymbol{\nu}^\top h(\mathbf{x})
$$

对偶函数:$d(\boldsymbol{\lambda},\boldsymbol{\nu}) = \inf_{\mathbf{x}} \mathcal{L}(\mathbf{x},\boldsymbol{\lambda},\boldsymbol{\nu})$。


3. KKT 条件(D3–D6)

最优 $(\mathbf{x}^, \boldsymbol{\lambda}^, \boldsymbol{\nu}^*)$ 满足(可微、约束规范下):

  1. 平稳性:$\nabla_{\mathbf{x}} \mathcal{L} = \mathbf{0}$
  2. 原始可行:$g_i \le 0$,$h_j=0$
  3. 对偶可行:$\lambda_i \ge 0$
  4. 互补松弛:$\lambda_i^* g_i(\mathbf{x}^*) = 0$

凸问题 + Slater 条件 → KKT 亦充分


4. ML 实例(D7)

图 3 约束在 ML 中

软间隔 SVM

$$
\min_{\mathbf{w},b,\boldsymbol{\xi}} \frac{1}{2}|\mathbf{w}|^2 + C\sum_i \xi_i \quad \text{s.t.}\quad y_i(\mathbf{w}^\top\mathbf{x}_i+b) \ge 1-\xi_i,\ \xi_i \ge 0
$$

→ 二次规划;对偶问题仅含 $\alpha_i$,核技巧自然出现。

最大熵Math-05/05):矩约束下最大化熵 → Lagrange 得 Gibbs/Softmax。

RLHF KL 约束Math-05/20):

$$
\max_\pi \mathbb{E}[r] \quad \text{s.t.}\quad D_{\mathrm{KL}}(\pi | \pi_{\mathrm{ref}}) \le \delta
$$

→ 等价于 $\max \mathbb{E}[r] - \beta D_{\mathrm{KL}}$($\beta$ 由 $\delta$ 决定)。

L2 正则:$\min L(\boldsymbol{\theta}) + \lambda|\boldsymbol{\theta}|^2$ 可视为 Lagrange 形式 $\min L(\boldsymbol{\theta})$ s.t. $|\boldsymbol{\theta}|^2 \le t$。


5. 局限(D8)

图 4 局限

问题 说明
非凸约束 KKT 仅必要
深网 + 硬约束 少用;软惩罚更常见
对偶间隙 非凸时对偶下界不紧
$\beta$ 选择 RLHF 需调或自适应

6. 概念示例(D12)

1
2
3
4
5
6
7
8
import numpy as np
from scipy.optimize import minimize

# min (x-2)^2 + (y-1)^2 s.t. x + y >= 1 -> g = 1-x-y <= 0
def f(z): return (z[0]-2)**2 + (z[1]-1)**2
cons = {"type": "ineq", "fun": lambda z: z[0] + z[1] - 1}
res = minimize(f, [0, 0], constraints=cons)
print("x*:", res.x, "f*:", res.fun)

7. 小结

Lagrange/KKT 统一 SVM、最大熵、KL 约束 RL。深网无约束训练03–05二阶07

系列导航02 凸优化 | Math-05/20 RLHF

-------------本文结束感谢您的阅读-------------