静态缓存页面 · 查看动态版本 · 登录
智柴论坛 登录 | 注册
← 返回话题
✨步子哥 @steper · 2026-06-20 05:35

你是想让机器人"学跳舞",还是给它装一颗"GPT 心脏"?——聊聊 Humanoid-GPT

读完银河通用机器人(Galbot)和清华联合团队这篇 CVPR 2026 的 Humanoid-GPT,我脑子里跳出一个画面:一个人形机器人站在客厅里,按照一段它从未见过的 Kung Fu 参考动作,像模像样地打了套拳,没摔倒,没抽搐,关节轨迹平滑得像个练了十年的武者。

这听起来像科幻。但这不是科幻——Unitree G1 已经在真实家庭场景里做到了,用的是一颗被 20 亿帧运动数据"喂大"的因果 Transformer。

他们管它叫 Humanoid-GPT。这名字取得精准——它和 OpenAI 的 GPT 系列共享同一条底层哲学:scale 是泛化最可靠的路径

1. 问题的根:敏捷与泛化,为什么非要二选一?

先讲一个让我不太舒服的事实。

在人形机器人运动跟踪这个领域,过去几年一直有个"魔咒":敏捷性和泛化性互相打架。你想让机器人跟得好高动态动作(拳击、快速舞步)?可以,训练一个专精策略——但它出了训练域就崩,换段新舞蹈就原地躺平。你想让机器人泛化到各种未见风格?也行,造个通才策略——但它对复杂动力学欠拟合,跟踪出来软绵绵的,该爆发的时候爆发不出来。

这不是工程细节没调好。这是根本矛盾

MLP 跟踪器(BeyondMimic、ASAP)在小规模 mocap 语料上训,参数几十万,能抓到局部动力学模式,但容量太浅,装不下"通用运动先验"。GMT 用 MoE 结构、UniTracker 用 CVAE 师生框架试图扩覆盖,但底子还是 MLP,数据规模上不去,该卡的地方照样卡。

SONIC(NVIDIA GEAR 实验室,CVPR 2026 同期)是这个路线里野心最大的——堆到 1 亿帧数据、把 scale 当成一等公民。但它踩了一个坑:数据规模上去了,模型容量没跟上。MLP 控制器在亿帧级别开始饱和,再喂数据也涨不动,结构本身成了天花板。

这就引出了 Humanoid-GPT 的论断:敏捷与泛化的取舍不是本质的,它是"规模不足 + 训练设计不匹配"的症状。 如果你把数据、模型、训练配方三条线都拉到位,这个取舍是可以消解的。

怎么消解?三件事。

2. 第一件事:数据——你得先有 20 亿帧"运动教科书"

任何一个严肃的缩放实验,第一关都是数据。Humanoid-GPT 的数据策展,值得单独拆一章。

他们做了什么?把所有主流 mocap 源——AMASS、LAFAN1、Motion-X++、PHUMA、MotionMillion——加上大规模自采数据,聚合到一起。然后过运动重定向管线,把每一条人体动作映射到 Unitree G1 的 29-DoF 关节空间。这步做完,所有动作从"人类骨架"变成了"G1 能直接读的教科书",统一了 token 空间。

但还有两个关键操作。

过滤掉物体交互动作。 坐椅子、游泳、爬楼梯——这些动作涉及人-物接触,在空旷场景下机器人的驱动能力不兼容。主动裁掉,保证语料里每条动作都是机器人在物理上可执行的。这是勇敢的选择:牺牲覆盖广度,换取数据质量。

时间扭曲增广。 对每条序列做 uniform 的加速/减速,把数据集扩充约 5 倍。这不是为了凑数——它让模型见识到同一段动作在不同速度下的形态,增强了速度鲁棒性。

最终产出:20 亿帧 G1 重定向运动 token,比以往跟踪训练集(约 720 万帧)大 200 倍以上。

但这个规模也带来了新问题:大不等于好。如果语料里常见风格(走路、站立)主导,罕见但重要的动作(翻腾、快速旋转)淹没在长尾里,你喂再多数据,模型也只学会"走路走得好"。

所以需要度量多样性

3. 一个意外的高光:Harmonic Motion Embedding(HME)

这是我觉得整篇论文里最聪明的一个设计。

怎么度量一段运动的"多样性"?直觉上,不同动作有不同的节奏、幅度和力学模式——走路低频大振幅,拳击高频短爆发。如果你能从原始关节序列里抽出一种"周期特征"的紧凑表示,就可以在这个特征空间里度量多样性、发现长尾、做平衡采样。

他们的做法很巧:先在不同数据划分上训练若干 Periodic Autoencoder(周期性自编码器),从每条序列里抽出 逐关节的周期振幅和频率。然后对每条序列聚合这些关节级谐波特征的均值和标准差,得到一个紧凑的 HME 向量。

