这篇文章是我之前一篇文章的兄弟篇,没看过的可以看下面这个。
邓康康:求解稀疏优化问题——半光滑牛顿方法zhuanlan.zhihu.com我们考虑的问题仍然是如下的一般问题:
其中
- 表示一个凸可微函数,例如
- 表示一个闭真凸函数,一般为稀疏正则函数,比如 LASSO:,Fused LASSO,Clustered LASSO等
通过引入变量
于是我们得到(P)的对偶问题为:
- 将原问题转化为对偶问题
- 利用增广拉格朗日方法求解对偶问题
- 子问题采用半光滑牛顿法
主要代价在于半光滑牛顿法,而由于非光滑函数
在我的另一篇文章中
邓康康:原始对偶角度下的几类优化方法zhuanlan.zhihu.com里面讲到了:
对偶问题上的临近点方法等价于原问题上的增广拉格朗日方法。
而对偶问题的对偶问题是原问题。所以我们是不是有,
原始问题上的临近点方法等价于对偶问题上的增广拉格朗日方法?
所以这篇文章我们来讲述临近点方法应用到原始问题。参考的是孙老师的两篇文章,见文章末尾的参考文献。
一、邻近算子和Moreau Envelope
首先,我给出一些需要用到的一些定义和性质。
定义
1.临近算子
- 是光滑函数,并且它的梯度为:
- Moreau分解:
- Moreau envelope分解:
二、临近点方法求解原问题
首先,临近点方法有如下迭代形式:
其中
构建拉格朗日函数:
那么其对偶问题为:
我们最终要求的就是对偶问题(D.1)。需要说明一下,这里的原始问题(P.1)和对偶问题(D.1)是针对临近点方法的子问题而言的。我们来看一下对偶问题(D.1)的目标函数
其中第一部分关于
第一个等式用到了定义2,第二个等式用到了性质3。
最终我们将对偶问题(D.1)转化为如下问题:
定义
这个函数跟 邓康康:求解稀疏优化问题1——增广拉格朗日方法+半光滑牛顿方法
中的函数一模一样。
求到了对偶变量
其中
三、半光滑牛顿法求解对偶问题(D.1)
根据上面的推导,我们知道求解对偶问题(D.1)等价于求解
因为上述问题是个凸问题,我们只要找到梯度等于0的点即可:
首先根据
第一个等式用到了性质1,第二个等式用到了性质2。这里说一下为什么是半光滑牛顿法,因为
虽然函数光滑,但临近算子的存在导致这个函数的梯度不是光滑的。
有了梯度之后,我们来求解其广义Jacobian矩阵。
第一部分,
这样的话,(8)的后面这部分,我们只需要计算由非零元对应矩阵
最后我们给出半光滑牛顿法的迭代过程:
其中
半光滑牛顿法迭代完之后,令
再说一下:(5)是我们的外迭代,也就是临近点方法求解原问题。而(8)是用半光滑牛顿法求解(5)中的第一个子问题。Over!
二、总结
最后梳理下这篇文章的idea:
- 临近点方法求解原问题
- 将子问题转化到对偶形式
- 半光滑牛顿法求解对偶问题
- 在之前那篇文章中,增广拉格朗日方法中的罚参数就对应于这里临近点方法的罚参数。二者的迭代是一样的,只不过在参数的选择和收敛性分析方面会有不同。
- 不同角度理解问题,得到不同的方法,虽然本质上是一样的,但由此带来的延伸就不一样了,在增广拉格朗日方法和临近点方法上的改进可以完全不同。
欢迎关注我的专栏
最优化理论和一阶方法zhuanlan.zhihu.com详细内容和理论证明可以看孙德锋老师主页:
知乎 - 安全中心www.polyu.edu.hk参考文献
[1] Zhang Y, Zhang N, Sun D, et al. A Proximal Point Dual Newton Algorithm for Solving Group Graphical Lasso Problems[J]. arXiv preprint arXiv:1906.04647, 2019.
[2] Lin M, Sun D, Toh K C, et al. A dual Newton based preconditioned proximal point algorithm for exclusive lasso models[J]. arXiv preprint arXiv:1902.00151, 2019.