Administrator
发布于 2026-09-09 / 0 阅读
0
0

优化理论(八):次微分与邻近算子

课程引入:非光滑凸优化

这部分课程是CentraleSupelec的ATSI硕士优化课程的第六部分,主题聚焦在次微分和邻近算子上。在开始正式内容之前,我们需要理解为什么要学习这些内容。

传统的优化理论主要处理光滑函数,也就是那些处处可微的函数。但在实际应用中,我们经常会遇到非光滑的凸函数。PPT中展示的那个三维图形就是一个典型例子——它呈现出V字形的结构,在底部有明显的棱角和折痕。这种函数在某些点上是不可微的,传统的梯度下降等方法在这些点上会失效。因此,我们需要发展新的数学工具来处理这类问题,这就是次微分理论的价值所在。

历史背景:先驱者Jean-Jacques Moreau

在深入技术细节之前,我们要认识次微分理论的奠基人之一——Jean-Jacques Moreau(1923-2014)。他的工作为现代凸分析和优化理论奠定了基础。我们今天要学习的次微分概念,就是以他的名字命名的,称为Moreau次微分。这不仅仅是一个历史注脚,而是在告诉我们这个理论的重要性和深度。

函数的次微分:核心定义

现在我们进入最核心的概念。首先需要明确我们研究的对象:设函数 f 是从希尔伯特空间 \mathcal{H} 映射到扩展实数 ]-\infty, +\infty] 的一个正常函数(proper function)。这里所谓的正常函数,意味着函数不能恒为 +\infty,且不取 -\infty 值,这是为了保证函数在数学上是有意义的。

那么什么是Moreau次微分呢?对于函数 f,它的次微分记作 \partial f,这个次微分本身是一个集值映射。为什么说是集值呢?因为对于函数定义域中的每一个点 x,次微分 \partial f 都对应一个集合,而不是单个值。具体来说,次微分的映射关系是:

\partial f : \mathcal{H} \to 2^{\mathcal{H}}

这个记号 2^{\mathcal{H}} 表示 \mathcal{H} 的所有子集构成的集合,也就是幂集。换句话说,\partial f 把空间中的每个点 x 映射到 \mathcal{H} 的某个子集。

现在关键问题来了:这个子集里到底包含哪些元素?对于给定的点 x,次微分 \partial f(x) 定义为:

\partial f(x) = \{u \in \mathcal{H} \mid (\forall y \in \mathcal{H}) \, \langle y - x \mid u \rangle + f(x) \leq f(y)\}

让我们仔细解读这个定义背后的几何意义。这个集合包含所有满足特定条件的向量 u。什么条件呢?对于空间中任意一点 y,如果我们在点 x 处构造一个线性函数 \langle y - x \mid u \rangle + f(x)(这里 \langle \cdot \mid \cdot \rangle 表示内积),这个线性函数的值必须始终不超过 f(y)

这意味着什么?从几何角度看,u 定义了一个在点 x 处"支撑"函数 f 的仿射函数。想象一下,如果函数 f 是可微的,那么在点 x 处的切线就是唯一的,梯度 \nabla f(x) 唯一确定了这条切线的斜率。但对于非光滑函数,在某个点可能存在多条"支撑线"——所有这些支撑线的斜率构成的集合,就是次微分 \partial f(x)

左侧的图展示了函数 f(y) 的形状,它是一个凸函数,在点 x 处有一个棱角。右侧的图展示了次微分 u 关于点 x 的变化情况。注意右图呈现出阶跃函数的形态——在函数光滑的区域,次微分是单点集(对应唯一的梯度);而在 x 处,由于函数不可微,次微分变成了一个区间,这个区间包含了所有可能的"次梯度"。

第二张相同幻灯片的动画版本中,增加了一条红色的直线,表示的就是 f(x) + \langle y - x \mid u \rangle 这个仿射函数。这条红线从点 (x, f(x)) 出发,斜率由 u 决定。关键的几何事实是:这条红线必须始终位于函数 f 的下方或与之相切,这正是不等式 \langle y - x \mid u \rangle + f(x) \leq f(y) 的几何表达。当 u 遍历次微分集合中的所有元素时,我们得到所有可能的支撑仿射函数。

总结来说,次微分推广了可微函数的梯度概念。当函数在某点可微时,次微分退化为单点集,恰好就是梯度;当函数在某点不可微但仍然是凸的时,次微分变成一个集合,包含了所有可能的"广义梯度"方向。这个工具使我们能够在非光滑的情况下仍然进行优化分析和算法设计。

次微分的几何直观:动画演示

通过这一系列动画幻灯片,我们可以更深入地理解次微分的几何意义。每一帧都在展示当我们改变次梯度 u 的值时,相应的支撑仿射函数 f(x) + \langle y - x \mid u \rangle 是如何变化的。

在第一帧中,红色直线的斜率相对较小,它从点 (x, f(x)) 出发,斜率由某个特定的 u 值决定。这条直线恰好"支撑"着蓝色的函数曲线,意味着它始终不会超过函数本身的值。右侧图像中,对应的次微分值 u 显示为一个点。

随着动画的推进,我们看到红色支撑线的斜率在逐渐增大。这对应着我们在次微分集合 \partial f(x) 中选取不同的元素。关键的观察是:在函数 f 的拐点 x 处,存在一个范围内的斜率都能使得相应的直线成为支撑线。这就是为什么在右图中,当我们到达不可微点时,次微分 u 从单点跳跃到一个区间。

具体来说,当函数在点 x 处是光滑的(左侧或右侧的光滑部分),只有一个特定的斜率(即导数)能使直线与曲线相切。但在 x 这个尖点处,所有斜率介于左导数和右导数之间的直线都可以作为支撑线。这个斜率的范围,就是次微分集合 \partial f(x)

最后一帧动画中,红色支撑线的斜率已经增大到某个上界,此时它沿着函数右侧的那段曲线切线方向延伸。这标志着次微分区间的右端点。右图中的跳跃也完成了——从单点变为区间,再从区间变回单点。

次微分的性质:费马法则

在理解了次微分的几何意义后,我们现在来看它最重要的性质之一,这个性质在优化理论中起着核心作用。

幻灯片底部突出显示了费马法则(Fermat's rule)。这个法则断言:零向量属于函数 f 在点 x 的次微分,当且仅当 x 是函数 f 的最小值点。用数学语言表示就是:

0 \in \partial f(x) \Leftrightarrow x \in \text{Argmin} f

这里 \text{Argmin} f 表示使函数 f 取得最小值的所有点的集合。让我们深入理解为什么这个等价关系成立,以及它在优化中的意义。

首先看"\Rightarrow"方向:如果 0 \in \partial f(x),为什么 x 一定是最小值点?根据次微分的定义,如果 0\partial f(x) 中的一个元素,那么对于所有 y \in \mathcal{H},不等式 \langle y - x \mid 0 \rangle + f(x) \leq f(y) 必须成立。但是 \langle y - x \mid 0 \rangle = 0,所以这个不等式简化为 f(x) \leq f(y)。这正是说 x 处的函数值不超过任何其他点的函数值,即 x 是全局最小值点。

反过来看"\Leftarrow"方向:如果 x 是最小值点,为什么 0 \in \partial f(x)?既然 x 使得 f 取最小值,那么对所有 y,我们有 f(x) \leq f(y),这可以改写为 0 + f(x) \leq f(y),而这恰好就是 0 属于 \partial f(x) 的充要条件(代入 u = 0 到次微分的定义式中)。

费马法则的深刻意义在于:它将优化问题(寻找最小值)转化为一个包含性问题(判断零向量是否在次微分中)。在可微的情况下,这退化为我们熟悉的"最优点处梯度为零"的充要条件。但费马法则的威力在于它对非光滑函数同样适用,这使得我们可以用统一的框架处理光滑和非光滑优化问题。

从几何上看,0 \in \partial f(x) 意味着存在一条水平的支撑仿射函数(斜率为零)经过点 (x, f(x)),并且这条水平线位于整个函数图像的下方。这显然只有在 x 是最低点时才可能发生。因此,费马法则不仅是一个代数等价关系,更揭示了优化的几何本质。

次微分的基本性质

在建立了次微分的基本定义后,我们现在要系统地研究它的几个重要性质。这些性质不仅揭示了次微分的数学结构,也为后续的优化算法提供了理论基础。

首先需要明确一个术语:次微分集合 \partial f(x) 中的每一个元素 u 被称为函数 f 在点 x 处的一个次梯度(subgradient)。这个名称的由来很直观——当函数可微时,次梯度就退化为我们熟悉的梯度;而在不可微的情况下,次梯度是梯度概念的推广。

第二个性质涉及函数的定义域。如果点 x 不属于函数 f 的有效定义域(记作 \text{dom } f),那么在该点的次微分是空集,即 \partial f(x) = \varnothing。这个性质从直观上看很自然:如果函数在某点根本没有定义或者取值为无穷,我们就无法在那里讨论任何形式的"导数"或"次导数"。这确保了次微分只在函数有意义的地方才被计算。

第三个性质极为重要:对于定义域内的每一个点 x \in \text{dom } f,次微分 \partial f(x) 都是一个闭集且是凸集。为什么这个性质如此关键?因为闭凸集在数学分析和优化理论中有非常好的性质。首先,闭集的性质保证了极限的稳定性——如果一列次梯度收敛,其极限仍然是次梯度。其次,凸性意味着任意两个次梯度的凸组合仍然是次梯度,这在理论分析和算法设计中经常被用到。从几何直观上理解:所有能够支撑函数图像的仿射函数的斜率集合,自然形成一个凸锥,因此次微分是凸的。

次微分的单调性

接下来我们要探讨次微分作为一个算子的重要性质——单调性。这个性质在变分分析和优化算法的收敛性证明中扮演着核心角色。

幻灯片告诉我们:函数 f 的次微分 \partial f 是一个单调算子。什么是单调算子呢?形式化的定义是:对于希尔伯特空间中的任意两点 x_1, x_2 \in \mathcal{H}^2,以及它们各自的任意次梯度 u_1 \in \partial f(x_1)u_2 \in \partial f(x_2),都有

\langle u_1 - u_2 \mid x_1 - x_2 \rangle \geq 0

这个不等式的几何意义非常深刻。它说的是:次梯度的差与自变量的差之间的内积非负。换句话说,当我们从点 x_1 移动到点 x_2 时,对应的次梯度的变化方向与位置的变化方向形成的夹角不超过90度。这种性质确保了次微分算子不会"突然逆转方向",它的变化是"和谐"的。

为什么这个性质成立?我们来看证明过程。根据次微分的定义,由于 u_1 \in \partial f(x_1),我们知道对所有点(包括 x_2)都有

\langle x_2 - x_1 \mid u_1 \rangle + f(x_1) \leq f(x_2)

类似地,由于 u_2 \in \partial f(x_2),对所有点(包括 x_1)都有

\langle x_1 - x_2 \mid u_2 \rangle + f(x_2) \leq f(x_1)

现在关键的一步来了:我们把这两个不等式相加。左边变成 \langle x_2 - x_1 \mid u_1 \rangle + \langle x_1 - x_2 \mid u_2 \rangle + f(x_1) + f(x_2),右边是 f(x_2) + f(x_1)。函数值项相互抵消后,我们得到

\langle x_2 - x_1 \mid u_1 \rangle + \langle x_1 - x_2 \mid u_2 \rangle \leq 0

注意到 \langle x_1 - x_2 \mid u_2 \rangle = -\langle x_2 - x_1 \mid u_2 \rangle,所以上式可以改写为

\langle x_2 - x_1 \mid u_1 \rangle - \langle x_2 - x_1 \mid u_2 \rangle \leq 0

利用内积的线性性,这等价于

\langle x_2 - x_1 \mid u_1 - u_2 \rangle \leq 0

两边乘以 -1 并调换内积的顺序,就得到了

\langle x_1 - x_2 \mid u_1 - u_2 \rangle \geq 0

这正是我们要证明的单调性条件。右侧的图示很好地展现了这个关系:当 xx_1 变化到 x_2 时,对应的次梯度 u 也从 u_1 变化到 u_2,而这两个变化向量之间保持着"同向"的关系(内积非负)。

凸函数的Gâteaux可微性与次微分

现在我们来讨论次微分理论中一个非常漂亮的结果,它建立了经典微分概念与次微分之间的联系。这个结果告诉我们:对于凸函数,如果它在某点是Gâteaux可微的,那么次微分在该点就退化为单点集,且该点恰好就是Gâteaux导数。

具体陈述如下:如果函数 f: \mathcal{H} \to ]-\infty, +\infty] 是凸的,并且在点 x 处是Gâteaux可微的,那么

\partial f(x) = \{\nabla f(x)\}

这里需要先理解什么是Gâteaux可微性。函数 f 在点 x 处沿方向 y 的Gâteaux导数定义为

\langle \nabla f(x) \mid y \rangle = \lim_{\substack{\alpha \to 0 \\ \alpha \neq 0}} \frac{f(x + \alpha y) - f(x)}{\alpha}

这个定义可以理解为方向导数的推广。它考察的是当我们从点 x 沿着方向 y 以步长 \alpha 移动时,函数值的变化率。当这个极限对所有方向 y 都存在且是 y 的线性泛函时,我们就说函数在 x 处是Gâteaux可微的。

现在我们来看为什么这个定理成立。证明分为两个方向。