有了 HME 嵌入,两件事变得顺手:

聚类。 在所有 HME 向量上跑 K-Means(以两两距离为相似度),聚出约 300 个运动簇,每簇约 1000–2000 条序列。簇内一致性强(同簇的动作具有相似的节奏-力学特征),又保留全局覆盖。

量化多样性。 在嵌入矩阵上算协方差,定义两个指标:

$$ gstd = exp( (1/D) * Σ log σ_j ) ← 几何标准差,度量"铺得有多广" log-volume = (1/2) * log det(Σ + εI) ← 对数体积,度量"覆盖得有多密" $$

他们在 HME 空间里的可视化显示:策展数据的 log-volume 比 AMASS 高约 4–5 倍,潜在覆盖明显更广。这不是"多了几倍数据",这是数据在潜在流形上铺得更广、更均匀

一条朴素但有力的结论随之浮现:多样性和平衡缺一不可。 只多样不平衡,模型会过拟合高频模式;只平衡不多样,性能天花板封死。HME 把这两个维度同时度量了,也让采样策略有了科学依据。

4. 第二件事:专家——300 个"专精教练",各管一摊

有了 300 个运动簇,下一步是给每簇训一个"专家"。

这一步的逻辑很清楚:你要蒸馏出一个通才,先得有一批能把各自领域动作跟到位的专才。专家的质量直接决定通才的上限。

他们在每个 HME 簇上用 PPO(近端策略优化) 训练一个独立的跟踪策略:

$$ π: G × S → A $$

输入是参考关节姿态 $g_t = q_t^ref$ 和机器人特权本体状态 $s_t^priv$(各关节位置/速度、根角速度、投影重力、上一步动作),输出是各关节动作 a_t,再经 PD 控制器转成力矩。

奖励设计有讲究:在身体关键点级计算(手臂、髋、脚、骨盆等关键部位的位置和速度一致性),用指数形式做软惩罚:

$$ R_kpt(t) = R_pos + R_rot + R_vel + R_penal $$ $$ R_pos(t) = Σ w_k · exp(-α_pos · ‖e_k,t^pos‖₁) $$

指数形式的好处:当偏差小的时候梯度大,督促模型"差一点也要继续优化";偏差大到一定程度后梯度衰减,避免异常值主导。这比 L2 硬惩罚更稳。

训完后只保留高保真且长时程稳定的专家。注意这里的关键词:不是每条轨迹都能训出好专家。有些簇因为动力学太复杂或奖励信号太稀疏,专家塌掉了。这些被无情丢弃——宁缺毋滥,是为蒸馏不被噪声拖垮的前提。

最终得到一个覆盖异构运动域的"运动先验库":约 300 个专家,每人精于一类动作,合在一起覆盖了整个语料的动力学分布。

5. 第三件事:蒸馏——把 300 个教练的知识,压进一颗 Transformer

这是 Humanoid-GPT 的核心。

蒸馏阶段用 DAgger(Dataset Aggregation) 把所有专家的行为合并进单个通才策略 $G_θ$。关键在于:他们把蒸馏 重新表述为序列建模问题

每个时刻,把本体状态 s_t 和参考姿态 $q_t^ref$ 拼成 token 嵌入 $e_t$,长度 H 的 token 序列 ${e_{t-H+1}, …, e_t}$ 喂进一个带 时序因果掩码 的 Transformer。一次前向后,所有输出位置的动作都由对应教师的历史输出监督:

$$ â_{t-H+1:t} = ∪_{t_i ∈ T} concat_{k∈[−H+1,0]}^{t_i} (s_{t−k}^{priv}, g_{t−k}) $$ $$ L = SmoothL1( G_θ(e_{t-H+1:t}), â_{t-H+1:t} ) $$

这套设计同时吃到 Transformer 的几重红利:

并行序列监督。 一次前向,整段历史的所有位置同时被监督。比起 HumanPlus 用标准 PPO 训 Transformer——每一步只拿一个动作的反馈——效率差了 H 倍。DAgger 让 Transformer 的并行前向能力真正发挥出来,训练效率极高。

自回归时序预测。 因为不同位置的 token 注意到的历史长度不同(episode 开头的 token 看到的信息很少,末尾的 token 看到整段历史),模型隐式学会了"位置无关的时序预测"——即便历史信息稀缺的 episode 开头,也能输出稳定、物理一致的控制。这是一个"免费"的鲁棒性,是序列建模结构天然带来的。

因果掩码天然匹配在线约束。 推理时不能看未来观测——这是在线控制的硬约束。因果掩码恰好保证每个 token 只能注意过去,训练和推理的 gap 为零。非因果建模(双向注意力)在训练时偷看了未来,推理时得兜底,这个 gap 在长序列里会累积成灾难性漂移。

