背景
两阶段训练模板:
预训练阶段
后训练阶段
(特定能力、与人对齐,例如GPT3)
速览三个特点
数据(质量是关键:配比、scaling law)
规模(没用MoE,稠密的transformer)
复杂度较低(SFT+DPO)
总结,能力:代码+多语言能力+复杂推理问题(旅行规划)
对比了Mistral Large
比llama3小很多,性价比高
模型结构
预训练
三阶段训练法:(1) 初始训练 initial pre-training, (2) 长文训练 long-context pre-training, and (3) 退火训练 annealing
初始训练:
- 余弦调度 8 × 10−5 , 8,000 steps热身, 然后在1,200,000步上降到 8 × 10−7
- 上下文长度和BS缓慢增加,配4M的bs用4,096长度, 再配8M的bs扩展序列长度为 8,192,这个阶段大约是 252M tokens。最终16M的BS
长上下文训练:
- 从18K 逐步增加到 128K
退火训练:
- 最后40M token,用128K长度,逐渐线性缩减学习率到0
后训练(对齐)
数据方面
- 常用的方法如做细粒度标签采样,做模型打各种角度的分,精细的语义去重等
- 合成数据
- “model-as-judge”做模型,去做数据质量筛选
对话数据格式
- 多种角色的输入输出的设定和特殊token
RM建模
- 除了好坏标注之外,增加一路人工编辑,作为最优秀的质量样本 edited > chosen > rejected
SFT
- 拒绝采样
- 1e-5 学习率训 8.5K to 9K steps
DPO
- token屏蔽,一些特殊的字符不参与学习
- DPO+NLL的loss,在IRPO论文里提到的方法,类似正负样本的精细化调权手段
模型融合
- 权重平均,RM, SFT, or DPO各个阶段独立融合
迭代式训练
- 同LLama2,最新的模型采样最新的偏好数据,武当总云梯,左脚踩右脚
基础设施
16K 个 H100 GPU 上进行训练
在评估 GPU 资源利用率时,常使用模型 FLOPs 利用率(model FLOPs utilization,MFU)这一指标。MFU 指的是模型一次前反向计算消耗的矩阵算力与机器算力的比值。其计算公式为:MFU = model FLOPs per iteration /(GPU 单卡算力×卡数×一次迭代时间)。