让炼丹更科学一些(四):新恒等式,新学习率
By 苏剑林 | 2025-12-26 | 4576位读者 | 引用上篇文章《让炼丹更科学一些(三):SGD的终点损失收敛》中我们成功将收敛结论从平均损失转化成终点损失,得到了$\mathcal{O}(\sqrt{\ln T/T})$的收敛速度。然而,仔细思考之下我们会发现这个结果其实不大符合直觉:按照经验,终点损失应该更接近最优值才对,平均损失的收敛速度都能做到$\mathcal{O}(1/\sqrt{T})$,怎么终点收敛速度反而更慢呢?
这个问题的最新进展是《Optimal Linear Decay Learning Rate Schedules and Further Refinements》,论文先推广了之前证明的关键恒等式,然后指出学习率调度对终点收敛的重要性,由此将终点损失的收敛加速至$\mathcal{O}(1/\sqrt{T})$。
新恒等式
原论文的结果很丰富,我们将分多篇文章介绍,这篇文章主要顺着上一篇的思路先做个初步介绍。为了将平均损失的收敛结论转换成终点损失,上一篇文章引入的关键恒等式是
\begin{equation}q_T = \frac{1}{T}\sum_{t=1}^T q_t + \sum_{k=1}^{T-1} \frac{1}{k(k+1)}\sum_{t=T-k}^T (q_t - q_{T-k})\end{equation}
为什么DeltaNet要加L2 Normalize?
By 苏剑林 | 2025-12-23 | 5825位读者 | 引用在文章《线性注意力简史:从模仿、创新到反哺》中,我们介绍了DeltaNet,它把Delta Rule带进了线性注意力中,成为其强有力的工具之一,并构成GDN、KDA等后续工作的基础。不过,那篇文章我们主要着重于DeltaNet的整体思想,并未涉及到太多技术细节——这篇文章我们来讨论其中之一:DeltaNet及其后续工作都给$\boldsymbol{Q}、\boldsymbol{K}$加上了L2 Normalize,这是为什么呢?
当然,直接从特征值的角度解释这一操作并不困难,但个人总感觉还差点意思。前几天笔者在论文《Error-Free Linear Attention is a Free Lunch: Exact Solution from Continuous-Time Dynamics》学习到了一个新理解,感觉也有可取之处,特来分享一波。
让炼丹更科学一些(三):SGD的终点损失收敛
By 苏剑林 | 2025-12-16 | 6835位读者 | 引用目前我们已经有两篇文章讨论SGD的收敛性质,不过它们都只是损失值的收敛结果,所以它们只保证我们能找到最优的损失值,但不能保证找到最优值的所在位置$\boldsymbol{\theta}^*$,这是目前的结论跟实践之间的一个显著gap。直觉上,训练结束时的权重$\boldsymbol{\theta}_T$应该更接近理论最优的$\boldsymbol{\theta}^*$,我们也想知道理论上是否支撑这一点。
所以,这篇文章我们就将平均损失的收敛结果转化为终点损失的收敛结果,初步从理论上了解$\boldsymbol{\theta}_T$与$\boldsymbol{\theta}^*$差多远。
找出位置
我们从文章《让炼丹更科学一些(二):将结论推广到无界域》出发,它的核心结果是不等式
\begin{equation}\sum_{t=1}^T \eta_t \mathbb{E}[L(\boldsymbol{\theta}_t) - L(\boldsymbol{\varphi})]\leq \frac{\Vert\boldsymbol{\theta}_1 - \boldsymbol{\varphi}\Vert^2}{2} + \frac{G^2}{2}\sum_{t=1}^T \eta_t^2\label{leq:avg-2-mid3}\end{equation}
让炼丹更科学一些(二):将结论推广到无界域
By 苏剑林 | 2025-12-12 | 8230位读者 | 引用两年前,笔者打算开一个“科学炼丹”专题,本想着系统整理一下优化器的经典理论结果,但写了第一篇《让炼丹更科学一些(一):SGD的平均损失收敛》后,就一直搁置至今。主要原因在于,笔者总觉得这些经典优化结论所依赖的条件过于苛刻,跟实际应用相去甚远,尤其是进入LLM时代后,这些结论的参考价值似乎更加有限,所以就没什么动力继续写下去。
然而,近期在思考Scaling Law的相关问题时,笔者发现这些结论结果并非想象中那么“没用”,它可以为一些经验结果提供有益的理论洞见。因此,本文将重启该系列,继续推进这个专题文章的撰写,“偿还”之前欠下的“债务”。
结论回顾
记号方面我们沿用第一篇文章的,所以不再重复记号的介绍。第一篇文章的主要结论是:在适当的假设之下,SGD成立
\begin{equation}\frac{1}{T}\sum_{t=1}^T L(\boldsymbol{x}_t,\boldsymbol{\theta}_t) - \frac{1}{T}\sum_{t=1}^T L(\boldsymbol{x}_t,\boldsymbol{\theta}^*)\leq \frac{R^2}{2T\eta_T} + \frac{G^2}{2T}\sum_{t=1}^T\eta_t\label{leq:avg-1}\end{equation}
滑动平均视角下的权重衰减和学习率
By 苏剑林 | 2025-12-05 | 11324位读者 | 引用权重衰减(Weight Decay)和学习率(Learning Rate)是LLM预训练的重要组成部分,它们的设置是否妥当,是模型最终成败的关键因素之一。自AdamW以来,单独分离出Weight Decay来取代传统的L2正则,基本上已经成为了共识,但在此基础上,如何合理地设置Weight Decay和Learning Rate,并没有显著的理论进展。
本文将抛砖引玉,分享笔者关于这个问题的一些新理解:把训练过程看作对训练数据的滑动平均记忆,探讨如何设置Weight Decay和Learning Rate才能让这个记忆更为科学。
滑动平均
Weight Decay的一般形式是
\begin{equation}\boldsymbol{\theta}_t = \boldsymbol{\theta}_{t-1} - \eta_t (\boldsymbol{u}_t + \lambda_t \boldsymbol{\theta}_{t-1})\end{equation}
AdamW的Weight RMS的渐近估计(下)
By 苏剑林 | 2025-11-17 | 12910位读者 | 引用在博客《AdamW的Weight RMS的渐近估计(上)》中,我们推导了AdamW训练出来的模型权重的RMS渐近表达式。不过,那会我们假设了Weight Decay和学习率在整个训练过程中是固定的,这跟实际训练并不完全吻合,所以这篇文章我们将之前的结论推广成动态版。
所谓动态版,即允许Weight Decay和学习率都随着训练步数的增加而变化,比如经典的Cosine Decay、WSD(Warmup Stable Decay)等,从而让结论更为通用。
步骤之一
我们的出发点还是AdamW的定义:
\begin{equation}\text{Adam}\color{skyblue}{\text{W}}:=\left\{\begin{aligned}
&\boldsymbol{m}_t = \beta_1 \boldsymbol{m}_{t-1} + \left(1 - \beta_1\right) \boldsymbol{g}_t\\
&\boldsymbol{v}_t = \beta_2 \boldsymbol{v}_{t-1} + \left(1 - \beta_2\right) \boldsymbol{g}_t^2\\
&\hat{\boldsymbol{m}}_t = \boldsymbol{m}_t\left/\left(1 - \beta_1^t\right)\right.\\
&\hat{\boldsymbol{v}}_t = \boldsymbol{v}_t\left/\left(1 - \beta_2^t\right)\right.\\
&\boldsymbol{u}_t =\hat{\boldsymbol{m}}_t\left/\left(\sqrt{\hat{\boldsymbol{v}}_t} + \epsilon\right)\right.\\
&\boldsymbol{\theta}_t = \boldsymbol{\theta}_{t-1} - \eta_t (\boldsymbol{u}_t \color{skyblue}{ + \lambda_t \boldsymbol{\theta}_{t-1}})
\end{aligned}\right.\end{equation}
n个正态随机数的最大值的渐近估计
By 苏剑林 | 2025-11-06 | 19591位读者 | 引用设$z_1,z_2,\cdots,z_n$是$n$个从标准正态分布中独立重复采样出来的随机数,由此我们可以构造出很多衍生随机变量,比如$z_1+z_2+\cdots+z_n$,它依旧服从正态分布,又比如$z_1^2+z_2^2+\cdots+z_n^2$,它服从卡方分布。这篇文章我们来关心它的最大值$z_{\max} = \max\{z_1,z_2,\cdots,z_n\}$的分布信息,尤其是它的数学期望$\mathbb{E}[z_{\max}]$。
先看结论
关于$\mathbb{E}[z_{\max}]$的基本估计结果是:
设$z_1,z_2,\cdots,z_n\sim\mathcal{N}(0,1)$,$z_{\max} = \max\{z_1,z_2,\cdots,z_n\}$,那么 \begin{equation}\mathbb{E}[z_{\max}]\sim \sqrt{2\log n}\label{eq:E-z-max}\end{equation}
流形上的最速下降:5. 对偶梯度下降
By 苏剑林 | 2025-11-03 | 20219位读者 | 引用前四篇文章我们求解了几个具体的给参数加等式约束的最速下降问题,其中第三、四篇的问题没法找到解析解,所以笔者提出了相应的不动点迭代法。其中的其中,第三篇文章《流形上的最速下降:3. Muon + Stiefel》所研究的“Stiefel流形上的Muon”,问题提出自Jeremy Bernstein的《Orthogonal manifold》一文。
对于这个问题,Jeremy Bernstein最后也给出了一个自己的解法,笔者称之为“对偶梯度下降(Dual Gradient Descent)”,也颇为值得学习一番。
基本概念
Jeremy Bernstein的解法,最后发表在Thinking Machines Lab的博客《Modular Manifolds》中,是该实验室的第二篇博客,文章中将它称为“对偶上升(Dual Ascent)”,但笔者这里还是结合前四篇的内容,将其称为“对偶梯度下降”。








最近评论