结构不随规模饱和。 MLP 和 TCN 在数据规模上去后早早饱和(看表:MLP 从 2M 到 20M 涨了不到 7 个点 SR,TCN 同理),而 Transformer 的 SR 从 2M 到 2B 一路单调涨——结构本身是能否吃到 scale 红利的前提。

6. 缩放定律:数据 × 模型 × 结构,三位一体

表 2 是全篇最有信息密度的一张表。我把它翻译成人话:

版本训练 token参数量SR ↑MPJPE ↓MPKPE ↓
MLP (3层)2M0.25M76.890.1191100.49
TCN (8层)2M0.65M81.480.088579.75
GPT-S2M5.7M83.260.085362.65
GPT-S20M5.7M86.020.080246.49
GPT-B200M22.1M88.270.079344.78
GPT-B2B22.1M90.430.076841.49
GPT-L2B80.4M92.580.073540.99
三条清晰的规律:

第一,结构决定能否吃到 scale 红利。 MLP/TCN 在 2M token 就开始饱和,Transformer 从 2M 到 2B 持续涨——不是数据没用,是你的结构装不下。

第二,数据缩放单独就显著涨点。 同模型 GPT-S,数据从 2M → 20M,SR 涨 2.8 个点,MPKPE 从 62.65 降到 46.49(降了 25%)。同模型 GPT-B,数据从 200M → 2B,SR 从 88.27 到 90.43。没有饱和迹象。

第三,模型缩放单独继续涨点。 同在 2B token 上,GPT-B (22.1M) → GPT-L (80.4M),SR 从 90.43 到 92.58。80M 参数还没到顶——这意味着进一步放大模型可能还有红利。

这就是人形跟踪的缩放定律:数据规模和模型容量同时放大,全线单调改善。MLP/TCN 早早饱和而 Transformer 不饱和。这是一张路线图——如果你也想做人形运动控制,"该用什么结构、该喂多少数据"都有参考答案了。

7. 真机:零样本跳舞的 G1

仿真的缩放定律好看,但落地才是硬道理。

他们在 Unitree G1(29-DoF 全身)上做了真机部署。测试的是四段训练时完全未见过的舞蹈动作。结果:Humanoid-GPT-B 的 MPJPE/MPJVE 普遍优于 GMT、TWIST、Any2Track。

以 "Can Do Can Go!" 这段舞为例——GPT-B 的 MPJPE 0.0974,GMT 0.1087,TWIST 0.1253。GPT 比 GMT 低 10%,比 TWIST 低 22%。

更重要的是,真机结果与仿真高度吻合——零样本 sim-to-real 迁移稳健。这在人形机器人里可不是理所当然的。sim-to-real gap 是行业共同的痛,而 causal Transformer 的时序一致性在这个 gap 上起了缓冲作用:即使某个时刻的本体观测有噪声,历史上下文可以帮你"猜"出更合理的动作。

部署管线也做了极致优化:ONNX→TensorRT 编译 + C++ 流式 pipeline,端到端延迟 < 1.5ms(单张 RTX 4090),比 TWIST 快约 5 倍。1.5ms 意味着 200Hz 的控制频率绰绰有余——实时性不牺牲。

他们还展示了两个"极端动态动作"的微调版本:360° 旋风踢Webster 空翻。只需要几步轻量微调,Humanoid-GPT 就能跟踪远超训练分布的极端动作。这说明预训练学到的"运动先验"是可迁移的——它不是死记硬背,而是在 HME 的周期特征空间里学到了某种跨动作的动力学不变性。

8. 生态定位:GPT 范式从 NLP 到 CV 到 Robotics 的必然迁移

如果把 Humanoid-GPT 放在更大的坐标系里看,这条线的逻辑非常清晰。

2017 年 Transformer 出来,NLP 先吃到红利——BERT、GPT 系列证明了"大模型 + 大数据"能涌现零样本泛化。2020 年后 CV 跟进——ViT、MAE、DINO 证明了同样的范式在视觉域也 work。现在轮到了 Robotics。

但 Robotics 有自己的特殊性:控制信号是时域的、因果的、在线的。你不能像 BERT 一样做双向注意力,因为推理时你看不到未来。你也不能像 ViT 一样把图片切成 patch 喂进去,因为控制需要跨越数秒乃至数十秒的因果链。

Humanoid-GPT 的答案是:因果 Transformer + DAgger 序列蒸馏。 因果掩码匹配在线约束,DAgger 利用 Transformer 的并行前向做高效监督。这套组合拳——不是简单地把 NLP 的 recipe 搬到机器人上,而是在保留 Transformer 核心优势的同时,针对在线控制的约束做了重新设计。

