真实数据 vs 仿真数据:一笔诚实的成本账

仿真数据看似接近免费,直到现实差距寄来账单。一笔关于真实与仿真数据的诚实成本账。

阅读约 4 分钟

一座 GPU 农场可以在一夜之间生成一百万次抓取尝试,每一次都带着完美的标注,成本大约只是电费。与一个人类每次小心翼翼地采集一条轨迹相比,仿真看上去已经赢了。只是账单来得晚一些,而且是用另一种货币结算的:现实差距(reality gap)。

仿真数据不是免费的。它生产起来便宜,信任起来昂贵;真实数据则恰好相反。把这笔账算清楚,而不是报一个"每样本边际成本"就打住,才是区分一套能落地的训练策略和一套卡在 sim-to-real 差距里的策略的关键。

我的论点很简单。即便一个项目重度依赖仿真,它依然需要一份真实语料来锚定并度量那道差距;假装不需要,正是团队白白烧掉一年的方式。

仿真诱人的经济学

再生成一个仿真回合的边际成本接近于零。真值标注是免费附赠的:位姿、接触、分割,绘制场景的仿真器全都知道。危险或罕见的情形可以安全地大量生成,而域随机化(domain randomization)又通过在每次运行中扰动纹理、光照和物理参数来拓宽覆盖面。像 NVIDIA GEAR Lab research 这样团队在大规模仿真与迁移上的工作,正建立在这些优势之上。纸面上,供给曲线几乎是平的:想要十倍的数据,就花十倍的算力。

现实差距是一项成本,而不是脚注

接触物理、摩擦、可变形材料和传感器噪声,恰恰是仿真器建模得最差的东西。一个过拟合到仿真器怪癖上的策略,在真实硬件上会失败,有时还败得很惨。缩小这道差距要花真正的工程:系统辨识、更好的物理引擎,以及对随机化范围无休止的调参。而且你依然需要真实数据,来检验自己究竟有没有把它缩小。Physical Intelligence 在真实操作上的工作,以及像 DROID 这样的真实遥操作数据集,都在提醒我们:硬件是最终的裁判,而且它不按曲线打分。

表 1:真实示范数据与仿真示范数据的诚实成本对比
维度真实数据仿真数据
每条示范的边际成本接近于零
标注质量需人工标注,可能有噪声完美真值
接触精度天然真实取决于物理引擎
长尾覆盖受采集时间限制可用软件扩展
前期成本采集装置与操作员资产、场景、物理调校
迁移风险无,本就是真实sim-to-real 差距

各自真正的强项

仿真胜在运动控制与全身强化学习、大规模并行、场景多样性,以及那些你绝不会在真实世界里搭建的罕见或危险事件。真实数据胜在富接触操作、可变形物体、传感器噪声的真实统计特性,以及那些没有哪个奖励函数想到要指定的、人类才有的小策略。像 Open X-Embodiment 这样聚合起来的真实语料之所以宝贵,正因为它汇集的是跨多种机器人的真实行为,而不是合成轨迹。

诚实的总成本

仿真的隐性成本很少被摆上幻灯片。总得有人来制作 3D 资产、搭建场景、调校物理,还要跑那份你省不掉的、用真实数据做的验证。真实数据也有自己的隐性成本:采集基础设施、操作员、清洗与标注。把两栏都加起来,诚实的结论是它们互为补充。真实数据不是等仿真跑通后就能删掉的一个条目。它是给仿真提供接地的锚,并告诉你仿真的产出究竟有没有意义。

仿真能把你已经信任的数据成倍放大,却造不出你从未拥有过的信任。

该怎么分配预算

把仿真数据当成免费的,是这张清单上最贵的错误。正确的问法不是"真实还是仿真",而是"一项技能的哪一部分可以在仿真里安全地放大,哪一部分必须在真实接触中接地"。运动、导航和粗略的场景多样性,在仿真里很划算;富接触的灵巧操作、可变形物体和传感器噪声,仍然属于真实数据。把两者摆在同一张成本表上,你就不再把它们看作对手,而会看成同一条流水线的两端。

simulation-datasim-to-realreal-datacostdatasets

来源