第11讲 · Stanford CS336:从零开始的语言模型

对应讲次:第11讲(Stanford CS336 语言建模)

制作模型:deepseek-flash(vb compose,据 run.log)

Scaling Laws(缩放定律)——从 Chinchilla 到开放前沿的超参数、优化器与 μP

课程信息 - 课程:Stanford CS336 Language Modeling from Scratch(2026 春季) - 视频:Lecture 11: Scaling Laws(时长 77 分钟) - 本讲主题:缩放定律的高级细节、超参数(学习率 / 批量大小)的规模依赖、优化器(Adam → Muon)的规模敏感性,以及 μP(Maximal Update Parameterization)参数化。 - 本书由课堂字幕重构为书面技术指南,保留了讲师的类比、案例与推理链;凡编者补充内容一律以 编者说明 / 编者拓展 明确标注,不冒充讲师原话。术语、英文原名尽量保留讲师用法。


导览

这是一张 3–5 分钟的问题地图,帮你在进入细节前先看清这一讲的全貌。

① 讲师本讲真正提出的问题

老师没有把这一讲做成"缩放定律教科书回顾"。他开场就直说了:今天是一个 grab bag(杂货铺),要讲的是缩放定律更高级的细节,以及在实践中究竟怎样把语言模型放大。他按自己的顺序抛出三组问题:

  1. 两个讲座前讲的缩放定律(Kaplan、Hestness、Chinchilla 那一套经典"教义"),在真正训练开源大模型的规模上,到底还成不成立? 他要"从 Chinchilla 一路快进到 Kimi K2"来看开放前沿的人到底在关心什么、担心什么。
  2. 那些最敏感的超参数——学习率、批量大小——能不能被优化掉、被稳定住? 他想讲那些"内行才懂"的学习率技巧。
  3. 规模一大,有些东西就变得特别难调。 优化器行为是高度 scale-sensitive 的,所以初始化、学习率、批量大小都必须当作规模的函数来仔细思考。

② 难点在哪(最容易卡住的地方)

③ 读者可能带着什么疑问进来

④ 本讲路线

老师先走"论文线"(第一部分):先用 MiniCPM 讲"用 μP 把学习率稳定住" + "WSD 调度" + "批量大小的幂律",再用 DeepSeek 讲"直接给学习率和批量大小拟合缩放律"这另一种哲学;然后快速过一遍 Qwen、Chinchilla 2、Hunyuan、Llama 3、MiniMax 等开放模型的缩放实践。接着转入"方法线"(第二部分)——先是超参数缩放(StepFun 那篇大规模 grid search),再是优化器(Muon 从 nanoGPT 一路到大模型的故事),最后花大量时间讲 μP 的理论推导与实证检验,并以"缩放是一门半科学"收尾。


一、本讲定位:从经典缩放定律到"开放前沿"

(参考时间: 00:00–00:03)

本讲是一个"杂货铺"式的讲座,主题是缩放定律的高级细节,以及在实践中如何把语言模型放大。在此之前,课程讨论的主要是所谓经典缩放定律教义(classical scaling laws canon):Kaplan 等人的缩放定律、Hestness 等人的工作,以及后来 Chinchilla 论文。这些内容大致对应到 2022 年前后的认知水平。

自那以后,真正训练大模型的人又发表了一批缩放论文。讲师特别指出一个趋势:

讲师观察:这类论文的数量近年在减少,而且大部分来自中国的开源社区。

因此本讲的一个现实目的,是带你了解"在开放前沿(open frontier)上,缩放到底长什么样"——这些人在关心什么、担心什么,以及你想从 Chinchilla"速通"到 Kimi K2 这样的最新模型,需要掌握哪些东西。

本讲在结构上分成两大块:

graph TD
    A["本讲两大主线"] --> B["第一部分:论文线<br/>开放模型的缩放实践"]
    A --> C["第二部分:方法线<br/>超参数 / 优化器 / μP"]

    B --> B1["MiniCPM:μP + WSD + 批量幂律"]
    B --> B2["DeepSeek:直接拟合超参数缩放律"]
    B --> B3["Qwen / Chinchilla 2 / Hunyuan<br/>Llama 3 / MiniMax"]

    C --> C1["学习率与批量大小的缩放<br/>(StepFun 大规模 grid search)"]
    C --> C2["优化器:Adam → Muon 的规模化"]
    C --> C3["μP:用参数化消除规模依赖"]

    B2 -. 哲学对立 .-> C3
    style A fill:#e8f0fe
    style B2 fill:#fde8e8
    style C3 fill:#e8fde8

这两大块其实对应着两种处理敏感超参数的哲学,老师会在后面反复回到这个对比:

编者拓展|为什么要区分"拟合缩放律"与"重新参数化"? 想象你要在 10 个不同规模的模型上都找到最优学习率。 - 拟合路线:你在小模型上做一系列实验,拟合出"最优学习率 = f(规模)"的公式,然后外推到大模型。风险在于外推可能失效。 - 重参数化路线(μP):你改变初始化和每层学习率的缩放方式,使得"最优学习率"这个概念在不同规模下是同一个数。这样你只需在最小的模型上调好一次。 两者不是互斥的,而是解决同一问题的两条技术路线。本讲的核心张力就在此展开。


二、MiniCPM:用 μP 让超参数"不随规模漂移"

(参考时间: 00:03–00:16)

MiniCPM 是 2024 年由产业界与学术界合作、在中国开源社区中孵化出的一个高性能小语言模型。在这篇论文出现时,它在 10–20 亿参数这一档基本是当时的最优水平。如今 Gemma 等 2B/3B 模型性能更高,但 MiniCPM 在当时(2024 年标准下)是有竞争力的、训练良好的模型。

老师坦言自己很喜欢这篇论文,因为它"第一版出来时非常新鲜、非常前沿"。即便到了 2026 年,MiniCPM 团队做的很多事情依然很有信息量。原因在于:那些经典缩放技巧——怎么设置学习率、怎么做 Chinchilla——如今已经被大家视为理所当然,以至于新论文里不再详细写。所以回头读这些稍早的论文反而能补上这些"常识"。

训练目标与"缩放阶梯"

MiniCPM 的训练策略核心是:不要蛮力地训几百个 1.5B 模型,而是先训练一批小得多的模型,构造一条"缩放阶梯"(scaling ladder),把超参数一次性调准,再外推到目标规模。具体来说:

2.1 为什么要用 μP 初始化?

老师反复强调一个贯穿全讲的观点:初始化极其重要。

讲师核心观点:初始化之所以重要,是因为它能让你把某些超参数对规模的依赖降低。

MiniCPM 用的是一种特殊初始化,叫做 μP(更准确地说是 μP 参数化,Maximal Update Parameterization)。它的全部意义就是保证一件事:

让最优学习率在规模放大或缩小时保持不变。

老师两讲前曾简短提过 μP,这里给出第一个真正的实例。MiniCPM 论文列出了一组非标准的操作:

这些具体做法是怎么推导出来的,老师留到本讲后半部分(μP 理论)再讲。这里只需记住一个直觉:通过改变初始化和学习率的设置方式,让学习率在不同规模下更稳定。

📷 (讲师展示 μP 学习率扫掠图)

μP 在不同规模下最优学习率几乎重合的扫掠图

📷 μP 在不同规模下最优学习率几乎重合的扫掠图
回到原视频 (00:07:30)

它到底管用吗? 在 MiniCPM 的实验中答案是很干净的 "是"。他们在一系列模型规模上扫掠学习率(每个颜色/线条代表一个模型规模),结果发现:

这是一个 μP 的成功案例。如果能做到这一点,你基本上就免除了调学习率的需要。

编者拓展|μP 与"逐参数学习率" 标准训练里,我们通常给整个网络一个全局学习率。μP 的思想更进一步:不同层、甚至不同形状的权重,应该有不同的初始化方差和学习率,而且这些缩放方式要写成 fan-in / fan-out 的显式函数。这样当网络宽度变大时,前向传播的激活尺度、反向传播的更新尺度都能保持稳定,最优全局学习率才不会漂移。后面第七节会给出这个缩放因子的推导。

2.2 最优批量大小也服从幂律

(参考时间: 00:08–00:10)

即便你用 μP 把学习率固定住了,最优批量大小仍然不是常数。它随数据量和模型规模变化。MiniCPM 的做法是:

结果是:最优批量大小相对目标损失呈幂律结构。这与 Kaplan 论文里关于"临界批量大小(critical batch size)"的分析是一致的——损失越低,批量大小应该越大。

📷 (讲师展示最优批量大小随数据量的幂律图)

最优批量大小相对目标损失的幂律关系

📷 最优批量大小相对目标损失的幂律关系
回到原视频 (00:08:30)

这样一来,只要给定一个损失目标(可以从缩放定律反推出来),你就能精确地设置最优(临界)批量大小。

讲师强调:批量大小和学习率的缩放,这两个会反复出现。它们可以说是做缩放定律时最重要、最敏感的两个参数。

2.3 WSD 学习率调度:让"续训"变得廉价

(参考时间: 00:10–00:16)

这是 MiniCPM 论文中老师认为最值得学的一点,也是他认为每个做模型的人都该知道的常识。

问题从哪来? 要做 Chinchilla 分析,需要训练许多不同规模的模型(例如做等算力 isoflops 分析:固定 FLOPS 预算,改变 token 数与模型规模的权衡)。这意味着要不断增加训练数据量。但每个训练运行都有自己的学习率调度——而大家常用的 cosine 学习率要求你在训练开始前就知道总预算(否则衰变曲线画不出来)。

于是产生一个令人恼火的后果:

如果你想训一个 800 万序列的模型,你不能从 400 万序列的模型那里"接着训",因为两者的学习率调度根本不同,你必须从头重训。这在某种意义上是二次成本——每次加数据都要重跑一遍。

解法:WSD(Warm-up–Stable–Decay)学习率,形状是一个大致的学习率"梯形":

graph LR
    W["① Warm-up<br/>固定步数(与训练时长无关)"] --> S["② Stable<br/>保持常数学习率<br/>(占总时长绝大部分)"]
    S --> D["③ Decay<br/>快速衰减到约峰值的 10%<br/>(占总时长 10–20%)"]
    style W fill:#e8f0fe
    style S fill:#e8fde8
    style D fill:#fde8e8

为什么这样设计? 因为现在你可以在稳定期的任意一点重启一次训练。如果想把一个运行"续训得更久",只需回滚到最后一个稳定阶段的检查点,继续用稳定学习率往前跑,最后再重新衰减到零。

这是一个在很多地方都被广泛使用的技巧。

📷 (讲师展示 WSD 与 cosine 的性能对比曲线)

WSD 与调好的 cosine 学习率曲线性能对比

📷 WSD 与调好的 cosine 学习率曲线性能对比
回到原视频 (00:12:30)

性能对比:老师提到 ETH 的 Martin Jaggi 等人做过一次相当广泛的 WSD 研究,很多论文也显示了类似结论。对比图里:

经验结论:很多训练者会说 cosine 在许多情况下略好一点,但 WSD 在另一些情况下基本一样好,是一个非常通用的默认学习率,而且不必为了续训而反复重跑。

讲师感叹:学习率衰减的影响之大令人印象深刻。如果此前没玩过,会觉得它"不可思议地重要"——正是这段 decay 把训练的最后一段"退火"掉了。

有了 WSD,Chinchilla 分析就变得很容易:你只需跑一次长训练,然后回滚检查点、反复 decay,就能得到沿数据维度的扫掠;再在模型维度上扫掠,就可以做 isoflops 或任何你想要的分析。

编者说明:MiniCPM 团队选择复刻 Chinchilla 的"方法一"和"方法三",老师坦言这两种方法在 Chinchilla 系列里是最不可靠的。不过他们得到的缩放曲线看起来仍然不错:方法一得到大致线性的下包络;方法三在算力—非 embedding 参数权衡上大多平滑。他们也得到了与 Chinchilla 明显不同的指数,并据此声称需要比 Chinchilla 多得多的 token。老师对此持保留态度——"很难说这是真的,还是他们的 Chinchilla 拟合本身有点怪"。

MiniCPM 小结(老师自己给的两点):

  1. μP 是有用的技巧,用来稳定"学习率如何随规模变化"。
  2. WSD 学习率是要记住的常识——非常常用,人人都该知道。

💬 课堂问答:post-training 会改变什么?

(参考时间: 00:29–00:30)

一位同学问:既然 post-training(后训练)如今已成为提升质量的标准化流程,那它会不会改变这套缩放分析?

老师回答:这仍然是一个大开放问题。目前没有好的方法把 post-training 完整纳入缩放定律,因为 post-training 有时会从根本上改变你应该做什么样的预训练。最接近的工作,是有人试图理解预训练中的覆盖度 / 多样性(coverage / diversity),以预测 post-training 会发生什么,但这还很稚嫩。没有好答案。


三、DeepSeek:直接拟合超参数的缩放律

(参考时间: 00:16–00:22)

接下来是 DeepSeek 最早的那篇论文(在 MoE、R1 等之前)。老师对它评价很高:

讲师评价:即使在最早的 DeepSeek 论文里,也能看出这是一群非常严肃的人。DeepSeek LLM 至今仍是开放世界中最精心执行的缩放分析之一,实验品味极好。在 R1 之前,就已经看得出"这些人要去很远的地方"。

DeepSeek 采取的策略与 MiniCPM 截然不同:

其逻辑是:我们知道学习率和批量大小确实会随规模变化,但只要它们变化的可预测性像缩放律一样,那就万事大吉——不必过分担心。

具体做法:在多个不同规模上做大规模网格搜索(grid search),找到最优点。

