网易首页 > 网易号 > 正文 申请入驻

神级项目训练GPT-2仅需5分钟,Andrej Karpathy都点赞

0
分享至

机器之心报道

编辑:泽南、小舟

租用 H100 的钱只需 233 美元。

还记得 Andrej Karpathy 纯 C 语言复现 GPT-2 大模型的项目吗?

今年 4 月,AI 领域大牛 Karpathy 一个仅用 1000 行代码即可在 CPU/fp32 上实现 GPT-2 训练的项目「llm.c」曾经引发机器学习社区的热烈讨论。

llm.c 旨在大幅简化大模型的训练,ta 使用纯 C 语言 / CUDA,不需要 245MB 的 PyTorch 或 107MB 的 cPython。不过即使是这样的优化,复现 GPT-2 级别的模型也需要在 8 块 H100 上花费 45 分钟进行训练。

没想到几个月过去,业界水平居然有了指数级的提升,让 Karpathy 本人都感到惊叹:



在 GitHub 上出现了一个新项目「Modded-NanoGPT」,对技术进行了大幅度的迭代,现在实现相同的结果只需要 5 分钟。该研究的作者 Keller Jordan 曾在 Hive AI 工作,一直以来的研究方向都着重于模型训练的优化。他在本周三表示,利用具有大序列长度的 FlexAttention,他已把速度的记录从 7.2 分钟提升到了 5 分钟。



现在有了 FlexAttention 和较大的 seqlen,文档的拆分更少了,因此语言建模在训练和验证时都变得更容易。该记录在 HellaSwag 上的准确率略有降低,约为 29%,而之前的记录和 Andrej Karpathy 的原始训练准确率约为 30%。

让我们看看他是怎么做的:



项目链接:https://github.com/KellerJordan/modded-nanogpt/tree/master

Modded-NanoGPT

该项目名为「Modded-NanoGPT」,它是 llm.c 存储库的 PyTorch GPT-2 训练器的改进变体:

  • 10B tokens-->1B tokens
  • 8xH100 上花 45 分钟训练 -->8xH100 上花 5 分钟训练

Modded-NanoGPT 采用如下技术:

  • 先进的架构:旋转嵌入、QK-Norm 和 ReLU^2;
  • 新优化器:Muon;
  • 嵌入中的 Untied Head;
  • 投影和分类层初始化为零(muP-like);
  • 架构 shortcut:值残差和嵌入 shortcut(部分遵循论文《Value Residual Learning For Alleviating Attention Concentration In Transformers》);
  • 动量(Momentum)warmup;
  • Tanh soft logit capping(遵循 Gemma 2);
  • FlexAttention。

要进行训练,请运行以下三个命令:

pip install -r requirements.txtpip install--pre torch --index-url https://download.pytorch.org/whl/nightly/cu124 —upgrade # install torch 2.6.0python data/cached_fineweb10B.py 10# downloads only the first 1.0B training tokens to save time./run.sh

在网络连接良好的 8xH100 上,训练应在 20 分钟内完成。

结果将是一个具有 124M 活跃参数的 transformer,在 10 亿 Fineweb tokens 上训练了 1875 steps,实现了约 3.278 的验证损失。相比之下,默认的 llm.c PyTorch 训练器在 100 亿 tokens 上训练了 19560 steps 后,验证损失 >3.28。

值得一提的是,要在更少的 GPU 上运行 Modded-NanoGPT,只需修改 run.sh 以获得不同的 --nproc_per_node。如果内存不足,只需在 train_gpt2.py 中将 device_batch_size 缩小到 16 或 32。

这里有一个适用于全新 8xH100 实例的启动脚本:

sudo apt-get updatesudo apt-getinstall vim tmux python3-pip python-is-python3 -ygit clone https://github.com/KellerJordan/modded-nanogpt.gitcd modded-nanogpttmuxpip install numpy==1.23.5 huggingface-hub tqdmpip install--upgrade torch &python data/cached_fineweb10B.py 18

如果 CUDA 或 NCCL 版本与你当前的系统设置不兼容,Docker 可以成为一种有用的替代方案。这种方法标准化了 CUDA、NCCL、CUDNN 和 Python 的版本,减少了依赖性问题并简化了设置。注意:系统上必须已安装 NVIDIA 驱动程序。

sudo docker build -t modded-nanogpt .sudo docker run -it --rm --gpus all -v $(pwd):/modded-nanogpt modded-nanogpt python data/cached_fineweb10B.py 18sudo docker run -it --rm --gpus all -v $(pwd):/modded-nanogpt modded-nanogpt sh run.sh

