LLM论文笔记 6: Training Compute-Optimal Large Language Models

  • Arxiv日期:2022.3.29
  • 机构:Google DeepMind

关键词

  • scaling law
  • power law
  • 参数量
  • FLOPS
  • tokes

核心结论

  1. 当前大多数大语言模型(如 GPT-3 和 Gopher)在计算预算分配上存在问题,模型参数过大而训练数据不足

  2. 计算预算计算方式(非首次提出,DeepSeek report 中被改进) FLOPS = 6ND

  3. 模型参数与训练数据的比例

  • 训练资源 ,模型参数 ,训练token数
  • 模型参数和训练数据呈相同倍率增长
  1. 不认可(Kaplan et al. 2020)提出的 a = 0.73, b = 0.27
  1. 进一步提高语言模型性能的关键在于获取更多高质量的训练数据,而不是盲目增加模型参数

  2. 数据质量 比数据规模更重要,应对训练数据进行高标准的筛选和去重,以避免数据泄漏和测试集重叠

主要方法

提出三种研究方法:

1. 固定模型大小,改变训练数据量

  • 在固定的模型大小 N 下,通过调整训练数据量(即训练的 token 数 D ),研究损失随计算预算 C 的变化趋势(估计给定 FLOPs 预算下的最优模型大小和所需的训练数据量)

  • 模型大小和训练数据量应随计算预算等比例增长

2. 固定 FLOPs,调整模型大小

  • 在固定计算预算(FLOPs) C 下,通过调整模型大小 N 和对应的训练 token 数 D ,研究损失的最小值随模型大小的变化趋势(直接研究了在特定计算预算下,最优的模型大小是多少)

  • 不同计算预算下的最优模型大小和训练数据量均与 FLOPs 呈近似线性关系

3. 拟合参数化损失函数

  • 构建一个基于模型大小 N 和训练数据量 D 的损失函数 L(N, D) ,并通过实验数据拟合其参数,推导出理论上的最优模型大小和训练数据量分配
  • 通过优化算法(L-BFGS)拟合参数 A, B, E, \alpha, \beta ,使得拟合损失函数与实验数据最为接近 / 使用 Huber 损失来提高对异常点的鲁棒性

  • 结合 FLOPs 约束 C = 6ND ,通过拉格朗日乘数法

三种方法总结:

补充

DeepSeek 技术报告中对 FLOPS=6ND 的计算方式进行了改进

参考 DeepSeek LLM Scaling Open-Source Language Models with Longtermism

提出 C = MD

使用参数 M 替代模型参数 N(认为模型参数不代表真实的计算量)

同时研究了超参数的 scaling law:超参数(batch size / lr)具有较宽的选择范围:

M / D关于C的缩放结论:

注:本系列不包括基础的知识点讲解,为笔记/大纲性质而非教程,用于论文知识点和思想和快速记忆和回顾,更多细节建议阅读论文原文

相关推荐
乌旭2 小时前
量子计算与GPU的异构加速:基于CUDA Quantum的混合编程实践
人工智能·pytorch·分布式·深度学习·ai·gpu算力·量子计算
deephub3 小时前
CLIMB自举框架:基于语义聚类的迭代数据混合优化及其在LLM预训练中的应用
人工智能·深度学习·大语言模型·聚类
思通数科AI全行业智能NLP系统4 小时前
AI视频技术赋能幼儿园安全——教师离岗报警系统的智慧守护
大数据·人工智能·安全·目标检测·目标跟踪·自然语言处理·ocr
struggle20255 小时前
deepseek-cli开源的强大命令行界面,用于与 DeepSeek 的 AI 模型进行交互
人工智能·开源·自动化·交互·deepseek
ocr_sinosecu16 小时前
OCR定制识别:解锁文字识别的无限可能
人工智能·机器学习·ocr
奋斗者1号6 小时前
分类数据处理全解析:从独热编码到高维特征优化
人工智能·机器学习·分类
契合qht53_shine6 小时前
深度学习 视觉处理(CNN) day_02
人工智能·深度学习·cnn
学渣676566 小时前
【10分钟读论文】Power Transmission Line Inspections电力视觉水文
机器学习
就叫飞六吧6 小时前
如何判断你的PyTorch是GPU版还是CPU版?
人工智能·pytorch·python
zsffuture6 小时前
opencv 读取3G大图失败,又不想重新编译opencv ,可以如下操作
人工智能·opencv·webpack