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. 日常Java 2021/10/5

    java 异常处理 Throwable中包括Error 和Exception,Exception包括IOException和RuntimeException 抛出异常 1.异常运算条件 Arithme ...

  2. Leetcode中的SQL题目练习(二)

    175. Combine Two Tables https://leetcode.com/problems/combine-two-tables/description/ Description Pe ...

  3. HTTP初识

    HTTP(HyperText Transfer Protocol):超文本传输协议. URL(Uniform Resource Locator):统一资源定位符. URI(Uniform Resour ...

  4. 【Swift】CoreData的使用

    CoreData只是iOS数据持久化的其中一个方法,所有数据持久化如下 1.plist文件(属性列表),通常用于储存用户设置,也zhi可以用于存储捆绑的信息: 2.preference(偏好设置),常 ...

  5. Oracle—merge into语法

    oracle的merge into语法,在这种情况下: 基于某些字段,存在就更新,不存在就插入: 不需要先去判断一下记录是否存在,直接使用merge into merge into 语法: MERGE ...

  6. JavaIO——转换流、字符编码

    1.转换流 转换流是将字节流变成字符流的流. OutputStreamWriter:将字节输出流转换成字符输出流. public class OutputStreamWriter extends Wr ...

  7. Android 高级UI组件(二)

    1.ExpandableListView 显示垂直滚动两级列表的条目,只允许两个层次 整体思路: 要给ExpandableListView设置适配器,那么必须先设置数据源. 数据源,就是此处的适配器类 ...

  8. Linux基础命令---mysqlshow显示数据库

    mysqlshow mysqlshow是一个客户端的程序,它可以显示数据库的信息.表信息.字段信息. 此命令的适用范围:RedHat.RHEL.Ubuntu.CentOS.Fedora.   1.语法 ...

  9. 【Python】【Module】json and pickle

    Python中用于序列化的两个模块 json     用于[字符串]和 [python基本数据类型] 间进行转换 pickle   用于[python特有的类型] 和 [python基本数据类型]间进 ...

  10. 【HarmonyOS】【DevEco Studio】NOTE05:PageAbility生命周期的呈现

    NOTE05:PageAbility生命周期的呈现 基本界面设置 创建Slice与对应xml BarAbilitySlice package com.example.myapplication.sli ...