通过表征锚定与语言-动作对齐实现可泛化的VLA微调 Generalizable VLA Finetuning via Representation Anchoring and Language-Action Alignment
用锚定与对齐两个损失,让VLA微调在零额外数据下同时保住语义理解与动作精度
前置知识
Vision-Language-Action (VLA) 模型
把预训练视觉-语言模型(VLM)当成机器人「大脑」,在其上加一个动作头,输入图像+语言指令+本体状态,输出7自由度连续动作(3D平移、3D旋转、夹爪)。训练方式通常是在专家示教上做行为克隆(BC)。本文基于 VLA-Adapter 与 StarVLA 两类架构,分别覆盖回归式与流匹配式动作头。
本文所有讨论都围绕「VLA 微调」展开,不理解其双头结构就无从理解为何出现语言-动作不对齐。
行为克隆 (Behavior Cloning, BC)
一种模仿学习范式:给定专家示教轨迹,模型通过监督学习直接回归或匹配专家动作。在 VLA 中,BC 只优化动作预测损失(回归头用 L1,流匹配头用速度场 L2),不显式保护主干 VLM 的预训练表征。本文核心论点正是:这种单一目标会持续覆写预训练语义先验。
BC 是本文要改造的基准训练方式,两个新损失都叠加在标准 BC 损失之上,理解 BC 才懂为何需要它。
灾难性遗忘 (Catastrophic Forgetting)
指模型微调到新任务时,把预训练学到的旧知识(颜色、空间、组合推理)逐步覆写、抹除的现象。本文用 GQA 准确率作探针:标准 BC 在 10K 步内丢失 94% 的 GQA 准确率,中心核对齐(CKA)从 1.0 跌到 0.34,说明遗忘是表征层面的而非仅行为退化。
这是论文第一个核心问题,锚定损失就是为对抗它而生;不理解遗忘就无法理解 Anchor Loss 的动机。
共训练 (Co-training)
防遗忘的常见手段:在动作数据外混入通用视觉问答(VQA)、图像描述、空间推理(VSR/GQA/COCO)数据,让语言头持续被监督以「拖住」主干。但本文证明这并不够——语言损失和动作损失作用在不同观测(机器人帧 vs 网络图文)上,两个头在「同一帧」上可能预测矛盾方向。
Co-training 是最强现有防遗忘基线,论文要证明 Anchor-Align 比它更便宜(开销低 3.4 倍)且更有效。
知识蒸馏 / 特征蒸馏
用冻结的「教师」模型指导「学生」模型,通常让学生逐层匹配教师隐藏状态,从而把教师的表征几何迁移给学生。本文 Vision-Language Anchoring 即:冻结一份预训练 VLM 作教师,在每个解码器层对视觉与文本 token 隐藏状态做 MSE 蒸馏,公式 $L^{(u)}_{\text{anchor}} = \| HS_u[m] - HA_u[m] \|_F^2$,再对所有层取平均。
锚定损失本质就是特征蒸馏,理解该范式才能理解作者为何说它「无需额外数据或架构改动」。
研究动机
现有 VLA 微调范式存在两个被低估的失败模式。第一,标准 BC 只优化动作预测损失,主干 VLM 的预训练表征无人保护,会被持续覆写。作者在物理 xArm7 上做了直击要害的实验:训练去「拿起绿色马克杯」的 VLA,被指令「拿起粉色马克杯」时仍有 90% 的概率去抓绿色那只——说明颜色 grounding 已被抹除。在 LIBERO-PRO 位置交换测试中,几乎所有基线(OpenVLA-OFT、MolmoAct)都拿 0%,因为策略只是重放训练记忆的轨迹。第二,即便用共训练补救(混入 VQA、captioning),问题依旧:语言头在通用图文上监督、动作头在机器人帧上监督,两者从不在同一帧上联合训练,于是会出现「动作头预测向右、语言头却描述成向左」的矛盾,共训练基线在位置交换上同样 0%。这些 misalignment 在标准操作基准(LIBERO 原始四套件)上测不出来,因为它们已被饱和,必须靠 LIBERO-PRO、LIBERO-Plus 这类 OOD 压力测试才能暴露。
本文的目标是本文要构建一个 VLA 微调方法,在不引入任何外部数据、不改变网络架构、不显著增加训练开销的前提下,同时达成三件事:(1) 阻止 BC 对预训练语义先验的覆写,让模型面对训练未见过的物体属性变化(颜色、位置、纹理、视角、光照)时仍能正确 grounding;(2) 显式让语言头和动作头在同一帧机器人观测上保持一致,从根上消除「语言说左、动作做右」的矛盾;(3) 改进要能迁移到长时序(CALVIN 五步链)、真实物理机器人(xArm7)、以及两种结构迥异的主干/动作头(VLA-Adapter 回归头与 StarVLA 流匹配扩散头),证明方法不挑架构。最终目标是把 VLA 微调重新定义成「保留并 grounding 预训练先验」而非「用控制能力交换语义先验」。
与已有工作不同的是,已有防遗忘工作要么在权重空间做正则(如 MAPS),要么只在单层或仅视觉编码器上做特征锚定(如 Kachaev 等)。本文抓住三个被忽视的关键点:其一,锚定目标应是「完整 VLM 主干在每一层」的视觉+文本 token 隐藏状态,而非只锚定视觉编码器或某一层;其二,「语言-动作是否在同一观测上对齐」这件事从未被直接测量过——共训练论文都在通用基准(GQA、VSR)上评估语言能力,从不检查同一帧上两个头预测是否一致,本文首次给出量化诊断(Alignment 分数与 Pearson 相关);其三,对齐监督其实「免费」藏在示教轨迹里——把连续动作离散成六个方向词即可,无需任何人工标注,这让方法极度轻量。
核心方法
可以把 Anchor-Align 想象成「一边学新动作,一边请一位永远停留在出厂状态的『老师』盯着,确保学生世界观不被新作业带偏;同时每次做动作前还要求学生用语言把『我接下来往哪走』大声说出来,确保语言与身体动作一致」。技术路线上,它在标准 BC 损失 $L_{\text{action}}$ 上叠加两个目标:Vision-Language Anchoring 用冻结预训练 VLM 作教师,在每个解码器层上对学生主干的视觉/文本 token 隐藏状态做逐层 MSE 蒸馏;Language-Action Alignment 把每个非静止动作块程序化离散成 up/down/left/right/forward/backward 之一,取主干最后一个指令 token 的隐藏状态 $h_{\text{pre}}=HS[N]$,经投影 $W_{\text{proj}}$ 与冻结语言头 $W_{\text{lm}}$ 映射成 logits 对方向词做交叉熵。三项损失联合优化 $L_{\text{total}} = L_{\text{action}} + \lambda_{\text{anchor}} L_{\text{anchor}} + \lambda_{\text{align}} L_{\text{align}}$,默认 $\lambda_{\text{anchor}}=0.1$、$\lambda_{\text{align}}=0.02$。推理时只用主干+动作头,部署成本与标准 BC 完全相同。
核心创新在于把「保留语义」和「让语义服务于动作」从原本互不相干的目标,变成同一观测上的耦合监督。与共训练的本质区别是:共训练给两个头喂不同数据(动作帧 vs 网络图文),两套监督互相隔离;Anchor-Align 的两个新损失都施加在「同一帧机器人观测」上——锚定让主干在这帧上的表征贴近预训练几何,对齐让主干在这帧上的最后一个语言 token 必须能预测出与动作一致的方向词,于是「保留」与「grounding」被强行绑定。第二个本质区别是对齐监督的来源:不是额外标注,而是从动作轨迹里「免费」离散出的方向标签,这让方法在数据上几乎零成本。第三个区别是锚定范围贯穿全部解码器层、覆盖视觉+文本两类 token,而非只锚某一层或只锚视觉编码器。作者还用 Shuffle/Scatter 对照实验证明起作用的是「语义对齐」而非「辅助分类损失的正则」。
方法步骤详情
每步训练并行执行:(1) 一批(图像,语言,本体状态)送入可训练 VLA 主干,得每层隐藏状态 $HS_u$ 与动作预测 $\hat{a}_{\text{cont}}$;(2) 同批数据送入冻结 Anchor VLM(语言头换成 nn.Identity 省显存),得对应层 $HA_u$;(3) 算动作损失 $L_{\text{action}}$(回归头 L1、流匹配头速度 L2);(4) 算锚定损失:每层取视觉+文本 token 位置的隐藏状态做平方 Frobenius 范数 $L^{(u)}_{\text{anchor}}=\|HS_u[m]-HA_u[m]\|_F^2$,对 24 层取平均;(5) 算对齐标签:对动作块 $A\in\mathbb{R}^{B\times K\times 7}$ 沿 chunk 维平均平移分量得 $\bar{v}\in\mathbb{R}^{B\times 3}$,丢弃 $\|\bar{v}_i\|_2<\tau$(默认 0.15)的近静止样本,选主导轴 $j^\star=\arg\max_j|\bar{v}_{i,j}|$ 并用符号映射成六方向词之一 $a_{\text{lang}}$;(6) 取 $h_{\text{pre}}=HS[N]$ 经 $W_{\text{proj}}$ 和冻结 $W_{\text{lm}}$ 得 logits $\hat{a}_{\text{lang}}$,对 $a_{\text{lang}}$ 做交叉熵;(7) 三项加权反传。推理时锚定 VLM 与对齐投影都不参与,部署零额外开销。
技术新颖性
技术新颖性体现在三点。其一,锚定「对象」与「范围」同时扩展:既锚视觉 token 又锚文本 token(语义和空间推理分布在两类表征里),且贯穿所有解码器层,而非先前工作(冻结视觉编码器、只锚单中间层)的局部锚定。其二,对齐目标设计巧妙:把连续动作离散成可解释六向词,通过冻结预训练语言头来读 pre-action 隐藏状态——梯度只回传到投影 $W_{\text{proj}}$ 与主干 LoRA,从而「逼迫」pre-action 表征保持对冻结语言头可读,同时起保语义与注动作语义的双重作用。其三,作者设计 Shuffle/Scatter 对照实验排除「辅助分类损失本身带来的正则化」这一混淆解释:打乱观测-标签映射或把方向词换成无意义词(purple/math)后增益消失,证明起作用的是语义对齐而非正则,这是对方法因果机制的强力验证。
实验结果
LIBERO-PRO 上 Anchor-Align VLA 平均 71.9%(VLA-Adapter 61.0%、OpenVLA-OFT 56.5%),最难的位置交换轴从全员 0%、VLA-Adapter 2.3% 提升到 22.6%;LIBERO-Plus 达 90.3%(对比 85.1%),背景纹理(99.6)、传感器噪声(96.9)、光照(99.0)全面领先,最大增益在背景纹理(+8.9)、传感器噪声(+7.4)、机器人初始状态(+6.5)。CALVIN ABC→D 长时序平均链长 4.5(VLA-Adapter 4.3、OpenVLA-OFT 4.1),五步全完成率 77.9%(OpenVLA-OFT 66.5%),链越深增益越大(1 步 +0.8 涨到 5 步 +4.8)。真实 xArm7 上,VLA-Adapter 架构平均 28.3%→54.2%,StarVLA 架构 36.7%→60.0%(组合布局 35%→50%、空间重排 30%→60%、杂乱场景 45%→70%),证明增益不挑主干或动作头。语义扰动实验最关键:训练只见绿杯、测试「拿粉杯」,标准 BC 90% 仍拿绿杯,Anchor-Align 100% 拿对粉杯。表征层面,GQA 准确率标准 BC 10K 步掉 94%、Anchor-Align 保留 70%;CKA 从 0.34 回升到 0.91;语言-动作对齐分数 16.8%→78.4%,与成功 Pearson 相关 -0.03→+0.51。训练成本仅增 28% 单步耗时(1.28s→1.64s)、+0.7GB 显存,而共训练+KI 要 +95% 耗时、+5GB 显存、还需 2.5 万条外部 VQA,效果反而更差。
查看结构化数据
| 任务 | 指标 | 本文 | 基线 | 提升 |
|---|---|---|---|---|
| LIBERO-PRO 总体(OOD 泛化) | 平均成功率 | 71.9% | VLA-Adapter 61.0% | +10.9 个百分点 |
| LIBERO-PRO 位置交换 | 成功率 | 22.6% | VLA-Adapter 2.3% / OpenVLA-OFT 0% | +20.3(近乎从零起跳) |
| LIBERO-Plus(感知鲁棒性) | 平均成功率 | 90.3% | VLA-Adapter 85.1% | +5.2 |
| CALVIN ABC→D 长时序 | 五步全完成率 / 平均链长 | 77.9% / 4.5 | OpenVLA-OFT 66.5% / 4.1 | +11.4 / +0.4 |
| 真实 xArm7 多扰动 | 平均成功率(StarVLA) | 60.0% | 标准 BC 36.7% | +23.3(接近翻倍) |
| 语言-动作对齐 | 对齐分数 / Pearson r | 78.4% / +0.51 | VLA-Adapter 16.8% / -0.03 | +61.6 个百分点对齐 |
局限与改进
作者承认的局限包括:(1) 真实机器人实验虽在两种主干上验证,但任务仍集中在桌面抓取-放置,未覆盖高自由度人形或双手协同;(2) Anchor VLM 显存开销随主干增大而上升,虽作者论证「对更大主干相对开销会下降」,但绝对值在 7B+ VLM 上仍需谨慎;(3) 对齐只用了方向轴(及附录的朝向/抓取/完成度三轴),监督粒度较粗,六方向词无法表达连续动作幅值与精细旋转;(4) 标准 LIBERO 已饱和,主要证据集中在 OOD 压力测试,若读者只关心 in-distribution 收益,提升幅度相对温和。我额外观察两点:其一,语义扰动实验里 Anchor-Align 拿粉杯放置成功率只有 40%——即「选对目标」与「稳定完成」之间仍有差距,说明对齐改善了 grounding 但没解决精细操作;其二,语言-动作对齐诊断依赖「主导轴离散化」,对角向运动(旋转/圆弧)会产生歧义标签,可能在高旋转任务上引入噪声。
独立分析的弱点
第一个弱点是「对齐监督语义粒度太粗」——六方向词只能描述瞬时平移主轴,无法表达『靠近物体后绕到侧面』这类组合运动。改进方向:把方向词扩展成更细离散码本(8/16 个方向加旋转子类),或用 FAST 风格 DCT 动作 token 同时作为对齐目标,让语言头学到更连续动作语义。第二个弱点是「锚定对所有层等权」——公式 $L_{\text{anchor}}=\frac{1}{|D|}\sum L^{(u)}$ 对浅层(语义抽象)和深层(任务决策)一视同仁,而 CKA 曲线显示遗忘主要发生在深层。改进方向:按层自适应加权或按 CKA 退化程度动态调权,既保深层语义又不过度约束浅层适应。第三个弱点是「真实评估规模偏小」——每条件只跑 20 次 rollout、共 140 次,统计置信区间偏宽;改进方向:扩到 50–100 次/条件并引入更多任务族(插拔、倾倒、双臂),验证增益是否在更复杂接触丰富任务上仍成立。第四个弱点是「语义扰动只在 StarVLA 上报告」,因为 VLA-Adapter 的 L1 回归头无法表达多模态动作分布,提示对齐框架目前依赖动作头本身的多模态能力。
未来方向
作者明确指出把 anchoring/alignment 思想迁移到动作条件视频世界模型(video world models):对由预训练视频生成器改造的世界模型,冻结教师正则可限制后训练阶段表征漂移,类比的对齐目标可要求逆动力学模型从生成帧中恢复出条件动作,以及指令-轨迹一致性。基于本文成果可延伸的方向还包括:(1) 把对齐诊断框架(方向/朝向/抓取/完成度四轴)发展成标准 VLA 评测协议,因为它能在不依赖任务成功的前提下量化内部表征健康度;(2) 探索对齐目标的课程学习——先用粗方向对齐打底,再用细旋转/抓取对齐精修;(3) 把锚定从「同构 VLM」推广到「跨模态/跨规模教师」,例如用更大 VLM 蒸馏更小 VLA 主干,在轻量化部署中获得双倍收益;(4) 结合在线强化学习,让对齐目标随策略进化动态生成,覆盖更丰富的动作分布。
复现评估
复现性总体较好。开源层面:作者提供项目主页(anchoralignvla.github.io),基线 VLA-Adapter、StarVLA、OpenVLA-OFT 均开源,所用 LIBERO、LIBERO-PRO、LIBERO-Plus、CALVIN、GQA 都公开。数据层面:Anchor-Align 完全不需外部数据,对齐标签从示教轨迹程序化生成,真实数据用 GELLO 遥操采集 150 条轨迹(LeRobot/RLDS 格式),复现真实实验需 xArm7 + 腕部与前视两路 RGB 相机。算力层面:训练用 4 块 NVIDIA GH200、bfloat16、PyTorch 2.7,主干是 0.5B 的 Prismatic-Qwen2.5,LoRA r=64,10K 步、batch 32、lr $2\times10^{-4}$,2,500 步约 68 分钟——单卡难复现完整训练,但科研团队(8×A100 同级)可负担。超参完整披露($\lambda_{\text{anchor}}=0.1$、$\lambda_{\text{align}}=0.02$、$\tau=0.15$、24 层),并提供 5 个种子均值±方差统计显著性。主要门槛在真实机器人硬件与 GELLO 设备,但仿真部分(LIBERO/CALVIN)门槛较低,适合大多数实验室上手。
论文图表
训练时让 VLA「拿起绿色马克杯放到盘子上」,测试时把指令换成「拿起粉色马克杯」。标准 BC 仍伸手去抓绿色那只,而 Anchor-Align 成功抓取粉色马克杯。
这张图用最直观方式点出全文核心问题:BC 微调把 VLM 的颜色 grounding 抹除了,读者看一眼就能理解为什么要做这件事。