📷 (讲师展示 DeepSeek 的网格搜索与缩放拟合图)

DeepSeek 在不同规模下网格搜索最优点并拟合缩放律

📷 DeepSeek 在不同规模下网格搜索最优点并拟合缩放律
回到原视频 (00:17:00)

老师的两点点评:

  1. 在更高 FLOPS 处,他们选用的批量大小更大、学习率更低。
  2. 批量大小的拟合看起来相当合理,确实像一条直线;但学习率的拟合"不算我这辈子见过最好的线性拟合"——这正是"用 grid search 拟合学习率"的一大缺点:除非你的网格恰好落在正确的位置,否则量化误差很大,你会得到一条看起来任意的直线。

讲师总结:这是处理敏感超参数的另一种哲学——你可以试图稳定它(μP),也可以直接给它拟合缩放律,然后照着缩放律走。DeepSeek 代表的是后者("拟合缩放律"路线)。

DeepSeek 也做了 Chinchilla 复刻(2024 年是"每个开放模型构建者都复刻整套缩放定律栈"的时代)。它同样遵循了 WSD 风格的学习率,只是有个奇怪的小变体——做了两次 decay 阶段而不是一次。老师坦言不清楚为何这么做,而且它后来也没流行起来。重点在于:

WSD 是一种有效的方法,你可以用它来复刻 Chinchilla。

由于 DeepSeek 选择了 isoflops 路线,它的缩放曲线比 MiniCPM 干净得多:在固定 FLOPS 区间上得到清晰的扫掠,并且得到漂亮而干净的 Chinchilla 式权衡。

📷 (讲师展示 DeepSeek 的最终缩放预测:灰点是缩放律拟合,星星是实际训练的大模型)

DeepSeek 用缩放律外推预测实际训练模型(星星)的性能

📷 DeepSeek 用缩放律外推预测实际训练模型(星星)的性能
回到原视频 (00:21:30)

最终"punchline":训练一批小的、精挑的模型 → 画出幂律 → 外推 → 得到非常接近真实的预测。图中两颗星星是实际训练的大模型,灰点是缩放律拟合。预测"可以更好,但已经相当不错"。这证明了 Chinchilla 定律确实被其他人在较大算力范围内复现了——该分析总体上是靠得住的。

编者说明:老师表达了一丝遗憾——这类"用缩放律预测实际大模型"的图,如今在开源发布论文里正变得越来越罕见。这引出了后面的核心观察:核心缩放机制已经"人人都会",所以很多公司不再详细展示。


四、更多开放模型的缩放实践

(参考时间: 00:22–00:29)

老师在这一节快速过了一遍多个开放模型的缩放工作,给出一个趋势全景。核心观点:

很多论文如今不再详细写缩放细节,因为核心机制(Chinchilla、学习率缩放)已经被普遍理解,展示它们已经不再有额外价值。

4.1 Qwen 2.5 与 Qwen 3

(参考时间: 00:22–00:23)

Qwen 2.5 的说法是:需要调优最优超参数(批量大小、学习率),于是做一批缩放实验找出最优点,拟合缩放律,预测最优点——而且能对 MoE 也这么做。这与 DeepSeek 的分析本质相同。

到了 Qwen 3,他们说:"我们在 Qwen 2.5 里已经搞清楚该怎么做,现在我们做一模一样的事。" 这说明这套流程已经成为非常标准的配方,用来锁定最优学习率和批量大小。

4.2 Chinchilla 2:MoE 缩放律

(参考时间: 00:23–00:24)

Chinchilla 2 是本讲涉及的最新论文之一,聚焦 MoE(混合专家)缩放律。问题是:如果全面转向 MoE,你需要知道训练的"激活参数"数量是否恰当。

做法:改变 FLOPS,看损失,并对不同稀疏度(sparsity)水平重复,从而量化"稀疏度对损失是利是害"。结论是:

稀疏度越高,给定 FLOPS 下的验证损失越好——这不令人意外。但能够定量知道"稀疏度 ↔ 损失"的关系,就能让团队对"该放多少稀疏度进模型"做出更理性的决策。

他们据此选择稀疏度 48,因为在那一点上缩放损失已进入收益递减。

编者拓展|稀疏度(sparsity)与 MoE 在 MoE 中,每一层有 $N$ 个"专家",但每个 token 只被路由到其中 $k$ 个专家。总参数很大,但激活参数(active parameters)只有被选中的那些。稀疏度可以粗略理解为"总参数 / 激活参数"之比。稀疏度越高,同样算力下能塞进更多参数(知识容量更大),但路由和训练也更难。Chinchilla 2 的价值就在于:把"该用多稀疏"这个架构决策,建立在可量化的缩放规律之上。

4.3 Hunyuan(混元)

(参考时间: 00:25)

Hunyuan 也是一个几年前的开放 MoE,做了非常类似的事:一旦转向 MoE,就必须做 MoE 缩放律,搞清楚"激活参数数量"或"稀疏度"如何改变训练损失。他们最终得到大约 每个激活参数 96 个数据点 的比例。在 Hunyuan 的案例中,他们固定了稀疏度,所以稀疏度不是被搜索的变量。

4.4 Llama 3

(参考时间: 00:25–00:27)

Llama 3 也有一些不错的缩放律,但并不是特别有用的那种。它做等算力(iso-flop)缩放,得到的 token / 模型比例略有不同但大致相似。

Llama 3 在缩放方面最有意思的是右侧那张图:

📷 (讲师展示 Llama 3 的缩放图:左panel是对数损失随算力下降,右panel是下游准确率随对数损失上升的 S 型映射)

Llama 3:从对数损失到下游准确率的 S 型映射

📷 Llama 3:从对数损失到下游准确率的 S 型映射
回到原视频 (00:26:00)

老师说:你能看到点与曲线之间存在系统性偏差,所以不敢说这条曲线就是唯一真理;但它确实与"从损失到准确率的 S 型映射"一致。这一点非常有用,因为我们此前谈的只有对数损失,而在很多情况下,对数损失与下游准确率之间存在着紧密耦合。

4.5 MiniMax 01

(参考时间: 00:27–00:28)

MiniMax 01(去年)有一组漂亮的缩放实验,做的正是老师两讲前说过的缩放定律的一个实用价值:架构变体比较。他们想搞清楚:

这三者在放大时会怎样?会不会某一种在大规模下明显变差?

他们复刻了 Kaplan 式的图:随 FLOPS 增加,学习曲线如何变化;不同算力下所需的参数量是否不同。

📷 (讲师展示 MiniMax 的架构缩放对比图)

MiniMax 对 hybrid / lightning / softmax 三种注意力架构的缩放对比

📷 MiniMax 对 hybrid / lightning / softmax 三种注意力架构的缩放对比
回到原视频 (00:27:50)

结论:大部分情况下三者相当,所需模型规模也相似。这组图被用来论证他们在实际部署系统里采用 hybrid 架构是合理的。

