凸优化笔记18:近似点算子 Proximal Mapping
前面讲了梯度下降法,分析了其收敛速度,对于存在不可导的函数介绍了次梯度的计算方法以及次梯度下降法,这一节要介绍的内容叫做近似点算子(Proximal mapping),也是为了处理非光滑问题。
1. 闭函数
在引入闭函数(closed
function)的概念之前,我们先回顾一下闭集的概念:集合
- 闭集的交集还是闭集;
- 有限个闭集的并集还是闭集;
- 如果
是闭集,则线性映射的原象也是闭集,也即 是闭集。
第 3 条原则反过来则不一定成立,也即如果
第3条逆原则反例 | 第3条逆原则充分条件 |
---|---|
![]() |
当然,如果加一些其他的约束条件,则可以保证第 3 条反过来也成立:
是闭的且为凸集;- 并且
不存在一个可以无穷延伸的方向(recession direction)属于 的零空间,也即 ,图示即如上。
然后我们就可以定义闭函数(closed function)了,函数
- 如果
连续且定义域 为闭的,则 为闭函数; - 如果
连续且定义域 为开的,则 为闭函数当且仅当其在 边界处收敛至 。
例子 1:
例子 2:闭集的指示函数
反例 3:
反例 4:开集的指示函数不是闭函数
闭函数有一些有用的性质,比如:
为闭函数当且仅当他的所有下水平集都是闭集;- 如果
为闭函数,且下水平集有界,那么存在最小值点(minimizer)。
Theorem (Weierstrass) :假设集合
对于闭函数来说也有一些原则可以保持闭的性质:
- 如果
均为闭函数,则 为闭函数 - 如果
为闭函数,则 为闭函数 - 如果任意
都是闭函数,则 为闭函数
2. 共轭函数
共轭函数(conjugate function)
前面已经讲过了,这里再简单回顾一遍。函数
并且共轭函数有一些重要的性质:
- 共轭函数一定是闭函数,且为凸函数,不论
是否为凸函数或闭函数(因为 的 epigraph 可以看成很多个半空间的交集); - (Fenchel’s inequality)
- (Legendre transform) 如果
为凸函数且为闭函数,则有 - 如果
为凸函数且为闭函数,则
除此之外还有一些代数变换的原则,推导也都比较简单:
共轭函数的计算就不多举例子了,这里主要列出来后面用的比较多的而且比较重要的,其他的可以参考前面的笔记 6:
例子 1:
例子 2:范数
3. 近似点算子
首先给出来近似点算子(Proximal
mapping)的定义:闭凸函数
那么怎么理解这个算子函数
例子 1:二次函数
上面是比较简单的例子,近似点算子也有一些很容易验证的代数运算规律:
(注意 是标量) ,其中 ,对于一般的 并不能得到比较好的性质,但如果 ,则有
前面几条都比较容易证明,最后一条证明可以等价于求解
可以先求解 向超平面 投影来消去 ,然后再计算 。
除此之外,有一个非常重要的等式:
Moreau decomposition:
Remarks:为什么说这个式子重要呢?因为他把原函数和共轭函数的
proximal mapping
联系起来了,如果其中一个比较难计算,那么我们可以通过另一个来计算。这个式子可以怎么理解呢?可以看成是一种正交分解,举个栗子,如果我们取一个子空间
如果对原始的 Moreau decomposition 做简单的代数变换,就可以得到
后面两个小节则主要是近似点算子的应用,一个是计算投影,另一个是与支撑函数、距离相关的内容。
4. 投影
为什么突然讲到投影呢?因为对指示函数应用近似点算子,实质上就是在计算投影。举个栗子就明白了:对于集合
超平面:
超平面与矩形交集:
欧几里得球:
若
二阶锥:
5. 支撑函数、范数与距离
这一小节标题看起来很复杂,牵涉到了支撑函数、范数、到集合的距离,但实际上都还是在计算投影,为什么这么说呢?回忆一下,支撑函数的共轭函数是不是
与一点的距离: