文章

Danfei Xu Podcast 笔记

整理 WhynotTV 对 Danfei Xu 的访谈笔记,串起机器人学习、behavior cloning、EgoMimic、UMI、人类数据与 full-stack robotics。

Danfei Xu Podcast 笔记

这篇是对 WhynotTV Podcast #5:Danfei Xu:人类数据,行为克隆,机器人GPT-3,全栈,EgoMimic,遥操作,UMI,斯坦福 的笔记整理。原始笔记比较像听播客时顺手记下来的关键词,这里按照访谈主线重新串了一遍,尽量保留当时听到的重点和判断。

从 SynTouch 到 Stanford

Danfei Xu 很早就把自己定义为 roboticist,而不是单纯做模型或者算法的人。他本科大一时进入 SynTouch,接触 tactile sensor,也就是把 pressure、heat capacity、vibration 等信号拿来做物体识别。那个阶段还接触到 Shadow Hands 这样的灵巧手硬件。很早开始坐在机器人旁边,看它动、看它坏、再想办法修好,这个经验影响很深。

之后他参加了 IROS 2014CMU RISS 暑研,做无人车 localization。当时 field robotics 仍然很火,AlexNet 之后 deep learning 的风已经起来,但很多传统机器人方向还没有完全转过去。相比之下,自动驾驶很快退化成了 3D visionstate estimationplanningcontrol 的分工流水线。对 Danfei 来说,这种高度模块化的 pipeline 不够 system,也不够 full-stack

PhD 申请时,他拿到了 Fei-Fei LiSilvio SavareseDieter Fox 等人的 offer。最后选择 Stanford 的一个原因很有意思:Stanford 当时做 robotics 的人不多,不确定性更大。UW 的路线更确定,可能会回到 3D visionstate estimationplanning,而 Danfei 更想 seek uncertainty。

到了 Stanford CS department,周围大多数人都在做 visionYuke ZhuScene GraphSilvio 做 3D,Leo Guibas 那边也有 egocentric VRhuman data capture 的线索。Danfei 一开始也做过 Scene Graph,但后来觉得 vision 本身没有那么有趣,还是回到了 robotics。

2016、2017 年的 Robot Learning

访谈里对 2016、2017 年的 robot learning 生态有一个很好的概括:当时大致有两条主线

第一条是 CV-centric 的路线,例如 GraspNet 一类工作,把 robotics 当作视觉问题来做。第二条是 RL 路线,受 AlphaGo 影响很大,很多人相信机器人也应该“自己学”。这背后有两个很强的时代偏见:一是 prior is a great thing,大家愿意给系统塞结构先验;二是 supervised learning is shame,监督学习看起来不够高级、不够 scalable。

Danfei 早期做过 Neural Task Programming,也就是把 task and motion planning 里的结构先验带进学习系统,对空间和任务做 decomposition。后来他逐渐意识到,structurecompositionality 当然有价值,但如果底层物理交互、精细操作和系统本身没有跑通,很多高层结构会离真正的问题太远。

Behavior Cloning 为什么重新变重要

这期最有意思的一段是 behavior cloning 的转折。

Danfei 2019 年去 DeepMind 暑研。当时 DeepMindrobot learning 的圣地,但主流 agenda 是 reinforcement learningDanfei 做过 GAIL,也就是用 RL 去解决 imitation learning。这个 problem setup 听起来很吸引人:有 demonstration,也能和 environment 交互,只是没有 reward。但 Danfei 后来觉得真实世界往往是反过来的:和环境交互很难,示范数据反而可以给很多

他在 DeepMind 亲眼看到 behavior cloning works。只要把 teleoperation 数据整理好,把 less than optimal 的数据过滤掉,直接做 BC 就能 work,甚至是 everything 的 competitive baseline。问题是,当时做 BC 并不“政治正确”。大家觉得机器人应该自己学,supervised learning 不够 scalable,RL 才是正确范式。

