Full-Weight VLA Fine-Tuning Without an fp32 Master Copy Silently Erases Most Updates
作者: Shubham Singh
分类: cs.RO
发布日期: 2026-10-22
💡 一句话要点
提出无fp32主副本的全权重VLA微调方法以解决更新丢失问题
🎯 匹配领域: 支柱九:具身大模型 (Embodied Foundation Models)
关键词: 视觉-语言-动作 模型微调 bfloat16 fp32主副本 更新丢失 性能提升 机器人控制
📋 核心要点
- 现有的VLA模型微调方法在使用bf16时,容易导致小幅更新被舍去,影响模型性能。
- 论文提出在微调过程中保留fp32主副本,以避免更新丢失,从而提高模型的训练效果。
- 实验结果显示,使用fp32副本的模型在多个任务上的成功率显著提升,证明了该方法的有效性。
📝 摘要(中文)
本文探讨了在没有fp32主副本的情况下,使用bfloat16(bf16)对视觉-语言-动作(VLA)模型进行微调时,AdamW优化器如何直接将更新写入bf16,从而导致小于1/512权重的更新被静默舍去。研究发现,在12个开放的VLA代码库中,有9个使用了这种训练方式,导致大量更新丢失。通过在LIBERO实验中引入fp32副本,成功将SmolVLA和$π_{0.5}$的成功率显著提高,验证了在训练过程中保持权重为fp32的必要性。
🔬 方法详解
问题定义:本文旨在解决在使用bfloat16进行VLA模型微调时,更新丢失的问题。现有方法在没有fp32主副本的情况下,导致小于1/512权重的更新被舍去,影响模型性能。
核心思路:论文的核心思路是引入fp32主副本,在微调过程中保持权重为fp32,以确保所有更新都能被有效记录,从而避免信息丢失。
技术框架:整体架构包括模型的初始化、微调过程中的权重更新以及最终的模型评估。主要模块包括权重管理、更新记录和性能评估。
关键创新:最重要的技术创新点在于通过简单的代码修改,将训练过程中权重保持为fp32,从而显著提高了模型的训练效果。与现有方法相比,这一策略有效避免了更新丢失的问题。
关键设计:在实验中,使用了不同的学习率设置,特别是在SmolVLA和$π_{0.5}$模型中,调整了训练配置以优化性能。具体参数设置和损失函数设计也经过精心调整,以确保模型在不同任务中的表现。
📊 实验亮点
实验结果显示,使用fp32副本的SmolVLA模型成功率从4.3%提升至49.3%,$π_{0.5}$模型成功率从5.1%提升至80.9%。在默认学习率下,SmolVLA模型的性能提升达到10.2个百分点,验证了该方法的有效性和重要性。
🎯 应用场景
该研究的潜在应用领域包括机器人控制、智能助手和多模态交互系统等。通过提高VLA模型的训练效率和性能,能够更好地支持复杂的视觉和语言理解任务,推动智能系统的实际应用和发展。
📄 摘要(原文)
When a vision-language-action (VLA) model is fine-tuned with its trainable weights in bfloat16 (bf16) and no fp32 master copy, AdamW writes each update straight into bf16, silently rounding away any update smaller than 1/512 of a weight. In 9 of 12 open VLA codebases a default or documented recipe trains this way, 4 on full weight matrices, including LeRobot's SmolVLA default and its $π_0$/$π_{0.5}$ guides. In our LIBERO runs without the copy, a probe every 100 steps finds at least 79% of updates to bf16 weights erased. On the Hugging Face Hub, 99% of sampled full-weight SmolVLA fine-tunes store the action expert in bf16, and 84% of recent $π_{0.5}$ fine-tunes with a training configuration set the bf16 flag. On LIBERO-Object, with rules fixed in advance, an fp32 copy raises success over LeRobot's storage from 4.3% to 49.3% for SmolVLA and from 5.1% to 80.9% for $π_{0.5}$ at a ten-times lower learning rate, where both models are undertrained, and from 89.0% to 97.7% for $π_{0.5}$ at its default rate. For SmolVLA at its default rate it adds 10.2 points with open-loop 50-action chunks but only 4.2 when re-planning every 10 actions. In these five comparisons and two more against SmolVLA with every trainable weight in bf16, every run with the copy beats every run without it (p < 0.05); all gaps but the 8.7- and 4.2-point ones clear our 10-point threshold. The fix is to keep the trainable weights in fp32 during training, a one-line change for SmolVLA in LeRobot.