Skip to content

近端算子

Proximal operator · Proximity operator

在降低凸函数值与保持靠近输入点之间取得精确平衡的单值算子。

形式陈述

H 为实 Hilbert 空间,f:HR{+} 是 proper、下半连续的凸函数,λ>0f 的近端算子定义为

proxλf(x)=argminyH{f(y)+12λyx2}.

二次项使目标函数 1/λ-强凸,并在这些假设下保证极小点存在且唯一,所以 prox 是单值映射。记 y=proxλf(x),利用次微分最优性条件可得

0f(y)+1λ(yx)xyλf(y).

等价地,P=proxλf=(I+λf)1,即次微分算子的 resolvent。映射 P 还是 firmly nonexpansive:

P(x)P(z)2P(x)P(z),xz.

直觉

直接最小化 f 只在意把函数值压低,二次项则为离输入 x 太远收取代价。λ 决定两者权衡:小 λ 把新点紧紧拴在 x 附近,大 λ 更愿意为降低 f 走远。它是投影的函数化推广——投影要求回到一个集合,prox 允许用任意闭凸函数为不同位置设置连续代价。与显式梯度步不同,prox 在新点 y 处满足隐式最优性关系,因此即使 f 不可微也仍有精确定义。

例子与边界

f=δC 是非空闭凸集 C 的指标函数,那么优化只允许 yC,故

proxλδC(x)=PC(x),

而且结果与 λ 无关。对一维 f(y)=|y|,逐区间检查最优性条件得到软阈值

proxλ||(x)=sign(x)max{|x|λ,0}.

它在 |x|λ 时直接返回零,展示了 1 正则如何产生稀疏性。

若删去凸性,二次项未必能压过 f 的非凸形状,argmin 可能有多个值。例如 f(y)=0y=±1、其他位置为适当更大值时,输入 x=0 可有两个同样好的近端点。即使在凸情形,定义良好也不等于存在便宜的闭式算法;某个函数的 prox 是否易算是额外的计算事实。最后,xλf(x) 是梯度步,一般不等于 proxλf(x)

推论与应用

近端算子的固定点正是 f 的最小点,因为 x=proxλf(x) 等价于 0f(x)。反复应用这个固定点关系便得到近端点方法。指标函数的特例把投影算法纳入同一语言,软阈值则构成稀疏回归与信号去噪的基本步骤。借助凸共轭还可得到 Moreau 分解,在适当缩放下把 ff 的两个 prox 组合为输入 x;这些关系使原问题和对偶问题之间能够直接传递算法信息。

参考资料
  • Neal Parikh and Stephen Boyd, Proximal Algorithms, Foundations and Trends in Optimization 1(3), 2014,§§1–2, proximal operators and examples。
  • Heinz H. Bauschke and Patrick L. Combettes, Convex Analysis and Monotone Operator Theory in Hilbert Spaces, 2nd ed., Springer, 2017,Chs. 12 and 23。