讲师点评:这正是"基于缩放定律做决策"的典型例子——你用它而不是用直觉来选架构。

4.6 第一部分的收束

老师总结第一部分的趋势:

回到之前那句:现在很多公司写得不那么详细了,因为核心缩放机制(Chinchilla、学习率缩放)已经人人皆知,展示它们"不再有额外价值"了。


五、学习率、批量大小与优化器的缩放

(参考时间: 00:30–00:39)

进入第二部分。老师指出,剩下的两部分干净地对应到两个实例:

先讲如何正确地缩放学习率(DeepSeek 路线)。它将分为超参数部分和优化器选择部分。老师主要借鉴了 StepFun(阶跃星辰) 一篇相当新的预印本。

讲师评价:我不认为存在一篇真正可靠、鲁棒的关于超参数(尤其是学习率)的研究,但这一篇可能接近了。StepFun 的人训练并发布了可信的大模型,而且在这项缩放研究里烧掉了大量算力去网格搜索超参数空间。我会展示一些关于"学习率、批量大小如何影响下游损失"的有趣经验现象。

5.1 各家缩放公式"连输入变量都不一致"

(参考时间: 00:31–00:33)

很多人用不同方式把学习率和批量大小表达为算力的函数。StepFun 那篇论文有一张很好的表,捕捉了这些差异。老师点出几个关键观察:

讲师的关键观察:这些公式连输入变量都不一致!OpenAI 用的是终端损失,StepFun 用的是数据量。这说明人们对"到底哪些变量该影响这些超参数"都没有共识。

因此老师提醒:不要把这张表的最后一行当作福音。很多结论是脆弱的(brittle),但这些实验和现象本身很值得学习。

5.2 高分辨率网格搜索:超参数空间是光滑的

(参考时间: 00:33–00:35)

StepFun 的设计与 DeepSeek 很像:训练大量模型,把学习率空间和批量大小空间都网格化,并在多个模型规模和数据集规模上重复,以求在小模型上穷尽超参数空间、锁定最优点。

📷 (讲师展示 StepFun 在 1B 参数 / 100B token 的超参数等高线图与损失曲面)

StepFun 的超参数损失曲面:在 batch size × learning rate 平面上光滑且近似凸

📷 StepFun 的超参数损失曲面:在 batch size × learning rate 平面上光滑且近似凸
回到原视频 (00:34:00)

在 1B 参数、100B token 的切片上,你能看到右侧的损失曲面随"批量大小 × 学习率"如何变化(固定数据量)。每个切片都相当光滑、近乎凸。老师强调这意味着:

编者拓展|为什么"光滑性"这么重要? 如果超参数 → 损失的映射是光滑且近似凸的,那么:(1) 少量网格点就能可靠地定位极小值;(2) 邻近网格点之间可以插值;(3) 拟合出的缩放律更稳定。反之,如果曲面充满尖刺,网格搜索就变成"碰运气",缩放律也失去意义。光滑性是整个"缩放定律工程"能成立的隐含前提。

5.3 关键发现:最优批量大小只依赖数据量

(参考时间: 00:35–00:36)

老师认为这篇论文最重要的一个结论是:

最优批量大小,似乎只依赖于你训练用的总数据量。 不同模型规模的彩色点,大致落在同一条趋势线上——而且这是在双对数坐标下,所以你应期待某种幂律。

📷 (讲师展示:右图最优批量大小只随数据量变化;左图最优学习率随模型规模与数据量的关系更复杂)

最优批量大小仅依赖数据量;最优学习率随模型规模下降、随数据量上升

📷 最优批量大小仅依赖数据量;最优学习率随模型规模下降、随数据量上升
回到原视频 (00:35:30)

对照来看:

老师指出:这个"学习率随数据量上升"的结论可能有点脆弱,因为有别的论文主张数据量 $D$ 的依赖方向应该反过来。但至少在这个实验里,趋势相当清晰。

5.4 学习率其实相当鲁棒;它也能迁移到 MoE

(参考时间: 00:36–00:37)

📷 (讲师回顾总结那张"简单缩放律公式"的幻灯片)

最终得到的一组简单缩放律:批量大小 ~ √D,学习率随批量/数据上升、随模型规模下降

📷 最终得到的一组简单缩放律:批量大小 ~ √D,学习率随批量/数据上升、随模型规模下降
回到原视频 (00:38:30)

最终你得到一组简单的缩放律:

为什么这不算太疯狂? 老师解释:这些实验常常假设 Chinchilla 式缩放,此时 $N$(模型规模)和 $D$(数据量)都随算力变化,而且随算力上升,学习率应该下降。所以最终你会得到类似 DeepSeek 定律的东西——学习率随算力下降、批量大小随算力上升,只是指数不同。

编者拓展|用 Chinchilla 把两条趋势"抵消"起来看 记最优学习率 $\eta^*(N, D)$,其中 $N$ 随规模上升、$D$ 随规模上升。StepFun 的观察是 $\eta^*$ 随 $D$ 上升、随 $N$ 下降:

$$\eta^* \propto \frac{D^{\,a}}{N^{\,b}} \quad (a,b>0)$$

而在 Chinchilla 缩放下,$N$ 和 $D$ 都由算力 $C$ 驱动($N \propto C^{0.5}, D \propto C^{0.5}$)。于是把两者代入,$\eta^*$ 对算力的净依赖就是一个幂律——正是 DeepSeek 定律所描述的"学习率随算力下降"。

(参考时间: 00:40–00:41)

同学问:我们是不是应该直接套用已有的缩放律,而不是自己跑 grid search?

老师回答(要点):

老师金句:缩放定律有一种非常科学的观感(拟合直线、外推),但归根结底,缩放定律的一大半仍然是"vibes"(直觉)。它就是在问:"我真的相信 StepFun 那篇综述的实验设置与我的足够接近、因而可以迁移吗?"——我们根本无从知晓,总会有微小差异。


六、优化器:从 Adam 到 Muon 的规模化故事

(参考时间: 00:39–00:57)

老师说他没能在架构那一讲里讲优化器(那讲已经太满),但"如果我不讲优化器,对你们是失职"。优化器是规模敏感的,所以放在这里讲正合适。

6.1 小规模很香:Muon 在 nanoGPT speedrun 上的崛起

(参考时间: 00:41–00:43)

故事从一个对比图开始:

📷 (讲师展示 nanoGPT speedrun 上 Muon 相对 Adam 的显著加速)

nanoGPT speedrun:Muon(紫)相对 Adam(蓝)的显著增益

📷 nanoGPT speedrun:Muon(紫)相对 Adam(蓝)的显著增益
回到原视频 (00:42:00)

但是——问题随之而来:

讲师提出的核心问题:"这东西在大规模上真的好吗?"

于是有人去做了缩放研究,发现增益可能没那么大。老师指出,这是一个极其重要、又极其棘手的研究现实:

我们有一个小规模实验,有一个确定是规模敏感的东西(优化器),我们在小规模上看到巨大增益——那么大规模怎么办?

老师说不打算给一个"确凿的处方",而是想通过这个故事提供一种叙事,让我们感受"能做什么、不能确知什么"。

6.2 优雅的缩放研究为什么很难:两个轴

(参考时间: 00:43–00:47)

老师花几页讲 Kaiyue、Tengyu、Percy、David 等人那篇"优雅地做大规模优化器对比"的论文。从中可以学到很多(不只是缩放,还有标准深度学习的东西)。

最基本的坑:不同模型超参数不同,甚至缩放指数也不同。

📷 (讲师展示优化器对比中的"调参陷阱":调好的 Adam 会被误判为差,而未调好的新算法会被误判为好)

优化器对比中的调参陷阱:超参数没调好会得出错误结论

📷 优化器对比中的调参陷阱:超参数没调好会得出错误结论
回到原视频 (00:45:00)

更相关的是"规模依赖",老师认为有两个轴永远重要:

  1. 算力轴(compute):如果你固定"模型规模 / 数据"之比,那么"模型规模"轴本质上就是算力轴。[x 轴]
  2. Chinchilla 比(Chinchilla ratio):即数据量与模型参数量之比。

第二个轴是大混淆因子(confounder)。有些算法在过参数化(模型远大于数据)的情形下表现好——也许因为它引入了某种隐式正则化,或数据效率低但算力占优。另一些算法则在大 Chinchilla 比(每参数数据很多)的情形下表现好——因为可以更高效地把知识塞进参数。即便是卫生做得很好的缩放论文,也常常忽视、或根本没有算力去研究这个 token/参数比。

在这篇论文的案例里,Chinchilla 比不是问题:不同 Chinchilla 比下各条线的比值是一致的。但这并不总是成立,所以你始终要对这两个缩放因子保持警惕。

6.3 建立缩放律有多难:一条"漂亮的定律"也会突然掀桌

(参考时间: 00:47–00:49)

老师引用 Will Held(在 Percy 的开源语言模型训练项目 Moraine 中工作)的资料。他们想证明一套特定的超参数(Cautious Adam C 这个 Adam 变体、平方根批量大小缩放,等等)——这甚至不是新算法。

📷 (讲师展示 Moraine 的实验:一条对数坐标下看起来完美的缩放律,在 10²⁰ 量级附近突然"炸掉")

Moraine 的失败实验:漂亮的缩放律在更高算力处突然崩溃

📷 Moraine 的失败实验:漂亮的缩放律在更高算力处突然崩溃
回到原视频 (00:47:30)

关键教训:即便是跨越多个数量级都很好看的缩放趋势,也可能突然偏离线性、然后立刻崩掉。他们的修法是:选择更谨慎的 μP 风格参数化、更换优化器,从而在更宽的数量级上获得更好的缩放。

讲师总结:当我说"你们都应该做缩放实验、把学习率都缩一缩",那并不容易。很多时候你会得到这种图,一切都糟透了,你也不知道哪里出了问题。

6.4 Muon 算法:在"谱范数"意义上做归一化

(参考时间: 00:49–00:57)

老师认为自己不得不更详细地讲 Muon,因为它开始被整合进大模型的训练运行——这几乎是这门课新研究课题的收录标准:"它有没有进过大训练?" Muon 现在达标了。

起点:梯度的"一视同仁"是不合理的。

在普通梯度下降里(暂时忽略第 4/5 行),流程大致是标准的基于动量的优化器:

但老师指出一个"跳出框架"的想法:

梯度假设所有参数都相同,但语言模型(甚至任何深度网络)里的参数并不是相同的。 有些是向量参数(比如 RMS norm 的增益),有些是矩阵参数(注意力、MLP 的权重)。矩阵参数大概不等于向量参数。

于是 Muon 的做法是:对矩阵参数查看其谱(spectrum)——矩阵有特征值、奇异值,你可以对奇异值动手。

算法(用自然语言 + 伪代码):

1. g ← 计算梯度
2. B_t ← μ·B_{t-1} + g            # 动量步
3. O_t ← NewtonSchulz5(B_t)       # 对动量更新做正交化
4. W ← W - η·O_t                  # 用正交化后的更新更新矩阵参数

其中 Newton–Schulz 5 是一个迭代算法,作用是把 $B_t$ 正交化。写成 SVD 形式就是:

设 $B_t = U S V^\top$,把所有奇异值设为 1(大的缩小到 1,小的放大到 1),得到更新 $U V^\top$。

$$O_t = U V^\top, \quad \text{其中 } B_t = U S V^\top,\ S \to I$$

直觉对照:

关键点:这个操作只对矩阵有意义——你只能对矩阵值 $B_t$ 定义奇异值分解。所以 Muon 是一个矩阵优化器,作用在矩阵参数上;向量参数(如 RMS norm 的增益)仍用 AdamW,因为它们与 Newton–Schulz 项没有交互。

编者拓展|Newton–Schulz 迭代为什么重要? 直接对一个大矩阵做 SVD 在 GPU 上很慢。Newton–Schulz 迭代是一个只用矩阵乘法、固定迭代次数的算法,它能近似正交化一个矩阵。所以 Muon 有三个巧妙之处:(1) 把矩阵当作独立对象处理;(2) 正交化的思想;(3) 用 Newton–Schulz 实现带来的系统效率。老师强调,正是因为这套工程实现,Muon 才实用。

6.5 Muon 故事的"封闭":从小规模到大模型

(参考时间: 00:52–00:55)

老师复盘了这个故事:

  1. Muon 最初在 nanoGPT speedrun 上被发现,非常强大,你可能以为它会随规模增益。
  2. 但缩放研究指出:Muon 的增益随规模增大而递减——老师当时以为"故事到此为止了,没人会花大算力把它 scale 上去"。
  3. 然而 Kimi K2 出现了——整个模型完全用 Muon 训练,加了一些防止 Muon 炸掉的"铃铛哨子"(他们发现了一堆不稳定问题)。Kimi K2 是极其出色的模型,训练曲线看起来合理。

结论:Muon 在规模上能用。至于"是否比 Adam 更好",Kimi K2 没有做消融实验,所以在那个规模上我们不知道——但它肯定是一个有效、可行的方案。

这个故事的意义:

很难知道一个东西在大规模上是否有效。非常非常难。 但我们目前做科学的方式,仍然是"做小规模实验 → 迁移到大模型"。

所以,你仍然应该尊重 nanoGPT speedrun 这类工作——我们从中学到很多、得到好想法,它们最终会走进大模型。至于人们是否会在大规模上继续做消融、真正敲定"Muon 是否优于 AdamW at scale",那是有趣但尚无答案的问题。

💬 两块课堂问答

(参考时间: 00:55–00:56)

Q1:SVD 在 GPU 上快吗? A:SVD 在 GPU 上不快。但 Muon 不做 SVD,它做的是 Newton–Schulz——一个只用矩阵乘法、有限迭代、近似正交化的算法。

