3 Nov

流形上的最速下降:5. 对偶梯度下降

前四篇文章我们求解了几个具体的给参数加等式约束的最速下降问题,其中第三、四篇的问题没法找到解析解,所以笔者提出了相应的不动点迭代法。其中的其中,第三篇文章《流形上的最速下降:3. Muon + Stiefel》所研究的“Stiefel流形上的Muon”,问题提出自Jeremy Bernstein的《Orthogonal manifold》一文。

对于这个问题,Jeremy Bernstein最后也给出了一个自己的解法,笔者称之为“对偶梯度下降(Dual Gradient Descent)”,也颇为值得学习一番。

基本概念

Jeremy Bernstein的解法,最后发表在Thinking Machines Lab的博客《Modular Manifolds》中,是该实验室的第二篇博客,文章中将它称为“对偶上升(Dual Ascent)”,但笔者这里还是结合前四篇的内容,将其称为“对偶梯度下降”。

点击阅读全文...

21 Aug

流形上的最速下降:4. Muon + 谱球面

看完了前三篇的读者,想必已经熟悉本系列的“套路”——先提出更新量的约束,寻找最速下降方向,接着再给参数也加上约束,寻找新的最速下降方向。在求解参数约束问题时,我们采用的是“一阶近似够用”原则来简化约束形式,这在几何上对应于“切空间”。然后,我们用待定系数法转化无约束形式来写出解析解,最后再数值求解待定系数。

这篇文章我们再来求解一个新例子——谱球面约束下的Muon——它是第一篇文章《流形上的最速下降:1. SGD + 超球面》的类比推广,当我们希望参数的谱范数始终不变时可以考虑它。当然,也可以单纯作为一道练习题来练手。

问题描述

《流形上的最速下降:2. Muon + 正交》《流形上的最速下降:3. Muon + Stiefel》中,我们已经详细讨论了Muon与正交约束的碰撞,所以相关背景我们就不展开了,直接给出问题形式:
\begin{equation}\newcommand{tr}{\mathop{\text{tr}}}\max_{\boldsymbol{\Phi}} \tr(\boldsymbol{G}^{\top}\boldsymbol{\Phi}) \qquad \text{s.t.}\qquad \Vert\boldsymbol{\Phi}\Vert_2 = 1,\,\, \Vert\boldsymbol{W}\Vert_2 = 1,\,\,\Vert\boldsymbol{W} - \eta \boldsymbol{\Phi}\Vert_2=1\end{equation}

点击阅读全文...

8 Aug

流形上的最速下降:3. Muon + Stiefel

上回说到,当我们把优化对象从向量参数转移到矩阵参数,并选用更适合矩阵的谱范数约束后,Muon优化器便自然而然地出现了。进一步地,我们考虑了给参数加上正交约束后的最速下降方向,这其中又分方阵和非方阵两部分讨论,其中方阵的求解我们在上一篇文章已经完成,但非方阵部分依然悬而未决。

本文的目标,则是把非方阵部分的求解补上,使得正交约束下的优化得以完全解决。

任务信息

先简单回顾一下上文《流形上的最速下降:2. Muon + 正交》的结果。我们要求解的目标是
\begin{equation}\newcommand{tr}{\mathop{\text{tr}}}\max_{\boldsymbol{\Phi}} \tr(\boldsymbol{G}^{\top}\boldsymbol{\Phi}) \qquad \text{s.t.}\qquad \Vert\boldsymbol{\Phi}\Vert_2 = 1,\,\, \boldsymbol{W}^{\top}\boldsymbol{W}=\boldsymbol{I},\,\,(\boldsymbol{W} - \eta \boldsymbol{\Phi})^{\top}(\boldsymbol{W} - \eta \boldsymbol{\Phi})=\boldsymbol{I}\end{equation}

点击阅读全文...

6 Aug

流形上的最速下降:2. Muon + 正交

本文继续我们的约束优化系列。在上文《流形上的最速下降:1. SGD + 超球面》中,我们重温了优化器的“最小作用量”原理,提出不同优化器的核心差异在于给更新量施加的不同约束,如果这个约束是欧几里得范数,那么对应的最速下降便是SGD。进一步地,我们还讨论了同时给参数增加模长约束后的结果,这构成了超球面流形上的最速下降。

不过,上文只能算是“热身”,因为它处理的是相对简单的向量参数优化。本文正式进入更具挑战性的部分——优化参数从向量变成矩阵,并且增量约束改为谱范数,由此衍生出Muon优化器;接着,我们再给参数添加正交约束,这将得到正交流形下的Muon优化器。

命题描述

设待优化参数具有矩阵形式$\boldsymbol{W}\in\mathbb{R}^{n\times m}$,不失一般性,设$n\geq m$。根据上一篇文章的“最小作用量”原理,我们得出最速下降的增量$\Delta\boldsymbol{W}$应该满足
\begin{equation}\min_{\Delta \boldsymbol{W}} \mathcal{L}(\boldsymbol{W} +\Delta\boldsymbol{W}) \qquad \text{s.t.}\qquad \rho(\Delta\boldsymbol{W})\leq \eta\end{equation}

点击阅读全文...

1 Aug

流形上的最速下降:1. SGD + 超球面

类似“梯度的反方向是下降最快的方向”的描述,经常用于介绍梯度下降(SGD)的原理。然而,这句话是有条件的,比如“方向”在数学上是单位向量,它依赖于“范数(模长)”的定义,不同范数的结论也不同,Muon实际上就是给矩阵参数换了个谱范数,从而得到了新的下降方向。又比如,当我们从无约束优化转移到约束优化时,下降最快的方向也未必是梯度的反方向。

为此,在这篇文章中,我们将新开一个系列,以“约束”为主线,重新审视“最速下降”这一命题,探查不同条件下的“下降最快的方向”指向何方。

优化原理

作为第一篇文章,我们先从SGD出发,理解“梯度的反方向是下降最快的方向”这句话背后的数学意义,然后应用于超球面上的优化。不过在此之前,笔者还想带大家重温一下《Muon续集:为什么我们选择尝试Muon?》所提的关于优化器的“最小作用量原理(Least Action Principle)”。

点击阅读全文...