Proximal Algorithms

这一节,作者总结了一些关于proximal的一些直观解释

Moreau-Yosida regularization

内部卷积(infimal convolution):

\[(f \: \Box \: g)(v)=\inf_x (f(x)+g(v-x))
\]

Moreau-Yosida envelope 或者 Moreau-Yosida regularization 为:

\[M_{\lambda f}=\lambda f \: \Box \: (1/2)\|\cdot\|_2^2
\]

, 于是:



事实上,这就是,我们在上一节提到过的东西。就像在上一节一样,可以证明:

\[M_f (x) = f(\mathbf{prox}(x)) + (1/2) \|x-\mathbf{prox}_f(x)\|_2^2
\]

以及:

\[\nabla M_{\lambda_f}(x) = (1 / \lambda)(x- \mathbf{prox}_{\lambda f}(x))
\]

虽然上面的我不知道在\(f\)不可微的条件下怎么证明.

于是有与上一节同样的结果:



总结一下就是,近端算子,实际上就是最小化\(M_{\lambda f}\), 等价于\(\nabla M_{f^*}\),即:

\[\mathbf{prox}_f(x) = \nabla M_{f^*} (x)
\]

这个,需要通过Moreau分解得到.

与次梯度的联系 \(\mathbf{prox}_{\lambda f} = (I + \lambda \partial f)^{-1}\)



上面的式子,有一个问题是,这个映射是单值函数吗(论文里也讲,用关系来讲更合适),因为\(\partial f\)的原因,不过,论文的意思好像是的,不过这并不影响证明:

改进的梯度路径

就像在第一节说的,和之前有关Moreau envelope表示里讲的:

\[\mathbf{prox}_{\lambda f} (x) = x - \lambda \nabla M_{\lambda f}(x)
\]

实际上,\(\mathbf{prox}_{\lambda f}\)可以视为最小化Moreau envelope的一个迭代路径,其步长为\(\lambda\). 还有一些相似的解释.

假设\(f\)是二阶可微的,且\(\nabla^2 f(x) \succ0\)(表正定),当\(\lambda \rightarrow 0\):

\[\mathbf{prox}_{\lambda f} (x) = (I + \lambda \nabla f)^{-1} (x) = x - \lambda \nabla f(x)+o(\lambda)
\]

这个的证明,我觉得是用到了变分学的知识:

\[\delta(I+\lambda \nabla f)^{-1}|_{\lambda=0}=-\frac{\nabla f}{(I+\lambda \nabla f)^{-2}}|_{\lambda =0}= -\nabla f
\]

所以上面的是一阶距离的刻画.

我们先来看\(f\)的一阶泰勒近似:



其近端算子为:



感觉,实际上是为:\(\mathbf{prox}_{\lambda \hat{f}_v^{(1)}}\)

相应的,还有二阶近似:



这个是Levenberg-Marquardt update的牛顿方法,虽然我不知道这玩意儿是什么.

上面的证明都是容易的,直接更具定义便能导出.

信赖域问题

proximal还可以用信赖域问题来解释:



而普通的proximal问题:



约束条件变成了惩罚项, 论文还指出,通过指定不同的参数\(\rho\)和\(\lambda\),俩个问题能互相达到对方的解.

