宇宙驿站感谢国家天文台LAMOST项目之“宇宙驿站”提供网络空间和数据库资源! 感谢国家天文台崔辰州博士等人的多方努力和技术支持!

版权科学空间致力于知识分享,所以欢迎您转载本站文章,但转载本站内容必须遵循 署名-非商业用途-保持一致 的创作共用协议。

参与科学空间

为了保证你的利益,推荐你注册为本站会员。同时欢迎通过邮件或留言进行交流、建议或反馈科学空间的问题。
会员注册 会员登录 查看全站文章归档页

12 Oct

随机矩阵的谱范数的快速估计

《高阶MuP:更简明但更高明的谱条件缩放》的“近似估计”一节中,我们曾“预支”了一个结论:“一个服从标准正态分布的$n\times m$大小的随机矩阵,它的谱范数大致是$\sqrt{n}+\sqrt{m}$。”

这篇文章我们来补充讨论这个结论,给出随机矩阵谱范数的快速估计方法。

随机矩阵论

设有随机矩阵$\boldsymbol{W}\in\mathbb{R}^{n\times m}$,每个元素都是从标准正态分布$\mathcal{N}(0,1)$中独立重复地采样出来的,要求估计$\boldsymbol{W}$的谱范数,也就是最大奇异值,我们以$\mathbb{E}[\Vert\boldsymbol{W}\Vert_2]$为最终的估计结果。

点击阅读全文...

8 Oct

DiVeQ:一种非常简洁的VQ训练方案

对于坚持离散化路线的研究人员来说,VQ(Vector Quantization)是视觉理解和生成的关键部分,担任着视觉中的“Tokenizer”的角色。它提出在2017年的论文《Neural Discrete Representation Learning》,笔者在2019年的博客《VQ-VAE的简明介绍:量子化自编码器》也介绍过它。

然而,这么多年过去了,我们可以发现VQ的训练技术几乎没有变化,都是STE(Straight-Through Estimator)加额外的Aux Loss。STE倒是没啥问题,它可以说是给离散化运算设计梯度的标准方式了,但Aux Loss的存在总让人有种不够端到端的感觉,同时还引入了额外的超参要调。

幸运的是,这个局面可能要结束了,上周的论文《DiVeQ: Differentiable Vector Quantization Using the Reparameterization Trick》提出了一个新的STE技巧,它最大亮点是不需要Aux Loss,这让它显得特别简洁漂亮!

点击阅读全文...

5 Oct

为什么线性注意力要加Short Conv?

如果读者有关注模型架构方面的进展,那么就会发现,比较新的线性Attention(参考《线性注意力简史:从模仿、创新到反哺》)模型都给$\boldsymbol{Q},\boldsymbol{K},\boldsymbol{V}$加上了Short Conv,比如下图所示的DeltaNet

DeltaNet中的Short Conv

DeltaNet中的Short Conv

为什么要加这个Short Conv呢?直观理解可能是增加模型深度、增强模型的Token-Mixing能力等,说白了就是补偿线性化导致的表达能力下降。这个说法当然是大差不差,但它属于“万能模版”式的回答,我们更想对它的生效机制有更准确的认知。

接下来,笔者将给出自己的一个理解(更准确说应该是猜测)。

点击阅读全文...

1 Oct

AdamW的Weight RMS的渐近估计(上)

《为什么Adam的Update RMS是0.2?》中,我们用平均场近似估计了Adam的Update RMS。不久后,读者 @EIFY 指出相同的结果已经出现在论文《Rotational Equilibrium: How Weight Decay Balances Learning Across Neural Networks》中。阅读后,笔者发现其中不仅包含了Update RMS的估计,还包含了Weight RMS的估计。

也就是说,AdamW训出来的模型,其权重的RMS是可以事先估计出来一个渐近结果的。大家会不会觉得这个结论有点意外?反正笔者第一次看到它是颇为意外的,直觉上权重模长是模型根据训练集自己学出来的,结果它告诉我这已经隐藏在优化器的超参中,可谓很反直觉了。

这篇文章我们还是用平均场近似方法,来复现对Weight RMS的渐近估计。

点击阅读全文...

22 Sep

重新思考学习率与Batch Size(四):EMA

我们在《重新思考学习率与Batch Size(二):平均场》中提到,关注SignSGD的原因之一是我们通常将它作为Adam的理论近似,这是Adam做理论分析时常用的简化策略。除了分析学习率的场景外,在《配置不同的学习率,LoRA还能再涨一点?》《初探MuP:超参数的跨模型尺度迁移规律》等地方我们也用了这个简化。