第一个方向(\nabla f(x) \in \partial f(x):我们需要证明Gâteaux梯度满足次微分的定义条件。利用函数 f 的凸性,对于任意 \alpha \in [0, 1] 和任意 y \in \mathcal{H},凸性不等式给出

f(x + \alpha(y - x)) \leq (1 - \alpha)f(x) + \alpha f(y)

重新整理这个不等式,移项后得到

f(x + \alpha(y - x)) - f(x) \leq \alpha(f(y) - f(x))

两边除以 \alpha(注意 \alpha > 0),得到

\frac{f(x + \alpha(y - x)) - f(x)}{\alpha} \leq f(y) - f(x)

现在让 \alpha \to 0^+,左边的极限根据Gâteaux可微性的定义恰好是 \langle \nabla f(x) \mid y - x \rangle。因此我们得到

\langle \nabla f(x) \mid y - x \rangle \leq f(y) - f(x)

重新整理就是

\langle y - x \mid \nabla f(x) \rangle + f(x) \leq f(y)

这恰好表明 \nabla f(x) 满足次微分的定义,即 \nabla f(x) \in \partial f(x)

第二个方向(\partial f(x) \subseteq \{\nabla f(x)\}:反过来,我们需要证明次微分中不能有其他元素。假设 u \in \partial f(x),那么根据次微分的定义,对所有 \alpha \in [0, +\infty[ 和所有 y \in \mathcal{H},我们有

f(x + \alpha y) \geq f(x) + \langle u \mid x + \alpha y - x \rangle = f(x) + \alpha \langle u \mid y \rangle

重新整理后除以 \alpha\alpha > 0),得到

\frac{f(x + \alpha y) - f(x)}{\alpha} \geq \langle u \mid y \rangle

\alpha \to 0^+,左边趋向于 \langle \nabla f(x) \mid y \rangle,因此

\langle \nabla f(x) \mid y \rangle \geq \langle u \mid y \rangle

这对所有 y \in \mathcal{H} 都成立。现在做一个巧妙的选择:令 y = u - \nabla f(x),代入上式得到

\langle \nabla f(x) \mid u - \nabla f(x) \rangle \geq \langle u \mid u - \nabla f(x) \rangle

展开内积并整理,我们得到

\langle \nabla f(x) \mid u \rangle - \|\nabla f(x)\|^2 \geq \|u\|^2 - \langle u \mid \nabla f(x) \rangle

移项后

2\langle \nabla f(x) \mid u \rangle \geq \|u\|^2 + \|\nabla f(x)\|^2

但是根据内积的柯西-施瓦茨不等式和范数的性质,我们知道 2\langle \nabla f(x) \mid u \rangle \leq 2\|\nabla f(x)\| \cdot \|u\| \leq \|u\|^2 + \|\nabla f(x)\|^2。因此上式中的不等号必须取等号,这只有在 u = \nabla f(x) 时才能发生。从而证明了 \partial f(x) \subseteq \{\nabla f(x)\}

综合两个方向的证明,我们得到 \partial f(x) = \{\nabla f(x)\}。这个结果的重要性在于:它告诉我们次微分是梯度概念的真正推广——在函数光滑的地方,次微分退化为经典的梯度;而在不可微的地方,次微分提供了一个集合来刻画所有可能的"广义导数"方向。这为我们处理非光滑优化问题提供了统一的框架。

凸函数次微分的重要例子:法锥

在理论发展到一定阶段后,我们需要通过具体例子来加深理解。这里我们要研究一个在凸分析和优化理论中极为重要的特殊情况——集合的法锥(normal cone)及其次微分。

C 是希尔伯特空间 \mathcal{H} 中的一个非空子集。对于空间中的每一个点 x \in \mathcal{H},我们定义集合 C 在点 x 处的法锥,记作 N_C(x)。这个法锥的定义依赖于点 x 是否属于集合 C

N_C(x) = \begin{cases} \{u \in \mathcal{H} \mid (\forall y \in C) \, \langle u \mid y - x \rangle \leq 0\} & \text{if } x \in C \\ \varnothing & \text{otherwise} \end{cases}

让我们深入理解这个定义的几何意义。当点 x 在集合 C 内部或边界上时,法锥 N_C(x) 包含所有这样的向量 u:对于集合 C 中的任意点 y,向量 u 与从 x 指向 y 的方向向量 y - x 的内积都非正。这意味着什么?内积非正表示两个向量之间的夹角大于或等于90度,换句话说,向量 u 指向的是"远离集合 C"的方向。所有这样的向量构成的集合,就是法锥。

从图形中可以看到两种典型情况。左图展示的是当点 x 位于凸集 C 的边界上时的法锥。此时法锥 N_C(x) 形成一个黄色的锥形区域,这个锥的所有方向都与集合的切方向形成钝角或直角。如果集合 C 是一个多边形,当 x 在一条边上时,法锥就是垂直于该边且指向外侧的所有向量。右图展示了当集合 C 是光滑曲线且点 x 在其边界上时,法锥退化为一条射线,这条射线正是该点处的外法线方向。

当点 x 不属于集合 C 时,法锥被定义为空集。这个规定是合理的:既然点不在集合中,就无法谈论"垂直于集合"或"指向集合外部"的方向。

第二张幻灯片给出了两个重要的性质。第一个性质告诉我们:如果点 x 属于集合 C 的内部(记作 \text{int } C),那么法锥退化为单点集 N_C(x) = \{0\}。为什么会这样?因为如果 x 是内部点,那么在 x 周围有一个小球完全包含在 C 中。对于这个小球内的任意点 y,向量 y - x 可以指向任意方向。要让某个向量 u 与所有这些方向的内积都非正,唯一的可能就是 u = 0。这个结果揭示了一个直观的事实:在内部点处,没有"特殊"的法向方向,所有方向都是等价的。

第二个性质更加深刻:如果 C 本身是一个向量空间,那么对于 C 中的任意点 x,法锥 N_C(x) 等于 C 的正交补空间 C^{\perp}。这里 C^{\perp} 定义为与 C 中所有向量都正交的向量集合。为什么这个结论成立?如果 C 是向量空间,那么对于 C 中的任意两点 xy,它们的差 y - x 也属于 C(因为向量空间对减法封闭)。要让 u 满足 \langle u \mid y - x \rangle \leq 0 对所有 y \in C 成立,实际上就是要求 uC 中所有向量正交。这正是正交补空间的定义。这个性质在处理带有线性约束的优化问题时非常有用。

次微分演算:基本运算规则

次微分理论不仅要能处理单个函数,还需要能够处理函数的组合和变换。就像微积分中有求导的链式法则和加法法则一样,次微分也有相应的演算规则。这一节我们要建立次微分演算的基础。

\mathcal{H}\mathcal{G} 是两个实希尔伯特空间。我们要研究的第一个规则是标量乘法。如果 f: \mathcal{H} \to ]-\infty, +\infty] 是一个正常函数,那么对于任意正实数 \lambda \in ]0, +\infty[,标量乘法后的函数 \lambda f 的次微分满足

\partial(\lambda f) = \lambda \partial f

这个性质是符合直觉的:将函数整体乘以一个正常数,相当于在垂直方向上拉伸函数图像,所有支撑仿射函数的斜率也应该按同样的比例变化。从定义上也容易验证:如果 u \in \partial f(x),那么 \langle y - x \mid u \rangle + f(x) \leq f(y) 对所有 y 成立。两边同时乘以 \lambda,就得到 \langle y - x \mid \lambda u \rangle + \lambda f(x) \leq \lambda f(y),这正说明 \lambda u \in \partial(\lambda f)(x)

第二个更重要的规则涉及函数的线性复合。设 f: \mathcal{H} \to ]-\infty, +\infty]g: \mathcal{G} \to ]-\infty, +\infty] 是两个正常函数,L \in \mathcal{B}(\mathcal{H}, \mathcal{G}) 是从 \mathcal{H}\mathcal{G} 的有界线性算子。我们要研究复合函数 (f + g \circ L) 的次微分,其中 g \circ L 表示先对输入应用线性变换 L,然后计算函数 g

在一定条件下(具体来说,要求 \text{dom } g \cap L(\text{dom } f) \neq \varnothing,即两个函数的"有效定义域"在线性变换下有交集),我们有包含关系

(\forall x \in \mathcal{H}) \quad \partial f(x) + L^* \partial g(Lx) \subset \partial(f + g \circ L)(x)

这里 L^* 表示算子 L 的伴随算子。让我们理解这个公式的含义。左边 \partial f(x) + L^* \partial g(Lx) 是两个集合的Minkowski和,即所有形如 u + L^* v 的向量,其中 u \in \partial f(x)v \in \partial g(Lx)。这个公式告诉我们:复合函数的次微分至少包含两部分的"贡献"——来自 f 本身的次梯度 u,以及来自 g \circ L 的次梯度,后者通过伴随算子 L^* 从空间 \mathcal{G} 映射回空间 \mathcal{H}

为什么需要伴随算子?这是因为次梯度定义中的内积要求向量在同一空间中。函数 g 在点 Lx \in \mathcal{G} 处的次梯度 v 属于空间 \mathcal{G},而我们需要的是 \mathcal{H} 空间中的向量。伴随算子 L^* 正好提供了这个转换:它保证了内积关系 \langle Ly \mid v \rangle_{\mathcal{G}} = \langle y \mid L^* v \rangle_{\mathcal{H}} 成立。

现在让我们看证明过程。设 x \in \mathcal{H}u \in \partial f(x)v \in \partial g(Lx)。我们需要证明 u + L^* v \in \partial(f + g \circ L)(x)。根据次微分的定义,由于 u \in \partial f(x),对所有 y \in \mathcal{H}

(\forall y \in \mathcal{H}) \quad f(y) \geq f(x) + \langle y - x \mid u \rangle

类似地,由于 v \in \partial g(Lx),对所有 z \in \mathcal{G}(特别地,取 z = Ly)有

g(Ly) \geq g(Lx) + \langle Ly - Lx \mid v \rangle

利用线性算子的性质 Ly - Lx = L(y - x) 和伴随算子的定义,第二个不等式可以改写为

g(Ly) \geq g(Lx) + \langle L(y - x) \mid v \rangle = g(Lx) + \langle y - x \mid L^* v \rangle

现在我们将两个不等式相加:

f(y) + g(Ly) \geq f(x) + g(Lx) + \langle y - x \mid u \rangle + \langle y - x \mid L^* v \rangle

利用内积的线性性,右边可以合并为

f(y) + g(Ly) \geq f(x) + g(Lx) + \langle y - x \mid u + L^* v \rangle

而这正好说明 u + L^* v 满足 (f + g \circ L) 在点 x 处的次微分定义条件,即 u + L^* v \in \partial(f + g \circ L)(x)。这就完成了包含关系的证明。

次微分演算:特殊情况与等式成立条件

在建立了基本的包含关系后,我们自然要问:在什么条件下,这个包含关系能够变成等式?这对于实际计算非常重要,因为等式意味着我们可以精确地计算复合函数的次微分。

第三张幻灯片给出了一个更强的结果。设 f 属于 \Gamma_0(\mathcal{H})(这个记号表示 \mathcal{H} 上的下半连续正常凸函数全体),g 属于 \Gamma_0(\mathcal{G})L \in \mathcal{B}(\mathcal{H}, \mathcal{G})。如果满足以下两个条件之一:

  • 集合 \text{int}(\text{dom } g) \cap L(\text{dom } f) \neq \varnothing(函数 g 的有效定义域的内部与 L 作用在 f 的定义域上的像有交集)
  • 或者 \text{dom } g \cap \text{int}(L(\text{dom } f)) \neq \varnothingg 的定义域与像集内部有交集)

那么我们有等式

\partial f + L^* \partial g L = \partial(f + g \circ L)

这里等式右边的 \partial(f + g \circ L) 不再是点态的,而是作为算子的等式。这个结果的强大之处在于:在适当的正则性条件(上述两个条件本质上都要求定义域有"足够的重叠")下,次微分算子对于这种复合运算是完全可加的,就像导数对于函数加法的可加性一样。

这个一般性定理有两个重要的特殊情况值得单独列出。

第一个特殊情况:如果 fg 都属于 \Gamma_0(\mathcal{H})(即它们都是同一空间上的下半连续正常凸函数),并且 g 是有限值的(即 g 不在任何点取 +\infty),那么

\partial f + \partial g = \partial(f + g)

这是最简单也是最常用的情形。它告诉我们:两个下半连续凸函数相加后的次微分,等于各自次微分的和。这个结果之所以需要 g 是有限值的条件,是为了保证定义域的交集有足够好的性质。在实际应用中,很多正则化项(如平滑项或边界惩罚项)都是有限值函数,所以这个结果直接适用。

第二个特殊情况处理的是纯粹的线性复合(不涉及 f)。如果 g \in \Gamma_0(\mathcal{G})L \in \mathcal{B}(\mathcal{H}, \mathcal{G}),并且满足以下两个条件之一:

  • \text{int}(\text{dom } g) \cap \text{ran } L \neq \varnothingg 的定义域内部与算子 L 的值域有交集)
  • 或者 \text{ran } L = \mathcal{G}L 是满射)

那么

L^* \partial g L = \partial(g \circ L)

这个结果说的是:当我们对函数 g 进行线性变换 L 后,新函数 g \circ L 的次微分可以通过伴随算子 L^* 作用在 \partial g(L(\cdot)) 上得到。条件的要求本质上是保证线性变换不会造成定义域的"病态收缩"。

这些演算规则构成了次微分理论的计算工具箱。它们允许我们将复杂函数的次微分分解为简单成分的组合,这在处理实际的优化问题(如带约束的凸优化、正则化问题等)时极为有用。更重要的是,这些规则保持了次微分的凸性和闭性,这对于优化算法的设计和收敛性分析至关重要。

次微分演算:可分离和函数

我们已经掌握了次微分对于一般复合和加法的演算规则,现在要研究一个在实际应用中极为重要的特殊情况——可分离和函数(separable sum)。这种结构在并行优化、分布式计算以及处理大规模问题时频繁出现。

I 是自然数集 \mathbb{N} 的一个有限子集(比如 I = \{1, 2, \ldots, n\}),对于每个指标 i \in I,我们有一个希尔伯特空间 \mathcal{H}_i。现在考虑这些空间的笛卡尔积

\mathcal{H} = \times_{i \in I} \mathcal{H}_i

这个乘积空间中的元素是元组 x = (x_i)_{i \in I},其中每个 x_i 属于相应的空间 \mathcal{H}_i。对于每个指标 i \in I,设 f_i: \mathcal{H}_i \to ]-\infty, +\infty] 是一个正常函数。我们定义可分离和函数 f: \mathcal{H} \to ]-\infty, +\infty]

f: \mathcal{H} \to ]-\infty, +\infty] : x = (x_i)_{i \in I} \mapsto \sum_{i \in I} f_i(x_i)

这个函数被称为"可分离"的,是因为它可以分解为各个坐标上独立函数的和——计算 f(x) 时,我们只需分别计算每个分量 f_i(x_i),然后求和即可,不同坐标之间没有耦合。

现在的核心问题是:这样一个可分离和函数的次微分是什么?答案非常优美:对于任意 x = (x_i)_{i \in I} \in \mathcal{H}

\partial f(x) = \{(t_i)_{i \in I} \mid (\forall i \in I) \, t_i \in \partial f_i(x_i)\}

这个公式说的是:整体函数 f 在点 x 的次微分,恰好是各个分量函数 f_i 在相应点 x_i 的次微分的笛卡尔积。换句话说,一个元组 t = (t_i)_{i \in I} 属于 \partial f(x),当且仅当它的每个分量 t_i 都属于相应的 \partial f_i(x_i)。这意味着次微分运算完美地"尊重"了函数的可分离结构——整体的次微分可以从局部的次微分直接组装而成。

为什么这个结果成立?让我们看证明。设 x = (x_i)_{i \in I} \in \mathcal{H},我们需要证明两个方向的包含关系。

第一个方向(\subseteq:假设 t = (t_i)_{i \in I} \in \times_{i \in I} \partial f_i(x_i),这意味着对每个 i \in I,都有 t_i \in \partial f_i(x_i)。根据次微分的定义,对于每个 i 和任意 y_i \in \mathcal{H}_i,我们有

f_i(y_i) \geq f_i(x_i) + \langle t_i \mid y_i - x_i \rangle

现在考虑任意 y = (y_i)_{i \in I} \in \mathcal{H}。将上述不等式对所有 i \in I 求和:

\sum_{i \in I} f_i(y_i) \geq \sum_{i \in I} f_i(x_i) + \sum_{i \in I} \langle t_i \mid y_i - x_i \rangle

左边正是 f(y),右边第一项是 f(x)。对于第二项,注意到在乘积空间 \mathcal{H} 中,内积定义为各分量内积的和,因此

\sum_{i \in I} \langle t_i \mid y_i - x_i \rangle = \langle t \mid y - x \rangle

所以我们得到 f(y) \geq f(x) + \langle t \mid y - x \rangle,这正说明 t \in \partial f(x)

第二个方向(\supseteq:反过来,假设 t = (t_i)_{i \in I} \in \partial f(x)。那么对所有 y = (y_i)_{i \in I} \in \mathcal{H},有

\sum_{i \in I} f_i(y_i) \geq \sum_{i \in I} f_i(x_i) + \sum_{i \in I} \langle t_i \mid y_i - x_i \rangle

现在我们需要证明每个 t_i \in \partial f_i(x_i)。固定某个 j \in I。为了验证 t_j \in \partial f_j(x_j),我们需要对任意 y_j \in \mathcal{H}_j 证明 f_j(y_j) \geq f_j(x_j) + \langle t_j \mid y_j - x_j \rangle

巧妙之处在于:我们可以构造一个特殊的 y \in \mathcal{H},让它在坐标 j 处等于 y_j,而在其他所有坐标 i \neq j 处都等于 x_i。用公式表示:对所有 i \in I \setminus \{j\},令 y_i = x_i。将这个特殊的 y 代入前面的不等式:

f_j(y_j) + \sum_{i \neq j} f_i(x_i) \geq f_j(x_j) + \sum_{i \neq j} f_i(x_i) + \langle t_j \mid y_j - x_j \rangle + \sum_{i \neq j} \langle t_i \mid x_i - x_i \rangle

注意到 \sum_{i \neq j} \langle t_i \mid x_i - x_i \rangle = 0,且左右两边都有 \sum_{i \neq j} f_i(x_i),消去后得到

f_j(y_j) \geq f_j(x_j) + \langle t_j \mid y_j - x_j \rangle

由于 y_j 是任意的,这证明了 t_j \in \partial f_j(x_j)。因为 j 是任意选取的,所以 t \in \times_{i \in I} \partial f_i(x_i)

综合两个方向,我们证明了等式成立。这个结果的价值在于:它允许我们将高维问题的次微分计算分解为低维子问题的独立计算,然后简单地拼装结果。这在算法设计中极为有用,因为它使得并行化和分布式计算成为可能。

共轭函数:定义与基本定理

在继续深入次微分理论之前,我们需要引入一个与次微分紧密相关的重要概念——共轭函数(conjugate function)。这个概念是凸分析的基石之一,它与次微分之间有着深刻的对偶关系。

\mathcal{H} 是一个希尔伯特空间,f: \mathcal{H} \to ]-\infty, +\infty] 是一个函数。函数 f 的共轭函数,记作 f^*: \mathcal{H} \to [-\infty, +\infty],定义为

