近端梯度法(Proximal Gradient Method, PG)
来源:互联网 发布:个体网络销售营业执照 编辑:程序博客网 时间:2024/06/05 22:55
近端梯度法(Proximal Gradient Method ,PG)
算法简介
近端梯度法是一种特殊的梯度下降方法,主要用于求解目标函数不可微的最优化问题。如果目标函数在某些点是不可微的,那么该点的梯度无法求解,传统的梯度下降法也就无法使用。PG算法的思想是,使用临近算子作为近似梯度,进行梯度下降。
概念定义
临近算子(proximity operator)
其中函数f可能是非光滑(即不可微)的。临近算子是对梯度的延伸,当函数f为光滑函数时,该临近算子就是梯度。
Morean信封(Morean envelope)
(这个玩意儿好像现在挺火,不过下文貌似没用到)
集合X的指示函数(indicator function of X)
其中X是一个凸集合。利用指示函数,我们可以将有约束问题写成无约束问题,如下:
当x不在X中,等式为无穷大,因此x肯定不是最优值。因此就等于限定了x在凸集合X中。
投影算子(projection operator)
当
解释一下这里投影的含义:一个点x在集合X上的投影,就是X上离x的欧几里得距离最近的点。如下图:
此外,关于投影算子还有以下结论:
也就是,2个在集合外的点x,y之间的距离,一定大于这两点在凸集合X上的投影的距离,如下图所示(
近端梯度(proximal gradient)
设
其中:
近端梯度法流程
目标函数:
迭代 r = 0,1,2,…
xr+1=proxαrf0[xr−αr∇f1(xr)]
当f0=0⇒梯度下降法 - 当
f1=0⇒近端点法
算法改进
最优性条件(Optimality Condition):
PG 迭代函数:
Bregman Distance
我们定义强凸可微函数
对于所有x,y,有
B(x,y)≥0 ,且 B(x,y)=0, iff x=y 。因此B(x,y)是一种近端测量。Bregman Distance 不满足对称性:
B(x,y)≠B(y,x) 。通过缩放我们可以假定B(x,y)≥12||x−y||2,∀x,y 如果
μ(x)=12||x||2 ,那么B(x,y)=12||x−y||2
近端梯度下降法流程
目标函数:
迭代 r = 0,1,2,…
xr+1=argminx∈X{f0(x)+<∇f1(xr),x−xr>+12αrB(x,xr)} 当
x∈Xand||x−x∗||≤Dandf(x)≤f(x0)andf(x0)−f(x∗)≤2LD2 时,迭代结束,跳出循环。
- 近端梯度法(Proximal Gradient Method, PG)
- Proximal Gradient Method近端梯度算法
- Proximal Gradient Method近端梯度算法
- 近端梯度下降proximal gradient descent
- Proximal Algorithms--Accelerated proximal gradient method
- [first order method] Proximal Gradient Descent
- 共轭梯度法(conjugate gradient method)
- conjugate gradient method (共轭梯度法)
- conjugate gradient method (共轭梯度法)
- 共轭梯度法(conjugate gradient method)
- 共轭梯度法(Conjugate Gradient Method)
- Proximal Algorithms--proximal gradient algorithm
- Conjugate gradient method(共轭梯度算法)
- 梯度(Gradient)与梯度下降法(Gradient Descent)
- 梯度(Gradient)与梯度下降法(Gradient Descent)
- 梯度下降法(Gradient descent)
- 梯度下降法 gradient descent
- 共轭梯度法学习 The Conjugate Gradient method
- LwIP之TCP
- ASPEN PLUS 10.0 物性方法和模型(好).pdf
- 多项式系数相加
- 堆排序——C#实现
- 全卷机神经网络图像分割(U-net)-keras实现
- 近端梯度法(Proximal Gradient Method, PG)
- Java程序语言进阶 ---- 第一周编程题
- python学习之路---(1)
- 我的three.js学习记录(二)
- ES6 Map
- Docker 安装 TensorFlow GPU 实战
- jquery的load函数实现页面的局部加载
- 交互式动画相关类,协议
- Elasticsearch_dsl(python)的搜索|查询|聚合操作实例