回到 Stanford 后,DanfeiAjay Mandlekar 做了 Franka Panda 上的 behavior cloning 系统。它的本质非常简单:用 iPhone 或 VR controller 控制机器人,记录 camera image 和 control command,把它们当作监督学习里的 x 和 y,然后训练 control policy真正难的不是模型,而是整套系统:teleoperation 是否丝滑、camera 怎么摆、controller 响应如何、latency 怎么处理、数据分布和 evaluation 怎么设计。

RSS 2020 那篇工作展示了一个重要的 sign of lifeBC 可以在真实机器人上完成之前很少见到的长时序行为,比如把烤箱托盘拉出来、放入物体、关上烤箱、再把盘子放回去。它不一定 generalizable,但它证明了一个系统方向是可行的。

这件事情当时没有立刻引发范式转变,一方面因为 COVID 导致真实机器人实验条件中断,另一方面也因为大家觉得“这不就是 BC 吗”。直到后来的 ALOHA line of work,更多人才真正意识到 BC just works

Algorithm 被高估,System 被低估

Danfeirobot learning 的一个核心判断是:algorithm 和 model 的重要性经常被高估,system 的重要性经常被低估

机器人不是一个纯算法问题,而是从硬件、传感器、控制器、数据采集、训练、评估到部署的完整系统问题。一个 behavior cloning 系统能不能 work,不只取决于模型结构,而取决于很多看起来很工程的细节:wrist camera 要不要加、action space 怎么定义、controller 的行为是否稳定、数据分布是否一致、evaluation 能不能反映真实能力。

这也是他为什么强调 full-stack robotics。未来机器人如果真的要做好,很难像自动驾驶那样被拆成 perception、planning、control 几个团队各自刷 benchmark。至少在他相信的这条路线里,所有人都需要 know everything。

Human Data for Robot Learning

访谈后半段的关键词是 human data for robot learning

现在主流的机器人数据主要来自 teleoperation,也就是在不同机器人本体上采集遥操数据。第二类是 synthetic data,在物理引擎里生成。第三类是非机器人数据,包括 YouTube 这种无约束视频数据,以及专门让人采集的第一人称手部操作数据。

Danfei 押注的是第三类里的 human data,尤其是 egocentric human data。他的想法不是简单拿人类数据补一点机器人数据,而是让它根本改变训练机器人的方式。

EgoMimic 就是在这个背景下出现的。Simar 有很强的直觉,认为第一人称数据可能是最 scalable 的。Danfei 一开始有犹豫,因为真的搭一个可靠的 egocentric 数据采集系统很难。最开始他们试过 OculusLeap Motion/Orion 之类的方案,但 calibration 很不稳定。后来 Project Aria 解决了关键问题:眼镜可以做手部状态估计,可以定位自己的头部位置,也能采集第一人称 RGB 视频。

EgoMimic 还有另一个很重要的动作:把机器人变得更像人。为了更好地从人类数据迁移到机器人上,机器人需要双臂、类似人类肩膀和躯干的结构,以及放在头部位置的相机。没有现成机器人符合这个要求,于是 Danfei 自己搭了一个双臂加肩部结构的机器人系统。

teleoperation 转向 human data 的原因也很直接:遥操数据本身并不完美。哪怕是同一个机器人,只要底层 controller 的 gain 改一点点,控制指令对应的反应就会不一样。既然机器人和机器人之间也有很大的 gap,那么人和机器人之间的 gap 未必大到不可跨越。只要在人身上挂足够多的 sensor,从控制角度看,人也可以被当作 another robot

Ego Video 到底能学到什么

从第一人称视频里到底能学到什么?Danfei 把问题拆成了三层。

第一层是世界应该如何改变。例如杯子应该被拿起来,抽屉应该被打开,物体应该被推到某个位置。这一层人类视频很擅长提供,因为世界变化本身和是谁造成的无关。

第二层是一个本体如何和世界交互,才能造成这种改变。例如手应该从哪里抓杯子,推物体时应该接触哪个位置。如果机器人的操作空间和人的差异不大,比如有五指灵巧手,这一层也可能从人类数据里学到。

