ARTICLE

次梯度

次梯度 (Subgradient) 次梯度是凸分析中的核心概念,是对不可微凸函数之导数概念的推广。对于可微凸函数,梯度提供了函数在某点处的最佳线性逼近;而当函数不可微时(如在绝对值函数 f(x) = |x| 的 x = 0 处),次梯度则刻画了该点处所有可能的支撑超平面的斜率。次梯度方法在最优化理论、机器学习、经济学等领域中有着广泛应用,尤其在处理带不可微项

浏览 4 更新 2025-11-08

次梯度 (Subgradient)

次梯度凸分析中的核心概念,是对不可微凸函数之导数概念的推广。对于可微凸函数,梯度提供了函数在某点处的最佳线性逼近;而当函数不可微时(如在绝对值函数 f(x)=xf(x) = |x|x=0x = 0 处),次梯度则刻画了该点处所有可能的支撑超平面的斜率。次梯度方法在最优化理论机器学习经济学等领域中有着广泛应用,尤其在处理带不可微项的正则化问题(如 Lasso 回归)时不可或缺。

定义

f:RnR{+}f: \mathbb{R}^n \to \mathbb{R} \cup \{+\infty\} 为一凸函数,x0x_0 为使 f(x0)f(x_0) 有限的一点。向量 gRng \in \mathbb{R}^n 称为 ffx0x_0 处的次梯度,若对任意 yRny \in \mathbb{R}^n 均有:

f(y)f(x0)+g(yx0)f(y) \ge f(x_0) + g^\top (y - x_0)

其几何含义是:穿过点 (x0,f(x0))(x_0, f(x_0))、斜率为 gg 的超平面位于函数图像下方,即它是函数的一个支撑超平面

所有次梯度的集合称为次微分(subdifferential),记作 f(x0)\partial f(x_0)。若 ffx0x_0 处可微,则次微分退化为唯一元素——梯度:f(x0)={f(x0)}\partial f(x_0) = \{\nabla f(x_0)\}。若函数在该点不可微,则次微分可能包含多个元素。

常见函数的次微分

绝对值函数 f(x)=xf(x) = |x|x=0x = 0 处不可微。其次微分为:

f(x)={{1},x>0[1,1],x=0{1},x<0\partial f(x) = \begin{cases} \{1\}, & x > 0 \\ [-1, 1], & x = 0 \\ \{-1\}, & x < 0 \end{cases}

x=0x = 0 处次微分是区间 [1,1][-1, 1],其中任意斜率都给出函数的一个支撑线。

ReLU 函数 f(x)=max{0,x}f(x) = \max\{0, x\} 是神经网络中广泛使用的激活函数。其次微分为:

f(x)={{1},x>0[0,1],x=0{0},x<0\partial f(x) = \begin{cases} \{1\}, & x > 0 \\ [0, 1], & x = 0 \\ \{0\}, & x < 0 \end{cases}

L1 范数 f(x)=x1=xif(x) = \|x\|_1 = \sum |x_i| 的次微分为各分量次微分的 Cartesian 积。在 xi=0x_i = 0 处,第 ii 个分量的次微分为 [1,1][-1, 1];在 xi0x_i \neq 0 处则为 {sgn(xi)}\{\text{sgn}(x_i)\}

指示函数:对凸集 CC 的指示函数 IC(x)=0I_C(x) = 0(若 xCx \in C)或 ++\infty(若 xCx \notin C),其次微分 IC(x0)\partial I_C(x_0) 等于 CCx0x_0 处的法锥(normal cone),这在约束优化的对偶理论中至关重要。

次梯度与最优性条件

次梯度在优化中最重要的应用在于给出凸函数的无约束最优性条件:凸函数 ffxx^* 处取得全局最小值当且仅当

0f(x)0 \in \partial f(x^*)

这直接推广了可微情形下的 f(x)=0\nabla f(x^*) = 0。对于带约束问题 minxCf(x)\min_{x \in C} f(x),最优性条件为:

0f(x)+NC(x)0 \in \partial f(x^*) + N_C(x^*)

其中 NC(x)N_C(x^*)CCxx^* 处的法锥。此条件是卡罗需-库恩-塔克条件在凸分析中的推广。

次梯度方法 (Subgradient Method)

次梯度方法是求解不可微凸优化问题的迭代算法。给定初始点 x(0)x^{(0)},迭代更新为:

x(k+1)=x(k)αkg(k),g(k)f(x(k))x^{(k+1)} = x^{(k)} - \alpha_k g^{(k)}, \quad g^{(k)} \in \partial f(x^{(k)})

其中 αk>0\alpha_k > 0 为步长。与经典梯度下降不同,次梯度方法不保证每次迭代都降低目标函数值,因此不能使用线搜索,通常采用递减步长(如 αk=a/k\alpha_k = a/\sqrt{k})以保证收敛。

Lasso 回归(在最小二乘损失中加入 L1 正则项 λβ1\lambda \|\beta\|_1)是典型应用。由于 L1 范数在 βj=0\beta_j = 0 处不可微,次梯度方法自然地处理稀疏解。近端梯度法作为次梯度思想的推广,通过近端算子更高效地处理不可微项,在大规模机器学习中占据核心地位。

在经济学中的意义

次梯度出现在涉及不可微效用函数不可微生产函数的优化中。例如,具有勒ontief 偏好(完全互补)的消费者的无差异曲线存在折点,边际替代率不唯一,此时最优条件需用次梯度表述:商品束 xx^* 是效用最大化解当且仅当价格向量属于效用函数在 xx^* 处的次微分。类似地,线性规划的对偶理论中,通过拉格朗日对偶导出的子梯度被用于次梯度上升算法求解对偶问题,在计算一般均衡和政策评估中有实际应用。