有一个问题在于,NanoGPT 训练很快是很好,但它可能无法扩展,只是过拟合了 val 损失?Keller Jordan 表示,这很难反驳,因为「按规模」是一个无限类别(如果这些方法对 >100T 的模型就不奏效了怎么办?),因此无法完全证明。此外,作者也同意快速运行中使用的一些方法不太可能扩展。但如果读者关心 1.5B 模型,他们可能会被这个结果说服:

直接将快速运行(10/18/24 版本)扩展到 1.5B 参数可以得到一个具有 GPT-2(1.5B)级 HellaSwag 性能的模型,它要比 Karpathy 的基线便宜 2.5 倍(233 美元对比 576 美元):





Muon optimizer

除了在前人的肩膀上探索,新项目也使用了 Keller Jordan 自研的优化方式。比如这个 Muon 优化器,据他所说是目前已知最快的优化器,适用于包括 CIFAR-10 和 GPT-2 规模语言建模在内的各种训练场景。

Muon 的定义如下:



其中 NewtonSchulz5 是 Newton-Schulz 之后的迭代,它近似地用 U @ V.T 替换 G,其中 U, S, V = G.svd ()。

@torch.compiledefzeroth_power_via_newtonschulz5 (G, steps=5, eps=1e-7):assertlen (G.shape) == 2a,b, c = (3.4445, -4.7750, 2.0315)X = G.bfloat16 () / (G.norm () + eps)ifG.size (0) > G.size (1):X = X.T for_ in range (steps):A = X @ X.TB = b * A + c * A @ AX = a * X + B @ XifG.size (0) > G.size (1):X = X.T returnX.to (G.dtype)

对于这种训练场景,Muon 具有以下有利特性:

  • 内存使用量比 Adam 低
  • 采样效率提高约 1.5 倍
  • 挂钟开销小于 2%

总结

作者表示,生成此优化器的许多选择都是通过追求 CIFAR-10 快速运行而通过实验获得的。其中值得一提的经验包括:

  • 在更新中使用 Nesterov 动量,在动量之后应用正交化。
  • 使用特定的五次 Newton-Schulz 迭代作为正交化方法。
  • 使用五次多项式的非收敛系数以最大化零处的斜率,从而最小化必要的 Newton-Schulz 迭代次数。事实证明,方差实际上并不那么重要,因此我们最终得到一个五次多项式,它在重复应用后(快速)收敛到 0.68、1.13 的范围,而不是到 1。
  • 在 bfloat16 中运行 Newton-Schulz 迭代(而 Shampoo 实现通常依赖于在 fp32 或 fp64 中运行的逆 pth 根)。

使用 Newton-Schulz 迭代进行正交化的方法可以追溯到 Bernstein & Newhouse (2024),他们建议将其作为计算 Shampoo 预处理器的方法,并从理论上探索了没有预处理器累积的 Shampoo。Keller Jordan 特别感谢了论文作者之一 Jeremy Bernstein 的协助。

如果我们在这里使用 SVD 而不是 Newton-Schulz 迭代,那么这个优化器就会因为太慢而无法使用。Bernstein & Newhouse 还指出,没有预处理器累积的 Shampoo 相当于谱范数中的最陡下降,因此 Shampoo 可以被认为是一种平滑谱最陡下降的方法。所提出的优化器可以被认为是平滑谱最陡下降的第二种方法,与 Shampoo 相比,它具有不同的内存和运行时权衡。

特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。

Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.

相关推荐
热点推荐
-6℃!湖北降雨降雪降温,马上来袭

-6℃!湖北降雨降雪降温,马上来袭

鲁中晨报
2024-12-26 21:16:15
身价暴跌4000万!年度“跳水王”诞生:14场仅2球,巴黎血亏

身价暴跌4000万!年度“跳水王”诞生:14场仅2球,巴黎血亏

叶青足球世界
2024-12-26 19:54:22
2025年开始,医保看病迎来大变,DRG模式是啥意思?有啥好处?

2025年开始,医保看病迎来大变,DRG模式是啥意思?有啥好处?

阿伧说事
2024-12-26 15:20:07
坠机事件谜团待解,哈萨克斯坦官员回应“遭袭”说法:仅凭照片便作出结论是炒作

坠机事件谜团待解,哈萨克斯坦官员回应“遭袭”说法:仅凭照片便作出结论是炒作

红星新闻
2024-12-26 19:20:48
4℃!广东将迎新冷空气,洗澡请记住一组数字:42,20,5

4℃!广东将迎新冷空气,洗澡请记住一组数字:42,20,5

