Refined Policy Distillation——将 VLA 通才知识蒸馏为 RL 专家策略
论文:Refined Policy Distillation: From VLA Generalists to RL Experts
机构:University of Technology Nuremberg, Germany
发布时间:2025年3月(arXiv v2: 2025年8月)
发表会议:IROS 2026
分类标签:
Policy DistillationPPOVLA→RLBehavioral CloningManiSkill3
一句话总结
RPD 提出将大型 VLA 通才模型蒸馏为紧凑的任务专用 RL 策略:在 PPO 训练的同时加入 VLA 教师动作的 MSE 引导项,使学生策略既能利用 VLA 的任务知识加速探索,又能通过 RL 交互超越教师性能,在 ManiSkill3 的 8 个操作任务上一致快于 vanilla PPO 收敛,尤其在稀疏奖励和相机视角变化场景下优势显著。
一、问题与动机
1.1 VLA 的两大瓶颈
VLA(Vision-Language-Action)模型通过大规模模仿学习获得了良好的泛化能力,但存在两个关键问题:
- 成功率不如专家策略:VLA 的性能上限受制于训练数据的数量和质量,无法超越人类遥操作员的示范水平
- 迁移代价高:场景变化(如相机角度微调、新物体出现)通常需要重新采集数据并微调,成本高且不可扩展
1.2 RL 的优势与困境
RL 在理论上可以无限扩展——智能体通过与环境交互自主生成数据,且策略参数量远小于 VLA(更快推理)。但在实践中:
- 探索效率低:尤其在稀疏奖励下,需要先随机完成一次任务才能获得有意义的信号
- 超参数敏感:不同任务需要精心调参
- 真实机器人不可行:需要数百万步交互,通常只能在仿真中训练
1.3 核心洞察:VLA 的任务知识即使在低成功率下仍有价值
RPD 的关键发现是:即使 VLA 本身在目标环境中的成功率很低甚至为零,它存储的通用任务知识仍然可以引导 RL 探索。
用大白话说:VLA 可能完不成任务,但它大部分时候"方向是对的"——比如抓取 cube 时它知道要先接近再合拢夹爪。这种"不完美但有方向性"的动作正好可以替代 RL 的随机探索,大幅提升采样效率。
1.4 与已有工作的区别
| 方法 | 蒸馏方向 | 能否超越教师 | 推理开销 |
|---|---|---|---|
| Proximal Policy Distillation (PPD) | RL → RL | 可能 | 需采样 VLA 分布(KL 散度) |
| RLDG (Xu et al.) | RL 生成数据 → VLA 微调 | 不能(VLA 仍需人工数据) | VLA 推理 |
| Behavioral Cloning | VLA → 小模型 | 不能(受限于教师上限) | 无 RL |
| RPD(本文) | VLA → RL 专家 | 可以(RL 交互超越) | 仅训练时需 VLA 推理 |
二、预备知识
2.1 有限 MDP
将机器人任务建模为有限马尔可夫决策过程:
:状态空间(RGB 图像 ) :动作空间(相对 TCP 运动 ) :奖励函数 :折扣因子
RL 目标:找到最优参数
2.2 PPO 回顾
PPO 的 clipped surrogate 目标函数:
其中
2.3 Behavioral Cloning
给定专家数据集
在高斯动作分布假设下,BC 目标等价于最小化均值之间的 MSE(忽略方差项)。
三、核心方法:Refined Policy Distillation
3.1 RPD 总体思路
RPD 在 PPO 训练循环中引入 VLA 教师的动作引导。每个训练步:
- RL 学生策略
采样动作 并与环境交互 - VLA 教师
对同一观测也产生动作 - 用修改后的目标函数同时优化 RL 回报和与 VLA 动作的一致性
3.2 RPD 目标函数
核心公式——将 PPO 目标与 MSE 蒸馏项相加:
其中 MSE 项度量 RL 策略均值与 VLA 动作的差距:
为什么是减号? PPO 目标是最大化的(maximize
),MSE 目标是最小化的。减去 MSE 等价于在最大化总目标时同时最小化 MSE。
为什么用 MSE 而不用 KL 散度? PPD 使用 KL 散度需要从 VLA 采样多个动作来估计分布,对于 7B 参数的 VLA 来说计算开销巨大。MSE 只需 VLA 输出一个动作即可,实验表明单样本估计已经足够。
3.3 RPD 变体对比
| 变体 | 蒸馏损失 | 效果 |
|---|---|---|
| RPD-MSE(推荐) | 最优——只约束均值,保留 RL 方差自由度 | |
| RPD-L1 | 接近 RPD-MSE,稍弱 | |
| RPD-BC | $-\ln \pi_\theta(a^{\text{VLA}} | s)$(含方差项) |
RPD-BC 的失败揭示了一个关键设计选择:只约束动作均值、不约束方差。如果连方差也约束了,学生就被锁死在教师水平,失去了 RL 探索和自我改进的能力。
3.4 VLA 集成架构
RPD 通过 HTTP API 服务器实现 VLA 与 RL 的解耦:
- VLA 运行在独立 Python 环境中,通过 HTTP 暴露推理接口
- RL 训练循环向 VLA 服务器发送批量观测,获取教师动作
- 同机部署时使用共享内存避免大图像的序列化瓶颈
3.5 VLA 教师:Octo 与 OpenVLA
RPD 在两个代表性 VLA 上验证:
| VLA | 参数量 | 特点 |
|---|---|---|
| Octo | 93M | 轻量、支持批处理、推理快 |
| OpenVLA | 7B | 大模型、不支持批处理、推理慢 |
由于 Octo 和 OpenVLA 原始权重只在真实世界数据上训练(real-to-sim gap),两者在 ManiSkill3 上直接评估成功率为 0%。因此 RPD 先在 ManiSkill3 的 RL 专家演示上微调了两个 VLA。微调后 Octo 在 PushCube 上达 67%、PullCube 上达 90%;OpenVLA 在 PullCube 上达 92%。
四、实验设置
4.1 仿真平台
ManiSkill3——GPU 并行化机器人仿真环境,8 个操作任务:
| 任务 | 语言指令 | 是否在微调集中 |
|---|---|---|
| PickCube | "pick up the cube" | 是 |
| LiftPegUpright | "lift the peg upright" | 是 |
| PullCube | "pull the cube towards the robot base" | 是 |
| PushCube | "push the cube away from the robot base" | 是 |
| RollBall | "push the ball" | 是 |
| StackCube | "stack the red cube on the green cube" | 是 |
| PullCubeTool | "pull the cube by using the red tool" | 否(hold-out) |
| PokeCube | "push the cube by using the blue tool" | 否(hold-out) |
4.2 观测与动作
- 观测:human camera 视角 RGB 图像(
),VLA 和 RL 使用相同视角 - 动作:相对 TCP 运动
- 最大 episode 长度:300 步
4.3 奖励设定
- Dense reward:每步给出基于距离、接触等的成型奖励
- Sparse reward:episode 结束时 +1(成功)/ -1(失败)/ 0(其他),
从 0.8 调为 0.99
4.4 基线
- Vanilla PPO:ManiSkill3 默认超参数
- PPD(Proximal Policy Distillation):PPO + KL 散度蒸馏项,需从 VLA 采样 10 个动作拟合多元高斯
- VLA 教师:微调后的 Octo / OpenVLA 直接评估
五、实验结果
5.1 RPD 变体与基线对比(PickCube)
在 PickCube 任务上的关键发现:
| 方法 | 最终成功率 | 收敛速度 | 稳定性 |
|---|---|---|---|
| RPD-MSE(Octo) | ~80% | 最快 | 方差最小 |
| RPD-MSE(OpenVLA) | ~75% | 快 | 单次运行 |
| RPD-L1 | ~80% | 快 | 方差小 |
| Vanilla PPO | ~80% | 慢 2-3x | 波动大 |
| RPD-BC | ~12%(≈教师水平) | 早期快后停滞 | — |
| PPD | ~0% | 无法学习 | — |
关键观察:
- RPD-MSE 和 RPD-L1 一致优于 PPO baseline,收敛更快、方差更小
- RPD-BC 只做蒸馏不做精炼——因为方差项强制标准差趋零,策略过拟合教师
- PPD 完全失败——VLA 动作分布常呈双峰,用单峰高斯拟合计算 KL 散度不准确
5.2 六任务 Dense/Sparse 奖励对比
在 6 个 in-distribution 任务上,RPD vs PPO(均使用 Octo 教师):
Dense reward:
- 所有 6 个任务上 RPD 均更快收敛,多数情况成功率更高
- RollBall 和 StackCube 上 PPO 完全失败,RPD 仍能部分成功
Sparse reward(更能体现 RPD 价值):
- 所有 6 个任务上 RPD 一致大幅优于 PPO
- 大多数任务中 PPO 在稀疏奖励下完全无法学习,RPD 仍然成功
RPD 在稀疏奖励下优势更大,原因是:稀疏奖励下 RL 必须先"碰巧"成功一次才能获得信号,VLA 教师的引导大幅缩短了这个"首次成功"的等待时间。
5.3 跨任务泛化(Hold-out 任务)
对于 VLA 微调时未见过的 PullCubeTool 和 PokeCube:
- Dense reward:RPD 不如 PPO——因为 dense reward 要求使用工具,VLA 从未学过工具使用,其动作反而误导探索
- Sparse reward:RPD 优于 PPO——因为 sparse reward 只看结果(cube 到达目标位置即可),VLA 虽不会用工具但知道如何推/拉 cube,这种知识仍然有效
5.4 相机视角变化鲁棒性
将 PushCube 的相机角度微调后:
| 方法 | 原视角成功率 | 新视角成功率 |
|---|---|---|
| Octo 教师 | 67% | 0% |
| OpenVLA 教师 | 27% | 4.5% |
| Vanilla PPO | ~80% | ~80%(不受影响) |
| RPD(Octo) | — | 优于 PPO |
| RPD(OpenVLA) | — | 优于 PPO |
关键发现:VLA 成功率从 67% 骤降到 0%,但 RPD 仍能从中受益。这验证了核心假设——低成功率不等于无用动作。VLA 可能"差一步"就完成任务,这些"几乎正确"的轨迹对 RL 探索仍有极高引导价值。
六、类比总结
RPD 的核心思想可以类比为师徒制学习:
- VLA 教师就像一个知识渊博但动手能力一般的导师——他知道"大方向"(去哪、怎么抓),但细节上不够精确
- RL 学生是一个零基础但可以无限练习的学徒——有环境交互能力,但不知道从哪开始
- RPD 让导师在旁边"指路"(MSE 引导),学徒自己去练(RL 探索),最终学徒不仅学会了导师的知识,还通过大量练习超越了导师的水平
- 关键是:导师只需要"指方向"就够了,不需要每次都完美示范
七、局限性与未来方向
7.1 受限于 VLA 教师质量
如果 VLA 对目标任务完全没有先验知识(既没见过类似任务,动作分布也不具备有用偏置),RPD 可能反而拖累 PPO 训练——这在 dense reward 的 hold-out 任务上已有体现。
7.2 仍需大量仿真交互
尽管采样效率有所提升,RPD 仍需数百万步仿真交互才能收敛,离真实机器人在线部署仍有距离。需要结合 sim-to-real 方法弥补。
7.3 仅验证了 on-policy RL
当前 RPD 只扩展了 PPO。理论上 MSE 引导项也可以加入 SAC 等 off-policy 算法,但未做实验验证。
7.4 VLA 推理是训练瓶颈
训练时每步都需要 VLA 推理一次,对于 7B 参数的 OpenVLA 来说推理极慢(且不支持批处理),严重限制了训练吞吐量。
八、个人思考
8.1 蒸馏 vs 直接微调的哲学差异
与本站大多数 VLA RL 后训练论文(如 RLVLA、VLA-RL)不同,RPD 不微调 VLA 本身,而是训练一个全新的轻量 RL 策略。这带来了截然不同的权衡:
| 微调 VLA(主流方向) | RPD(蒸馏到 RL) | |
|---|---|---|
| 推理开销 | 仍需运行完整 VLA(7B+) | 策略参数极少,推理快 |
| 通用性 | 保留 VLA 的多任务能力 | 单任务专家,失去通用性 |
| 训练成本 | 只需微调,利用预训练权重 | 需从头训练 RL + VLA 推理 |
| 能否超越教师 | 可以(RL 微调) | 可以(RL 探索) |
RPD 更适合部署场景明确、需要高频低延迟推理的应用,而非追求通用泛化。
8.2 与 GR-RL 的互补性
GR-RL 同样是将通才 VLA 特化为专家,但保持了在 VLA 参数空间内微调(隐空间 RL)。RPD 则跳出 VLA 架构,训练独立的小模型。两者可以互补:
- 对延迟敏感的场景(如高频控制)→ RPD(紧凑策略)
- 对感知能力要求高的场景(如开放世界)→ GR-RL(保留 VLM 感知骨架)
8.3 MSE 引导的普适性
RPD 的 MSE 引导机制极其简洁——只需教师输出一个动作即可,不要求教师策略的分布形式、不要求可微。这意味着它可以用于任何能输出连续动作的教师:
- 经典规划器(如 MPC)
- 人类遥操作实时流
- 其他模态的策略(如触觉策略)
8.4 PPD 失败的启示
PPD(基于 KL 散度)的失败很有启发性:VLA 的动作分布常呈双峰(如"向左推"和"向右推"都有概率),用单峰高斯去拟合并计算 KL 散度,得到的梯度方向可能完全错误。这与 FPO++ 中 flow policy 密度不可计算的问题在本质上相似——都提示我们在 VLA + RL 的结合中需要绕开显式密度估计。
参考
- Octo (Ghosh et al., 2024):本文使用的轻量 VLA 教师(93M 参数)
- OpenVLA (Kim et al., 2024):本文使用的大规模 VLA 教师(7B 参数)
- PPO (Schulman et al., 2017):RPD 的 RL 基础算法
- PPD (Spigler, 2024):基于 KL 散度的策略蒸馏基线
- RLDG (Xu et al., 2024):用 RL 生成数据微调 VLA 的反向范式
- ManiSkill3 (Tao et al., 2025):GPU 并行化机器人仿真平台