第三层是本体如何产生动作,也就是每个 motor 要施加多大的力、每个关节如何发力。这个最难。比如扔球,视频可以看到末端轨迹,但很难直接告诉机器人每个关节应该如何输出足够的力。

这也是第一人称视频和第三人称 YouTube 视频之间的关键取舍:fidelity versus scalability。第三人称视频更容易大规模获取,但分布和机器人数据很难对齐。第一人称数据规模较小,却更接近机器人需要的感知和动作分布。Danfei 的态度是,YouTube 可能存在更大的 paradigm,但现在第一人称数据已经有 sign of life,所以值得先做 0 到 1。

SLAM、VIO 和把人当机器人

human data 在 2026 年有两种不同理解。

一种是 world model 路线:只需要知道下一帧世界长什么样,视频本身就够了。另一种是把人类当作另一种机器人,把人类数据当成 BC data 来用。后一种路线就需要尽量 capture 人类作为一个系统的 input 和 output,包括 action labelhand posetactileIMU 等。

这就是 SLAM/VIO 的位置。要从第一人称视频里得到手的 3D 位置,只知道手在相机里的位置还不够,还要知道相机自己在哪里。Project Aria 这类设备的 VIO/SLAM 能定位眼镜本身,所以它对“把人当机器人”的路线非常关键。

Danfei 也承认,SLAM 可能只是当前范式下的过渡措施。如果未来的模型能直接从视频里理解人类如何完成任务,也许不需要这么精细的 state estimation。但在他当前最相信的路线里,底层精细操作还没有解决,所以 action label 和 state estimation 仍然很重要。

有意思的是,今天最好的 SLAM/VIO 很大程度上在 VR 公司里,例如 MetaApple。真正工程化的 SLAM 不只是算法,还包括在线标定、温度影响、多个摄像头之间外参稳定性等细节。这仍然是 full-stack 的问题。

Tactile、Force 和 Human Data 模态排序

Danfei 本科最早接触的是 tactile sensor,但在 human data 里,他仍然认为 video 是第一重要的数据模态。触觉肯定重要,但它可能不是“直接测 tactile”这么简单。

他有一个很好的说法:所有 agent,不管是 robot 还是 human,本质上都是 force exertion engine。智能体在物理世界中的目的,是对世界施加力,力改变世界状态。因此真正关键的可能是 force,而 tactile 只是 force 的一种 imperfect measurement。

触觉传感器的问题是太不统一。GelSight、压感、电阻、磁场等方案都有不同物理属性,没有像 RGB 图像那样统一的表示和量纲。因此,未来也可能先用 wrist camera 这种更标准化的视觉方案,去替代一部分触觉信息。

如果按重要性排序,Danfei 大致会保留:video、hand pose、language annotation,然后是 whole-body pose 和 tactile/force。audio 和 smell 在当前阶段相对靠后。

UMI、Human Data 和硬件本体

UMI data 很适合放在机器人数据和人类数据之间理解。它的做法可以想象成:把人的手换成一个 gripper,让人用这个 gripper 直接和环境交互。这样有很好的状态估计,也减少了 deployment 时末端执行器的 gap。

它为什么更像 human data?因为它仍然是人和环境直接交互,人可以通过 gripper 感受到力,并且没有一个 robot controller 夹在中间。它只是把人的手退化成了夹爪。

Danfei 判断,长期来看 teleopUMI 和纯 human data 会越来越难区分。现在 UMI 是一个 sweet spot:比 teleop 更容易 scale up,比纯视频有更高 fidelity。但最终能否 transfer,取决于机器人硬件有多像人的能力。真正 work 的 human data 需要从底层 build up:机器人的执行器、controller、闭合手指的速度、机械臂速度,都要和人接近。

所以他认为五指灵巧手到 dexterous robot hand 的 transfer 并不是不可想象,问题更多卡在机器人硬件和底层执行器上。Generalist 这类系统之所以有意思,是因为 controller 做得足够好。如果有一个比 Shadow Hand 稍小、执行速度更快、机械臂性能也更好的系统,五指 human data 可能做到接近 UMI 级别的 transfer。