Proximal Algorithms 3 Interpretation的更多相关文章

  1. Proximal Algorithms 4 Algorithms

    目录 Proximal minimization 解释 Gradient flow 解释1 最大最小算法 不动点解释 Forward-backward 迭代解释 加速 proximal gradien ...

  2. Proximal Algorithms

    1. Introduction Much like Newton's method is a standard tool for solving unconstrained smooth minimi ...

  3. Proximal Algorithms 6 Evaluating Proximal Operators

    目录 一般方法 二次函数 平滑函数 标量函数 一般的标量函数 多边形 对偶 仿射集合 半平面 Box Simplex Cones 二阶锥 半正定锥 指数锥 Pointwise maximum and ...

  4. Proximal Algorithms 5 Parallel and Distributed Algorithms

    目录 问题的结构 consensus 更为一般的情况 Exchange 问题 Global exchange 更为一般的情况 Allocation Proximal Algorithms 这一节,介绍 ...

  5. Proximal Algorithms 1 介绍

    目录 定义 解释 图形解释 梯度解释 一个简单的例子 Proximal Algorithms 定义 令\(f: \mathrm{R}^n \rightarrow \mathrm{R} \cup \{+ ...

  6. Proximal Algorithms 7 Examples and Applications

    目录 LASSO proximal gradient method ADMM 矩阵分解 ADMM算法 多时期股票交易 随机最优 Robust and risk-averse optimization ...

  7. Proximal Algorithms 2 Properties

    目录 可分和 基本的运算 不动点 fixed points Moreau decomposition 可分和 如果\(f\)可分为俩个变量:\(f(x, y)=\varphi(x) + \psi(y) ...

  8. Proximal Gradient Descent for L1 Regularization

    [本文链接:http://www.cnblogs.com/breezedeus/p/3426757.html,转载请注明出处] 假设我们要求解以下的最小化问题:                     ...

  9. Matrix Factorization, Algorithms, Applications, and Avaliable packages

    矩阵分解 来源:http://www.cvchina.info/2011/09/05/matrix-factorization-jungle/ 美帝的有心人士收集了市面上的矩阵分解的差点儿全部算法和应 ...

随机推荐

  1. 看动画学算法之:二叉搜索树BST

    目录 简介 BST的基本性质 BST的构建 BST的搜索 BST的插入 BST的删除 简介 树是类似于链表的数据结构,和链表的线性结构不同的是,树是具有层次结构的非线性的数据结构. 树是由很多个节点组 ...

  2. Linux网络管理(一)之配置主机名与域名

    Linux网络管理(一)之配置主机名与域名参考自:[1]修改主机名(/etc/hostname和/etc/hosts区别) https://blog.csdn.net/shmily_lsl/artic ...

  3. android知识点duplicateParentState

    android知识点duplicateParentState 今天要做一个效果,组件RelativeLayout上有两个TextView,这两个TextView具有不同的颜色值,现在要的效果是,当Re ...

  4. 网页设计单位 px,em,rem,vm,vh,%

    px(pixels) 像素 (px) 是一种绝对单位,因为无论其他相关的设置怎么变化,像素指定的值是不会变化的. px就是设备或者图片最小的一个点,比如常常听到的电脑像素是1024x768的,表示的是 ...

  5. Java线程安全性-原子性工具对比

    synchronized 不可中断锁,适合竞争不激烈的场景,可读性好,竞争激烈时性能下降很快 Lock 可中断锁,多样化同步,竞争激烈时能维持常态 Atomic 竞争激烈时能维持常态,比Lock性能还 ...

  6. MFC入门示例之单选框、复选框

    设置默认选中一个单选按钮,OnInitDialog()函数中添加: CheckRadioButton(IDC_RADIO1, IDC_RADIO2, IDC_RADIO2); 按钮事件处理 1 voi ...

  7. 【C/C++】链表

    #include <bits/stdc++.h> using namespace std; struct node { int data; // 数据 node* next; // 指针 ...

  8. 5、Redis五大基本数据类型——String类型

    一.Redis支持数据类型简介 Redis支持五种数据类型:string(字符串),hash(哈希),list(列表),set(集合)及zset(sorted set:有序集合). 二.String类 ...

  9. Jenkins视图管理

    目录 一.简介 二.视图维护 创建视图 将项目加入视图中 三.状态图标变绿 四.看板 一.简介 在现在的编程中,公司往往采用的是模块化的编程方式,也就是说将一个项目拆分成许多模块,每个小项目组往往只负 ...

  10. py脚本 获取当前运行服务的相关信息

    一.简介 最近在统计系统中都部署了什么服务,但服务器太多,在没有标准化之前进行整理,还是写脚本收集方便一些. 当然还是需要人工去判断整理表格,为后面标准化做准备.脚本是python2.7的,默认的ce ...