(\forall u \in \mathcal{H}) \quad f^*(u) = \sup_{x \in \mathcal{H}} \left( \langle x \mid u \rangle - f(x) \right)

这个定义初看起来有些抽象,让我们仔细解读它的几何和分析意义。对于给定的 u,共轭函数 f^*(u) 是所有形如 \langle x \mid u \rangle - f(x) 的值的上确界。我们可以把 \langle x \mid u \rangle 看作是线性函数,f(x) 是原函数值,它们的差 \langle x \mid u \rangle - f(x) 度量的是"线性函数与原函数的最大偏离"。

从另一个角度理解:固定 u,考虑所有斜率为 u 的仿射函数 \langle x \mid u \rangle - c(其中 c 是常数)。共轭 f^*(u) 给出的是使得这个仿射函数始终不超过 f(x) 的最小的 c 值(取相反数)。换句话说,f^*(u) 刻画了所有以 u 为"斜率"的支撑仿射函数中"截距"的最大值。这正是次微分概念的对偶面。

共轭函数的一个关键性质由Moreau-Fenchel定理给出:设 \mathcal{H} 是希尔伯特空间,f: \mathcal{H} \to ]-\infty, +\infty] 是正常函数,那么

f \text{ is l.s.c. and convex } \Leftrightarrow f^{**} = f

这里 f^{**} 表示共轭的共轭,即 (f^*)^*,而 "l.s.c." 是 "lower semicontinuous"(下半连续)的缩写。这个定理断言:一个函数是下半连续且凸的,当且仅当它等于自己的双共轭。

这个结果为什么重要?它告诉我们共轭运算在下半连续凸函数类上是一个对合(involution)——做两次共轭运算后回到原函数。这种对称性反映了凸函数与其支撑仿射函数族之间的完美对偶关系。一个下半连续凸函数完全由其所有支撑仿射函数决定,而共轭函数正是编码了这些支撑仿射函数的所有信息。反之,如果一个函数不是下半连续凸的,取双共轭会得到它的"下半连续凸包络"——最接近它的下半连续凸函数。

共轭函数的性质:Fenchel-Young不等式

建立了共轭函数的定义后,我们现在要探讨它的基本性质。其中最重要的是Fenchel-Young不等式,它揭示了原函数、共轭函数、次微分三者之间的深刻联系。

对于正常函数 f,Fenchel-Young不等式有两个版本:

第一个版本(基本不等式):对于任意 (x, u) \in \mathcal{H}^2,有

f(x) + f^*(u) \geq \langle x \mid u \rangle

这个不等式的证明非常直接。根据共轭函数的定义,f^*(u) = \sup_{y \in \mathcal{H}} (\langle y \mid u \rangle - f(y)),因此对任意 x,特别地有

f^*(u) \geq \langle x \mid u \rangle - f(x)

移项即得 f(x) + f^*(u) \geq \langle x \mid u \rangle。这个不等式看似简单,但它的几何意义深刻:它说的是原函数值与共轭函数值的和总是至少等于内积。这可以理解为一种"能量守恒"——原空间和对偶空间的"能量"之和有一个下界。

第二个版本(等号成立条件):对于任意 (x, u) \in \mathcal{H}^2

u \in \partial f(x) \quad \Leftrightarrow \quad f(x) + f^*(u) = \langle x \mid u \rangle

这个等价关系极为重要,它建立了次微分与共轭函数之间的桥梁。让我们详细证明这个等价性。

从左到右(\Rightarrow):假设 u \in \partial f(x)。根据次微分的定义,对所有 y \in \mathcal{H},有

f(y) \geq f(x) + \langle y - x \mid u \rangle = f(x) + \langle y \mid u \rangle - \langle x \mid u \rangle

重新整理得

\langle y \mid u \rangle - f(y) \leq \langle x \mid u \rangle - f(x)

这对所有 y 成立,因此取上确界得到

f^*(u) = \sup_{y \in \mathcal{H}} (\langle y \mid u \rangle - f(y)) \leq \langle x \mid u \rangle - f(x)

f^*(u) \leq \langle x \mid u \rangle - f(x),也就是 f(x) + f^*(u) \leq \langle x \mid u \rangle。结合第一个版本的不等式(反向不等式总是成立),我们得到等式 f(x) + f^*(u) = \langle x \mid u \rangle

从右到左(\Leftarrow):假设 f(x) + f^*(u) = \langle x \mid u \rangle。根据共轭的定义,

f^*(u) = \sup_{y \in \mathcal{H}} (\langle y \mid u \rangle - f(y))

因此存在一列 \{y_n\} 使得 \langle y_n \mid u \rangle - f(y_n) \to f^*(u)。由假设,f^*(u) = \langle x \mid u \rangle - f(x),所以

\langle y_n \mid u \rangle - f(y_n) \to \langle x \mid u \rangle - f(x)

但实际上,我们可以更直接地从等式本身推导。既然 f^*(u) = \langle x \mid u \rangle - f(x),而 f^*(u)\langle y \mid u \rangle - f(y) 的上确界,这意味着对所有 y

\langle y \mid u \rangle - f(y) \leq \langle x \mid u \rangle - f(x)

重新整理得

f(y) \geq f(x) + \langle y \mid u \rangle - \langle x \mid u \rangle = f(x) + \langle y - x \mid u \rangle

这恰好是 u \in \partial f(x) 的定义条件。

这个等价关系的意义重大:它告诉我们次微分关系等价于Fenchel-Young不等式达到等号。从优化的角度看,u \in \partial f(x) 意味着 xu 是一对"对偶最优解"——它们在原空间和对偶空间中相互对应。

共轭函数与次微分的对偶性

在Fenchel-Young不等式的基础上,我们现在要建立共轭函数与次微分之间的完整对偶关系。这个关系对于理解优化问题的对偶理论至关重要。

对于属于 \Gamma_0(\mathcal{H}) 的函数 f(回忆这表示下半连续正常凸函数),我们有以下对偶性质:对于任意 (x, u) \in \mathcal{H}^2

u \in \partial f(x) \quad \Leftrightarrow \quad x \in \partial f^*(u)

这个等价关系揭示了一个美妙的对称性:ufx 处的次梯度,当且仅当 x 是共轭函数 f^*u 处的次梯度。换句话说,次微分关系在原函数与其共轭之间是完全对称的。这种对称性在优化理论中被称为"原对偶对称性"。

让我们证明这个对偶性质。由于 f \in \Gamma_0(\mathcal{H}),根据Moreau-Fenchel定理,我们有 f^{**} = f。现在:

u \in \partial f(x)

根据前面证明的Fenchel-Young不等式的第二个版本,这等价于

f(x) + f^*(u) = \langle x \mid u \rangle

现在注意到这个等式关于 xu 是对称的(内积本身是对称的)。我们可以把这个等式改写为

f^*(u) + f^{**}(x) = \langle u \mid x \rangle

再次应用Fenchel-Young不等式的第二个版本(这次是对函数 f^* 及其共轭 f^{**}),上式等价于

x \in \partial f^*(u)

这就完成了证明。证明的关键在于利用了两个事实:一是Fenchel-Young不等式等号条件刻画次微分,二是双共轭等于原函数(对于 \Gamma_0 中的函数)。

这个对偶性质有深刻的实际意义。在求解优化问题时,我们经常遇到这样的情况:原问题难以直接求解,但其对偶问题可能更容易处理。上述对偶性质告诉我们:如果我们能够找到对偶问题的最优解 u^*(即 0 \in \partial f^*(u^*)),那么通过计算 x^* \in \partial f^*(u^*),我们就得到了原问题的最优解(因为这等价于 u^* \in \partial f(x^*),即 0 \in \partial(f - \langle \cdot \mid u^* \rangle)(x^*))。这种原对偶转换是许多现代优化算法的理论基础。

练习1:约束优化问题的最优性条件

这个练习是次微分理论在约束优化中的核心应用,它展示了如何利用我们学过的理论工具来刻画约束优化问题的最优解。让我们从问题的本质出发,逐步建立完整的理论框架。

问题设定与背景

我们面对的是一个经典的约束优化问题。设 \mathcal{H} 是希尔伯特空间,函数 f: \mathcal{H} \to ]-\infty, +\infty] 是目标函数,集合 C \subset \mathcal{H} 是约束集。问题给出了一个关键的可行性条件:\text{dom } f \cap C \neq \varnothing,这保证了至少存在一个点既在约束集内,又能使目标函数取有限值。没有这个条件,问题将变得毫无意义——我们将永远在追求一个值为 +\infty 的"最小值"。

我们的目标是找到 x \in \mathcal{H} 使得它是函数 f 在约束集 C 上的全局最小值点。用数学语言表述就是:x \in C 且对所有 y \in C,都有 f(x) \leq f(y)

问题的等价重构:引入指示函数

这里有一个极其巧妙的技巧,它将约束优化问题转化为无约束问题,从而使我们能够应用次微分的全部工具箱。这个技巧就是引入集合 C 的指示函数(indicator function)\iota_C,定义为

\iota_C(x) = \begin{cases} 0 & \text{if } x \in C \\ +\infty & \text{if } x \notin C \end{cases}

指示函数的威力在于:它用函数值的无穷大来"惩罚"所有不满足约束的点。因此,最小化 f(x) 在约束 x \in C 下,完全等价于最小化无约束函数 f(x) + \iota_C(x)。为什么?因为当 x \notin C 时,\iota_C(x) = +\infty,使得 f(x) + \iota_C(x) = +\infty,这样的点绝不可能是最小值点;而当 x \in C 时,\iota_C(x) = 0,所以 f(x) + \iota_C(x) = f(x),最小化这个和函数就是在可行域内最小化 f

因此,我们的问题可以重新表述为:寻找 \hat{x} \in \mathcal{H} 使得

\hat{x} = \underset{x \in \mathcal{H}}{\arg\min} [f(x) + \iota_C(x)]

这个等价变换是约束优化理论中最基础也最重要的技巧之一。

第一问:充分条件的推导

第一问要求我们给出 x 成为 f + \iota_C 全局最小值点的充分条件。回忆费马法则:对于正常函数,点 \hat{x} 是全局最小值点当且仅当 0 \in \partial(f + \iota_C)(\hat{x})。这是次微分理论的核心结论——最优点处的次微分必须包含零向量。

因此,充分条件就是

0 \in \partial(f + \iota_C)(\hat{x})

这个条件的几何意义是:在点 \hat{x} 处,存在一条"水平"的支撑超平面。对于可微函数,这退化为熟悉的"最优点处梯度为零";对于非光滑函数,这意味着在所有可能的次梯度中,零向量是其中之一。

但这个条件还过于抽象,我们需要将 \partial(f + \iota_C)(\hat{x}) 展开,这就需要用到次微分的加法法则。

次微分的加法法则及其应用条件

我们能否直接写 \partial(f + \iota_C) = \partial f + \partial \iota_C 呢?这个等式并非在任何情况下都成立,需要满足一定的正则性条件。根据我们学过的理论,对于 f, g \in \Gamma_0(\mathcal{H})(下半连续正常凸函数),如果其中一个函数是有限值的(即定义域为全空间),那么

\partial(f + g) = \partial f + \partial g

在我们的问题中,如果 f \in \Gamma_0(\mathcal{H})C 是非空闭凸集,那么 \iota_C \in \Gamma_0(\mathcal{H})。虽然 \iota_C 不是处处有限的,但更一般的定理告诉我们:只要 \text{dom } f \cap C \neq \varnothing(这正是题目给出的条件),或者更强地,如果 \text{int}(\text{dom } f) \cap C \neq \varnothing\text{dom } f \cap \text{int}(C) \neq \varnothing,加法法则就成立。

因此,在适当的条件下,我们有

0 \in \partial f(\hat{x}) + \partial \iota_C(\hat{x})

这个条件的含义是:存在 u \in \partial f(\hat{x})v \in \partial \iota_C(\hat{x}),使得 u + v = 0,即 v = -u

指示函数的次微分:法锥

现在关键问题是:\partial \iota_C(\hat{x}) 是什么?这里引入一个重要的几何对象——集合 C 在点 \hat{x} 处的法锥(normal cone),记作 N_C(\hat{x})。法锥与指示函数的次微分之间有一个优美的等式:

\partial \iota_C(\hat{x}) = N_C(\hat{x})

法锥的定义是

N_C(\hat{x}) = \{u \in \mathcal{H} \mid (\forall y \in C) \, \langle u \mid y - \hat{x} \rangle \leq 0\}

让我们理解这个定义的几何意义。向量 u 属于法锥,意味着它与所有从 \hat{x} 指向集合 C 内其他点的方向向量 y - \hat{x} 形成的内积都非正。内积非正表示两个向量之间的夹角大于或等于90度,也就是说,u 指向的是"远离集合 C"的方向。所有这样的方向构成的锥,就是法锥。

在几何上,如果 C 是光滑的,法锥就退化为外法线方向;如果 C 有棱角,法锥就包含所有在这个棱角处"向外指"的方向。例如,当 \hat{x} 在集合 C 的内部时,唯一能与所有方向都形成钝角的向量就是零向量,所以 N_C(\hat{x}) = \{0\};当 \hat{x} 在边界上时,法锥通常是一个非平凡的锥。

推导充分条件的最终形式

回到我们的条件 0 \in \partial f(\hat{x}) + \partial \iota_C(\hat{x})。利用 \partial \iota_C(\hat{x}) = N_C(\hat{x}),这等价于:存在 u \in \partial f(\hat{x}) 使得 -u \in N_C(\hat{x})

根据法锥的定义,-u \in N_C(\hat{x}) 意味着

(\forall y \in C) \quad \langle -u \mid y - \hat{x} \rangle \leq 0

两边同乘以 -1(注意不等号方向改变),得到

(\forall y \in C) \quad \langle u \mid y - \hat{x} \rangle \geq 0

因此,第一问的充分条件可以表述为:存在 u \in \partial f(\hat{x}),使得对所有 y \in C,都有 \langle u \mid y - \hat{x} \rangle \geq 0

这个不等式被称为变分不等式(variational inequality)。它的几何意义是:存在一个函数 f\hat{x} 处的次梯度 u,它与所有从 \hat{x} 指向可行域内部的方向都形成锐角或直角。换句话说,没有任何可行方向能让我们沿着某个次梯度的"下降方向"移动。

第二问:Gâteaux可微情况下的充要条件

第二问给出了更强的假设:f \in \Gamma_0(\mathcal{H})(下半连续正常凸函数),C 是闭凸集,且 f\mathcal{H} 上是Gâteaux可微的。这些条件带来了什么简化?

首先,由于 f \in \Gamma_0(\mathcal{H})C 是非空闭凸集,指示函数 \iota_C \in \Gamma_0(\mathcal{H})。因此次微分的加法法则严格成立:

\partial(f + \iota_C) = \partial f + \partial \iota_C

这使得费马法则可以精确地写为

0 \in \partial f(\hat{x}) + N_C(\hat{x})

其次,Gâteaux可微性带来了决定性的简化。回忆我们之前学过的定理:如果凸函数 f 在点 \hat{x} 处Gâteaux可微,那么它的次微分退化为单点集,该点就是Gâteaux梯度:

\partial f(\hat{x}) = \{\nabla f(\hat{x})\}

