強化學習微調作為提升大型語言模型高級能力的關鍵技術,在實際應用中卻面臨訓練不穩定、性能提升困難等問題。傳統觀點認為這些問題的根源在于復雜的算法設計缺陷,然而,最新研究指出,數值精度才是導致這些問題的關鍵因素。
當前,BF16格式因其在預訓練階段的穩定表現,已成為業界廣泛采用的標準配置。然而,在強化學習微調的精細調整過程中,BF16的低精度特性反而成為阻礙。研究發現,BF16在訓練和推理過程中引發的“訓練-推理不匹配”現象,是導致訓練任務失敗和崩潰的主要原因。這一現象表現為訓練引擎和推理引擎在計算結果上的微小數值偏差,這些偏差在長序列生成任務中不斷累積,最終導致模型性能顯著下降。
為解決這一問題,研究團隊將目光投向了另一種16位浮點格式——FP16。與BF16不同,FP16在尾數部分分配了更多位數,使其能夠更精確地表示數值,從而減少舍入誤差。盡管FP16的動態范圍較小,但在強化學習微調階段,模型的權重和激活值范圍已相對穩定,不再需要BF16那樣大的動態范圍。因此,FP16的高精度特性成為解決訓練不穩定問題的關鍵。研究團隊通過一系列實驗驗證了FP16的有效性。他們構建了一個“完美可解”的數據集,以排除數據集難度分布對實驗結果的干擾。在這個數據集上,基于FP16的算法展現出了極高的訓練穩定性,不僅從未崩潰,而且收斂速度飛快,最終性能全面超越了基于BF16的算法。實驗還發現,所有最終崩潰的BF16算法在崩潰前都表現出訓練策略和推理策略之間差異持續增大的特征,這表明差異程度可作為訓練健康狀況的監測指標。
進一步的研究探討了不同精度組合對訓練效果的影響。結果顯示,將訓練和推理精度統一為FP16的組合,不僅實現了最低的訓練-推理不匹配,還獲得了最穩定的訓練動態和最高的性能,同時保持了極高的計算效率。相比之下,其他精度組合要么訓練不穩定,要么計算效率低下。
為證明FP16解決方案的普適性,研究團隊在多種模型和訓練范式上進行了驗證。在混合專家模型中,FP16精度下的訓練比BF16更加穩定,能夠持續獲得更高的訓練獎勵和驗證集性能。在低秩適應微調中,基于FP16的訓練從頭到尾保持完全穩定,而基于BF16的訓練則在約600步后崩潰。在大型稠密模型上,FP16訓練的模型獎勵增長速度遠快于BF16,并在驗證集上取得了更高的準確率。在不同模型架構上的實驗也得出一致結論:FP16能夠有效提升強化學習微調的穩定性。
這些發現促使業界重新思考在大型語言模型訓練流程中關于數值精度的選擇。研究結果表明,將浮點數精度從BF16切換到FP16,是一種能夠系統性提升強化學習微調穩定性和性能的根本性解決方案。這一發現不僅解決了當前強化學習微調領域的一個核心痛點,也為未來模型訓練提供了新的思路。











