优化整理

函数\(g\)的一些性质

  • Lipschitz continuity

    \[\Vert \theta \Vert_2 \leq D \Rightarrow \Vert g'(\theta)\Vert_2 \leq B \]

  • Smoothness

    \[\Vert g'(\theta_1) - g'(\theta_1)\Vert_2 \leq L \Vert \theta_1 - \theta_2\Vert_2 \]

  • Strong convexity

    \[g(\theta_1) \geq g(\theta_2) + g(\theta_1)^T(\theta_2-\theta_1) + \frac{\mu}{2}\Vert \theta_1 - \theta_2\Vert_2 \]

Smoothness函数的性质

光滑凸函数的性质

  • 如果\(g\)是二阶可微的,则

    \[\Vert g''(\theta)\Vert \leq L \]

  • 二阶上界

    \[g(\theta_1) \leq g(\theta_2) + g'(\theta_2)(\theta_1-\theta_2) + \frac{L}{2}\Vert \theta_1-\theta_2\Vert \]

    可以直接通过上述的\(g''(\theta)\leq L\)导出

  • 下界

    \[g(\theta_1) \geq g(\theta_2) + g'(\theta_2)(\theta_1-\theta_2) + \frac{L}{2}\Vert \theta_1-\theta_2\Vert \]

    \(h(\theta) = g(\theta) - \theta^T g'(\theta_2)\)\(h(\theta)\)为凸函数且在\(\theta_2\)取得最小值,\(h(\theta)\leq h(\theta-\frac 1 L g'(\theta))\),将进行泰勒展开可以得到结果。

  • co-coercivity

    \[\frac 1 L \Vert g'(\theta) - g'(\eta)\Vert_2^2 \leq [g'(\theta) - g'(\eta)]^T(\theta-\eta) \]

  • 到最优点的距离

    \[g(\theta) - g(\theta_*)\leq g'(\theta)^T(\theta-\theta_*) \]

  • 如果\(g\)\(\mu\) 强凸的,那么

    \[g(\theta) \leq g(\eta) + g'(\eta)(\theta-\eta) + \frac{1}{2 \mu}\Vert g'(\theta) - g(\eta)\Vert \]

    同样,令\(h(\theta)=g(\theta) - \theta^T g'(\eta)\)并利用强凸的定义即可。

  • 如果\(g\)\(\mu\)强凸,那么到最优点的距离

    \[g(\theta) - g(\theta_*) \leq \frac{1}{2\mu} \Vert g'(\theta) \Vert^2 \]

光滑函数梯度下降

令光滑函数梯度下降的迭代过程为\(\theta_t = \theta_{t-1} - \frac 1 L g'(\theta_{t-1})\)

  • 如果\(g\)\(\mu\)强凸的,那么

    \[\Vert g(\theta_t) - g(\theta_*)\Vert\leq (1-\mu/L)^t[g(\theta_0) - g(\theta_*)] \]

    即,梯度下降算法是\(1- \mu/L\)线性收敛的。

    image-20200601102009614

    最后使用\(\Vert g'(\theta) - g'(\theta_*)\Vert^2 \geq 2\mu (g(\theta) - g(\theta_*))\)

  • 如果\(g\)仅仅是\(L-smooth\)的,那么

    \[g(\theta_t) - g(\theta) \leq \frac{2L\Vert \theta_0 - \theta_*\Vert}{t+4} \]

    \(\theta_t\)的迭代过程带入,并利用\(co-coercivity\)

    QkHbj.png

    利用凸函数的性质和柯西施瓦茨不等式可以得到

    \[g(\theta_{t-1} )- g(\theta_*)\leq g'(\theta_{t-1})(\theta_{t-1}-\theta)\leq\Vert g'(\theta_{t-1})\Vert \Vert \theta_{t-1}-\theta\Vert \]

    同时利用上一步的结果\(g(\theta_t)\leq g(\theta_{t-1}) -\frac{1}{2L}\Vert g'(\theta_{t-1})\Vert^2\)

    QkgFM.png

    定义

    QkrV3.png

    Qk3zS.png

    倒数第二步骤,从\(1-t\)的加和,两边都是加上前一步结果后,左式的\(\frac{1}{\Delta_{k-1}}\)被消除,因此就等于最后的结果。

加速梯度下降

对于\(L-smooth\)函数\(g\),以及下述优化流程

\[\begin{align*} \theta_t &= \eta_{t-1} - \frac 1 L g'(\eta_{t-1})\\ \eta_t &= \theta_t + \frac{t-1}{t+2}(\theta_t - \theta_{t-1}) \end{align*} \]

则会有\(g(\theta_t)-g(\theta_*)\leq \frac{2L\Vert \theta_0 - \theta_*\Vert^2}{(t+1)^2}\)

如果\(g\)还是一个\(\mu\)强凸函数,那么下属流程

\[\begin{align*} \theta_t & =\eta_{t-1} - \frac 1 L g'(\eta_{t-1})\\ \eta_t &= \theta_t + \frac{1-\sqrt{\mu/L}}{1+\sqrt{\mu/L}}(\theta_t-\theta_{t-1}) \end{align*} \]

则会有\(g(\theta_t)-g(\theta_*)\leq L\Vert \theta_0 - \theta_* \Vert^2( 1-\sqrt{1-\mu/L})^t\)

文章说的ten-line proof并没看懂...

Proximal gradient descent

Proximal gradient descent针对的是

\[\min_x g(x) + h(x) \]

其中\(g(x)\)Lipschitz连续,\(h(x)\)是凸函数不一定可微分。

其要找到一个\(z\)使得

\[\min_z \Vert x-z\Vert^2+h(z) \]

推导过程为,假设除去\(h(x)\)按照正常的梯度下降方法,

\[x^+ = x-\frac{1}{L}\nabla g(x) \]

对其在\(x\)点进行二阶展开

\[\begin{align*}x^+ &= \arg\min_z g(x) + \nabla g'(x)^T(z-x)+\frac{1}{2L}\Vert z-x\Vert^2+h(z)\\&=\arg\min_z \frac 1 {2L} \Vert z- (x-L\nabla g(x))\Vert^2+h(z)\end{align*} \]

最后一个等式去除了一些无关的常数项,因此最后一行其实是原式子的上界,通过对其上界进行优化从而实现其下降。

求解过程如下

QFU1D.png

加入没有\(g(x)\)这一项,对\(g(x)\)进行求导,可以得到

\[x^{(t+1)} = x^{(t)} - \frac{1}{L}\nabla f(x^{(t)}) \]

继而可以得到\(\nabla f(x^{(t)})=L(x^{(t)}-x^{(t+1)})\),为了表示方便,令\(\gamma = \frac{1}{L}\),同时设\(G_{\gamma} = \frac{1}{\gamma}(x-x^{(t+1)})\)。现在证明\(G_{\gamma}=0 \Rightarrow \partial g(x)+h(x)\)

因为\(x^{(t+1)}=\arg\min_z \{\frac{1}{2\gamma} \Vert z-(x^{(t)}-\gamma \nabla g(x^{(t)}))\Vert + h(z)\}\),上式对\(z\)求导即可得到结果

这个结果进一步说明了Proximal Gradient Descent与通常的梯度下降间的联系。

\(f(x)=g(x)+h(x)\)证明:

\[f(y)\geq f(x^{(t+1)})+<G_\gamma(x), y-x>+\frac \alpha 2 \Vert y-x\Vert^2+\gamma (1-\frac{\beta \gamma}{2})\Vert G_\gamma(x)\Vert^2 \]

\(x^{(t+1)}=x - \gamma G_\gamma(x)\)代入\(f(x)\)得到

\[\begin{align*}f(x^{(t+1)})&=g(x-\gamma G_\gamma(x))+h(x^{t+1})\\&\leq g(x) - \gamma<\nabla g(x), G_\gamma(x)>+\frac{\beta \gamma}{2}\Vert G_\gamma(x)\Vert^2 \\&\leq g(y)+<\nabla g(x), x-y>-\frac \alpha 2 \Vert x-y\Vert^2\\&\quad -\gamma<\nabla g(x), G_\gamma(x)>+\frac{\beta \gamma}{2}\Vert G_\gamma(x)\Vert^2\\&= g(y)+<\nabla g(x), x-y-\gamma G_\gamma(x)>-\frac \alpha 2 \Vert x-y\Vert^2\\&\quad +\frac{\beta \gamma}{2}\Vert G_\gamma(x)\Vert^2\\\end{align*} \]

参考文献

posted @ 2020-06-01 17:29  Neo_DH  阅读(326)  评论(0编辑  收藏  举报