MotionGRPO: Overcoming Low Intra-Group Diversity in GRPO-Based Egocentric Motion Recovery¶
会议: ICML 2026
arXiv: 2605.05680
代码: https://github.com/3DAgentWorld/MotionGRPO/ (有)
领域: 人体理解 / 第一人称 3D 动作恢复 / 扩散模型 + 强化学习
关键词: 全身动作恢复、HMD、GRPO、扩散模型、Perlin 噪声注入
一句话总结¶
MotionGRPO 把 head-mounted 设备的第一人称全身动作恢复转化为扩散采样上的 MDP,用 GRPO 配合"轨迹条件感知模型 + 4 个 joint-level 子奖励"的混合奖励做后训练;同时识别出"输入条件太强、组内样本几乎一样导致 advantage 方差消失"这一致命瓶颈,并用 Perlin 噪声注入条件来恢复组内多样性,在 AMASS/RICH 上把 MPJPE 从 EgoAllo 的 124.985 mm 降到 114.207 mm。
研究背景与动机¶
领域现状:第一人称(HMD)全身动作恢复主流是基于 head SLAM 信号的扩散模型(EgoEgo、EgoAllo 等),用条件扩散去模拟"可能的人体动作分布",再从纯高斯噪声反向采样。
现有痛点:(1)扩散目标本质是分布匹配,缺乏对单个关节位置的强约束,预测出来经常关节位置偏移、脚滑、地面穿透、抖动;(2)这些视觉/几何瑕疵又无法在扩散框架内简单加 loss——早期 timestep 还都是噪声,硬加 joint loss 会震荡;(3)已有 RL 方案(PPO 在物理模拟器里训练)不稳定且算力惊人。
核心矛盾:要么走分布匹配(精度差),要么走 RL(不稳定/贵)。GRPO 看似是省 value-net 的优雅 RL,但作者发现"动作恢复任务条件太强 → 组内输出几乎相同 → advantage std≈0 → 梯度消失",让 vanilla GRPO 直接失效。
本文目标:(1)把 GRPO 引入扩散动作恢复并设计有意义的混合奖励;(2)破解"低组内多样性 → 梯度消失"这一新瓶颈。
切入角度:作者把扩散采样视为多步 MDP,状态是 \((c,t,x_t)\)、动作是 \(x_{t-1}\),sparse reward 只在 \(t=0\) 给;并提出"强 condition 是输出 diversity 的根因,所以要在 condition 上注入噪声"这一逆向思路。
核心 idea:用 SDE-based 扩散采样 + 共享初始噪声拉出一组样本,奖励层面用感知模型 + 4 个 joint metric,再用时空平滑的 Perlin 噪声扰动头部条件来恢复 GRPO 所需的组内方差。
方法详解¶
整体框架¶
输入是 HMD 的 CPF 头部轨迹 \(\mathbf{H}_{cpf}^{1:T}=\{R^{1:T},\tau^{1:T}\}\),经过 EgoAllo 的 invariant function \(g(\cdot)\) 转成 condition \(\mathbf{c}\);扩散主干用 transformer 学 SMPL-H 表示 \(\mathbf{M}=\{\Theta,\beta\}\)。MotionGRPO 在 EgoAllo 之上做 RL 后训练:(1) 对每个 condition 用 SDE 反向采样 + 共享初始噪声拉出 \(G\) 个样本 \(\{o_i\}\);(2) 同时算两类奖励——视觉级(学的感知打分模型 \(\phi(\cdot)\))+ joint 级(rotation/position/aligned-position/velocity 四项),按 GRPO 的 group-relative normalization 算出每个子奖励的 advantage 再求和;(3) 用 PPO-style 的 importance ratio 更新扩散策略;(4) 在每个 condition 上施加时空平滑的 Perlin 噪声扰动 \(\tilde{\mathbf{H}}=\{R,\tau+\lambda\mathcal{P}(t)\}\) 以增大组内方差。
关键设计¶
-
混合奖励:学习的感知模型 + 4 个 joint 子奖励:
- 功能:同时约束"全局视觉自然"和"局部关节精度",覆盖扩散框架内不可微的视觉伪影。
- 核心思路:视觉级用一个 trajectory-conditioned 感知模型 \(\phi\)(spatial-attention + temporal-attention transformer),输入是 SMPL-H skeleton + head trajectory,输出 plausibility 分数;这个模型用 InfoNCE 在线对比训练,正样本是 (GT motion, head),硬负样本是当前 policy 在最后几个 sampling step 生成的伪样本,温度 \(\delta=0.07\)。视觉奖励 \(\mathcal{R}_{vis}=\exp(\omega_{vis}\cdot s)\)。joint 级有四项:\(\mathcal{R}_{rot}\)(局部旋转 L1)、\(\mathcal{R}_{pos}\)(全局位置 L2)、\(\mathcal{R}'_{pos}\)(per-frame Procrustes 对齐后位置 L2)、\(\mathcal{R}_{vel}\)(速度差 L2),均通过 \(\exp(-\omega\cdot\text{err})\) 形式压到 (0,1]。每项独立做 group-relative 归一化得到子 advantage,再求和:\(\hat A_i=\sum_k \hat A_{i,k}\)。
- 设计动机:感知模型抓"foot skating/jitter/穿模"这类标准 loss 拍不到的伪影;joint metric 对齐 GT。两者通过 GRPO 的非可微优化能力同时被学进策略。
-
在线硬负例 + 感知模型对比训练:
- 功能:让感知打分对"接近 GT 但有瑕疵"的动作敏感,避免它退化成简单的"GT vs 随机噪声"分类器。
- 核心思路:负样本不是手工加噪声,而是从当前 policy 的最后 3 个 sampling timestep 实时采出来——这些样本结构上很接近 GT 但带着 policy 当前的 typical 瑕疵;InfoNCE loss \(\mathcal{L}_{NCE}=-\mathbb{E}\log\frac{\exp(\phi(J^+|H^+)/\delta)}{\exp(\phi(J^+|H^+)/\delta)+\sum_i\exp(\phi(J_i^-|H_i^-)/\delta)}\)。
- 设计动机:reward model 静态训完会被 policy 攻击(reward hacking);让负例随 policy 演化能持续提供有意义的梯度,这是"online preference model"思路在动作恢复里的对位实现。
-
Perlin 噪声注入头部条件以破除低组内多样性:
- 功能:在不破坏 head 信号物理平滑性的前提下,给 GRPO 的 sample group 注入足够方差,使 advantage normalization 不再除零。
- 核心思路:观察到 motion recovery 由强条件 \(\mathbf{c}\) 主导,输出几乎一致,advantage 公式 \(\hat A_i=(\mathcal{R}_i-\mu)/\sigma\) 在 \(\sigma\to 0\) 时数值不稳,引起 vanishing gradient。解决方案:用时间连续的 Perlin 噪声 \(\mathcal{P}(t)\) 扰动头部 translation:\(\tilde{\mathbf{H}}=\{R,\tau+\lambda\mathcal{P}(t)\}\),再过 \(g(\cdot)\) 得到扰动 condition \(\mathbf{c}\);这样在采样时 policy 面对的是略偏分布外的输入,输出方差自然回升。
- 设计动机:直接加高斯白噪声会破坏 head 轨迹的时间平滑性、引入高频抖动,与人头运动先验冲突;Perlin 噪声天然平滑、频谱可控,能在不破坏物理合理性的前提下扩出"近邻条件"。
损失函数 / 训练策略¶
GRPO 目标 \(\mathcal{J}_{GRPO}(\theta)=\mathbb{E}\left[\frac{1}{G}\sum_i\frac{1}{n}\sum_t \frac{\pi_\theta(o_{i,t}|\mathbf{c})}{\pi_{old}(o_{i,t}|\mathbf{c})}\hat A_i\right]\),省略 clip 与 KL;总奖励 \(\mathcal{R}_{total}=\mathcal{R}_{vis}+\mathcal{R}_{joint}\)(\(\mathcal{R}_{joint}=\mathcal{R}_{rot}+\mathcal{R}_{pos}+\mathcal{R}'_{pos}+\mathcal{R}_{vel}\))。算法 1 显示外层循环:采 batch → 旧策略复制 → 注入 Perlin 噪声扰动 → 共享初始噪声 SDE 采 \(G\) 样本 → 算各子奖励的 \(\mu/\sigma\) → 求 advantage → 跨 \(n\) 个 sampling step 做 importance-weighted 更新。感知模型与 policy 交替/并行更新。
实验关键数据¶
主实验¶
| 数据集 | 方法 | MPJPE↓(mm) | PA-MPJPE↓(mm) | MPJVE↓(mm) | MPJRE↓(°) | Jitter↓ | GP↓(m) | FS↓(m) |
|---|---|---|---|---|---|---|---|---|
| AMASS | EgoEgo | 177.231 | 152.125 | 588.661 | 9.457 | 2.643 | 1.331 | 1.241 |
| AMASS | EgoAllo | 124.985 | 103.958 | 553.221 | 8.777 | 2.394 | 1.143 | 1.290 |
| AMASS | EgoAllo\(^\aleph\)(带 test-time 优化) | 121.651 | 101.034 | 483.471 | 8.728 | 1.455 | 1.099 | 0.479 |
| AMASS | MotionGRPO | 114.207 | 95.512 | 531.217 | 8.413 | 2.000 | 0.901 | 1.169 |
| AMASS | MotionGRPO\(^\aleph\) | 111.776 | 93.702 | 461.702 | 8.330 | 1.309 | 0.963 | 0.399 |
| RICH | EgoAllo | 192.686 | 172.724 | 506.992 | 12.734 | 4.135 | 4.145 | 1.094 |
| RICH | MotionGRPO\(^\aleph\) | 184.992 | 167.032 | 378.423 | 11.886 | 1.614 | 3.156 | 0.199 |
消融实验¶
| 配置 | 关键指标 | 说明 |
|---|---|---|
| Vanilla GRPO(无 Perlin 噪声) | 组内 diversity 几乎为 0,advantage std≈0,loss 不下降 | 直接验证"低组内多样性 → vanishing gradient"假设 |
| 只用视觉奖励 / 只用 joint 奖励 | 视觉级看起来好但 MPJPE 提升有限 / 反之;两者结合最优 | 混合奖励必要 |
| 在线硬负例 vs 静态噪声负例 | 在线硬负例使感知模型对 policy-typical 瑕疵更敏感,长期奖励更稳 | 防止 reward hacking |
| Perlin noise 缩放 \(\lambda\) | \(\lambda\) 太小 diversity 不够、太大破坏先验,存在最佳值 | 表明 Perlin 是"恰到好处的扰动" |
关键发现¶
- "低组内多样性 → advantage 方差消失"是把 GRPO 从 generation 任务搬到 reconstruction 任务时几乎必然出现的死结,本文是首批正面提出并解决的工作之一。
- 学习的视觉感知模型 + 显式 joint metric 的组合,比单纯加几个手工 loss 项更能压住 jitter/foot skate/穿模这种"看上去就别扭"的伪影。
- 测试时优化(标 \(\aleph\))能进一步把 Jitter 从 2.0 砍到 1.3、FS 从 1.17 砍到 0.40,说明 MotionGRPO 后训练 + EgoAllo 的 test-time refinement 是互补的。
亮点与洞察¶
- 把"GRPO 在 reconstruction 任务上失败的具体数学原因"讲透——advantage 公式分母 \(\sigma\to 0\),这一论证清晰、可复用到任何 RL+条件强约束任务。
- 用 Perlin 噪声而不是高斯,是非常 domain-aware 的选择:保留时间平滑性 = 保留人头运动的物理先验,避免训练信号自我矛盾。
- 在线 contrastive reward model 把"reward hacking"问题用 self-play 思路解掉,思路可平移到 video generation、TTS 等评分难的扩散任务。
- 整体设计是 RL 后训练叠在扩散预训练上、感知 reward + 几何 reward 双轨——这是当下"diffusion + RLHF"流派在结构化任务上的范式样板。
局限与展望¶
- 评估主要在合成 device pose(AMASS)和半真实数据(RICH)上,对真实 Project Aria 长时序、多人、强光线变化的复杂场景未做大规模验证。
- Perlin 噪声尺度 \(\lambda\) 是手调超参,没有自适应调节机制,过大可能破坏物理先验、过小则恢复不到足够 diversity。
- 感知模型在线对比训练的稳定性依赖 policy 演化速度;如果 policy 跑得过快,负样本质量可能跟不上。
- 当前只用 head 轨迹,没充分利用可选的 egocentric image 或 hand observation;与多模态融合的潜力未挖尽。
- 视觉指标里 FS 显著降到 0.4 m 看起来仍有改进空间,离真正"看不到脚滑"的体感仍差。
相关工作与启发¶
- vs EgoAllo (Yi et al., 2025): MotionGRPO 把 EgoAllo 当作 base policy,仅做 RL 后训练就拿到 MPJPE 约 8% 降幅;说明 EgoAllo 的预训练 prior 还有大量未释放潜力。
- vs PPO 在物理模拟器中训练: 传统 RL 物理 sim 慢且不稳定;GRPO 省 value-net,结合扩散 SDE 采样直接在动作空间里训,效率高得多。
- vs DDPO / DPO for image generation: 同样是把扩散转 MDP + RL,但 image generation 天然多样,本文核心 contribution 反而是"补回 diversity",呈现 reconstruction vs generation 的根本差异。
评分¶
- 新颖性: ⭐⭐⭐⭐ 首批把 GRPO 引入扩散 motion recovery 的工作,并真正诊断+解决"低组内多样性"问题;Perlin 注入策略与在线感知 reward 的组合都很有想法。
- 实验充分度: ⭐⭐⭐⭐ AMASS/RICH 主比较 + ADT 真实测试 + 多个消融,但缺与 PPO/物理模拟器、DPO 等其它 RL 路线的直接对比。
- 写作质量: ⭐⭐⭐⭐ 把"GRPO 为什么失败"用 advantage 公式讲清楚,pipeline 图与算法伪代码齐备;reward 公式较多,对读者有一定门槛。
- 价值: ⭐⭐⭐⭐ 对 VR/AR 全身追踪、扩散 + RL 后训练范式都有直接借鉴价值;代码开源进一步降低复现门槛。