这意味着在可微情况下,次微分不再是一个集合,而是唯一确定的。将这个结果代入我们的条件:存在 u \in \partial f(\hat{x}) 使得 \langle u \mid y - \hat{x} \rangle \geq 0 对所有 y \in C 成立,由于 u 的唯一选择就是 \nabla f(\hat{x}),我们得到充要条件:

(\forall y \in C) \quad \langle \nabla f(\hat{x}) \mid y - \hat{x} \rangle \geq 0

为什么现在是充要条件而不仅仅是充分条件?因为在 \Gamma_0 类函数和闭凸集的框架下,费马法则本身就是充要的,而且加法法则和次微分与梯度的等价性都是精确的等式(没有包含关系),所以推导的每一步都是等价变换。

最终结果的几何解释

最终得到的充要条件 \langle \nabla f(\hat{x}) \mid y - \hat{x} \rangle \geq 0 对所有 y \in C 成立,有着清晰的几何和物理意义。

梯度 \nabla f(\hat{x}) 指向函数 f 在点 \hat{x} 处增长最快的方向。条件要求这个梯度与任何从 \hat{x} 指向可行域 C 内部的方向向量 y - \hat{x} 的内积都非负。内积非负意味着夹角不超过90度,也就是说,梯度与所有可行方向形成的都是锐角或直角。

这可以理解为:从最优点 \hat{x} 出发,沿着可行域内的任何方向移动一小步,函数值都不会下降(或者至多保持不变)。如果存在某个可行方向使得 \langle \nabla f(\hat{x}) \mid y - \hat{x} \rangle < 0,那意味着沿着这个方向梯度是下降的,我们可以在保持在 C 内的同时让函数值减小,这就与 \hat{x} 是最小值点矛盾了。

在无约束优化中,这个条件退化为 \nabla f(\hat{x}) = 0(因为此时 C = \mathcal{H},所有方向都是可行的,要让梯度与所有方向的内积非负,只能是零向量)。在有约束的情况下,梯度不必为零,但必须"指向可行域外部"或者与可行域边界相切。这正是拉格朗日乘数法和KKT条件的几何本质。

总结

这个练习完整地展示了次微分理论在约束优化中的应用链条:问题重构(指示函数)→ 费马法则(零次微分条件)→ 次微分演算(加法法则)→ 几何对象(法锥)→ 最优性条件(变分不等式)。在可微情况下,一切都简化为一个优美的梯度条件,这个条件既有深刻的理论意义,又有直接的几何直观,是优化理论的核心结果之一。

邻近算子:定义与动机

在学习了次微分的理论工具后,我们现在要引入凸优化中另一个极为重要的算子——邻近算子(proximity operator)。这个算子由Moreau在1960年代提出,它在现代优化算法(特别是处理非光滑问题的算法)中扮演着核心角色。邻近算子的引入不仅提供了优雅的理论框架,更重要的是它为构造高效的数值算法开辟了道路。

问题的背景:为什么需要邻近算子

在优化问题中,我们经常面对这样的困境:许多重要的目标函数(如L1范数、指示函数等)是非光滑的,这使得经典的梯度下降等方法无法直接应用。次微分虽然给我们提供了理论工具来刻画最优性条件,但它并没有直接告诉我们如何构造迭代算法。邻近算子正是为了填补这个空白而诞生的——它提供了一种"隐式梯度步"的机制,能够优雅地处理非光滑项。

\mathcal{H} 是希尔伯特空间,f \in \Gamma_0(\mathcal{H}) 是我们要处理的函数。邻近算子的构造涉及两个相关但不同的概念:Moreau包络和邻近算子本身。

Moreau包络:光滑化的艺术

