HyperAI
Command Palette
Search for a command to run...
近端梯度下降 Proximal Gradient Descent
日期
3 年前
近端梯度法是梯度下降方法的一种,主要用于求解目标函数不可微的最优化问题,若目标函数在某些点不可微,那么该点的梯度无法求解,传统梯度下降法无法使用。
近端梯度法是利用邻近点作为近似梯度,并以此进行梯度下降,通常被用于求解 L1 正则化。
相关概念
设 latexf(x) = f_0(x) + f_1(x) ,其中 latexf_0,f_1 为凸函数, latexf_1 为光滑函数,则近端梯度
latex∇∼f(x) = x − prox_f_0(x − ∇f_1(x))
其中有
latexprox_f_0(z) = arg min_y∈X f_0(y) + 21∥z − y∥2
近端梯度法流程
对于目标函数 latexmin_x∈Rnf(x) = f_0(x) + f_1(x) ,其中 f0 非光滑,f1 光滑,有如下定义:
迭代 r = 0, 1, 2, …
latex {x\mathop{{}}\nolimits^{{r+1}}\text{ }=\text{ }prox\mathop{{}}\nolimits\_{{ \alpha \mathop{{}}\nolimits^{{r}}f\mathop{{}}\nolimits\_{{0}}}}{ \left\[ {x\mathop{{}}\nolimits^{{r}}\text{ }-\text{ } \alpha \mathop{{}}\nolimits^{{r}} \nabla f\mathop{{}}\nolimits\_{{1}}{ \left( {x\mathop{{}}\nolimits^{{r}}} \right) }} \right\] }}
- 当 latexf_0 = 0 时,该式为梯度下降法
- 当 latexf_1 = 0 时,该式为近端点法
近端梯度方法特殊实例
- 预计 Landweber;
- 交替投影;
- 乘法器的交替方向法;
- 快速迭代收缩阈值算法(FISTA)。