这也引出 human datahumanoid 的关系。类人硬件本身没有天然意义,但有了 human data 以后,humanoid 才有了 purpose。反过来,如果没有类人的上半身、双臂和五指手,human-to-robot transfer 又会更难。这里很可能既是 hardware lottery,也是 data lottery

数据基础设施、EgoVerse 和开放性

Danfei 反复强调,不经意的日常人类数据可能非常有价值。语言和视觉模型很多时候是“无心插柳柳成荫”,互联网自然积累了大量数据;机器人数据则更像“有心插柳”,要专门设计采集流程、传感器和数据格式。

这会带来两个问题。

第一,什么样的数据有用?只有当学术界和工业界能逐渐搞清楚这个问题,才会有更多人愿意采集更好的数据。EgoVerse 这类开放数据项目的意义,就在于让大家有机会共同探索数据来源、数据筛选和任务定义。

第二,这条路会不会最终变得封闭?LLM 走到 scale 之后高度商业化、高度封闭,因为基础设施、算力和数据变得高度集成。robot learning 也可能类似:frontier lab 可能主导数据需求,data vendor 围绕它们服务,开放路线会面临很大压力。

Buy or Build 与 Full-stack Robotics

robotics 来说,system is a thing for everything。CS 里很多方向已经有成熟系统,例如 compiler、database、distributed system;但 robot learning 还没有形成同样清晰的系统意识。很多人还在把它当成算法问题,而不是从数据、硬件、评估、控制和部署一起看的系统问题。

所以 buy or build 的问题很关键。不是所有东西都必须自己造,但 evaluation/training loop 必须在团队内部掌握。团队自己要能看数据分布,知道数据是否符合预期,知道哪一块数据会如何改变系统行为。否则你买到的是数据,却不一定买到了理解系统的能力。

这也是 Danfei Lab 文化里强调 full-stack 的原因:每个人都要愿意碰系统的每一层。机器人不是“这个 control 不是 robotics、hardware 不是 robotics、object detection 不是 robotics”。这些东西合在一起,才是 robotics。

Modeling:Long Context 和新的语言

最后一段关于 modeling 的讨论也很有意思。Danfei 认为,如果 human data 真的成为核心数据,它会偏好 long context 的 modeling method。因为 behavior cloning human 的本质,是用 context 解释 action。

人在做菜时突然看一眼表,这个 action 要不要 clone?机器人可能本来就知道时间,不需要模仿这个动作。人因为颈椎不舒服换了一个姿势,这个动作要不要学?如果没有足够 context,模型只能把动作看成一个很宽的 distribution,不知道为什么同一个状态下可以做 A,也可以做 B。

System 1System 2 的接口也可能需要 human data。System 1 是快速、底层、感知运动的能力;System 2 是更慢的规划和推理。问题在于,人类很多行为并不是用语言表达出来的。不会说话的人也能规划自己的动作,动物也能使用工具。也许我们需要一种新的 language,一种能描述物理行为、动作意图和操作空间的语言,而不是把一切都翻译成自然语言。

这也解释了为什么 Betty the crow 这样的例子会被提到。今天的机器人离乌鸦那种工具智能仍然很远。真正困难的不是让语言模型生成一个 task plan,而是让系统拥有能在物理世界里操作、探索和修正的底层能力。

小结

这期播客给我的主线很清楚:robot learning 的下一个关键,不一定是再发明一个更复杂的 algorithm,而是找到能 scale 的数据和能吃下这些数据的系统

Behavior cloning 重新变重要,是因为它把机器人学习拉回了一个朴素但有效的问题:给足够好的示范,训练一个能在真实系统里 work 的 policy。Human data 进一步把这个问题放大:如果人可以被当作另一个带 sensor 的机器人,那么世界上大量人类操作就可能成为 robot learning 的底层燃料。

但这条路的难点也很明确。数据不是孤立存在的,它依赖传感器、SLAM/VIO、手部姿态、触觉或力、硬件本体、controller、evaluation 和 training loop。换句话说,human data 的问题最终还是 full-stack robotics 的问题

本文由作者按照 CC BY 4.0 进行授权