Q2:Muon 的超参数是什么? A:和 AdamW 的不一样。老师提到 Jeremy Bernstein 等人在做 μP 风格的工作,认为"每一层都该有自己的学习率",其终极形态是"transformer 里的每个参数都不同,为什么不给每个参数配一个不同的优化器?"——但那意味着每个都要调超参数,老师明确说"我不想干这个,但那也许是优化的未来"。

Q3(追问):大家只调学习率和批量大小,那它们会不会和其他超参数交互? A:会担心超参数交互,但它们呈指数级增长,你不可能网格化整个空间。所以通常的做法是:网格化最重要、最敏感的东西(学习率最重要),然后再对权重衰减之类做单变量扫掠,以保证在其局部是最优的。


七、μP 的理论基础

(参考时间: 00:57–01:12)

本讲最后一大块是 μP。老师坦言:

μP 是一个有点神秘的对象。 即便已经有许多论文、甚至许多实现,我也不认为它们对底层数学或实现都意见一致。但存在一组共享的核心思想,而且它总体上确实有效。

老师将给出他对这套"程序"的解读。

7.1 目标:让最优学习率"不随宽度漂移"

(参考时间: 00:57)

目标非常清晰,就是一张图所表达的东西:

📷 (讲师展示 μP 的目标图:普通参数化下最优学习率随宽度偏移;μP 下最优学习率保持不变)

μP 的目标:让最优学习率与宽度无关

📷 μP 的目标:让最优学习率与宽度无关
回到原视频 (00:57:30)

为达到这个目标,老师愿意动用哪些旋钮?

  1. 逐层地改初始化;
  2. 逐参数地改学习率;
  3. 有时还愿意根据模型规模缩放残差连接。

它实际效果如何? 有几篇论文做过相当广泛的研究,其中包括 Cerebras(一家芯片公司,也有一支语言模型训练团队,由缩放定律论文作者 Hestness 领导)。他们做了 Cerebras GPT(0.1B–13B),按常规 Chinchilla 配方训练,同时加入一个 μP 变体以更有效地调超参数。结论是:

使用 μP 参数化时,缩放律拟合更稳定,对实际模型的预测几乎分毫不差;而非 μP 模型的损失预测则波动大得多。所以他们认为 μP 可能是个非常好的想法。

老师补充:这已在规模上得到验证——MiniCPM 等很多团队都用 μP 变体训练过模型。

7.2 μP 的两个"不变量"

(参考时间: 01:00–01:03)

μP 的核心建立在两条断言之上,这是一种非常物理学家式的思考。假设只改宽度:

A1(初始化不变量):在初始化时,激活值的尺度应大致保持不变(不随网络规模爆炸或塌缩)。

A2(特征学习不变量):走一步梯度之后,激活值的变化应是 $O(1)$——即每个激活的变化量应是一个不随宽度变化的固定函数。这叫 feature learning(特征学习)。

编者拓展|A2 与"神经正切核"的对立 老师特意提醒学过理论的听众:神经正切核(Neural Tangent Kernel, NTK)的行为恰恰相反——NTK 的激活变化会随宽度趋于零(网络在无限宽下不学习特征,等价于一个固定核)。而 μP 想要的是相反的:即使网络无限宽,网络也要真正改变、学习特征。所以 A2 要求"变化量是 $O(1)$",而不是趋于零。

注意激活的"单元素"与"向量范数"的换算:若每个激活大致是 $O(1)$,那么整条激活向量的范数应是 $\sqrt{n}$($n$ 是该层隐藏单元数)。

7.3 从 A1 推导初始化("物理学家数学")

(参考时间: 01:03–01:06)

目标:让初始化时的激活尺度大致为单位(即范数 $\approx \sqrt{n}$)。

考虑一个简单深度线性网络,把所有权重初始化为 $N(0,\sigma^2)$ 的缩放高斯。问题是:这个矩阵的谱范数(operator norm)大概是多少?用随机高斯矩阵的矩阵集中(matrix concentration)结果可写出:

$$\|W\|_{op} \approx \sigma\sqrt{n_{\text{out}}} \quad (\text{在某个 regime 下})$$

在扇出(fan-out)不显著大于扇入(fan-in)的 regime 下,一层的输出近似等于

$$\|h^L\| \approx \|W^L\| \cdot \|h^{L-1}\|$$

(这总是一个上界,但在某些高维 regime 下近似成立。)

归纳推理:

$$\sigma\sqrt{n_{\text{out}}}\cdot\sqrt{n_{L-1}} = \sqrt{n_{\text{out}}} \implies \sigma = \frac{1}{\sqrt{n_{L-1}}}$$

于是你得到:只要这样选 $\sigma$,每一层的激活尺度都大致等于 $\sqrt{\text{该层隐藏单元数}}$。这里用了一些"近似等于"的假设,但总体上站得住脚。条件 A1 是相当简单的。

编者说明:老师在推导中期回了一次幻灯片、又往前推,节奏上有来回。上面的算式是把他的结论按顺序重排后的结果;重点不是背公式,而是体会"先断言不变量,再倒解出参数缩放"这种思路。

7.4 从 A2 推导学习率(这里开始"长毛刺")

(参考时间: 01:06–01:10)

A2 更棘手。老师只考虑:一个 batch 里只有一个样本、SGD、线性神经网络(deep linear network)。

第一步:单层的权重变化是秩一(rank-1)的。

$$\Delta W^L = -\eta \cdot (\text{梯度的外积})$$

因为前向是秩一乘法,反向也会是秩一外积。

第二步:展开激活的变化。

对 $H = W h^{L-1}$ 求微分,展开后得到三项:一项来自上一层激活的变化(直接项),另一些是因为权重本身变化(交叉项)。

第三步:要求三项量级一致。

老师要求:这三项量级相同,且该量级应为 $\sqrt{n_L}$(回到 A2——一步梯度后激活变化应为 $O(1)$,而向量范数是 $\sqrt{n}$)。

第四步:从中解出所需的学习率。

推导的关键是追踪每个项的量级,并假设损失更新被缩放到单位量级(老师说这是最不可接受的一条假设——"我们假设模型在随规模增长时确实取得可观的非平凡进展,而且大致相似")。

具体地:

$$\frac{\sqrt{n_L}}{\sqrt{n_{L-1}}} \times \frac{\sqrt{n_{L-1}}}{\sqrt{n_L}} \times \eta$$

整理后得到所需 fan-out / fan-in 之比:

$$\boxed{\ \eta_L \propto \frac{n_{\text{out}}}{n_{\text{in}}}\ }$$

对 Adam 的说明:由于 Adam 的一些变化,你会得到

$$\boxed{\ \eta_L \propto \frac{1}{n_{\text{in}}}\ }$$

即 fan-in 越大的层,学习率越小。

