MiniCPM一直都是开源领域的小钢炮,其预训练报告中的发现也是非常值得大家阅读。

MiniCPM:揭示端侧大语言模型的无限潜力

具体细节打击可以阅读原文,本文仅仅记录一下最终发现和结果。

  • 1 最优的batch_size为4M Tokens。
  • 2 最优学习率为0.01
  • 3 最优学习率调度器为WSD
    • 3.1 cosine调度器的step应该为训练全部step,loss才会降到最低。
    • 3.2 WSD的第二阶段的loss比cosine高,但是第三阶段DECAY阶段只需要10%的Step的loss即可和cosine一致甚至更低
  • 4 Batch_size调度,训练过程中逐渐扩大Batch_size会降低loss,但是这种结果不一定完全适用。
  • 5 固定大小的模型持续训练最多可以达到5倍大模型的效果,拟合loss和计算量曲线得到;使用指数形式和幂律形式你和loss和计算量的曲线,幂律形式更佳。
  • 6 持续友好的训练策略,DECAY退火阶段使用高质量数据效果非常好,例如在预训练时将SFT中的高质量数据放在DECAY阶段使用。