Proximal Algorithms 2 Properties
可分和
如果\(f\)可分为俩个变量:\(f(x, y)=\varphi(x) + \psi(y)\), 于是:

如果\(f\)是完全可分的,即\(f(x) = \sum_{i=1}^n f_i (x_i)\):
\]
这个性质在并行算法的设计中非常有用。
基本的运算
如果\(f(x) = \alpha \varphi (x) + b\), \(\alpha > 0\):
\]
如果\(f(x) = \varphi (\alpha x +b)\), \(\alpha \ne 0\):

证:
\mathbf{prox}_{\lambda f}(v) &= \mathrm{argmin}_x \varphi(\alpha x+b) +\frac{1}{2\lambda}\|x-v\|_2^2 \\
&= \mathrm{argmin}_x \varphi(z) + \frac{1}{2\lambda}\|(z-b)/\alpha -v\|_2^2 \\
&= \mathrm{argmin}_x \varphi(z) + \frac{1}{2\lambda \alpha^2}\|z-b -\alpha v\|_2^2 \\
&= \frac{1}{\alpha} (\mathbf{prox}_{\alpha^2 \lambda \varphi}(\alpha v + b) - b)
\end{array}
\]
其中\(z=\alpha x+b\),证毕.
如果\(f(x) = \varphi(Qx)\),且\(Q\)为正交矩阵:
\]
如果\(f(x) = \varphi(x) + a^Tx + b\),则:
\]
证:
\mathbf{prox}_{\lambda f}(v) &= \mathrm{argmin}_x \varphi (x) + a^Tx + b + \frac{1}{2\lambda} \|x-v\|_2^2 \\
&= \mathrm{argmin}_x \varphi(x) +\frac{1}{2 \lambda} (x^Tx -2v^Tx+2\lambda a^Tx)+c \\
&= \mathrm{argmin}_x \varphi(x) + \frac{1}{2 \lambda} \|x-(v-\lambda a)\|_2^2 \\
&= \mathbf{prox}_{\lambda \varphi}(v-\lambda a)
\end{array}
\]
其中\(c\)为与\(x\)无关的项.
如果\(f(x) = \varphi(x) + (\rho/2) \|x -a \|_2^2\), 则:
\]
其中\(\widetilde{\lambda} = \lambda / (1+\lambda \rho)\),证明方法和上面是类似的,重新组合二次项就可以了.
不动点 fixed points
点\(x^*\)最小化\(f\)当且仅当:
\]
这说明,\(x^*\)是\(\mathbf{prox}_f\)的一个不动点,这个性质对于\(\lambda f\)也是成立的.

压缩映射的定义:
考虑映射\(T: (X, \rho) \rightarrow (X, \rho)\). 如果存在\(0 < a < 1\)使得对任意的\(x, y \in X\)有:
\]
则称函数\(T\)是\((X, \rho)\)到自身的压缩映射.
如果\(\mathbf{prox}_f\)是一个压缩映射,那么显然,如果我们想要找出最小化\(f\)的\(x^*\),可以用下式迭代:
\]
比如\(\mathbf{prox}_f\)满足\(L<1\)的Lipschitz条件.
近端算子有这个性质:

这儿有关于这块内容的讨论.
\(x = \mathbf{prox}_f(v) \Leftrightarrow v-x \in \partial f(x)\),其中\(\partial\)表示次梯度.
设\(u_1 = \mathbf{prox}_f(x), u_2 = \mathbf{prox}_f(y)\),则:
y - u_2 \in \partial f(u_2)
\]
因为\(f\)是凸函数,所以\(\partial f\)是单调增函数:
\Rightarrow \|u_1 - u_2\|_2^2 \le (x-y)^T(u_1-u_2)
\]
上面的单调增函数,翻译的估计不对,主要是我对这方面的只是也不了解,原文用的是monotone mapping, 我们来看凸函数\(f(x)\):
f(x) \ge f(y) + \partial f(y)^T(x-y)
\]
相加即得:
\]
还有严格凸的情况下有个特殊情况,这个怎么证明啊...而且,似乎在不是严格凸的,利用上面的迭代公式也是能够收敛到不动点的,可似乎不满足不动点定理啊.
而且作者将这个与平均算子(averaged operators)联系起来:
\]
以及迭代公式:
\]
Moreau decomposition
有以下事实成立:

以下的证明是属于

沿用其符号,令(注意是\(\inf\)不是\(\mathrm{argmin}\))
\]
我们可以其改写为:

注意\(-\sup A=\inf -A\)
假设\(f\)是凸函数且可微的,那么:
\]
其中,\(x\)满足:\(y=\nabla f(x^*)\)。于是(注意\(\nabla f(x^*)=y\), 且上式是关于\(y\)求导):
\]
这就是\(\nabla f_{\mu} (x)\)的由来.
我们再来看其对偶表示:

其拉格朗日对偶表示为:

如果满足强对偶条件:

所以:
\Rightarrow \frac{1}{2}\|x\|^2= ( \mu f + \frac{1}{2}\|\cdot\|^2)^*(x)+\mu (f^*+\frac{\mu}{2}\|\cdot\|^2)^*(x) \\
\Rightarrow x= \mathbf{prox}_{\mu f}(x) + \mu\mathbf{prox}_{\frac{1}{\mu}f^*}(\frac{x}{\mu})=x = \mathbf{prox}_{\mu f}(x) + \mathbf{prox}_{(\mu f)^*}(x)
\]
最后一步的结果通过对上式俩边求导得到的,不知道对不对,但是\(\mu=1\)的时候,下式是一定成立的:
\]
Proximal Algorithms 2 Properties的更多相关文章
- Proximal Algorithms
1. Introduction Much like Newton's method is a standard tool for solving unconstrained smooth minimi ...
- Proximal Algorithms 6 Evaluating Proximal Operators
目录 一般方法 二次函数 平滑函数 标量函数 一般的标量函数 多边形 对偶 仿射集合 半平面 Box Simplex Cones 二阶锥 半正定锥 指数锥 Pointwise maximum and ...
- Proximal Algorithms 5 Parallel and Distributed Algorithms
目录 问题的结构 consensus 更为一般的情况 Exchange 问题 Global exchange 更为一般的情况 Allocation Proximal Algorithms 这一节,介绍 ...
- Proximal Algorithms 4 Algorithms
目录 Proximal minimization 解释 Gradient flow 解释1 最大最小算法 不动点解释 Forward-backward 迭代解释 加速 proximal gradien ...
- Proximal Algorithms 3 Interpretation
目录 Moreau-Yosida regularization 与次梯度的联系 改进的梯度路径 信赖域问题 Proximal Algorithms 这一节,作者总结了一些关于proximal的一些直观 ...
- Proximal Algorithms 1 介绍
目录 定义 解释 图形解释 梯度解释 一个简单的例子 Proximal Algorithms 定义 令\(f: \mathrm{R}^n \rightarrow \mathrm{R} \cup \{+ ...
- Proximal Algorithms 7 Examples and Applications
目录 LASSO proximal gradient method ADMM 矩阵分解 ADMM算法 多时期股票交易 随机最优 Robust and risk-averse optimization ...
- Proximal Gradient Descent for L1 Regularization
[本文链接:http://www.cnblogs.com/breezedeus/p/3426757.html,转载请注明出处] 假设我们要求解以下的最小化问题: ...
- Propagation of Visual Entity Properties Under Bandwidth Constraints
1. Introduction The Saga of Ryzom is a persistent massively-multiplayer online game (MMORPG) release ...
随机推荐
- Hive(五)【DQL数据查询】
目录 一. 基本查询 1.1 算数运算符 1.2 常用聚合函数 1.3 limit 1.4 where 1.5 比较运算符(between|in|is null) 1.6 LIKE和RLIKE 1.7 ...
- APK 反编译以及遇到的问题
APK反编译: https://www.cnblogs.com/geeksongs/p/10864200.html 遇到的问题 https://www.jianshu.com/p/55bf5f688e ...
- spring注解-自动装配
Spring利用依赖注入(DI)完成对IOC容器中中各个组件的依赖关系赋值 一.@Autowired 默认优先按照类型去容器中找对应的组件(applicationContext.getBean(Boo ...
- Docker常用image
MySQL Start a mysql server instance Starting a MySQL instance is simple: docker run -itd --name mysq ...
- Linux下部署Java项目(jetty作为容器)常用脚本命令
startup.sh #!/bin/bash echo $(basename $(pwd)) "jetty started" cd jetty nohup java -Xmx8g ...
- SpringBoot中使用JUnit4(入门篇)
添加依赖 <dependency> <groupId>org.springframework.boot</groupId> <artifactId>sp ...
- 智龙开发板搭建llsp环境
智龙开发板搭建llsp(linux+lighttpd+sqlite3+php)环境 1. 准备 1. 智龙开发板V3 2. 软件编译环境:VirtualBox6+CentOS6.10-i386.min ...
- 使用 OPC Browser 加载 OPC Server 监测点
1,首先第一步,要连接OPC ,创建好 OPC对象. /// <summary> /// 连接OPC /// </summary> private string OPCIP=1 ...
- 编译工具ant部署
目录 一.环境准备 二.安装 三.使用验证 一.环境准备 当前环境:centos7.3一台 软件版本:ant-1.9 部署目录:/usr/local/ant yum依赖 yum -y java-1.8 ...
- react功能实现-组件创建
这里主要从两个角度来分析创建一个组件需要怎么做,一个是元素,一个是数据.整理向,大量借鉴,非原创. 1.渲染组件. 我们先明确一点,所有的元素都必须通过render方法来输出渲染.所有,每个组件类最终 ...