编者说明:老师说这不是严谨数学,而是"物理学家式的数学"——追踪所有项的量级,在给定假设下说"这些量应该有多大",其中还假设了无相消(no cancellation)等"草率"的地方。这是 μP 思想的源头:用假设推出对超参数的约束,而这些约束恰好给出超参数的缩放律。

7.5 μP 的最终缩放规则

(参考时间: 01:10–01:12)

把所有推导汇总,μP 得到的是一组简单的缩放规则:

初始化(蓝色框):

$$\sigma = \frac{1}{\sqrt{n_{L-1}}} \cdot \frac{1}{\sqrt{n_{\text{out}}/n_{\text{in}}}} = \frac{1}{\sqrt{n_{L-1}}}\sqrt{\frac{n_{\text{in}}}{n_{\text{out}}}}$$

学习率: - 普通做法:学习率不随模型规模变化(常数); - μP 做法:学习率设为 fan-out / fan-in 之比。 - 对 Adam:去掉那个 $1/n_L$ 项,得到 $1/n_{\text{in}}$ 作为逐层学习率——fan-in 大的层得到更小的学习率。这让你拥有层自适应的学习率,非常有意思。

讲师高光总结:μP 的意义不仅在于"有用",更在于它给出算法的方式本身很有意思——取网络的缩放极限 → 断言不变量 → 加额外假设 → 倒解出对超参数的约束 → 得到超参数的缩放极限。这是一种与你在 CS/ML 训练里习惯的思维非常不同的通用原则,可以用来设计新的算法或新的超参数缩放。


八、μP 的实证检验与总结:缩放是一门"半科学"

(参考时间: 01:12–01:16)

老师用几个实证结果收尾。

8.1 压力测试:哪些东西会破坏 μP?

(参考时间: 01:12–01:15)

有一篇独立研究者的论文,从多个角度压力测试 μP。μP 可以看作一套调超参数的程序:Adam 在不同网络组件上(embedding 参数、注意力参数、输入/输出 MLP、softmax 线性层)会有不同的缩放规律,无论是 μP 还是非 μP。

这篇论文复现了 μP 的许多结果(在不同规模的语言模型上),并不出意外地得到 MiniCPM 等工作的头条结论:

但现实里有很多 μP 处理不了的东西:

graph TD
    A["μP 能处理的范围"] --> B["✅ 大部分实际组件<br/>Swiglu、初始化变体、RMSNorm<br/>(大多能配合 μP 工作)"]
    A --> C["❌ 会破坏 μP 的东西"]
    C --> C1["学习 RMSNorm 的增益项<br/>(gain term)"]
    C --> C2["更奇怪的优化器:Lion<br/>(依赖梯度符号)"]
    C --> C3["大的解耦权重衰减<br/>(decoupled weight decay)<br/>—— 最令人担忧的失败"]
    style C1 fill:#fde8e8
    style C2 fill:#fde8e8
    style C3 fill:#ffcccc

8.2 结论:μP 有用吗?

(参考时间: 01:15–01:16)

老师收尾: - 如果你真的想稳定学习率,μP 确实相当有用。大量实验显示:普通参数化下,增大宽度会让最优学习率极其剧烈地漂移;而 μP 下不漂移。 - 它是控制"超参数漂移"(hyperparameter drift)的工具箱之一,是一个有趣的开放研究领域,尚未尘埃落定,不是"唯一正确做法"。 - μP 风格初始化这条路很有前景;直接拟合缩放律同样也很有前景。

最终总结:在野外做缩放非常棘手。

缩放定律的初次呈现让人感觉它像科学——"画这条线、做这些步骤,你就能确知大规模会发生什么"。但现实要混乱得多、未知得多。人们确实用缩放定律来选架构、选优化器、选超参数,但其中真的有"艺术"成分——你无法确知它是否永远能外推。

你能做的,是采取合理的做法去最大化成功概率:用 μP,或搜索最优学习率……这些都是控制超参数漂移的手段,但目前还没有银弹。也许明年会有某个模块说"我们解决了",但目前还没有。


附:参考与延伸阅读

编者补充

已知疑点

本着"不确定的东西不瞒着读者"的原则,逐条列出本讲重构中编者无法确证或存在歧义之处。凡涉及具体数字、姓名、公式符号的听写,均以字幕为准,可能存在偏差。

  1. 人名听写不确定。
  2. 开场提到的另一位缩放定律作者,字幕作 "oh, even Hessness",据上下文应为 Hestness(Chinchilla 论文 作者之一);但字幕拼写模糊。(参考时间: 00:01)
  3. 讲优化器故事时提到的一篇论文署名,字幕作 "Kaya"("Tengyu and Percy and David's paper"),疑为 Kaiyue Wen 等关于预训练优化器的研究;具体论文标题与作者无法从字幕确证。(参考时间: 00:43)
  4. Moraine 项目的实验者,字幕作 "Will Held",工作环境被描述为 "Percy's open-source language model training project"。人名与项目归属未能独立核实。(参考时间: 00:47)

  5. μP 初始化的最终公式存在听写歧义。 字幕对初始化的描述是"one over square root NL minus one times a component that is one over the square root fan out over fan in",编者据此写成 $\sigma = \frac{1}{\sqrt{n_{L-1}}}\sqrt{n_{\text{in}}/n_{\text{out}}}$。究竟分子分母哪个是 fan-in、哪个是 fan-out,仅凭口语无法百分百确定;请以 μP 原始论文(Greg Yang 的 tensor programs 系列)为准。(参考时间: 01:10)

  6. 学习率的"fan-out/fan-in"结论方向。 老师对 SGD 给出 $\eta_L \propto n_{\text{out}}/n_{\text{in}}$、对 Adam 给出 $\eta_L \propto 1/n_{\text{in}}$。这些比例关系与系数的确切形式在口语推导中经过快速口算,可能与论文的精确表述有出入。(参考时间: 01:09–01:11)

  7. StepFun 论文的"最优学习率随数据量上升"结论。 老师本人已指出这是可能脆弱的结论,且有其他论文主张依赖方向相反。因此书中将其标注为"可能脆弱",读者不应直接套用。(参考时间: 00:35–00:36)

  8. MiniCPM 与 Chinchilla 指数差异的解读。 老师明确表示:"很难说这是真的,还是他们的 Chinchilla 拟合本身有点怪。" 书中已如实保留这一不确定性。(参考时间: 00:14)

  9. DeepSeek 的"两次 decay"变体。 老师说"不清楚为何这么做,而且它后来也没流行起来"。书中如实转述,未做额外解释。(参考时间: 00:20)

  10. nanoGPT speedrun 的目标损失数字。 老师回忆"忘了是 3.something",字幕记为 "3.something loss"。具体数值不确定。(参考时间: 00:42)

  11. Kimi K2 是否真有"完整的 Muon 消融"。 老师明确说 Kimi K2 没有做消融,因此"在那一规模上 Muon 是否优于 Adam 未知"。书中据此保留"未知"表述,未替讲师下结论。(参考时间: 00:54)

  12. 编者对 μP 推导的"重排"。 老师在推导过程中有来回回看幻灯片、中途切换顺序;书中的推导按逻辑顺序进行了整理,可能与现场口述的顺序不完全一致,但尽量保留了其推理骨架与所有假设(包括老师自评"最不可接受"的假设)。(参考时间: 01:06–01:10)