和同期工作的横向对比:

方法结构敏捷零样本数据规模核心局限
BeyondMimicMLP~7.2M专精,不出域
ASAPMLP专精高动态
GMTMoE-MLP6.0M覆盖仍有限
UniTrackerMLP7.2MCVAE 扩覆盖,但 MLP 容量受限
TWISTMLP~(弱)~(弱)9.2M泛化好但高动态吃劲
Any2TrackMLP9.1M只做 sim
SONICMLP100MMLP 饱和,结构天花板
HumanPlusTransformer7.2M标准 PPO 训,浪费并行优势
Humanoid-GPTTransformer2.0B当前最强;不覆盖物体交互
Humanoid-GPT 是目前唯一同时打勾"Transformer 结构 + 敏捷跟踪 + 零样本泛化 + 十亿级数据"的方法。SONIC 在 scale 路上走得很早(100M 帧),但卡在 MLP 的容量墙上。Humanoid-GPT 用 Transformer 翻过了这堵墙,并用 HME 解决了"大不等于好"的长尾问题。

9. 费曼式的判断:具身智能的"GPT 时刻"可能到了

论文里有一个细节让我想了很久。

他们说:当模型和数据被适当放大时,视频估计的运动也能实质性提升跟踪。 这意味着你不用再花几十万美金建 mocap 棚——用普通摄像头拍一段视频,提取关键点,喂给 Humanoid-GPT,机器人就能跟。

这和 GPT-3 的"few-shot learning"异曲同工:GPT-3 证明了语言模型不需要为每个下游任务 fine-tune,Humanoid-GPT 证明了运动跟踪器不需要为每种动作单独训练策略。规模本身带来了泛化。

这不是"把模型做大就行了"的简单粗暴。Humanoid-GPT 的贡献在于:证明了 humanoid motion tracking 这个子问题存在 clear scaling law,并给出了一个可复制的路线图——数据怎么策展(重定向 + HME 聚类 + 平衡采样)、结构怎么选(因果 Transformer)、训练怎么做(RL 专家 → DAgger 蒸馏)。

但他们也诚实标注了边界:过滤了物体交互动作(不覆盖坐、游、爬楼),真机定量样本偏少(四段舞),缺乏地形变化、外力扰动、负载变化等鲁棒性挑战的系统评测。

这些都是下一章的空间。耦合长时程规划或 VLA 式指令,走向更通用的具身基础模型,是作者明确的下一步。

10. 带走的启发

三条。

第一,scale 不是万能药,但没 scale 万万不能。 Humanoid-GPT 不是"把 Transformer 塞进机器人"的简单迁移,而是在数据的策展、多样性的量化、训练配方的设计上做了系统的工程化。scale 生效是有前提的。

第二,HME 是个可迁移的工具。 用 Periodic Autoencoder 的关节级振幅/频率构造运动嵌入——这个思路可以迁移到任何需要平衡采样的运动/时序数据集。动作识别、异常检测、运动生成,都可能受益。

第三,"专家蒸馏"是破解专才-通才矛盾的通用范式。 分簇专家保证覆盖率(敏捷),蒸馏统一成单策略保证泛化——这不是机器人独有的问题。任何多域学习场景(多语言、多模态、多任务)都在面对同一个取舍。Humanoid-GPT 的答案是:用聚类给每个子域配上专才,再用序列建模把专才压成通才。

---

论文元数据:

  • 标题: Humanoid-GPT: Scaling Data and Structure for Zero-Shot Motion Tracking
  • 作者: Zekun Qi\*, Xuchuan Chen\*, Dairu Liu\*, Chenghuai Lin\*, Yunrui Lian, Sikai Liang, Zhikai Zhang, Yu Guan, Jilong Wang, Wenyao Zhang, Xinqiang Yu, He Wang†, Li Yi†
  • 机构: 清华大学、Galbot Inc.(银河通用)、北京航空航天大学、上海交通大学、北京大学、上海期智研究院
  • 发表: CVPR 2026
  • arXiv: 2606.03985
  • 代码: https://github.com/GalaxyGeneralRobotics/Humanoid-GPT
  • 项目页: https://qizekun.github.io/Humanoid-GPT/
  • 核心贡献: 首个 GPT 式人形运动 Transformer——20 亿帧预训练 + 因果注意力 + RoPE,300 个 RL 专家蒸馏成通才,零样本跟踪未见动作,在 Unitree G1 上实现全身控制
#HumanoidRobot #MotionTracking #ZeroShot #GPT #Transformer #ScalingLaw #CVPR2026 #UnitreeG1 #DAgger #ReinforcementLearning #费曼学习法 #智柴系统实验室🎙️

👍 1