本节介绍一些例子.

LASSO

考虑如下问题:

\[\min \quad (1/2)\|Ax-b\|_2^2 + \gamma\|x\|_1,
\]

其中\(x \in \mathbb{R}^n, A \in \mathbb{R}^{m\times n }\).

proximal gradient method

proximal gradient method 是:

\[x^{k+1} := \mathbf{prox}_{\lambda g}(x^k - \lambda \nabla f(x^k))
\]

令\(f(x)=(1/2)\|Ax-b\|_2^2, g(x)=\gamma \|x\|_1\), 则

\[\nabla f(x) = A^T(Ax-b), \quad \mathbf{prox}_{\gamma g}(x)=S_{\gamma}(x),
\]

其中\(S_{\gamma}(x)\)是soft-thresholding.

ADMM

很自然的方法,不提了.

矩阵分解

一般的矩阵分解问题如下:



其中\(X_1, \ldots, X_N \in \mathbb{R}^{m\times n}\)为变量,而\(A \in \mathbb{R}^{m\times n }\)为数据矩阵.

不同的惩罚项\(\varphi\)会带来不同的效果.

  • \(\varphi(X)=\|X\|_F^2\), 这时,矩阵元素往往都比较接近且小
  • \(\varphi(X)=\|X\|_1\), 这会导致稀疏化
  • \(\varphi(X) = \sum_j \|x_j\|_2\), 其中\(x_j\)是\(X\)的第\(j\)列, 这会导致列稀疏?

其他的看文章吧.

ADMM算法

\[f(x) = \sum_{i=1}^N \varphi_i (X_i), \quad g(X)=I_{\mathcal{C}}(X),
\]

其中\(X = (X_1, \ldots, X_N)\), 并且:

\[\mathcal{C} = \{(X_1, \ldots, X_N| X_1 + \ldots + X_N=A\}.
\]

根据之前的分析,容易知道:

\[\Pi_{\mathcal{C}}=(X_1, \ldots, X_N)-\bar{X}+(1/N)A,
\]

其中\(\bar{X}\)是\(X_1, \ldots, X_N\)的各元素的平均.

最后算法总结为:

多时期股票交易

其问题是:

\[\min \quad \sum_{t=1}^T f_t(x_t) + \sum_{t=1}^T g_t (x_t - x_{t-1}),
\]

其中\(x_t, t=1,\ldots, T\)表示第\(t\)个时期所保持的股份,期权,而\(f_t\)则表示对应的风险,\(g_t\)表示第\(t\)个时期交易所需要耗费的资源.

考虑如下分割:

\[f(X)=\sum_{t=1}^ Tf_t(x_t), \quad g(X)=\sum_{t=1}^T g_t(x_t-x_{t-1}),
\]

其中\(X=[x_1, \ldots, x_T]\in\mathbb{R}^{n \times T}\).

随机最优

为如下问题:

\[\min \quad \sum_{k=1}^K \pi_k f^{(k)} (x),
\]

其中\(\pi \in \mathbb{R}_+^K\)是一个概率分布,满足\(1^T\pi=1\).

利用第5节的知识,将此问题化为:

\[\min \quad \sum_{k=1}^K \pi_k f^{(k)} (x^{(k)}) \\
s.t. \quad x^{(1)}=\ldots=x^{(K)}.
\]

再利用ADMM就可以了.

Robust and risk-averse optimization

鲁棒最优,特别的, 最小化最大风险:

\[\min \quad \max_{k=1, \ldots, K} f^{(k)}(x).
\]

更一般的:

\[\min \quad \varphi(f^{(1)}, \ldots, f^{(K)}(x)),
\]

其中\(\varphi\)为非降凸函数.

method

将上面的问题转化为:





视作\(f\)



作为\(g\),再利用ADMM求解即可.

Proximal Algorithms 7 Examples and Applications的更多相关文章

  1. Proximal Algorithms

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

  2. Proximal Algorithms 6 Evaluating Proximal Operators

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

  3. Proximal Algorithms 5 Parallel and Distributed Algorithms

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

  4. Proximal Algorithms 4 Algorithms

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

  5. Proximal Algorithms 3 Interpretation

    目录 Moreau-Yosida regularization 与次梯度的联系 改进的梯度路径 信赖域问题 Proximal Algorithms 这一节,作者总结了一些关于proximal的一些直观 ...

  6. Proximal Algorithms 1 介绍

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

  7. Proximal Algorithms 2 Properties

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

  8. OpenCASCADE Hidden Line Removal

    OpenCASCADE Hidden Line Removal eryar@163.com Abstract. To provide the precision required in industr ...

  9. 计算机视觉code与软件

    Research Code A rational methodology for lossy compression - REWIC is a software-based implementatio ...

随机推荐

  1. day02 Rsyuc备份服务器

    day02 Rsyuc备份服务器 一.备份 1.什么是备份 备份就是把重要的数据或者文件复制一份保存到另一个地方,实现不同主机之间的数据同步 一般数据比较重要的情况下,数据如果丢失很容易找不回来了的, ...

  2. 25. Linux下gdb调试

    1.什么是core文件?有问题的程序运行后,产生"段错误 (核心已转储)"时生成的具有堆栈信息和调试信息的文件. 编译时需要加 -g 选项使程序生成调试信息: gcc -g cor ...

  3. css相关,flex布局全通!

    寻根溯源话布局 一切都始于这样一个问题:怎样通过 CSS 简单而优雅的实现水平.垂直同时居中. 记得刚开始学习 CSS 的时候,看到 float 属性不由得感觉眼前一亮,顺理成章的联想到 Word 文 ...

  4. oracle 拆分字符串

    WITH t AS (SELECT '1-2-3-4' a FROM dual)SELECT Regexp_Substr(a, '[^-]+', 1, LEVEL) i FROM tCONNECT B ...

  5. Android Https相关完全解析

    转载: 转载请标明出处: http://blog.csdn.net/lmj623565791/article/details/48129405: 本文出自:[张鸿洋的博客] 一.概述 其实这篇文章理论 ...

  6. rust方法集

    随机数.数字对比.控制台输入 use std::io; use std::cmp::Ordering; use rand::Rng; fn main() { println!("please ...

  7. 【Java 基础】Java Enum

    概览 在本文中,我们将看到什么是 Java 枚举,它们解决了哪些问题以及如何在实践中使用 Java 枚举实现一些设计模式. enum关键字在 java5 中引入,表示一种特殊类型的类,其总是继承jav ...

  8. Java高精度基础+开根

    在焦作站的acm网络赛中遇到了一个高精度开根的水题--但是那时候WA了 后面学写java补题还T了orz 所以写一篇文章来记录一下java的大整数类型的基础和开根还有一点心得体会吧 首先给那一题的题面 ...

  9. 算法 A-Star(A星)寻路

    一.简介 在游戏中,有一个很常见地需求,就是要让一个角色从A点走向B点,我们期望是让角色走最少的路.嗯,大家可能会说,直线就是最短的.没错,但大多数时候,A到B中间都会出现一些角色无法穿越的东西,比如 ...

  10. Apache Log4j 远程代码执行漏洞源码级分析

    漏洞的前因后果 漏洞描述 漏洞评级 影响版本 安全建议 本地复现漏洞 本地打印 JVM 基础信息 本地获取服务器的打印信息 log4j 漏洞源码分析 扩展:JNDI 危害是什么? GitHub 项目 ...