若上述任一疑点对你有实际决策影响(例如你要据此设置学习率),请回溯原始论文,不要仅凭本书或字幕。



附录:官方幻灯片(全部)

第 1 页幻灯片 · Lecture 11

🖼️ 第 1 页幻灯片 · Lecture 11

第 2 页幻灯片 · Motivation today

🖼️ 第 2 页幻灯片 · Motivation today

第 3 页幻灯片 · Scaling in practice

🖼️ 第 3 页幻灯片 · Scaling in practice

第 4 页幻灯片 · Initialization and optimizers

🖼️ 第 4 页幻灯片 · Initialization and optimizers

第 5 页幻灯片 · Working through some detailed, public scaling recipes

🖼️ 第 5 页幻灯片 · Working through some detailed, public scaling recipes

第 6 页幻灯片 · MiniCPM

🖼️ 第 6 页幻灯片 · MiniCPM

第 7 页幻灯片 · MiniCPM

🖼️ 第 7 页幻灯片 · MiniCPM

第 8 页幻灯片 · Techique 1: muP to stabilize scaling

🖼️ 第 8 页幻灯片 · Techique 1: muP to stabilize scaling

第 9 页幻灯片 · Scaling recipe / strategy

🖼️ 第 9 页幻灯片 · Scaling recipe / strategy

第 12 页幻灯片 · Optimal batch size

🖼️ 第 12 页幻灯片 · Optimal batch size

第 13 页幻灯片 · What remains – model size vs data tradeoffs.

🖼️ 第 13 页幻灯片 · What remains – model size vs data tradeoffs.

第 15 页幻灯片 · WSD learning rates work well in miniCPM

🖼️ 第 15 页幻灯片 · WSD learning rates work well in miniCPM

第 16 页幻灯片 · Chinchilla-type analysis

🖼️ 第 16 页幻灯片 · Chinchilla-type analysis

第 17 页幻灯片 · Chinchlla method 1

🖼️ 第 17 页幻灯片 · Chinchlla method 1

第 18 页幻灯片 · Chinchilla method 3

🖼️ 第 18 页幻灯片 · Chinchilla method 3

第 19 页幻灯片 · DeepSeek

🖼️ 第 19 页幻灯片 · DeepSeek

第 21 页幻灯片 · Scaling analysis of learning rates

🖼️ 第 21 页幻灯片 · Scaling analysis of learning rates

第 22 页幻灯片 · For chinchilla analysis: WSD-style learning rate

🖼️ 第 22 页幻灯片 · For chinchilla analysis: WSD-style learning rate

第 23 页幻灯片 · Data-size tradeoff analysis: Chinchilla method 2

🖼️ 第 23 页幻灯片 · Data-size tradeoff analysis: Chinchilla method 2

第 24 页幻灯片 · Scaling predicts final model loss

🖼️ 第 24 页幻灯片 · Scaling predicts final model loss

第 25 页幻灯片 · Other models: Qwen scaling

🖼️ 第 25 页幻灯片 · Other models: Qwen scaling

第 26 页幻灯片 · Kimi K2

🖼️ 第 26 页幻灯片 · Kimi K2

第 27 页幻灯片 · Hunyuan (2024) large scaling laws

🖼️ 第 27 页幻灯片 · Hunyuan (2024) large scaling laws

第 30 页幻灯片 · Recent scaling law recipes

🖼️ 第 30 页幻灯片 · Recent scaling law recipes

第 31 页幻灯片 · Optimizer scaling

🖼️ 第 31 页幻灯片 · Optimizer scaling

第 32 页幻灯片 · StepFun scaling law study

🖼️ 第 32 页幻灯片 · StepFun scaling law study

第 33 页幻灯片 · Core question – scaling rates on LR and batch

🖼️ 第 33 页幻灯片 · Core question – scaling rates on LR and batch

第 35 页幻灯片 · Observation 1: loss over batch/LR are convex

🖼️ 第 35 页幻灯片 · Observation 1: loss over batch/LR are convex

第 37 页幻灯片 · Observation 3 (?) robustness

🖼️ 第 37 页幻灯片 · Observation 3 (?) robustness

第 39 页幻灯片 · Problem 1 – hyper tuning is often off..

🖼️ 第 39 页幻灯片 · Problem 1 – hyper tuning is often off..

第 42 页幻灯片 · A few slides on muon..

🖼️ 第 42 页幻灯片 · A few slides on muon..

第 43 页幻灯片 · Muon and scaling

🖼️ 第 43 页幻灯片 · Muon and scaling

第 45 页幻灯片 · CerebrasGPT

🖼️ 第 45 页幻灯片 · CerebrasGPT

第 46 页幻灯片 · What is muP, anyway?

🖼️ 第 46 页幻灯片 · What is muP, anyway?

第 47 页幻灯片 · Deriving muP (condition A1)

🖼️ 第 47 页幻灯片 · Deriving muP (condition A1)

第 48 页幻灯片 · Deriving muP (condition A2)

🖼️ 第 48 页幻灯片 · Deriving muP (condition A2)

第 49 页幻灯片 · Recall –the key is to pick LR such that Δ𝑊𝑙

🖼️ 第 49 页幻灯片 · Recall –the key is to pick LR such that Δ𝑊𝑙

第 50 页幻灯片 · muP mini recap..

🖼️ 第 50 页幻灯片 · muP mini recap..

第 51 页幻灯片 · Deeper dive into muP

🖼️ 第 51 页幻灯片 · Deeper dive into muP

第 52 页幻灯片 · Replicating muP

🖼️ 第 52 页幻灯片 · Replicating muP

第 53 页幻灯片 · What is muP robust to?

🖼️ 第 53 页幻灯片 · What is muP robust to?

第 54 页幻灯片 · What is muP not robust to? RMSnorm gain

🖼️ 第 54 页幻灯片 · What is muP not robust to? RMSnorm gain

第 55 页幻灯片 · What is muP not robust to? Exotic optimizers

🖼️ 第 55 页幻灯片 · What is muP not robust to? Exotic optimizers

第 56 页幻灯片 · What is muP not robust to? – (strong) weight decay

🖼️ 第 56 页幻灯片 · What is muP not robust to? – (strong) weight decay

第 57 页幻灯片 · Is muP useful? At least to some extent..

🖼️ 第 57 页幻灯片 · Is muP useful? At least to some extent..

第 58 页幻灯片 · Recap: scaling in the wild

🖼️ 第 58 页幻灯片 · Recap: scaling in the wild