五年后的今天,训练GPT-2只需不到700刀、24小时,Karpathy又整新活
文章摘要
【关 键 词】 GPT-2模型、训练成本、C语言实现、高效训练、模型转换
2019年2月,OpenAI发布了具有15亿参数的GPT-2模型,该模型在文本生成方面表现出色,充分利用了预训练的Transformer架构,被认为是大型预言模型的始祖。
现在在配备8个H100 GPU的节点上训练GPT-2仅需672美元,且只需24小时。
Karpathy在其用纯C语言复现GPT-2大模型的项目“llm.c”中分享了训练心得。
他指出,由于计算硬件、软件和数据质量的改进,大语言模型的训练成本在过去五年里大幅下降。
Karpathy表示,llm.c项目从他考虑为教育视频重现GPT-2开始,虽然过程中遇到了一些困难,但最终项目非常成功,代码量约5000行,编译和运行速度快,内存占用恒定,训练效率高。
尽管Karpathy对llm.c项目的运行结果还不是完全满意,他认为评估应该更好,训练应该更稳定,尤其是在长时间运行的较大模型尺寸下。
llm.c的目标是为功能齐全的LLM智能体提供简单、最小、干净的训练堆栈,直接使用C/CUDA,并包含配套的教育材料。
Karpathy使用更长的400B token GPT-2运行,效果良好,直到330B(达到61% HellaSwag,远高于这个大小的GPT-2和GPT-3),然后模型爆炸。
在GitHub上,Karpathy提供了详细的训练说明,包括安装依赖、下载数据集、编译和运行训练等步骤。
llm.c的代码非常简洁,主要使用C语言实现,编译和运行速度快,内存占用恒定,训练效率高。
Karpathy还比较了llm.c和PyTorch的实现,发现llm.c在内存占用和训练速度上都优于PyTorch。
最后,Karpathy提供了训练好的模型文件和日志文件,以及如何将模型转换为huggingface transformers GPT-2模型的方法。
原文和模型
【原文链接】 阅读原文 [ 3453字 | 14分钟 ]
【原文作者】 机器之心
【摘要模型】 moonshot-v1-32k
【摘要评分】 ★★★★★