一篇新提交到 arXiv 的論文《Full-Weight VLA Fine-Tuning Without an fp32 Master Copy Silently Erases Most Updates》(作者 Shubham Singh)指出,視覺-語言-動作(VLA)模型在微調過程中存在一個容易被忽視、卻影響顯著的數值精度問題:當可訓練權重以 bfloat16(bf16)存儲、且不保留 fp32 主副本時,優化器 AdamW 會把每次更新直接寫入 bf16,凡小於權重值 1/512 的更新都會被靜默舍入掉,相當於沒有生效。
作者對開源生態做了系統排查。在 12 個公開 VLA 代碼庫中,有 9 個的默認配置或文檔給出的訓練配方採用了這種不含 fp32 主副本的訓練方式,其中 4 個把該方式用於完整的權重矩陣,包括 LeRobot 的 SmolVLA 默認設置以及其 π0 和 π0.5 使用指南。這説明問題並非個別項目的疏漏,而是廣泛存在於主流工具鏈之中。
實驗層面,作者在 LIBERO 基準上運行了不帶 fp32 副本的微調,並每 100 步對權重更新做一次探測,結果顯示至少 79% 寫入 bf16 權重的更新被抹除,絕大多數訓練信號實際上沒有落到模型參數上。這一現象在訓練日誌和損失曲線上很難被察覺,因此屬於“靜默”失效。
論文還考察了模型分享平台的現狀。在 Hugging Face Hub 上抽樣的全權重 SmolVLA 微調模型中,99% 把動作專家以 bf16 形式存儲;在近期設置了訓練配置的 π0.5 微調中,84% 開啓了 bf16 標誌。這意味着大量公開可用的微調成果可能都帶有同樣的精度損失。
為了量化影響,作者預先固定了評估規則,在 LIBERO-Object 任務上比較有無 fp32 主副本的差異。在兩者都尚未充分訓練、學習率低十倍的設定下,fp32 副本把 SmolVLA 的成功率從 LeRobot 存儲方式的 4.3% 提升到 49.3%,把 π0.5 的成功率從 5.1% 提升到 80.9%。在 π0.5 的默認學習率下,成功率也從 89.0% 提升到 97.7%。對於 SmolVLA 的默認學習率,若採用開環的 50 動作塊執行,提升約 10.2 個百分點;若每 10 個動作重新規劃一次,提升縮小到 4.2 個百分點。
統計上,在包括上述五次比較在內的七組對照(另兩組對比的是所有可訓練權重均為 bf16 的 SmolVLA)中,每一個保留 fp32 副本的運行都優於對應的無副本運行,顯著性水平 p < 0.05。除 8.7 點和 4.2 點兩處差距外,其餘差距都超過了作者設定的 10 個百分點閾值。
作者給出的修復方案非常簡單:訓練期間把可訓練權重保持在 fp32。對 LeRobot 中的 SmolVLA 而言,這隻需改動一行代碼。考慮到這一設置對最終策略成功率的影響可達數十個百分點,論文建議 VLA 微調實踐者和模型發佈者重新審視默認的精度配置,並在發佈微調權重時明確説明訓練過程中是否保留了 fp32 主副本。