更新时间:2025-07-29 GMT+08:00
分享

精度调优总体思路

PyTorch大模型训练的精度问题的分析、定位可以参考如下思路:

  1. 大模型训练通常使用多机训练,鉴于多机训练复现问题的成本较高,且影响因子较多,建议用户先减少模型层数,使模型能够单机训练,确认单机训练是否也存在精度问题,如果存在,则使用下述手段定位精度问题,使得单机精度达标,然后再恢复层数拉起多机训练。
  2. 若单机精度正常但多机精度异常,有可能是多机通信造成的精度问题,此时可以用精度工具的通信精度检测功能进行定位。部分集合通信算子要求通信域内各rank结果一致,如AllReduce、AllGather等,利用这一特性,工具将多机模型训练中产生的通信输出存盘,并传输到同一节点来比较其一致性,从而确定模型中通信算子的精度是否存在问题。若已排除通信算子异常,则可能是由于网络层数增加放大了累积误差,需要使用精度比对等工具进一步分析。
图1 精度调优流程

相关文档