Moreau包络(Moreau envelope)是理解邻近算子的关键。对于参数 \gamma \in ]0, +\infty[(通常称为步长参数或正则化参数),函数 f 的Moreau包络定义为

\gamma f: \mathcal{H} \to \mathbb{R}: x \mapsto \inf_{y \in \mathcal{H}} \left[ f(y) + \frac{1}{2\gamma} \|y - x\|^2 \right]

让我们仔细解读这个定义。对于给定的点 x,Moreau包络 \gamma f(x) 是一个优化问题的最优值:我们在整个空间 \mathcal{H} 中寻找一个点 y,使得目标函数 f(y) + \frac{1}{2\gamma} \|y - x\|^2 达到最小。这个目标函数由两部分组成——原函数值 f(y) 和一个二次惩罚项 \frac{1}{2\gamma} \|y - x\|^2

惩罚项的作用是什么?它迫使最优的 y 不能离 x 太远。参数 \gamma 控制着这个"拉力"的强度:当 \gamma 很小时,系数 \frac{1}{2\gamma} 很大,惩罚项占主导,最优的 y 必须非常靠近 x;当 \gamma 很大时,惩罚项的影响减弱,y 有更大的自由度去寻找使 f 更小的区域。

Moreau包络的神奇之处在于:即使原函数 f 是非光滑的,Moreau包络 \gamma f 却总是光滑的(在一定条件下甚至是Gâteaux可微的)。这是因为二次项 \frac{1}{2\gamma} \|y - x\|^2 的加入提供了足够的"平滑性"。从第一张幻灯片的左图可以看到:原函数 f(x) 是一个V形函数,在尖点处不可微;但它的Moreau包络 \gamma f(x)(虚线抛物线)却是一条光滑的曲线,完全去除了尖点。

从几何角度理解:对于每一个 x,我们考虑所有以 x 为中心的抛物面 \frac{1}{2\gamma} \|y - x\|^2。Moreau包络 \gamma f(x) 就是原函数 f 与这个抛物面的和的下确界。这个过程相当于用一簇抛物面"从下方包络"原函数,自然产生了光滑化效果。

邻近算子:最优点的映射

有了Moreau包络的概念,邻近算子的定义就水到渠成了。函数 f 的邻近算子定义为

\text{prox}_f: \mathcal{H} \to \mathcal{H}: x \mapsto \underset{y \in \mathcal{H}}{\arg\min} \left[ f(y) + \frac{1}{2} \|y - x\|^2 \right]

注意这里的区别:Moreau包络 \gamma f(x) 给出的是最优值(一个数),而邻近算子 \text{prox}_f(x) 给出的是最优点(一个向量)。更准确地说,当步长参数为 \gamma 时,我们应该写作 \text{prox}_{\gamma f}(x),它是使得

f(y) + \frac{1}{2\gamma} \|y - x\|^2

达到最小的那个 y。为了记号的简洁,当 \gamma = 1 时,我们常常省略下标,直接写 \text{prox}_f

邻近算子可以理解为一种"投影"或"收缩"操作。给定一个点 x,邻近算子告诉我们:如果要在 f 和"接近 x"这两个目标之间取得平衡,最优的折中点在哪里。当 f 是指示函数 \iota_C 时,邻近算子就退化为向集合 C 的投影;当 f 是范数时,邻近算子就对应各种"软阈值"操作;当 f 是一般的凸函数时,邻近算子提供了一种"隐式"的梯度步骤。

从第一张幻灯片的右图可以看到:邻近算子 \text{prox}_\gamma(x) 呈现出阶跃函数的形状(但实际上是连续的)。这反映了邻近算子的一个重要特性:它将输入空间"分区"映射到不同的输出值。在函数的不可微点附近,邻近算子的行为特别有趣——它不是简单地"跟随梯度",而是智能地平衡了原函数的下降方向和回到初始点的拉力。

动画演示:深入理解Moreau包络与邻近算子

接下来的一系列动画幻灯片通过可视化展示了Moreau包络和邻近算子的计算过程,这对理解它们的几何意义至关重要。

左图(Moreau包络的计算):我们看到虚线抛物线代表的是原函数 f(虽然在这个尺度下看起来像直线),红色曲线是Moreau包络 \gamma f。从某个初始点 x(在横轴上),画一条蓝色竖直线向上,然后以这个点为中心画一个抛物线 \frac{1}{2\gamma} \|y - x\|^2。Moreau包络的值 \gamma f(x) 就是在所有可能的 y 点上,f(y) 加上这个抛物线在 y 处的值的最小值。

随着动画的推进,我们看到不同的 x 值对应不同的抛物线。在第一帧中,蓝色直线段连接了某个 x 点和使得和函数最小的 y 点。这条线段的起点在 x 处的横轴上,终点在红色Moreau包络曲线上。这直观地展示了:Moreau包络是通过"向上投影"并找到最优折中点得到的。

右图(邻近算子的计算):右图展示了邻近算子如何将输入 x 映射到输出 \text{prox}_\gamma(x)。虚线是恒等映射 y = x(如果没有正则化,输出就等于输入),而蓝色曲线是实际的邻近算子。我们看到,在函数 f 的不可微点附近(对应原函数的尖点),邻近算子出现了一个"平台"——输入在一个范围内变化时,输出保持不变。

让我们通过动画的演进来理解这个过程。在第二帧中,左图的蓝色线段移动到了新的 x 位置,对应的抛物线也随之移动。我们看到最优的 y 点也发生了变化。右图中,对应的邻近算子值也在蓝色曲线上移动。关键的观察是:当 x 在原函数的左侧"臂"上移动时,最优的 y 逐渐向尖点靠近;一旦 x 越过某个临界值,最优的 y 会"跳跃"到尖点位置并保持不动一段时间;当 x 继续增大,最优的 y 才会离开尖点,沿着右侧"臂"移动。

第三帧到第六帧清晰地展示了这个"锁定"现象。在左图中,我们看到当 x 位于某个区间内时,连接线的终点(红色Moreau包络上的点)始终落在同一位置——这正是原函数尖点对应的区域。右图中,蓝色邻近算子曲线出现了一个水平段,表明不同的输入 x 都被映射到同一个输出值。这个输出值恰好是原函数的最小值点。

为什么会有这个平台?直观地说,当 x 足够接近原函数的最小值点时,即使考虑了二次惩罚项,最优解仍然是待在最小值点——因为原函数在那里的下降速度如此之快(或者说,两侧的次梯度如此之大),以至于任何偏离都会导致总目标函数的增加。只有当 x 远离最小值点到一定程度,二次惩罚项的拉力才能"拽动"最优解偏离最小值点。

第七帧和第八帧展示了当 x 移动到原函数的右侧区域时的情况。左图中,连接线的斜率改变了方向——现在最优的 y 位于 x 的左侧而非右侧。右图中,邻近算子离开了平台区域,沿着另一个斜率继续增长。注意到邻近算子的图像关于原点几乎对称(如果原函数是对称的),这反映了问题本身的对称性。

最后几帧完整地扫描了整个 x 轴,我们看到了邻近算子的全貌:一个连续但非处处可微的映射,它在原函数不可微的地方表现出"软阈值"的行为——不是突然跳跃,而是有一个过渡区域(平台),在这个区域内输出被"钉"在某个固定值上。

Moreau包络与邻近算子的关系

这两个概念之间有着深刻的联系。首先,它们是同一个优化问题的"值"和"点":Moreau包络给出最优值,邻近算子给出最优点。其次,在适当的条件下(f \in \Gamma_0(\mathcal{H})),这个最优点是唯一存在的,这保证了邻近算子是一个良定义的单值映射。

更深层的联系来自于微分关系。可以证明,当Moreau包络 \gamma f 可微时(这在很多情况下都成立),它的梯度恰好可以通过邻近算子表示:

\nabla(\gamma f)(x) = \frac{1}{\gamma}(x - \text{prox}_{\gamma f}(x))

这个公式揭示了一个惊人的事实:即使原函数 f 是非光滑的,我们仍然可以通过计算邻近算子来获得Moreau包络的梯度。这正是邻近梯度算法(proximal gradient algorithm)的理论基础——我们可以用邻近算子来"隐式"地处理非光滑项,同时保持算法的梯度下降结构。

邻近算子的意义

邻近算子的引入在凸优化理论和算法中具有革命性意义。从理论角度看,它将次微分、共轭函数、投影等概念统一在一个框架下;从算法角度看,它使得我们能够高效地处理包含非光滑项的优化问题。许多重要的现代优化算法——如ADMM(交替方向乘子法)、ISTA(迭代软阈值算法)、Douglas-Rachford分裂等——都是建立在邻近算子的基础上的。

通过这些动画,我们不仅看到了定义的形式化表述,更重要的是理解了邻近算子的几何本质:它是一种智能的"平衡"操作,在"跟随原函数的指引"和"保持接近初始点"这两个目标之间找到最优折中。这种平衡正是现代优化算法能够稳健、高效地求解复杂非光滑问题的关键。

邻近算子的存在性与唯一性

在定义了邻近算子之后,一个自然而关键的问题是:这个算子是否总是良定义的?换句话说,对于给定的 x,优化问题

\min_{y \in \mathcal{H}} \left[ f(y) + \frac{1}{2\gamma} \|y - x\|^2 \right]

是否总有解?这个解是否唯一?如果有多个解,邻近算子就不是一个单值映射,这将给理论和算法带来极大的困难。幸运的是,在 \Gamma_0 类函数的框架下,我们有一个漂亮的存在唯一性定理。

定理陈述

f \in \Gamma_0(\mathcal{H})\gamma \in ]0, +\infty[。那么对于每一个 x \in \mathcal{H},存在唯一的向量 p \in \mathcal{H} 使得

f(p) + \frac{1}{2\gamma} \|p - x\|^2 = \inf_{y \in \mathcal{H}} \left[ f(y) + \frac{1}{2\gamma} \|y - x\|^2 \right]

这个定理保证了邻近算子 \text{prox}_{\gamma f}(x) = p 是一个良定义的单值映射。让我们仔细理解证明的关键思路。

证明的核心思想

证明分为两个部分:存在性和唯一性。

存在性的证明基于强制性(coercivity)。首先,由于 f \in \Gamma_0(\mathcal{H}),它的共轭函数 f^* 也属于 \Gamma_0(\mathcal{H})。这保证了存在某个 u \in \mathcal{H} 使得 f^*(u) \in \mathbb{R} 是有限的。

接下来利用Fenchel-Young不等式。对于任意 y \in \mathcal{H},我们有

f(y) \geq \langle u \mid y \rangle - f^*(u)

这个不等式告诉我们函数 f 被一个线性函数(减去一个常数)从下方界定。现在考虑目标函数

g(y) = f(y) + \frac{1}{2\gamma} \|y - x\|^2

\|y\| \to +\infty 时会发生什么?二次项 (2\gamma)^{-1} \|y - x\|^2 的增长速度是 \|y\|^2,而线性项 \langle u \mid y \rangle 的增长速度只是 \|y\|。因此当 \|y\| 足够大时,二次项占主导,目标函数 g(y) 趋向于 +\infty

更精确地说,证明中指出:当 \|y\| \to +\infty 时,f(y) + (2\gamma)^{-1} \|y - x\|^2 \to +\infty。这个性质被称为强制性——函数在无穷远处趋于无穷大。强制性保证了下确界能够在某个有界区域内达到,从而最小值点存在。

唯一性的证明则依赖于严格凸性。注意到二次项 (2\gamma)^{-1} \| \cdot - x\|^2 是严格凸的(它的Hessian矩阵是正定的,等于 (2\gamma)^{-1} I)。而 f 本身是凸的(因为 f \in \Gamma_0(\mathcal{H}))。凸函数加上严格凸函数仍然是严格凸函数。因此整个目标函数

f(\cdot) + (2\gamma)^{-1} \|\cdot - x\|^2

是严格凸的。

严格凸函数的一个重要性质是:它最多只有一个最小值点。假设存在两个不同的最小值点 p_1p_2,那么它们的严格凸组合 \lambda p_1 + (1-\lambda)p_2(其中 0 < \lambda < 1)处的函数值应该严格小于两个端点函数值的凸组合,这与两个端点都是最小值点矛盾。因此最小值点是唯一的。

这个存在唯一性定理是邻近算子理论的基石。它保证了我们可以放心地定义 \text{prox}_{\gamma f} 作为一个从 \mathcal{H}\mathcal{H} 的映射,每个输入 x 都对应唯一的输出 p

邻近算子的刻画:次微分表征

虽然邻近算子的定义是通过一个优化问题给出的,但在实际应用中,我们需要更直接的方式来刻画它。这就引出了邻近算子的次微分表征——一个将邻近算子与次微分联系起来的优美结果。

刻画定理

\mathcal{H} 是希尔伯特空间,f \in \Gamma_0(\mathcal{H})。那么对于任意 x \in \mathcal{H}

p = \text{prox}_f(x) \quad \Leftrightarrow \quad x - p \in \partial f(p)

这里我们使用了 \gamma = 1 的情形来简化记号。对于一般的 \gamma,等价条件是 (x - p)/\gamma \in \partial f(p),或者写成 x - p \in \gamma \partial f(p)

这个刻画的含义是什么?它说的是:px 的邻近点,当且仅当向量 x - p(从 p 指向 x 的方向)是函数 f 在点 p 处的一个次梯度。这建立了邻近算子与次微分之间的直接联系。

证明过程

证明利用了费马法则。回忆邻近算子的定义:p = \text{prox}_f(x) 意味着 p 是优化问题

\min_{y \in \mathcal{H}} \left[ f(y) + \frac{1}{2} \|y - x\|^2 \right]

的唯一最小值点。根据费马法则,p 是最小值点当且仅当

0 \in \partial \left( f + \frac{1}{2} \|\cdot - x\|^2 \right)(p)

现在需要计算右边的次微分。函数 \frac{1}{2} \|y - x\|^2 关于 y 是可微的,它的梯度是 y - x。因此它的次微分是单点集:\partial (\frac{1}{2} \|\cdot - x\|^2)(p) = \{p - x\}

利用次微分的加法法则(因为二次函数是有限值的,加法法则严格成立),我们有

\partial \left( f + \frac{1}{2} \|\cdot - x\|^2 \right)(p) = \partial f(p) + \{p - x\}

因此费马条件变为

0 \in \partial f(p) + \{p - x\}

这等价于 0 - (p - x) \in \partial f(p),即 x - p \in \partial f(p)

最后一步的等价变换是:0 \in \partial f(p) + p - x 意味着存在 v \in \partial f(p) 使得 0 = v + (p - x),即 v = x - p。但由于 \partial f(p) 可能不止一个元素,这实际上就是说 x - p\partial f(p) 中的某个元素。因此我们得到 x - p \in \partial f(p)

反过来,如果 x - p \in \partial f(p),那么 0 = (x - p) - (x - p) \in \partial f(p) + (p - x),根据费马法则,p 就是最小值点,即 p = \text{prox}_f(x)

等价形式与直观理解

证明中还给出了另一个等价形式:

x \in (\text{Id} + \partial f)(p)

这里 \text{Id} 是恒等映射,\text{Id} + \partial f 表示算子的和。展开来写就是:存在 v \in \partial f(p) 使得 x = p + v,即 v = x - p,这正是我们前面的条件。

从这个形式可以看到一个有趣的对称性:如果我们把邻近算子看作某种"算子",那么

p = \text{prox}_f(x) \quad \Leftrightarrow \quad x \in (\text{Id} + \partial f)(p)

这可以形式地写为 \text{prox}_f = (\text{Id} + \partial f)^{-1},即邻近算子是 \text{Id} + \partial f 这个算子的"逆"(当然这里的逆是集值映射意义下的)。这个观察在算子分裂算法的理论中起着关键作用。

从直观上理解:x - p \in \partial f(p) 说的是,在最优点 p 处,"回到原点 x 的拉力"x - p 恰好是函数 f 的一个次梯度。这是一个平衡条件——二次惩罚项产生的"弹性力"与原函数的"下降力"达到平衡。

邻近算子的例子:投影算子

理论的价值在于应用。现在让我们看邻近算子最重要也是最直观的例子——投影算子。这个例子不仅展示了邻近算子的具体计算,更揭示了投影与邻近算子之间的深刻联系。

投影作为邻近算子

\mathcal{H} 是希尔伯特空间,C\mathcal{H} 的一个非空闭凸子集。考虑集合 C 的指示函数 \iota_C。这个函数的邻近算子是什么?

根据定义,对于任意 x \in \mathcal{H}

\text{prox}_{\iota_C}(x) = \underset{y \in \mathcal{H}}{\arg\min} \left[ \iota_C(y) + \frac{1}{2} \|y - x\|^2 \right]

由于 \iota_C(y)y \in C 时等于0,在 y \notin C 时等于 +\infty,这个优化问题实际上是

\underset{y \in C}{\arg\min} \frac{1}{2} \|y - x\|^2

这正是从点 x 到集合 C 的投影的定义!因此我们得到一个漂亮的等式:

(\forall x \in \mathcal{H}) \quad \text{prox}_{\iota_C}(x) = \underset{y \in C}{\arg\min} \frac{1}{2} \|y - x\|^2 = P_C(x)

这里 P_C(x) 表示 x 在集合 C 上的投影,即 C 中距离 x 最近的点。幻灯片中的图示很好地展示了这一点:给定集合外的一点 xP_C(x)C 边界上离 x 最近的那个点。

投影的次微分刻画

利用邻近算子的次微分表征,我们可以得到投影的一个重要刻画。由于 p = P_C(x) 等价于 p = \text{prox}_{\iota_C}(x),根据刻画定理,这又等价于

x - p \in \partial \iota_C(p)

而我们之前已经知道 \partial \iota_C(p) = N_C(p) 是法锥,因此

p = P_C(x) \quad \Leftrightarrow \quad x - p \in \partial \iota_C(p) = N_C(p)

展开法锥的定义,我们得到更具体的刻画:p = P_C(x) 当且仅当 p \in C 且对所有 y \in C,都有

\langle y - p \mid x - p \rangle \leq 0

这个不等式有清晰的几何意义:投影点 p 满足——从 p 到集合内任意点 y 的向量 y - p,与从 p 到原点 x 的向量 x - p 形成的角度大于或等于90度。换句话说,向量 x - p "垂直"于集合 C 在点 p 处的切方向。这正是我们对"投影"的直观理解。

特殊情况:向量空间的投影

幻灯片给出了一个重要的特殊情况。如果 C 本身是一个向量空间(不仅是凸集),那么投影满足更强的性质:

p = P_C(x) \quad \Leftrightarrow \quad \begin{cases} p \in C \\ x - p \in C^{\perp} \end{cases}

这里 C^{\perp}C 的正交补空间。这个结果来自于前面我们学过的性质:当 C 是向量空间时,法锥 N_C(p) = C^{\perp}。因此投影条件变成了经典的正交分解:x = p + (x - p),其中 p \in Cx - p \in C^{\perp}

这是线性代数中正交投影的凸分析表述。它揭示了投影算子作为邻近算子的一个特例,建立了线性代数与凸分析之间的桥梁。

Moreau包络:距离函数的光滑化

幻灯片还指出了另一个有趣的结果。定义到凸集 C 的距离函数为

d_C: x \mapsto \inf_{y \in C} \|y - x\| = \|x - P_C x\|

这个函数给出了点 x 到集合 C 的最短距离。虽然距离函数 d_C 本身不可微(特别是在集合边界上),但它的平方 d_C^2 的Moreau包络却非常光滑。事实上,

\gamma \iota_C = (2\gamma)^{-1} d_C^2

这个等式说的是:指示函数的Moreau包络恰好就是距离平方函数(乘以一个常数)。从定义出发可以验证:

\gamma \iota_C(x) = \inf_{y \in \mathcal{H}} \left[ \iota_C(y) + \frac{1}{2\gamma} \|y - x\|^2 \right] = \inf_{y \in C} \frac{1}{2\gamma} \|y - x\|^2 = \frac{1}{2\gamma} d_C^2(x)

这个结果的意义在于:即使指示函数 \iota_C 本身非常"粗糙"(在集合外取无穷大),它的Moreau包络也是一个光滑函数——距离平方函数。这再次体现了Moreau包络作为"光滑化"工具的威力。

邻近算子的例子:幂函数

在投影这个基本例子之后,我们来看另一类重要的例子——幂函数的邻近算子。这类函数在稀疏优化、信号处理等领域有广泛应用。

幂函数族的定义

考虑幂函数 \varphi: \mathbb{R} \to ]-\infty, +\infty]: \xi \mapsto \chi |\xi|^q,其中参数满足 \chi > 0q \in [1, +\infty[。这是一个单变量函数,它的绝对值 |\xi|q 次幂乘以一个正常数 \chi

不同的 q 值对应不同的正则化范数:

  • q = 1:对应L1范数,产生稀疏性(lasso正则化)
  • q = 2:对应L2范数的平方,这就是岭回归
  • 1 < q < 2:介于两者之间,常用于需要比L1更强稀疏性的场合

各种幂指数下的邻近算子公式

幻灯片给出了不同 q 值下邻近算子的显式公式。这些公式看起来很复杂,但它们都是通过求解邻近问题的一阶最优性条件(次微分条件)得到的。让我们逐一理解。

情况1:q = 1(软阈值算子)

\text{prox}_{\varphi}\xi = \text{sign}(\xi) \max\{|\xi| - \chi, 0\}

这是著名的软阈值算子(soft thresholding operator)。它的作用是:如果 |\xi| < \chi,输出为0(完全收缩);如果 |\xi| > \chi,输出是 \xi 减去 \chi \cdot \text{sign}(\xi)(部分收缩)。这个算子在lasso回归和压缩感知中起核心作用,它产生了稀疏解——许多分量被精确地收缩到零。

情况2:q = 4/3

公式变得更加复杂:

\xi + \frac{4\chi}{3 \cdot 2^{1/3}} \left( (\epsilon - \xi)^{1/3} - (\epsilon + \xi)^{1/3} \right)

其中 \epsilon = \sqrt{\xi^2 + 256\chi^3/729}。这个公式涉及三次根式,反映了优化问题的一阶条件导出的三次方程。

情况3:q = 3/2

\xi + \frac{9\chi^2 \text{sign}(\xi)}{8} \left( 1 - \sqrt{1 + \frac{16|\xi|}{9\chi^2}} \right)

这个公式涉及二次根式,相对更简单一些。

情况4:q = 2(收缩算子)

\frac{\xi}{1 + 2\chi}

这是最简单的形式。邻近算子就是简单的缩放——将输入除以 1 + 2\chi。这对应于L2正则化,它对所有分量进行均匀的、比例性的收缩,不产生精确的零值(不稀疏)。

情况5和6:q = 3q = 4

这些情况的公式更加复杂,涉及高次方程的求解。它们在实践中较少使用,但理论上是完整的。

不同幂指数的可视化比较

第四张幻灯片展示了 \chi = 2 时,不同 q 值对应的邻近算子图像。这个图非常有启发性:

从图中可以清楚地看到:

  • 所有曲线都通过原点,且关于原点对称
  • q = 1 的红色曲线在原点附近有一个"平台"(水平段),这正是软阈值的零区域
  • 随着 q 增大,曲线逐渐变得更"圆滑",平台区域缩小甚至消失
  • q = 2 时(紫色曲线),曲线是一条直线,斜率小于1,表示简单的比例收缩
  • 更大的 q 值(如 q = 3, 4)使曲线更接近恒等映射(虚线),正则化效果减弱

这个图直观地展示了不同幂次正则化对解的影响。q 越小(接近1),稀疏化效果越强;q 越大(远离1),正则化变得越"温和",越不倾向于产生精确的零值。

邻近算子的例子:二次函数

最后一个例子是二次函数,这在许多应用中都是最基本的构建块。二次函数的邻近算子有非常优雅的闭式解。

问题设定与结果

\mathcal{H}\mathcal{G} 是两个希尔伯特空间,L \in \mathcal{B}(\mathcal{H}, \mathcal{G}) 是有界线性算子,\gamma \in ]0, +\infty[z \in \mathcal{G}。考虑二次函数

f = \gamma \|L \cdot - z\|^2 / 2

这个函数衡量的是 Lx 与目标向量 z 之间的加权距离平方。那么它的邻近算子是

\text{prox}_f = (\text{Id} + \gamma L^* L)^{-1}(\cdot + \gamma L^* z)

公式的解读

这个公式需要仔细理解。首先注意到 \text{Id} + \gamma L^* L 是一个线性算子,它的逆(如果存在)也是线性的。因此邻近算子在这个例子中是一个仿射映射。

公式的含义是:给定输入 x,首先计算 x + \gamma L^* z(这是一个仿射变换),然后应用算子 (\text{Id} + \gamma L^* L)^{-1}(这是求解一个线性系统)。

为什么这个公式成立?我们可以从邻近点的刻画条件推导。设 p = \text{prox}_f(x),根据刻画定理,

x - p \in \partial f(p)

二次函数 f 是可微的,其梯度是

\nabla f(p) = \gamma L^* (Lp - z)

因此条件变为

x - p = \gamma L^* (Lp - z)

重新整理:

x = p + \gamma L^* Lp - \gamma L^* z
x + \gamma L^* z = p + \gamma L^* Lp = (\text{Id} + \gamma L^* L)p

因此

p = (\text{Id} + \gamma L^* L)^{-1}(x + \gamma L^* z)

这正是我们要证明的公式。这里隐含的假设是算子 \text{Id} + \gamma L^* L 是可逆的。由于 \gamma > 0L^* L 是半正定的(对所有 v\langle v \mid L^* L v \rangle = \|Lv\|^2 \geq 0),算子 \text{Id} + \gamma L^* L 是正定的,因此确实可逆。

计算意义

这个例子的重要性在于:计算二次函数的邻近点等价于求解一个线性系统

(\text{Id} + \gamma L^* L)p = x + \gamma L^* z

在许多应用中,这个线性系统可以高效求解(例如当 L 是稀疏矩阵、循环矩阵或FFT类型的算子时)。因此二次函数的邻近算子在算法实现中通常是"容易"的步骤。

幻灯片最后提示这是一个练习题,要求读者自己完整地证明这个性质。这个练习的价值在于:它训练我们如何从邻近点的次微分刻画出发,通过代数运算推导出显式公式。这种技巧在处理更复杂的函数时是必不可少的。

总结

通过这三类例子——投影、幂函数、二次函数——我们看到了邻近算子的多样性和实用性。投影对应于约束,幂函数对应于各种正则化范数,二次函数对应于数据拟合项。几乎所有实际的优化问题都可以分解为这些基本成分的组合。掌握这些基本邻近算子的计算,是构造高效优化算法的关键。

邻近算子的性质:基本变换规则

在掌握了邻近算子的定义和几个具体例子后,我们现在要系统地研究邻近算子在各种变换下的行为。这些性质不仅在理论上优美,更重要的是它们允许我们从已知的简单邻近算子构造出复杂函数的邻近算子,这在算法设计中极为有用。

幻灯片给出了一个表格,总结了五种基本变换。让我们逐一深入理解每个性质背后的数学原理和实际意义。

性质1:平移不变性

第一个性质涉及函数的平移。如果我们考虑平移后的函数 g(x) = f(x - z),其中 z \in \mathcal{H} 是某个固定的向量,那么这个新函数的邻近算子是什么?

表格告诉我们:

\text{prox}_{f(\cdot - z)}(x) = z + \text{prox}_f(x - z)

这个公式的含义非常直观。平移函数的邻近点等于原函数邻近点的平移。具体来说,要计算 x 相对于平移函数 f(\cdot - z) 的邻近点,我们首先计算 x - z 相对于原函数 f 的邻近点,然后将结果平移回去(加上 z)。

为什么这个性质成立?我们可以从定义出发验证。\text{prox}_{f(\cdot - z)}(x) 是优化问题

\min_{y \in \mathcal{H}} \left[ f(y - z) + \frac{1}{2} \|y - x\|^2 \right]

的最小值点。做一个变量替换:令 w = y - z,那么 y = w + z,上述问题变为

\min_{w \in \mathcal{H}} \left[ f(w) + \frac{1}{2} \|w + z - x\|^2 \right] = \min_{w \in \mathcal{H}} \left[ f(w) + \frac{1}{2} \|w - (x - z)\|^2 \right]

这正是 \text{prox}_f(x - z) 的定义!因此最优的 w^* = \text{prox}_f(x - z),对应的 y^* = w^* + z = z + \text{prox}_f(x - z)

这个性质在实际中的意义是:如果我们已经知道如何计算某个函数的邻近算子,那么它的任何平移版本的邻近算子也立即可得。例如,如果优化问题涉及 \|x - x_0\|_1(以 x_0 为中心的L1范数),我们可以利用标准L1范数的邻近算子(软阈值)加上平移来计算。

性质2:二次扰动

第二个性质处理的是在原函数上添加一个二次项和线性项后的情况。考虑扰动后的函数

g(x) = f(x) + \frac{\alpha}{2} \|x\|^2 + \langle x \mid x \rangle + \gamma

其中 \alpha > 0x \in \mathcal{H}\gamma \in \mathbb{R}。注意这里有个打字错误——第二个内积项 \langle x \mid x \rangle 应该是 \langle \xi \mid x \rangle,其中 \xi 是某个固定向量。正确的形式应该是

g(x) = f(x) + \frac{\alpha}{2} \|x\|^2 + \langle \xi \mid x \rangle + \gamma

那么邻近算子是

\text{prox}_{g} = \text{prox}_{\frac{f}{\alpha+1}} \left( \frac{x - \xi}{\alpha + 1} \right)

这个公式更加复杂,让我们仔细分析。首先注意到常数项 \gamma 对邻近算子没有影响——因为加一个常数不改变最优点的位置。其次,二次项 \frac{\alpha}{2} \|x\|^2 相当于增强了原本邻近问题中的二次惩罚项。

要理解这个公式,我们从邻近点的刻画条件出发。设 p = \text{prox}_g(x),那么根据次微分表征,

x - p \in \partial g(p) = \partial f(p) + \alpha p + \xi

这里我们用了可微函数的梯度:\nabla(\frac{\alpha}{2} \|p\|^2) = \alpha p\nabla(\langle \xi \mid p \rangle) = \xi。重新整理得

x - \xi - \alpha p - p \in \partial f(p)

(x - \xi) - (\alpha + 1)p \in \partial f(p)

除以 \alpha + 1

\frac{x - \xi}{\alpha + 1} - p \in \frac{1}{\alpha + 1} \partial f(p)

利用次微分的齐次性 \partial(\lambda f) = \lambda \partial f(对 \lambda > 0),右边可以写成 \partial(\frac{f}{\alpha+1})(p)。因此

\frac{x - \xi}{\alpha + 1} - p \in \partial \left(\frac{f}{\alpha+1}\right)(p)

这正是 p = \text{prox}_{\frac{f}{\alpha+1}}(\frac{x-\xi}{\alpha+1}) 的刻画条件。

这个性质的实际意义是:添加二次项相当于"软化"原函数,使邻近问题更容易求解。参数 \alpha 越大,软化效果越强,邻近点越接近于简单的缩放和平移。

性质3:伸缩变换

第三个性质涉及函数的伸缩。如果 g(x) = f(\rho x),其中 \rho \in \mathbb{R}^* 是非零实数,那么

\text{prox}_{g} = \frac{1}{\rho} \text{prox}_{\rho^2 f}(\rho x)

这个公式告诉我们:在自变量空间进行伸缩变换后,邻近算子也要相应调整。为了计算伸缩函数 f(\rho \cdot) 在点 x 的邻近点,我们先将输入伸缩到 \rho x,然后计算原函数(但步长参数变为 \rho^2)的邻近点,最后将结果缩放回来(除以 \rho)。

为什么步长参数变成 \rho^2?这来自于范数的伸缩性质。邻近问题

\min_{y} \left[ f(\rho y) + \frac{1}{2} \|y - x\|^2 \right]

做变量替换 w = \rho y,得到

\min_{w} \left[ f(w) + \frac{1}{2} \|\frac{w}{\rho} - x\|^2 \right] = \min_{w} \left[ f(w) + \frac{1}{2\rho^2} \|w - \rho x\|^2 \right]

这正是函数 f 在点 \rho x 处、步长为 \rho^2 的邻近问题。最优解 w^* = \text{prox}_{\rho^2 f}(\rho x),对应 y^* = w^*/\rho

这个性质在处理具有不同尺度的变量时很有用。例如,如果某些变量的数值范围比其他变量大很多,我们可以先做归一化(伸缩变换),利用这个公式转换邻近算子。

性质4:反射对称性

第四个性质最简单但也很优雅。如果 g(x) = f(-x),那么

\text{prox}_{g}(x) = -\text{prox}_f(-x)

这说的是:反射函数的邻近点等于原函数邻近点的反射。证明是直接的——在邻近问题中做替换 y \to -y 即可。

这个性质反映了邻近算子的内在对称性。如果原问题关于原点对称,那么邻近算子也应该关于原点对称。许多实际函数(如范数、偶函数)都具有这种对称性,这个性质保证了邻近算子继承这种对称结构。

性质5:Moreau包络的显式表达

第五个性质给出了Moreau包络的另一个重要表达式。我们之前定义Moreau包络为下确界

\gamma f(x) = \inf_{y \in \mathcal{H}} \left[ f(y) + \frac{1}{2\gamma} \|x - y\|^2 \right]

现在表格告诉我们,这个下确界可以用邻近算子显式地表示出来。虽然表格中的公式有些混乱,但标准形式应该是

\gamma f(x) = f(\text{prox}_{\gamma f}(x)) + \frac{1}{2\gamma} \|x - \text{prox}_{\gamma f}(x)\|^2

以及相关的表达式

\text{prox}_{\gamma f}(x) = \frac{1}{1+\gamma} \left( \gamma x + \text{prox}_{(1+\gamma)f}(x) \right)

第一个等式说的是:Moreau包络在点 x 的值,等于在邻近点 p = \text{prox}_{\gamma f}(x) 处的原函数值,加上从 xp 的二次惩罚。这直接来自于邻近点的最优性——既然 p 是下确界的达到点,将它代入目标函数就得到下确界值。

第二个等式则提供了不同步长参数之间邻近算子的关系,这在算法实现中调整步长时很有用。

可分离函数的邻近算子:乘积空间情形

在理解了邻近算子的基本变换性质后,我们现在要研究一个在实际应用中极为重要的特殊结构——可分离函数(separable function)。这种结构允许我们将高维问题分解为低维子问题的独立处理,这正是并行计算和分布式优化的基础。

笛卡尔积空间上的可分离和

考虑这样的情况:我们有 n 个希尔伯特空间 \mathcal{H}_1, \ldots, \mathcal{H}_n,以及定义在每个空间上的函数 f_i \in \Gamma_0(\mathcal{H}_i)。在乘积空间 \mathcal{H}_1 \times \cdots \times \mathcal{H}_n 上,我们定义可分离和函数

f(x) = \sum_{i=1}^{n} f_i(x_i)

其中 x = (x_1, \ldots, x_n) 是乘积空间中的元素。这种函数的特点是:它的值可以分解为各个分量上独立函数值的和,不同分量之间没有耦合。

那么这个可分离和函数的邻近算子是什么?幻灯片给出了一个美妙的结果:

(\forall x = (x_1, \ldots, x_n) \in \mathcal{H}_1 \times \cdots \times \mathcal{H}_n) \quad \text{prox}_f(x) = (\text{prox}_{f_i}(x_i))_{1 \leq i \leq n}

换句话说,整体的邻近算子可以按分量独立计算——第 i 个分量的邻近点就是 f_ix_i 处的邻近点。各个分量之间完全解耦,可以并行处理。

为什么这个性质成立

这个结果的证明并不复杂,但揭示了可分离结构的本质。邻近问题是

\min_{y = (y_1, \ldots, y_n)} \left[ \sum_{i=1}^{n} f_i(y_i) + \frac{1}{2} \sum_{i=1}^{n} \|y_i - x_i\|^2 \right]

这里我们用了乘积空间中范数的定义:\|y - x\|^2 = \sum_{i=1}^{n} \|y_i - x_i\|^2。注意到这个优化问题完全可分离——目标函数可以写成

\sum_{i=1}^{n} \left[ f_i(y_i) + \frac{1}{2} \|y_i - x_i\|^2 \right]

每一项只涉及 y_i,与其他分量无关。因此我们可以分别最小化每一项:

y_i^* = \underset{y_i \in \mathcal{H}_i}{\arg\min} \left[ f_i(y_i) + \frac{1}{2} \|y_i - x_i\|^2 \right] = \text{prox}_{f_i}(x_i)

整体的最优解就是 (y_1^*, \ldots, y_n^*)

这个性质的威力在于:它将一个高维优化问题(可能涉及数百万个变量)分解为许多小的独立子问题。如果我们有并行计算资源,这些子问题可以同时求解,极大地提高了计算效率。这正是现代大规模优化算法(如ADMM)能够处理超大规模问题的关键之一。

正交基下的可分离函数邻近算子

可分离性质还有一个更加一般和优雅的版本,它涉及希尔伯特空间的正交基展开。这个版本在信号处理、图像处理等领域有广泛应用,因为许多这类问题的函数在某个变换域(如傅里叶域、小波域)中具有可分离结构。

正交基展开的可分离函数

\mathcal{H} 是一个可分的希尔伯特空间(即存在可数的稠密子集),(b_i)_{i \in I}\mathcal{H} 的一个标准正交基(orthonormal basis),其中 I 是指标集。对于每个 i \in I,设 \varphi_i \in \Gamma_0(\mathbb{R}) 是定义在实数上的凸函数,且满足 \varphi_i \geq 0

现在考虑这样定义的函数:对于 x \in \mathcal{H}

f(x) = \sum_{i \in I} \varphi_i(\langle x \mid b_i \rangle)

这个函数的值等于 x 在正交基下各个坐标的函数值之和。换句话说,我们先将 x 投影到每个基向量 b_i 上得到坐标 \langle x \mid b_i \rangle,然后对每个坐标应用函数 \varphi_i,最后求和。

这种函数在实际中非常常见。例如,在压缩感知中,我们经常对信号在某个稀疏基(如小波基)下的系数施加L1惩罚;在图像去噪中,我们可能对梯度的每个分量单独施加惩罚。

邻近算子的计算

幻灯片告诉我们,这类函数的邻近算子有一个优美的表达式:

\text{prox}_f(x) = \sum_{i \in I} \text{prox}_{\varphi_i}(\langle x \mid b_i \rangle) b_i

这个公式的含义是:要计算 x 的邻近点,我们首先计算 x 在每个基向量上的投影 \langle x \mid b_i \rangle,然后对每个坐标单独应用标量函数 \varphi_i 的邻近算子,最后用新的坐标重构向量——将每个处理后的坐标 \text{prox}_{\varphi_i}(\langle x \mid b_i \rangle) 乘以相应的基向量 b_i,再求和。

为什么这个公式成立?关键在于认识到正交基提供了空间的一个"坐标系统",而函数在这个坐标系统下是可分离的。设 x = \sum_{i \in I} c_i b_i(其中 c_i = \langle x \mid b_i \rangle),邻近问题变为

\min_{y = \sum_i d_i b_i} \left[ \sum_{i \in I} \varphi_i(d_i) + \frac{1}{2} \sum_{i \in I} (d_i - c_i)^2 \right]

这又是一个完全可分离的问题!每个坐标 d_i 可以独立优化:

d_i^* = \underset{d_i \in \mathbb{R}}{\arg\min} \left[ \varphi_i(d_i) + \frac{1}{2}(d_i - c_i)^2 \right] = \text{prox}_{\varphi_i}(c_i)

因此最优解是 y^* = \sum_{i \in I} d_i^* b_i = \sum_{i \in I} \text{prox}_{\varphi_i}(c_i) b_i

L1范数的例子:逐坐标软阈值

幻灯片给出了一个重要的具体例子。设 \mathcal{H} = \mathbb{R}^N(b_i)_{1 \leq i \leq N} 是标准正交基(即 \mathbb{R}^N 的标准基),f = \lambda \|\cdot\|_1 是L1范数乘以参数 \lambda \in [0, +\infty[

那么对于 x = (x^{(1)}, \ldots, x^{(N)}) \in \mathbb{R}^N

\text{prox}_{\lambda\|\cdot\|_1}(x) = (\text{prox}_{\lambda|\cdot|}(x^{(i)}))_{1 \leq i \leq N}

而我们之前已经知道标量绝对值函数的邻近算子是软阈值:

\text{prox}_{\lambda|\cdot|}(\xi) = \text{sign}(\xi) \max\{|\xi| - \lambda, 0\}

因此L1范数的邻近算子就是逐坐标应用软阈值:

\text{prox}_{\lambda\|\cdot\|_1}(x) = (\text{sign}(x^{(i)}) \max\{|x^{(i)}| - \lambda, 0\})_{1 \leq i \leq N}

这个结果在稀疏优化中极为重要。它告诉我们:L1正则化的效果是对每个坐标独立地进行软阈值——小于阈值 \lambda 的分量被完全置零(产生稀疏性),大于阈值的分量被收缩 \lambda。这正是L1范数产生稀疏解的机制。

幻灯片还注明:如果空间是无穷维的,条件 \varphi_i \geq 0 可以在有限维情形下放松。这是因为在有限维中,负值函数不会导致收敛性问题,而在无穷维中需要额外小心以保证和的良定义性。

Moreau分解公式:对偶性的体现

最后,幻灯片给出了一个极为深刻的结果——Moreau分解公式(Moreau decomposition formula)。这个公式揭示了邻近算子、共轭函数、以及原函数之间的对偶关系,是凸分析理论中最优美的结果之一。

分解公式的陈述

\mathcal{H} 是希尔伯特空间,f \in \Gamma_0(\mathcal{H})\gamma \in ]0, +\infty[。那么对于任意 x \in \mathcal{H},有

\text{prox}_{\gamma f} x = x - \gamma \text{prox}_{\gamma^{-1} f^*}(\gamma^{-1} x)

这个等式被称为Moreau分解或Moreau恒等式。它说的是:x 可以分解为两部分——一部分是关于函数 f 的邻近点,另一部分(通过步长 \gamma 归一化后)是关于共轭函数 f^* 的邻近点。

证明的关键步骤

幻灯片给出了完整的证明,让我们逐步理解每个等价变换。

p = \text{prox}_{\gamma f} x,根据邻近点的次微分刻画,

p = \text{prox}_{\gamma f} x \quad \Leftrightarrow \quad x - p \in \gamma \partial f(p)

x - p 除以 \gamma,得到

\Leftrightarrow \quad \frac{x - p}{\gamma} \in \partial f(p)

现在利用次微分与共轭函数之间的对偶关系。回忆我们之前证明的性质:对于 f \in \Gamma_0(\mathcal{H})

u \in \partial f(p) \quad \Leftrightarrow \quad p \in \partial f^*(u)

应用这个对偶性,令 u = \frac{x-p}{\gamma},我们得到

\Leftrightarrow \quad p \in \partial f^* \left( \frac{x - p}{\gamma} \right)

进一步展开,这等价于

\Leftrightarrow \quad \frac{x}{\gamma} - \frac{x - p}{\gamma} \in \frac{1}{\gamma} \partial f^* \left( \frac{x - p}{\gamma} \right)

利用次微分的齐次性 \partial(\lambda f) = \lambda \partial f(对 \lambda > 0),右边可以写成

\partial \left( \frac{1}{\gamma} f^* \right) \left( \frac{x - p}{\gamma} \right)

因此条件变为

\Leftrightarrow \quad \frac{x}{\gamma} - \frac{x - p}{\gamma} \in \partial \left( \frac{1}{\gamma} f^* \right) \left( \frac{x - p}{\gamma} \right)

根据邻近算子的次微分刻画,这正说明

\Leftrightarrow \quad \frac{x - p}{\gamma} = \text{prox}_{\gamma^{-1} f^*} \left( \frac{x}{\gamma} \right)

两边同乘以 \gamma,得到

\Leftrightarrow \quad x - p = \gamma \text{prox}_{\gamma^{-1} f^*} \left( \gamma^{-1} x \right)

移项即得

\Leftrightarrow \quad p = x - \gamma \text{prox}_{\gamma^{-1} f^*} \left( \gamma^{-1} x \right)

这就是Moreau分解公式。

公式的深刻意义

Moreau分解公式的重要性体现在多个层面。首先,它揭示了一个深刻的对偶性:空间中的每个点 x 都可以唯一地分解为"原空间的邻近分量"和"对偶空间的邻近分量"。这种分解是对称的——如果我们用 f^* 代替 f,由于 (f^*)^* = f(对于 \Gamma_0 类函数),我们会得到对称的公式。

其次,从投影的角度理解,Moreau分解可以看作是空间的一种正交分解的推广。当 f = \iota_C 是集合 C 的指示函数时,f^* = \iota_{C^{\circ}} 是其对偶集(polar set)的指示函数,Moreau分解退化为经典的投影分解定理。

第三,在优化算法中,Moreau分解允许我们在原问题和对偶问题之间灵活切换。如果原问题的邻近算子难以计算,但对偶问题的邻近算子容易计算,我们可以通过Moreau分解来间接获得原问题的邻近点。这正是某些对偶方法的理论基础。

最后,Moreau分解也为理解正则化的作用提供了新视角。邻近算子 \text{prox}_{\gamma f} 可以看作是"投影"到由函数 f 定义的"软约束集"上;而对偶项 \gamma \text{prox}_{\gamma^{-1} f^*}(\gamma^{-1} x) 则代表了"残差"或"违约量"。两者的平衡构成了完整的优化解。

总结

通过这一系列性质——变换规则、可分离性、正交基展开、Moreau分解——我们建立了邻近算子的完整理论体系。这些性质不仅在理论上优美对称,更重要的是它们提供了实用的计算工具。在实际应用中,我们很少需要从零开始计算邻近算子;相反,我们利用这些性质,从简单的基本邻近算子(如投影、软阈值)出发,通过变换和组合构造出复杂函数的邻近算子。这正是现代优化算法能够高效处理各种结构化问题的秘密所在。

Moreau分解公式的应用:范数的例子

在证明了Moreau分解公式的一般形式后,幻灯片给出了一个极为重要的具体例子——关于范数函数的Moreau分解。这个例子不仅展示了分解公式的实际应用,更揭示了范数与其对偶范数之间的深刻联系。

范数函数的Moreau分解

考虑欧几里得空间 \mathcal{H} = \mathbb{R}^N,以及 L^q 范数函数 f = \frac{1}{q} \|\cdot\|_q^q,其中 q \in [1, +\infty[。这里的范数定义为

\|x\|_q = \left( \sum_{i=1}^{N} |x_i|^q \right)^{1/q}

对于这个函数,它的共轭函数是什么?根据凸分析理论,L^q 范数的共轭与 L^{q^*} 范数密切相关,其中 q^*q 的共轭指数,满足

\frac{1}{q} + \frac{1}{q^*} = 1

因此 q^* = \frac{q}{q-1}。可以证明(虽然幻灯片没有给出完整证明),共轭函数是

f^* = \frac{1}{q^*} \|\cdot\|_{q^*}^{q^*}

现在应用Moreau分解公式。对于任意 x \in \mathbb{R}^N

\text{prox}_{\frac{\gamma}{q^*} \|\cdot\|_{q^*}^{q^*}} x = x - \gamma \text{prox}_{\frac{1}{\gamma q} \|\cdot\|_q^q} \left( \frac{x}{\gamma} \right)

这个公式看起来复杂,但它的意义深刻:L^q 范数的邻近算子与 L^{q^*} 范数的邻近算子通过Moreau分解相互关联。如果我们知道其中一个,就可以通过这个公式得到另一个。

这在实际计算中极为有用。例如,当 q = 1 时,q^* = \infty;当 q = 2 时,q^* = 2(自对偶)。对于某些 q 值,直接计算邻近算子可能很困难,但对偶范数的邻近算子可能容易计算,这时Moreau分解就提供了一条计算路径。

支撑函数:凸集的函数表示

在邻近算子的理论体系中,还有一个极为重要的概念需要介绍——支撑函数(support function)。支撑函数提供了从集合到函数的另一种对应关系,它是指示函数的对偶。

支撑函数的定义

\mathcal{H} 是希尔伯特空间,C \subset \mathcal{H} 是一个子集。集合 C 的支撑函数 \sigma_C 定义为

(\forall u \in \mathcal{H}) \quad \sigma_C(u) = \sup_{x \in C} \langle x \mid u \rangle

这个定义说的是:对于给定的方向 u,支撑函数 \sigma_C(u) 等于集合 C 中所有点在方向 u 上的投影的上确界。换句话说,它度量的是集合 C 在方向 u 上能够"延伸"到多远。

为什么叫"支撑"函数?因为从几何上看,\sigma_C(u) 给出了垂直于方向 u 的支撑超平面到原点的有向距离。想象一条垂直于 u 的直线从无穷远处移动过来,直到它第一次接触到集合 C——这个接触点处超平面到原点的距离就是 \sigma_C(u)

支撑函数与指示函数的对偶关系

幻灯片中的关键等式告诉我们:

\sigma_C(u) = \iota_C^*(u)

也就是说,支撑函数恰好是指示函数的共轭函数。这个等式是如何得到的?根据共轭函数的定义,

\iota_C^*(u) = \sup_{x \in \mathcal{H}} (\langle x \mid u \rangle - \iota_C(x))

由于 \iota_C(x)x \in C 时为0,在 x \notin C 时为 +\infty,上述上确界实际上只需在 C 上取:

\iota_C^*(u) = \sup_{x \in C} \langle x \mid u \rangle = \sigma_C(u)

这个对偶关系具有深刻的意义。指示函数通过取值 0+\infty 来"硬性"刻画集合;而支撑函数通过在每个方向上的最大投影来"软性"刻画集合。两者是同一个几何对象(凸集 C)的不同函数表示,通过共轭运算相互转换。

支撑函数的几何可视化

幻灯片通过两个图展示了支撑函数的几何意义。左图展示了如何计算支撑函数:给定一个方向 u,我们考虑线性函数 \langle x \mid u \rangle(红色直线)。这个函数在区间 [\delta_1, \delta_2](代表集合 C)上的最大值就是 \sigma_C(u)。从图中可以看到,当 u > 0 时,最大值在右端点 \delta_2 处达到,因此 \sigma_C(u) = \delta_2 u;当 u < 0 时,最大值在左端点 \delta_1 处达到,因此 \sigma_C(u) = \delta_1 u

右图展示了支撑函数本身作为 u 的函数的图像。它是一个V形函数,在原点处有一个尖点。这个形状反映了支撑函数的一个重要性质:对于有界闭凸集,支撑函数总是凸的且正齐次的(即 \sigma_C(\lambda u) = \lambda \sigma_C(u) 对所有 \lambda \geq 0 成立)。

动画的第二帧和第三帧展示了当我们改变方向 u 时,支撑函数值如何变化。左图中红色直线的斜率变化,导致其与集合边界的最高接触点移动。右图中对应的函数值也随之改变。这直观地展示了支撑函数如何"扫描"集合在所有方向上的边界。

注意到当 u = 0 时,\sigma_C(0) = 0(因为 \langle x \mid 0 \rangle = 0 对所有 x 成立)。这是支撑函数的一个基本性质——它在原点处总是取零值。

支撑函数的邻近算子:反投影公式

既然支撑函数是指示函数的共轭,而我们已经知道指示函数的邻近算子就是投影算子,那么支撑函数的邻近算子应该是什么呢?答案由Moreau分解公式给出。

反投影公式

\mathcal{H} 是希尔伯特空间,C \subset \mathcal{H} 是非空闭凸集。那么对于任意 x \in \mathcal{H}

\text{prox}_{\sigma_C} x = x - P_C(x) = \text{Id} - P_C

这里 P_C 是向集合 C 的投影算子,\text{Id} 是恒等映射。这个公式被称为反投影公式或残差公式。

为什么这个结果成立?我们利用Moreau分解。由于 \sigma_C = \iota_C^*,根据Moreau分解公式(取 \gamma = 1),

\text{prox}_{\iota_C} x = x - \text{prox}_{\iota_C^*}(x) = x - \text{prox}_{\sigma_C}(x)

但我们已经知道 \text{prox}_{\iota_C} = P_C,因此

P_C(x) = x - \text{prox}_{\sigma_C}(x)

移项即得

\text{prox}_{\sigma_C}(x) = x - P_C(x)

这个公式的几何意义非常清晰:支撑函数的邻近点等于原点减去投影点,即从原点指向投影点的向量的反向。如果我们把投影 P_C(x) 看作是 x 在集合 C 上的"最佳近似",那么残差 x - P_C(x) 就是"逼近误差",而支撑函数的邻近算子恰好就是这个误差向量。

软阈值的另一种解释

幻灯片给出了一个具体例子。设 \mathcal{H} = \mathbb{R}C = [\delta_1, \delta_2] 是一个闭区间,其中 \delta_1 = \inf C\delta_2 = \sup C。那么支撑函数是

\sigma_C(x) = \begin{cases} \delta_1 x & \text{if } x < 0 \\ 0 & \text{if } x = 0 \\ \delta_2 x & \text{if } x > 0 \end{cases}

这是一个分段线性函数,在原点有一个尖点。根据反投影公式,支撑函数的邻近算子是

\text{prox}_{\sigma_C}(x) = x - P_C(x) = \text{soft}_C(x)

其中 \text{soft}_C 被称为软阈值算子(soft thresholding),具体形式是

\text{soft}_C(x) = \begin{cases} x - \delta_1 & \text{if } x < \delta_1 \\ 0 & \text{if } x \in C \\ x - \delta_2 & \text{if } x > \delta_2 \end{cases}

左图展示了投影算子 P_C(x):当 x 在区间外时,它被投影到最近的端点;当 x 在区间内时,投影就是它自己。右图展示了邻近算子 \text{prox}_{\sigma_C}(x) = x - P_C(x):它在区间 C 内为零,在区间外则等于到边界的有向距离。

这个例子与我们之前见过的L1范数的软阈值算子本质上是相同的。当 C = [-\lambda, \lambda] 时,\text{soft}_C 就是标准的软阈值算子。这揭示了软阈值的另一种理解方式——它是某个区间支撑函数的邻近算子,而不仅仅是绝对值函数的邻近算子。

酉变换下的邻近算子不变性

最后几张幻灯片讨论了邻近算子在酉变换下的行为。这个性质在许多应用中极为重要,特别是在信号处理和图像处理中,我们经常需要在不同的正交基(如傅里叶基、小波基)之间转换。

酉算子下的邻近算子公式

\mathcal{H} 是希尔伯特空间,f \in \Gamma_0(\mathcal{H})L \in \mathcal{B}(\mathcal{H}, \mathcal{H}) 是酉算子(unitary operator)。酉算子的定义特征是它保持内积不变:\langle Lx \mid Ly \rangle = \langle x \mid y \rangle 对所有 x, y 成立,这等价于 L^* L = \text{Id}L 的伴随恰好是它的逆)。

那么复合函数 f \circ L 的邻近算子满足一个简洁的公式:

\text{prox}_{f \circ L} = L^* \circ \text{prox}_f \circ L

这个公式说的是:要计算 f \circ L 在点 x 的邻近点,我们首先应用 L 变换到变换域,然后在变换域中计算 f 的邻近点,最后应用逆变换 L^* 回到原空间。这是一个"变换-处理-逆变换"的模式。

证明思路

证明利用了邻近点的次微分刻画和酉算子的性质。设 p = \text{prox}_{f \circ L} x,那么根据刻画定理,

p = \text{prox}_{f \circ L} x \quad \Leftrightarrow \quad x - p \in \partial(f \circ L)(p)

现在需要计算 \partial(f \circ L)(p)。利用次微分的链式法则(对于线性算子),我们有

\partial(f \circ L)(p) = L^* \partial f(Lp)

这里用到了一个事实:如果 L 是有界线性算子,那么 \partial(g \circ L)(x) = L^* \partial g(Lx)。因此条件变为

x - p \in L^* \partial f(Lp)

左乘 L(利用 LL^* = \text{Id}),得到

Lx - Lp \in \partial f(Lp)

这恰好说明 Lp = \text{prox}_f(Lx),即

p = L^* \text{prox}_f(Lx) = (L^* \circ \text{prox}_f \circ L)(x)

这就证明了公式。证明的关键是利用了酉算子的性质 L^* L = \text{Id}LL^* = \text{Id},以及次微分在线性变换下的行为。

更一般的情况:准酉变换

幻灯片还给出了一个推广。如果 L 不是严格的酉算子,而是满足 L^* = \mu L^{-1}(其中 \mu \in ]0, +\infty[),即 L 是一个"准酉"算子或"伸缩的酉算子",那么公式变为

\text{prox}_{f \circ L} = \text{Id} - \mu^{-1} L^* \circ (\text{Id} - \text{prox}_{\mu f}) \circ L

这个公式更加复杂,但它的推导遵循类似的思路。设 \mathcal{H}\mathcal{G} 是两个希尔伯特空间,f \in \Gamma_0(\mathcal{H})L \in \mathcal{B}(\mathcal{G}, \mathcal{H}) 满足 LL^* = \mu \text{Id}。这个条件意味着 L 在某种意义上是一个"放大 \sqrt{\mu} 倍的酉算子"。

公式可以改写为更对称的形式。注意到

\text{prox}_{f \circ L} = \text{Id} - \mu^{-1} L^* \circ (\text{Id} - \text{prox}_{\mu f}) \circ L

可以理解为:我们先计算 \mu f 的"反邻近算子" \text{Id} - \text{prox}_{\mu f}(这给出了Moreau分解中的对偶部分),然后通过 LL^* 进行变换,最后从恒等映射中减去,得到原问题的邻近算子。

这些公式在实际应用中的价值在于:许多信号处理变换(如傅里叶变换、小波变换)都是酉的或近似酉的。当我们在变换域中施加正则化(例如对小波系数施加L1惩罚)时,这些公式告诉我们如何在原域和变换域之间转换邻近算子。这是快速算法(如快速迭代软阈值算法FISTA)的理论基础。

总结

通过这些额外的性质——Moreau分解的例子、支撑函数、反投影公式、酉变换不变性——我们进一步丰富了邻近算子的理论工具箱。每个性质都揭示了邻近算子与其他凸分析对象(共轭函数、投影、支撑函数)之间的深刻联系。这些联系不是偶然的,而是反映了凸优化问题内在的对偶结构和几何对称性。理解这些性质,不仅让我们能够计算各种函数的邻近算子,更重要的是让我们理解邻近算子在优化理论中的核心地位——它统一了投影、次微分、共轭等概念,为构造高效的算法提供了统一的框架。

酉变换不变性的实际应用:小波域图像去噪

在建立了酉变换下邻近算子的理论之后,第一张幻灯片给出了一个极具实际价值的应用例子——利用小波变换进行图像去噪。这个例子完美地展示了我们刚刚学习的抽象理论如何在实际问题中发挥作用。

图像去噪的问题设定

考虑一个经典的图像去噪场景。我们观测到一张带噪声的图像(左上角的夜景照片),我们的目标是恢复出清晰的原始图像(左下角的照片)。这个问题的数学模型通常是:观测图像 = 真实图像 + 噪声。

在这个应用中,我们使用正交小波变换 L(orthogonal wavelet transform)作为我们的酉算子。小波变换是一种多尺度分析工具,它能够将图像分解到不同的频率带和空间位置。正交小波变换满足 L^* L = \text{Id},因此它是一个严格的酉算子。

稀疏正则化策略

图像去噪的核心思想是:自然图像在小波域中通常是稀疏的——也就是说,大多数小波系数接近零,只有少数系数(对应图像的边缘和纹理)具有显著的值。因此,我们对小波系数施加L1惩罚(\ell_1 penalty),这会鼓励解的稀疏性。

数学上,我们要最小化的目标函数是

\min_{\theta} \left[ \text{数据拟合项} + \lambda \|L\theta\|_1 \right]

其中 \theta 是我们要恢复的图像,L\theta 是其小波系数,\lambda 是平衡稀疏性与数据拟合的正则化参数。

算法流程的可视化

幻灯片中的流程图清晰地展示了计算过程。从带噪图像开始,我们首先应用小波变换 L,将图像从空间域转换到小波域(中间的第一个黑色图像,显示了小波系数的四叉树结构,红色十字标出了不同的频率带)。在小波域中,我们应用L1范数的邻近算子 \text{prox}_{\lambda\|\cdot\|_1},这实际上就是逐系数的软阈值操作——小的系数被置零,大的系数被收缩。

根据我们学习的酉变换性质,复合函数 \lambda \|L \cdot\|_1 的邻近算子可以写成

\text{prox}_{\lambda \|L \cdot\|_1} = L^* \circ \text{prox}_{\lambda\|\cdot\|_1} \circ L

这正是算法的三步流程:变换(L)→ 阈值处理(\text{prox}_{\lambda\|\cdot\|_1})→ 逆变换(L^*)。中间的第二个黑色图像显示了阈值处理后的稀疏小波系数——注意许多区域变成了纯黑色,表示那些系数被置零了。最后,通过逆小波变换 L^* 回到空间域,我们得到去噪后的图像(左下角)。

实际效果

对比上下两张图像,我们可以看到去噪效果:原始的噪声图像(上)中有明显的颗粒感和随机噪声,而去噪后的图像(下)保持了主要的结构特征(桥梁、建筑物、河流的倒影),同时有效地抑制了噪声。这得益于L1正则化的稀疏性促进作用——它自动区分了"信号"(对应大的小波系数,主要在低频和边缘处)和"噪声"(对应小的、分散的高频系数)。

这个例子展示了邻近算子理论的实用价值:通过理解酉变换下的邻近算子性质,我们可以设计出高效的算法,在变换域中利用简单的操作(软阈值)来解决复杂的图像处理问题。这种"变换域正则化"的思想在现代信号处理和机器学习中无处不在。

邻近算子的贝叶斯解释:统计学视角

接下来的幻灯片从一个完全不同的角度——贝叶斯统计——来理解邻近算子。这个视角揭示了邻近算子与统计推断中的最大后验估计(Maximum A Posteriori, MAP)之间的深刻联系。

问题的统计模型

考虑一个标准的统计推断问题。设空间是欧几里得空间 \mathcal{H} = \mathbb{R}^N,我们有一个观测模型

x = \bar{y} + w

其中 \bar{y} 是我们想要估计的真实信号(但它是未知的),w 是观测噪声。在贝叶斯框架下,我们将 \bar{y} 看作是一个随机向量的实现,其先验分布的概率密度函数正比于 \exp(-f),其中 f 是某个函数。同时,噪声 w 是一个标准正态分布 \mathcal{N}(0, I) 的实现。

最大后验估计与邻近算子的等价性

幻灯片的核心结论是:在这个设定下,\text{prox}_f(x) 恰好就是给定观测 x 后,对真实信号 \bar{y} 的最大后验估计(MAP estimate)。

为什么会有这个等价性?让我们从贝叶斯公式出发。给定观测 x\bar{y} 的后验分布正比于

p(\bar{y} \mid x) \propto p(x \mid \bar{y}) p(\bar{y})

其中似然函数 p(x \mid \bar{y}) \propto \exp(-\frac{1}{2}\|x - \bar{y}\|^2)(因为 x = \bar{y} + w,且 w \sim \mathcal{N}(0, I)),先验 p(\bar{y}) \propto \exp(-f(\bar{y}))。因此后验分布正比于

p(\bar{y} \mid x) \propto \exp\left(-\frac{1}{2}\|x - \bar{y}\|^2 - f(\bar{y})\right)

最大后验估计就是使后验概率密度最大的 \bar{y},等价于最小化

\frac{1}{2}\|x - \bar{y}\|^2 + f(\bar{y})

而这正是邻近算子 \text{prox}_f(x) 的定义!(这里步长参数 \gamma = 1)因此,邻近算子可以被解释为:在给定"噪声观测" x 的情况下,对"真实信号"的最优贝叶斯估计,其中先验知识通过函数 f 编码。

各种概率分布对应的邻近算子

幻灯片列举了一长串概率分布名称,每一个都对应一个特定的函数 f,从而对应一个特定的邻近算子。这个列表极为丰富:

左列包括:拉普拉斯分布(Laplace)、广义高斯分布(Generalized Gaussian)、最大熵分布(maximum entropy)、伽马分布(gamma)、均匀分布(uniform)、威布尔分布(Weibull)、广义逆高斯分布(Generalized inverse Gaussian)等。

右列包括:高斯分布(Gaussian)、胡伯分布(Huber)、平滑拉普拉斯分布(Smoothed Laplace)、卡方分布(chi)、三角分布(triangular)、皮尔逊I型分布(Pearson type I)等。

每一个概率分布都定义了一种先验知识或正则化偏好。例如:

  • 拉普拉斯先验对应L1正则化,促进稀疏性
  • 高斯先验对应L2正则化,促进平滑性
  • 胡伯先验在L1和L2之间折中,对异常值鲁棒

这个丰富的"邻近算子动物园"表明:邻近算子不仅是一个优化工具,更是一种编码各种统计先验知识的通用语言。研究者们已经为几乎所有常见的概率分布推导出了相应的邻近算子闭式解或高效计算方法。

幻灯片最后给出了一个网站链接 http://proximity-operator.net,这是一个专门的在线资源库,包含了大量函数的邻近算子公式和实现代码。这个资源对于实际应用邻近算子的研究者和工程师来说是非常宝贵的。

这个贝叶斯视角不仅加深了我们对邻近算子的理解,也揭示了优化与统计推断之间的深刻联系。现代机器学习中的许多正则化技术,本质上都可以理解为某种贝叶斯先验的体现,而邻近算子则是实现这些先验的计算工具。

练习题2:综合应用次微分与邻近算子理论

课程的最后给出了一个综合性的练习题,它系统地考察了我们学习的所有核心概念:共轭函数、范数、次微分、法锥、邻近算子。让我们逐题分析这个练习的思路和解答。

问题设定

\mathcal{H} 是希尔伯特空间,B 是以原点为中心、半径为1的闭球,即

B = \{x \in \mathcal{H} \mid \|x\| \leq 1\}

这是一个基本的凸集,它在优化和分析中有着特殊的地位。练习要求我们研究与这个球相关的各种函数对象。

第一问:指示函数的共轭

第一问要求计算指示函数 \iota_B 的共轭函数。根据我们之前学习的理论,集合的指示函数的共轭函数正是该集合的支撑函数。因此

\iota_B^*(u) = \sigma_B(u) = \sup_{x \in B} \langle x \mid u \rangle

现在的问题是计算这个上确界。对于单位球 B,我们有一个基本事实:对于任意 u \in \mathcal{H}

\sup_{x \in B} \langle x \mid u \rangle = \sup_{\|x\| \leq 1} \langle x \mid u \rangle = \|u\|

为什么?根据柯西-施瓦茨不等式,\langle x \mid u \rangle \leq \|x\| \cdot \|u\|。当 \|x\| \leq 1 时,这给出 \langle x \mid u \rangle \leq \|u\|。而当我们选择 x = u/\|u\|(假设 u \neq 0)时,这个上界被达到。因此

\iota_B^*(u) = \|u\|

这是一个优美的结果:单位球指示函数的共轭就是范数本身。

第二问:范数的共轭

第二问要求推导范数 \|\cdot\| 的共轭函数。根据共轭函数的定义,

\|\cdot\|^*(u) = \sup_{x \in \mathcal{H}} (\langle x \mid u \rangle - \|x\|)

这个上确界的行为取决于 u 的范数。如果 \|u\| > 1,我们可以选择 x = t ut \to +\infty),此时 \langle x \mid u \rangle - \|x\| = t\|u\|^2 - t\|u\| = t(\|u\|^2 - \|u\|) \to +\infty。因此当 \|u\| > 1 时,共轭函数取值 +\infty

反之,如果 \|u\| \leq 1,那么对所有 x,由柯西-施瓦茨不等式,\langle x \mid u \rangle \leq \|x\| \cdot \|u\| \leq \|x\|,因此 \langle x \mid u \rangle - \|x\| \leq 0。当 x = 0 时等号成立,所以上确界为0。

综合起来,

\|\cdot\|^*(u) = \begin{cases} 0 & \text{if } \|u\| \leq 1 \\ +\infty & \text{if } \|u\| > 1 \end{cases} = \iota_B(u)

这又是一个对称的结果:范数的共轭是单位球的指示函数!结合第一问,我们发现 \iota_B\|\cdot\| 互为共轭,即 (\iota_B)^* = \|\cdot\|(\|\cdot\|)^* = \iota_B。这反映了Moreau-Fenchel定理:对于 \Gamma_0 类函数,f^{**} = f

第三问:范数的次微分

第三问要求确定范数函数 \|\cdot\| 的次微分。范数在非零点是可微的(对于光滑的希尔伯特空间范数),但在原点可能不可微。

对于 x \neq 0,范数 \|x\| 的梯度是 \nabla \|x\| = x/\|x\|,因此次微分是单点集:

\partial \|x\| = \{x/\|x\|\}

对于 x = 0,情况更复杂。我们可以用次微分的定义直接计算,或者利用共轭函数的关系。由于 \|\cdot\|^* = \iota_B,根据次微分与共轭的对偶关系,

\partial \|\cdot\|(0) = \partial \iota_B^*(0)

利用共轭的次微分公式(这需要一些技巧),可以证明

\partial \|0\| = B

也就是说,原点处的次微分是整个单位球!这符合直觉:在原点,"向任何方向移动一小步"都会增加范数,所以所有单位向量都是有效的"次梯度"。

综合起来,

\partial \|x\| = \begin{cases} \{x/\|x\|\} & \text{if } x \neq 0 \\ B & \text{if } x = 0 \end{cases}

第四问:单位球的法锥

第四问要求确定单位球 B 的法锥 N_B。回忆法锥的定义:对于 x \in B

N_B(x) = \{u \in \mathcal{H} \mid (\forall y \in B) \, \langle u \mid y - x \rangle \leq 0\}

对于球心 x = 0,任何方向 u 与从原点指向球内任意点 y 的向量 y - 0 = y 的内积 \langle u \mid y \rangle 的符号取决于 uy 的方向关系。要让所有 y \in B 都满足 \langle u \mid y \rangle \leq 0,只有 u = 0 才行。因此 N_B(0) = \{0\}

对于球面上的点 x (即 \|x\| = 1),法锥包含所有"指向球外"的方向。由于球是光滑的,法锥是一条射线:

N_B(x) = \{\lambda x \mid \lambda \geq 0\} = \mathbb{R}_+ x

为什么?因为在球面上,外法向量就是径向方向 x 本身。

对于球内部的点 x (即 \|x\| < 1),从 x 可以沿任何方向移动而不离开 B,因此没有"外法向",法锥是平凡的:N_B(x) = \{0\}

第五问:范数的邻近算子

第五问要求计算 \gamma \|\cdot\| 的邻近算子。根据定义,

\text{prox}_{\gamma\|\cdot\|}(x) = \underset{y \in \mathcal{H}}{\arg\min} \left[ \gamma\|y\| + \frac{1}{2}\|y - x\|^2 \right]

这个问题可以用次微分条件求解。设 p 是最优解,那么

0 \in \partial \left( \gamma\|\cdot\| + \frac{1}{2}\|\cdot - x\|^2 \right)(p) = \gamma \partial \|p\| + (p - x)

x - p \in \gamma \partial \|p\|

情况1:\|x\| \leq \gamma

如果 p = 0,那么 x - 0 = x 需要满足 x \in \gamma \partial \|0\| = \gamma B,即 \|x\| \leq \gamma。所以当 \|x\| \leq \gamma 时,p = 0 是最优解。

情况2:\|x\| > \gamma

如果 p \neq 0,那么 \partial \|p\| = \{p/\|p\|\},条件变为 x - p = \gamma \cdot p/\|p\|。由于右边的方向是 p 的方向,左边 x - p 也必须与 p 同向。这意味着 xp 和原点共线,且 px 和原点之间。设 p = tx(其中 0 < t < 1),代入条件:

x - tx = \gamma \cdot \frac{tx}{\|tx\|} = \gamma \cdot \frac{tx}{t\|x\|} = \gamma \cdot \frac{x}{\|x\|}

(1 - t)x = \gamma x/\|x\|,两边取范数得 (1 - t)\|x\| = \gamma,因此 t = 1 - \gamma/\|x\|。所以

p = \left(1 - \frac{\gamma}{\|x\|}\right) x

综合起来,

\text{prox}_{\gamma\|\cdot\|}(x) = \begin{cases} 0 & \text{if } \|x\| \leq \gamma \\ \left(1 - \frac{\gamma}{\|x\|}\right) x & \text{if } \|x\| > \gamma \end{cases}

这正是向量软阈值算子(vector soft-thresholding)!它将小于阈值 \gamma 的向量置零,将大于阈值的向量沿径向收缩 \gamma 的长度。

第六问:一维情况的具体化

第六问要求在 \mathcal{H} = \mathbb{R} 的情况下具体化前面的结果。在一维空间中,范数就是绝对值,单位球是闭区间 [-1, 1]

所有前面的结果都可以直接特化。例如,邻近算子变为我们熟悉的标量软阈值:

\text{prox}_{\gamma|\cdot|}(\xi) = \text{sign}(\xi) \max\{|\xi| - \gamma, 0\}

这与我们之前学习的完全一致。

image-20251019151456852

image-20251019151507460

 IMG_9331.DNG  IMG_9333.DNG

解答的整体思路

通过这些黑板推导,我们看到了一个系统的解题思路:

  1. 从定义出发:始终记住邻近算子的次微分刻画 x - p \in \partial f(p)
  2. 利用可微性:当函数可微时,次微分退化为梯度,大大简化计算
  3. 代数变换:将次微分条件转化为可解的方程(特别是线性方程)
  4. 利用特殊结构:酉算子、对称性等特殊性质可以简化问题
  5. 验证可逆性:确保涉及的算子可逆,从而保证解的存在唯一性

这些技巧不仅适用于这个练习题,也是处理一般邻近算子计算的通用方法。掌握这些技巧,我们就能够将理论工具有效地应用到各种实际问题中。

课程总结:次微分与邻近算子的理论体系

至此,我们完成了关于次微分和邻近算子的完整学习旅程。让我们回顾这个理论体系的核心要点:

次微分理论为非光滑凸函数提供了类似"导数"的工具。它推广了梯度概念,允许我们刻画不可微点的"方向信息",并通过费马法则给出优化问题的最优性条件。次微分的演算规则(加法、复合、可分离性)使我们能够系统地处理复杂函数。

共轭函数建立了凸函数与其支撑仿射函数族之间的对偶关系。通过Fenchel-Young不等式和Moreau-Fenchel定理,共轭运算在 \Gamma_0 类函数上形成了一个对合,揭示了优化问题的原对偶对称性。

邻近算子是现代优化算法的核心构件。它通过一个简单的"隐式梯度步"——最小化原函数加上二次惩罚——提供了处理非光滑项的优雅方式。邻近算子的存在唯一性、次微分刻画、以及丰富的变换性质(平移、伸缩、酉变换、Moreau分解)使它成为构造高效算法的强大工具。

应用视角展示了理论的实用价值。从图像去噪中的小波域软阈值,到贝叶斯推断中的MAP估计,邻近算子连接了优化、信号处理、统计学等多个领域。理解这些联系不仅深化了理论认识,也为解决实际问题提供了灵感。

这个课程不仅教授了技术工具,更重要的是培养了一种思维方式:将优化问题分解为结构化的组件,利用每个组件的特殊性质设计高效算法,通过对偶和变换在不同视角间灵活转换。这种思维方式是现代优化理论的精髓,也是处理大规模、结构化优化问题的关键。


评论