给 VLA 装一个 4000 万参数的刹车:不改主干权重,扰动恢复从 40% 到 68.3%
浙大与阿里达摩院开源了一个 4000 万参数的 Corrector 模块,挂在任何用动作分块的 VLA 外面就能用,不改主干权重。它治的是动作分块之间的开环盲区——这是所有 chunking 架构的通病。
- 它治什么病:基于动作分块(action chunking)的 VLA 会一次吐出一串动作,执行期间摄像头照常进图但手还在跑几百毫秒前生成的动作——这个开环盲区是所有 chunking 架构的通病。
- 怎么治:约 4000 万参数的 Corrector 挂在推理流水线之外,不修改主干权重,在 latent 空间比较视觉特征的期望变化与实际变化;偏差持续就冲刷未执行动作队列,并把偏差转成梯度信号引导恢复推理。
- 实测提升:真实 AgileX PiPER 平台上,九项任务平均成功率从 55.6% 升到 73.3%;扰动恢复任务(目标被手动移开)从 40.0% 升到 68.3%。
- 副作用是好的:SmolVLA 在 horizon 10 下,成功率从 61.90% 升到 73.00%,而平均策略调用次数反而从 19.27 次降到 15.64 次。
- 截断发生在哪:83.7% 的截断发生在抓取、对准、插入这类关键阶段——说明它确实拦在了该拦的地方。
- 可移植性:可直接挂到 π0.5 或 SmolVLA,代码与项目页已开源(arXiv 2607.01804)。
只有用动作分块的 VLA 才吃这副药
在动手之前,先花两分钟确认自己的策略是不是这个模块的目标对象。判据只有一条:你的模型是不是一次输出一串动作,然后闭着眼睛把这串动作跑完。
动作分块(action chunking)是近两年 VLA 的标配——π0、π0.5、SmolVLA、以及大量国内自研策略都这么干。它让推理频率降下来、动作更平滑,代价是:在这串动作执行期间,摄像头虽然在进图,但控制器不会重新决策。如果这期间有人把目标挪走了、零件被碰歪了、夹爪打滑了,机器人会照着一串过时的动作继续执行到底。
Corrector 的做法不是提高重规划频率——那会成倍增加算力开销。它是在推理流水线外面挂一个约 4000 万参数的小模块,持续比对「按当前这串动作,视觉特征应该怎么变」和「实际看到的特征正在怎么变」。偏差持续存在,就判定这串动作已经失效,冲刷掉队列里还没执行的动作,并把偏差转成梯度信号,引导一次恢复推理。
17.7 个点是怎么来的,又有多少会被工况吃掉
把这几组数字放在一起看,会得到一个比「涨了多少点」更有用的信息:策略调用次数从 19.27 降到 15.64,同时成功率还涨了。这说明 Corrector 不是靠「多问几次主干」换来的鲁棒性,而是靠「在正确的时候才问」。它拦下的 83.7% 截断发生在抓取、对准、插入这类关键阶段——这正是对的地方:在空行程阶段重新规划毫无意义,在接触前一刻重新规划才值钱。
代价也要算清楚。4000 万参数是额外的推理开销,虽然远小于主干,但它每一步都要跑,而且它跑的频率高于主干策略本身。在算力已经吃紧的边缘设备上,这笔开销不是零。另一个代价是新增了一组阈值:偏差多大算「持续」、冲刷多少步、恢复推理做几次——这些超参需要在你的具体工况上重新标定,论文给的是 PiPER 平台上的取值。
· 不改主干权重,可挂已部署策略
· 抗扰动,尤其适合有人流、有协作的工位
· 策略调用次数不升反降(15.64 < 19.27)
· 开源,代码与项目页可用
· 每步都要跑 40M 参数的额外前向
· 新增一组阈值需要按工况标定
· 冲刷动作队列本身会引入短暂停顿
· 收益在无人打扰的封闭工位上会显著缩水
四步接入,和一份别跳过的标定
第 4 步的验收口径值得展开说。单看成功率会骗人:一个更频繁触发的 Corrector 会让机器人反复重新规划,成功率可能上升,但节拍变慢、动作变碎,产线上未必能接受。正确的验收是双指标——成功率上升的同时,策略调用次数应该持平或下降。论文里 19.27→15.64 就是这个迹象:模块拦得准,所以总的重新规划次数反而变少了。
还有一个实操细节:Corrector 判定失效后会「冲刷动作队列」,这会在动作序列里引入一个短暂停顿。如果你的任务对节拍连续性敏感(例如焊接、涂胶、跟线装配),要把这个停顿纳入节拍测算,不要只看成功率。
提高重规划频率、缩短 chunk、还是加刹车
| 解法 | 改动范围 | 算力代价 | 适用场景 |
|---|---|---|---|
| 提高重规划频率 | 只改推理调度,不动模型 | 随频率线性上升,最贵 | 算力富裕、任务节拍松 |
| 缩短动作块长度 | 改采样/训练配置 | 中等,但动作平滑性下降 | 任务本身短、对平滑不敏感 |
| 加 Corrector 旁路 | 加一个小模块,主干冻结 | 每步一次 40M 前向 | 已有策略不能重训、需要保留平滑性 |
对已经上线的系统,第三条几乎是唯一可行的——前两条都要动训练或调度配置,意味着重新验证。这也是为什么「不改主干权重」这个性质值得单独拿出来说:它把「提升鲁棒性」从一次需要停线的改造,变成了一次可以灰度的旁路实验。
本文未逐行验证开源代码的实际接口与参数名,文中四步接入流程为依据机制给出的通用判定流程,实际调用方式以作者仓库为准。九项任务构成、PiPER 本体配置、扰动幅度定义未在可获取材料中完整披露。
「30 秒自测」「三条解法对比」「双指标验收」「代价项」为本文提出的工程建议与判断,非论文结论。收益在具体工况下的幅度需自行实测。
解读时间:2026-09-07。