本节介绍一些例子.

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. Spark(六)【RDD的血缘依赖】

    RDD依赖关系 1. RDD血缘关系 ​ RDD只支持粗粒度转换,即在大量记录上执行的单个操作.将创建RDD的一系列Lineage(血统)记录下来,以便恢复丢失的分区.RDD的Lineage会记录RD ...

  2. Notepad++【远程操作linux文件】

    目录 目的 预期效果 操作步骤 1.打开插件 2.安装NppFTP 3.连接远程主机 注意 目的 通过Notepad++远程登录linux主机,修改配置文件 预期效果 在Notepad++上登录lin ...

  3. 2021广东工业大学十月月赛 F-hnjhd爱序列

    题目:GDUTOJ | hnjhd爱序列 (gdutcode.cn) 一开始是用双指针从尾至头遍历,但发现会tle!! 后来朋友@77给出了一种用桶的做法,相当于是用空间换时间了. 其中用到的一个原理 ...

  4. RHEL 6.5 安装ORACEL11gR2

    1.关闭selinux,用vi /etc/selinux/config selinux=disabled 2.使用yum安装rpm yum -y install compat-db compat-db ...

  5. Kafaka相关命令

    开启zookeeper命令(备注:先进入zookeeper的bin目录) ./zkServer.sh start 关闭zookeeper命令(备注:先进入zookeeper的bin目录) ./zkSe ...

  6. BigDecimal 中 关于RoundingMode介绍

    RoundingMode介绍 RoundingMode是一个枚举类,有以下几个常量:UP.DOWN.CEILING.FLOOR.HALF_UP.HALF_DOWN.HALF_EVEN.UNNECESS ...

  7. Redis - 2 - 聊聊Redis的RDB和AOF持久化 - 更新完毕

    1.RDB 1.1).RDB是什么? RDB,全称Redis Database RDB是Redis进行持久化的一种方式,当然:Redis默认的持久化方式也是RDB 1.2).Redis配置RDB 1. ...

  8. Redis增加测试数据

    目录 一.简介 二.操作 三.制造测试数据 一.简介 用shell脚本将文本内容挨个写到redis中效率是很慢的.打开一个链接,写入后再关闭,再打开,效率很低. redis支持pipe mode功能, ...

  9. 如何查看Python的安装路径

    一.如何查看Python的安装路径 win+r输入cmd在输入:where python回车

  10. MySQL基础之DML语句

    DML 语句 DML(Data Manipulation Language)语句:数据操纵语句. 用途:用于添加.修改.删除和查询数据库记录,并检查数据完整性. 常用关键字:insert.update ...