具身操作数据和跨本体的交互表示
此文暂时搁置,因为这个题目太大了。我现在拥有的经验知识有点少,缺乏再次问题中自己的落点,现在去读文献和归纳,只是文本层面的综述,意义不大。
ref 让我想写这个blog的trigger: https://mp.weixin.qq.com/s/bv30gsRHPmTB3ngMdxviag 参考文献: https://jasper-aaa.github.io/embodied-data-pyramid/
这篇blog想干什么 具身数据现在也是个大热话题,众说纷纭。我不可能全面地讲所有的看法,我只是站在我自己的立场上带着好奇问一个问题:当具身赛道回归冷静务实,什么样的数据还是值得收集的?
具身操作领域,数据是一个大问题。 数据的作用大于模型架构的作用,数据越好,数据越多,训出来的模型就越强。这几乎成为一个行业共识。
scaling law:
现在有很多不同的收集数据的路径(数据金字塔)
不是依赖于一个数据源,而是利用一个recipe,从不同的数据源中学到不同的能力。
我们期待模型从数据中学到什么能力
视觉感知vision
语言理解language
动作生成action
flow matching
causality/world predicting
推理
评估方式
泛化性 down stream task utility physical fidelity/sim2real gap
数据集中,我们关注哪些factor?
数据的选择主要是在两个因素间的trade-off: scalibility: 单位数据获取成本低,规模大 transferibility:单位数据对model能力的增量大 和机器人越一致,能力增益越大,但收集起来也越贵。
Embodiment多样性
不同机器人的动作空间怎么对齐 我觉得ego-centric video是放在这一类底下的。人也是一种异构的机器人。从人到机器人的数据迁移,一方面是由从视频中恢复kinematics和interaction的问题,另一方面还是action retargeting问题,我觉得前者更多是CV领域工程问题,早晚会解决;后者才是Robotics社区需要面对的问题。
观测多样性
目前比较热的是有无触觉/力反馈 在很多不同的场景下采数据
环境多样性
Real/Sim
仿真数据可以大规模造,有auxiliary info, 有完美标签,不用担心硬件损耗和极端场景的风险。trade off是物理一致性sim2real gap,不过感觉一般的real场景可以用Domain Randomization解决。另外我觉得目前比较难得问题还是很多复杂的物理在仿真里做不出来或者跟real差别特别大,比如柔性物体,液体,复杂的摩擦比如极限状态下的车轮。
Scalability
数据金字塔
Real robot data(Teleoperation)
ALOHA,人直接遥操和真实机器人同构的机械臂,得到的数据的工作空间、观测和部署时完全一致。 代价是设备成本高,采集不方便,机器人构型固定。
UMI-Style
Ego-centric/exocentric
感觉这是最受关注的一个数据源。 主要包括人类视频/人类演示,尤其是第一视角人手操作物体的视频。包含手部/腕部姿态标注,RGB/深度/点云,力觉等模态的数据。 对标的是机器人本体收集的数据(来自于teleoperation)。Human-centric的主要优势在于,摆脱了对于机器人本体的依赖(贵,慢),人类可以带着一套portable的设备(头戴相机,手部tracker)在各种各样的场景下快捷采集数据,而且采集过程也更符合人类行动直觉。
难点
主要难点在于如何把海量human-centric 知识迁移到机器人上。
- 互联网视频缺乏仿真/遥操这种精心制造的数据的标注。互联网视频缺乏任务边界,动作标注。
- 人手&臂与机械臂的运动学结构不同(自由度,动作空间,contact geometry),IK+retargeting引入系统误差。第一视角相机相机参数分布与部署不一致,甚至可能未知,如焦距、遮挡、形变不一致;存在视角晃动,如何标定参考坐标系。
- 人类视频缺乏本体感觉和力觉反馈,which对于contact-rich manipulation是重要的。
关键成果
Simulation data
General vision-language data
现阶段难点
跨本体问题重要且困难
大家想把具身模型做统一,用一个pretrained fundation model 做通用大脑,经过一些相对轻量的适配去控制不同的机器人。 困难在于,不同身体的控制维度、工作空间、dynamics是不同的:对于locomotion机器人有平衡控制问题、不同link geometry带来whole body contact模式差异、身体材质带来friction差异,还有关节约束、执行器延迟和硬件误差。
机器人系统中的工程问题
标定漂移 时间戳同步
标签口径
大规模收数据的难点在于跨本体和sim-2-real。
为什么非要收集不同本体的操作轨迹数据,而不是去学习像where2act一样的物体侧接触不就行了?从接触到controll signal不是有很多传统控制方法可以解决吗?
这里面有几个难点:
interaction representation->robust controller is not trivial 因为:
- 交互中的信息很多:接触点的位置,方向;力的大小
- sim2real gap: 摩擦力
- 高频reactive control
Case Study
一些SOTA模型是如何搭配data recipe的?效果怎么样?
GR00T
Motus
我的观点
最终的路径应该是学习embodiment interaction representation + embodiment-aware controller。 因为:
- 交互可以作为不同构型间的通用语言,从而能够pretrain大的通用模型。否则,在一个本体上收集的数据,在换本体之后就失效了。
- 便于人类示教,甚至是通过”图示“”语言说明“等等非”具身示教“的方式来教会policy如何操作,从而能够大规模收集多模态数据。
为什么和机器人越一致的数据越“好用”?
能不能让human centric和real-robot一样好用?
Benchmarking
什么样的数据性价比高?不考虑成本堆人力算力,在领域井喷套投资的时候好使,真的可持续发展还是要考虑成本,想清楚目的、收益、成本去做出取舍的。如何比较哪些数据对哪些能力的性价比更高?不同数据到底贡献了哪些能力的增量?
数据飞轮在飞什么?
几种subdomain面对不同的问题,进展不同
Gripper+arm
multi-fingered hand
grasp已经渐渐冷了 目前更多是in-hand manip demo里感觉大多数还是当griiper用,dex control 和task completion还没接起来。 硬件还没收敛,还有散热、一致性问题,而且比较需要tactile
humanoid
全身运控:风格化,contact-rich, loco+manip, extreme dynamics
other locomotion robots
navigation loco+manip