然而,SignSGD真是Adam的良好近似吗?一个明显差异是SignSGD的Update RMS总是1,而Adam并非如此。笔者发现,导致这一差异的核心原因是动量,它普遍存在于Adam、Lion、Muon等优化器中。所以,本文我们来考察动量——更广义地说是EMA——的影响。

问题分析

从Adam的视角看,SignSGD对应$\beta_1=\beta_2=0$这个特例,或者对应于Adam的第一步更新量(不管$\beta_1,\beta_2$如何)。因此,我们认为它跟Adam肯定有一些共性,能够捕捉到一些通用的规律。

点击阅读全文...

15 Sep

重新思考学习率与Batch Size(三):Muon

前两篇文章《重新思考学习率与Batch Size(一):现状》《重新思考学习率与Batch Size(二):平均场》中,我们主要是提出了平均场方法,用以简化学习率与Batch Size的相关计算。当时我们分析的优化器是SGD、SignSGD和SoftSignSGD,并且主要目的是简化,本质上没有新的结论。

然而,在如今的优化器盛宴中,怎能少得了Muon的一席之地呢?所以,这篇文章我们就来尝试计算Muon的相关结论,看看它的学习率与Batch Size的关系是否会呈现出新的规律。

基本记号

众所周知,Muon的主要特点就是非Element-wise的更新规则,所以之前在《当Batch Size增大时,学习率该如何随之变化?》《Adam的epsilon如何影响学习率的Scaling Law?》的Element-wise的计算方法将完全不可用。但幸运的是,上篇文章介绍的平均场依然好使,只需要稍微调整一下细节。

点击阅读全文...

10 Sep

重新思考学习率与Batch Size(二):平均场

上文《重新思考学习率与Batch Size(一):现状》末尾我们说到,对于SignSGD、SoftSignSGD等$\tilde{\boldsymbol{\varphi}}_B$非线性依赖于$\tilde{\boldsymbol{g}}_B$的情形,计算过程的心智负担相当沉重,并且面临难以推广的困境。为此,笔者投入了一些精力去尝试简化其中的推导,万幸有些许收获,其中的关键思路便是本文的主题——平均场。

平均场是物理中常见的近似计算方法,它没有固定的形式,但大体思想就是将求平均移到函数之内。事实上,在《为什么Adam的Update RMS是0.2?》中我们就已经窥见过平均场的魅力,而在这篇文章中,我们再来见识它在计算SignSGD/SoftSignSGD的学习率规律上的奇效。

方法大意

沿着上文的记号,对于SignSGD我们有$\newcommand{sign}{\mathop{\text{sign}}}\tilde{\boldsymbol{\varphi}}_B=\sign(\tilde{\boldsymbol{g}}_B)$,我们需要先计算$\mathbb{E}[\tilde{\boldsymbol{\varphi}}_B]$和$\mathbb{E}[\tilde{\boldsymbol{\varphi}}_B\tilde{\boldsymbol{\varphi}}_B^{\top}]$,继而可以算出
\begin{equation}\newcommand{tr}{\mathop{\text{tr}}}\eta^* \approx \frac{\mathbb{E}[\tilde{\boldsymbol{\varphi}}_B]^{\top}\boldsymbol{g}}{\tr(\mathbb{E}[\tilde{\boldsymbol{\varphi}}_B\tilde{\boldsymbol{\varphi}}_B^{\top}]\boldsymbol{H})}\label{eq:eta-opt}\end{equation}

点击阅读全文...

2 Sep

为什么Adam的Update RMS是0.2?

众所周知,我们很早就开始尝试将Muon用于大规模LLM的训练。特别地,在《Muon续集:为什么我们选择尝试Muon?》中,我们提出了“Match Adam Update RMS”的技巧,以便快速从Adam迁移到Muon上,这个技巧同样用到了Kimi K2的训练中。该技巧是指将Muon的Update RMS统一成0.2,这使得我们复用Adam的学习率和权重衰减率。

这一技巧的背后,是我们观察到Adam的Update RMS约等于0.2,并且这一现象是稳定且可复现的。这便引发了一个有趣的问题:为什么Adam的Update RMS是0.2?我们可以从理论上解释它吗?

问题引入

首先描述一下现象:从实验中我们观察到,大致上在Warmup结束、模型进入正式训练后,Adam的Update RMS几乎都保持在0.2~0.3之间,并且不同尺寸的模型也呈现出相似的规律。这些模型的共同点是都用Adam训练,参数是$\beta_1=0.9,\beta_2=0.95$。由于共性很明显,所以这大概率不是巧合,因此笔者尝试分析背后的原理。

点击阅读全文...