鲁中晨报
2024-12-26 07:15:05
女子花7.3万修复鼻孔,术后鼻梁却歪成C形,机构:整了7次,别折腾了

女子花7.3万修复鼻孔,术后鼻梁却歪成C形,机构:整了7次,别折腾了

极目新闻
2024-12-26 17:11:22
“山西沁县政协主席被杀案”最新进展,被告当庭承认买凶器杀人

“山西沁县政协主席被杀案”最新进展,被告当庭承认买凶器杀人

现代快报
2024-12-26 18:13:56
少吃这类肉,可以降低癌症风险

少吃这类肉,可以降低癌症风险

医药养生保健报社
2024-12-23 16:26:15
金正恩对于朝鲜军队在库尔斯克的惨败非常愤怒,损失高达1000多人

金正恩对于朝鲜军队在库尔斯克的惨败非常愤怒,损失高达1000多人

环球热点快评
2024-12-24 11:36:19
美国政坛又爆丑闻:81岁议员或已认知障碍多年 马斯克直呼:太疯狂了…

美国政坛又爆丑闻:81岁议员或已认知障碍多年 马斯克直呼:太疯狂了…

财联社
2024-12-25 18:30:15
案件:北京一女教授在家养病长达10年,民警进门后,当场愣在原地

案件:北京一女教授在家养病长达10年,民警进门后,当场愣在原地

五元讲堂
2024-12-24 16:57:49
大跌了!暴降72%!

大跌了!暴降72%!

鲁中晨报
2024-12-25 10:03:07
养老金好消息!各地养老金计发基数陆续公布:北京退休人员乐了!

养老金好消息!各地养老金计发基数陆续公布:北京退休人员乐了!

乌娱子酱
2024-12-26 15:49:21
网友曝朋友到莫斯科,发现接待中国人的酒店里,出现中文版“无人机逃生指南”

网友曝朋友到莫斯科,发现接待中国人的酒店里,出现中文版“无人机逃生指南”

西游日记
2024-12-26 19:08:24
网友直播间询问水洗标被主播回怼“怎么考上大学的?”店铺回应:相关人员被开除

网友直播间询问水洗标被主播回怼“怎么考上大学的?”店铺回应:相关人员被开除

红星新闻
2024-12-26 20:01:44
这才是阳谋!俄罗斯财政部长说他们正在用比特币进行对外贸易

这才是阳谋!俄罗斯财政部长说他们正在用比特币进行对外贸易

二向箔
2024-12-26 19:00:15
哈兰德成罪人!失点+补射入网越位,双手抱头太遗憾,13场仅3球

哈兰德成罪人!失点+补射入网越位,双手抱头太遗憾,13场仅3球

奥拜尔
2024-12-26 21:52:31
江西省委巡视组:万年县选人用人风气不正

江西省委巡视组:万年县选人用人风气不正

上观新闻
2024-12-26 19:57:11
雅典娜疑似被“潮汕商会”解救回国,知情者曝光更多细节!

雅典娜疑似被“潮汕商会”解救回国,知情者曝光更多细节!

阿凫爱吐槽
2024-12-26 11:45:08
失误!俄击落阿塞拜疆航空客机!飞鸟成背锅侠!谁的责任

失误!俄击落阿塞拜疆航空客机!飞鸟成背锅侠!谁的责任

创微视角
2024-12-26 15:04:29
2024-12-26 22:31:00
机器之心Pro incentive-icons
机器之心Pro
专业的人工智能媒体
9874文章数 142120关注度
往期回顾 全部

科技要闻

小米正搭建GPU万卡集群,大力投入AI大模型

头条要闻

柯文哲遭起诉求刑28年半 中国国民党、民进党表态

头条要闻

柯文哲遭起诉求刑28年半 中国国民党、民进党表态

体育要闻

再见,中超最后的超级巨星

娱乐要闻

57岁王祖贤分享近照,状态太好又被质疑整容

财经要闻

69亿订单"消失",卓然股份隐藏了什么?

汽车要闻

新物种iCAR V23的“尤里卡时刻”

态度原创

教育
数码
艺术
时尚
家居

教育要闻

小芳回到家向妈妈求助,妈妈看着题目也犯了难:这题咋这么绕?

数码要闻

AMD APU Radeon8060S核显图形测试跑分曝光 性能大提升

艺术要闻

故宫珍藏的墨迹《十七帖》,比拓本更精良,这才是地道的魏晋写法

实用!我找到了永不反弹的衣柜整理大法

家居要闻

现代简约 提升温馨质感

无障碍浏览 进入关怀版