从头训练GPT2-124M过程中从wandb看到的参数含义

1. 引入

大神karpathy从openai离职后,创办了AI教育公司Eureka Labs(参考1),同时也创办了知名的nanoGPT项目。
目前,使用nanoGPT(参考2),你可以在几分钟内训练出一个babyGPT(甚至于在CPU上就可以运行训练过程),也可以在8XA100 40GB的GPU上,从头开始训练了GPT2-124M(大约4天时间)。

笔者在重现GPT2-124M过程中,在wandb中看到很多参数,如下图一所示,这些参数是什么含义呢?

2. 参数含义

使用nanoGPT来训练GPT2-124M时,可以从wandb中看到如下的一些参数:

  1. 训练过程
    在这里插入图片描述

(1)MFU(Model FLOPs Utilization)
表示模型算力利用率,是指模型一次前反向计算消耗的矩阵算力与机器(如GPU)算力的比值。它直接反映了模型在训练过程中对计算资源的有效利用程度。在大模型训练中,提高MFU是优化训练效率的关键手段之一。从参考3可以看到,比较高的MFU是55.2%

(2)lr:学习速率

(3)iter:迭代次数,从训练代码(参考4)可以看到,本次训练设置的max_iters = 600000

(4)loss:训练损失函数值

  1. GPU参数

这里主要显示,GPU的功率,功率利用率,内存消耗,GPU温度等参数
在这里插入图片描述

  1. 训练过程中的log
iter 162300: loss 3.0673, time 335.07ms, mfu 50.24%
iter 162310: loss 3.0587, time 334.29ms, mfu 50.25%
iter 162320: loss 3.0309, time 333.77ms, mfu 50.27%
iter 162330: loss 2.9537, time 333.12ms, mfu 50.29%
iter 162340: loss 3.1240, time 333.97ms, mfu 50.30%
iter 162350: loss 2.9463, time 334.07ms, mfu 50.31%
iter 162360: loss 2.8554, time 333.62ms, mfu 50.33%
iter 162370: loss 2.9718, time 333.64ms, mfu 50.34%
iter 162380: loss 3.1027, time 333.55ms, mfu 50.35%
iter 162390: loss 2.9248, time 333.75ms, mfu 50.36%
iter 162400: loss 3.1186, time 332.64ms, mfu 50.38%
iter 162410: loss 3.2004, time 335.31ms, mfu 50.37%
iter 162420: loss 3.0321, time 333.47ms, mfu 50.38%
iter 162430: loss 3.0025, time 333.66ms, mfu 50.38%
iter 162440: loss 2.8700, time 334.59ms, mfu 50.38%
iter 162450: loss 2.9597, time 333.97ms, mfu 50.38%
iter 162460: loss 2.9847, time 333.97ms, mfu 50.38%
iter 162470: loss 3.0788, time 334.33ms, mfu 50.38%
iter 162480: loss 3.2261, time 332.76ms, mfu 50.40%
iter 162490: loss 2.8983, time 333.25ms, mfu 50.41%
iter 162500: loss 3.0039, time 333.32ms, mfu 50.42%
iter 162510: loss 2.8551, time 332.80ms, mfu 50.43%
iter 162520: loss 2.8523, time 333.73ms, mfu 50.43%
wandb: | 0.015 MB of 0.023 MB uploaded

训练过程中,log显示迭代次数(iter),loss值,本次迭代所花时间,以及MFU(模型算力利用率)。

3. 参考

  1. karpathy个人经历。https://karpathy.ai/
  2. nanoGPT开源项目链接。https://github.com/karpathy/nanoGPT
  3. MFU。https://www.cnblogs.com/CocoML/p/18290628
  4. GPT2配置。https://github.com/karpathy/nanoGPT/blob/master/config/train_gpt2.py
  • 4
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值