
【斯坦福CS231n 学习笔记13】Robot Learning
学习了具身智能相关的内容。
Problem Formulation
计算机视觉或者说监督学习主要是学习一个映射函数 ,通常假设数据是独立同分布的,即训练集和测试集来自于同一个分布,且样本之间互不影响。这是一个开环的过程,模型的预测结果通常不会反过来改变输入本身。而 Robot Learning 主要是在物理的约束下做序列决策优化,数据通常是非独立同分布的,并且智能体做出的动作 会直接改变环境,从而导致下一个时刻的输入状态 发生变化,如果策略发生变化,那么智能体遇到的状态也会发生变化。
标准的智能体与环境交互的时间步模型如下:
- 观测:智能体在时刻 观测到环境状态 。
- 决策:智能体根据策略 选择一个动作 。
- 转移:环境接收动作 ,根据物理定律,状态从 演变到 。
- 反馈 :环境返回一个标量奖励 ,指示动作的优劣。
这个循环不断持续: 形成一条轨迹,记为 。
为了使用数学描述以上过程,引入马尔可夫决策过程,一个 MDP 通常由一个元组 定义:其中 是状态空间, 描述环境在特定时刻的完整配置,在机器人中状态可以是低维的,也可以是高维的。 是动作空间, 是智能体可执行的操作集合,可以是离散动作,也可以是连续动作。 是状态转移概率,描述了环境的动力学模型:
现实世界通常不是确定性的。即使在状态 执行相同的动作 ,由于摩擦、打滑或传感器噪声,下一个状态 也是服从某种概率分布的。
是奖励函数,是引导智能体行为的唯一信号:
这是一个标量信号。设计的奖励函数决定了机器人的任务目标。机器人学习的目标不仅仅是做好某一步,而是最大化长期累积回报。定义 时刻的回报 为折现奖励之和:
其中 是折现因子, ,用于权衡即时奖励和未来奖励的重要性。最终目标是寻找一个最优策略 ,使得在该策略下的期望回报最大化:
这里 表示轨迹是根据策略 和环境动力学生成的。
具体的案例主要有 Cart-Pole Problem:这是一个低维状态的经典问题,目标是保持杆子不倒。这里的State () 是一个4维向量 (小车位置,小车速度,杆角度,杆角速度);Action () 为施加在小车上的水平力(向左推 or 向右推);Reward () 是每保持杆子直立一个时间步,得 +1 分;Goal最大化存活时间。
诸如此类的案例还有Robot Locomotion、Atari Games、Go、Text Generation 等,这些都能够用一个五元组来进行描述,都是根据当前状态选择最优动作以最大化期望回报。
Robot Perception
在 Robot Learning 中,感知的核心任务是状态估计:即如何从高维、非结构化的传感器数据(Observation, )中提取出用于决策的低维、结构化的状态信息(State, )。与处理 ImageNet 或 COCO 等静态数据集有着本质不同,身处物理世界的机器人面临着更为错综复杂的特有感知挑战。首要难题在于信息的非完整性,受限于物体间的相互遮挡、机械臂自身的视线阻挡以及深度相机在处理透明或反光表面时的传感器噪声,机器人的观测 往往只能作为真实状态 的一种有损投影,难以直接获取全局信息。同时,环境动力学的复杂性进一步加剧了感知难度,这不仅体现在衣物、流体等可变形物体因具有无穷自由度而难以利用简单的刚体变换 进行描述,也体现在人类或宠物等动态智能体行为的高度随机性与不可预测性上。此外,针对接触密集型任务,仅依赖 RGB-D 视觉往往捉襟见肘,这就要求机器人必须通过多模态融合技术,整合触觉、本体感知以及听觉信息,从而精准推断出物体的硬度、摩擦系数等物理属性,构建对物理世界的完整理解。
机器人感知不应被视为被动的图像处理,而应当具备以下属性:
- 具身性:感知系统不是悬浮在真空中的相机,而是依附于一个物理实体。机器人的运动会直接改变观测数据,感知与运动是耦合的,带来的问题就是需要处理相机抖动、运动模糊以及视点变化带来的数据分布漂移。
- 主动性:这是机器人感知与被动感知最本质的区别,被动感知是给定一张固定的图片,尽力去识别它,主动感知是如果当前视角看不清或存在歧义,机器人可以主动采取动作来获取更好的观测,可以通过移开相机位置以避开遮挡;或者主动扰动环境,机器人面对一堆杂乱的物体,可以通过“推”或“拨”的动作来分散物体,从而看清被遮挡的部分。
- 情境性:机器人总是处于此时此地此任务的具体情境中,不需要像通用的 CV 模型那样识别画面中的每一个像素,感知只需服务于当前的决策目标。
Reinforcement Learning
在建立了马尔科夫决策过程数学框架后,强化学习被引入作为求解最优策略 的核心算法。与监督学习中利用静态标签进行拟合的方法不同,RL 依赖试错机制在交互中学习。这一过程面临着比 SL 更为严峻的挑战,主要体现在四个维度:首先是随机性,环境的状态转移 具有固有的不确定性,这意味着优化目标必须是最大化期望回报而非单次结果;其次是信用分配难题,由于存在奖励延迟,智能体在 时刻的动作可能导致了 时刻的结果,算法必须能够解决时间维度上的因果归因问题;再次是不可微性,物理环境对于智能体是一个“黑盒”,其动力学方程通常不可微(特别是涉及刚体接触时),因此无法像监督学习那样直接通过链式法则计算 ,而必须依赖方差极高的梯度估计方法;最后是非平稳性,训练数据分布 依赖于当前策略,随着策略 的更新,数据分布发生漂移,导致训练过程极不稳定。
RL 算法通常需要数百万次甚至更多交互采样才能够收敛,直接在物理机器人上训练存在时间成本高、硬件磨损大以及安全性差等问题。因此目前主流的方法是仿真训练、真机部署。
为了克服仿真与现实之间的鸿沟,核心技术在与域随机化。仿真模型无法完美模拟真实世界()。通过在训练过程中对仿真环境的物理参数(如质量、摩擦系数、电机阻尼、传感器噪声等)进行广泛的随机扰动,迫使策略适应各种极端的物理参数组合。
目标是寻找一组参数 ,使得在参数分布 下的期望回报最大化:
如果策略能够在高度随机化的仿真环境中鲁棒地完成任务,那么真实世界就可以被视为这些随机化环境分布中的一个特例,从而实现零样本迁移。
Case:Playing Atari Games
在机器人学习与深度强化学习的发展历程中,DeepMind 提出的 Atari Games 案例具有里程碑式的意义。在该案例中,智能体的任务是游玩 Breakout(打砖块)或 Pong 等 Atari 2600 游戏,其核心挑战在于:输入不再是人工设计的特征向量(如球的坐标、板的速度),而是屏幕原本的高维像素帧,输出则是直接控制游戏手柄的离散动作。这要求智能体必须在一个统一的神经网络架构中,同时完成视觉特征提取与策略制定。
为了将这一过程纳入数学框架,该问题被建模为一个高维输入的 MDP。具体而言,状态空间 由屏幕图像构成,但为了满足马尔可夫性质,不能仅使用单帧图像,因为静态图像丢失了球的运动方向与速度等关键时间信息。因此,状态 通常被定义为连续 4 帧图像的堆叠,从而在输入端隐式地包含了物体的速度与加速度信息。动作空间 对应于游戏手柄的离散操作集合,如 。奖励函数 则直接由游戏分数的瞬时变化量定义,这引入了典型的稀疏奖励与信用分配难题——例如在 Breakout 中,智能体可能需要执行一系列看似无反馈的移动操作()来接住球,直到球最终击碎砖块时才能获得正向奖励,算法必须学会将最终的得分归因于之前的一系列正确决策。
解决这一问题的核心技术是深度 Q 网络。其架构结合了卷积神经网络(CNN)与 Q 学习算法:网络的前端利用卷积层处理高维像素输入 ,自动提取边缘、物体位置等空间特征;后端则通过全连接层将这些特征映射到动作价值函数 ,即预测在当前画面下执行各个动作的未来期望回报。这种设计证明了我们无需为每个任务手动设计视觉特征,只要定义好 MDP 结构与奖励信号,神经网络便能通过最大化累积回报 ,自发地从像素中习得对游戏物理规律的理解。
这一案例展示了强化学习强大的探索与泛化能力。在训练后期,智能体甚至发现了人类玩家未曾明确编程的高级策略(如“隧道策略”,即将球打入砖块墙上方使其反复弹射得分)。Atari Games 的成功证明了 的直接映射是可行的,这为后续基于视觉的机器人运动控制奠定了坚实的理论与实践基础。
Problems of (Model-Free) RL
在马尔可夫决策过程(MDP)的语境下,“无模型”并非指不存在神经网络,而是指智能体不尝试显式建模环境的动力学机制 。与基于模型的方法不同,Model-Free 算法(如 DQN, PPO)并不构建内部的“物理模拟器”来进行未来状态的推演与规划。相反,它们通过直接优化策略网络 或价值网络 ,建立从状态观测到动作的直接映射。这一过程类似于人类形成“肌肉记忆”——通过反复尝试习得“在某种情况下该做什么”,而无需理解背后的物理定律。尽管这种端到端的学习方式规避了因环境建模不准带来的偏差,但也正因为缺乏对物理机制的理解,它必须依赖海量交互数据来覆盖状态空间。当这种从比特世界诞生的方法迁移至原子世界时,将面临极为严峻的现实挑战。
首要的瓶颈在于极高的样本复杂度。由于 Model-Free RL 依赖于海量的试错来估计价值函数或优化策略,导致了极低的数据利用率。智能体往往需要数百万次甚至数十亿次的交互才能收敛。在计算机模拟中,我们可以通过加速时间或并行化采样瞬间完成这些交互;但在物理世界中,机器人的动作执行受限于物理时间——完成一次简单的抓取可能需要数秒。这意味着在真机上收集同等规模的数据可能需要耗费数月甚至数年的连续运行时间,这在实际工程中几乎是不可行的。
其次,安全性与硬件损耗构成了物理部署的硬约束。RL 依赖探索机制来发现最优策略,而在训练初期,策略 的输出往往接近随机噪声。在模拟器中,撞墙或掉落仅仅是数值上的负奖励;但在物理现实中,这种随机探索极易导致机器人与环境发生剧烈碰撞,造成电机过热、减速器损坏或环境物体的不可逆破坏。这种探索与安全之间的天然矛盾,严重限制了 RL 在昂贵精密硬件上的直接应用。
此外,复位机制是很多学术研究中被忽视但至关重要的实际问题。标准 RL 算法通常假设训练是分片段进行的,即每当任务结束或失败,环境能自动重置到初始状态分布 。在软件中这只需一行 env.reset() 代码;但在物理世界中,如果机器人将杯子推到了地上,环境状态便发生了物理改变。为了开启下一个 Episode,必须引入额外的人工干预或复杂的自动化装置将物体复位。这种对外部复位机制的依赖,阻碍了机器人实现真正的 24/7 无人值守自主学习。
最后,还需要面临奖励工程的问题。虽然数学上假设存在理想的奖励函数 ,但在实际设计中,稀疏奖励会导致学习效率低下,梯度难以传播;而人为设计的稠密奖励虽然能加速收敛,却容易引发Reward Hacking现象——即智能体利用奖励函数的漏洞以非预期的方式“刷分”(例如为了避免摔倒惩罚而选择原地不动),而非真正完成任务目标。这些局限性共同推动了机器人学习领域向 Sim-to-Real、Model-Based RL以及 Imitation Learning(模仿学习)等方向演进。
Model Learning & Model-Based Planning
为了克服无模型强化学习极高的样本复杂度与安全性隐患,lecture 17引入了基于模型的规划(Model-Based Planning)。这一范式的核心思想在于“谋定而后动”:如果智能体能够习得环境的动力学规律,即构建一个能够预测未来的世界模型,那么它便可以在大脑(或 GPU)中进行无数次的模拟演练,从而选出最优策略,而无需在物理世界中进行高风险的试错。
与 Model-Free RL 直接学习策略 或价值 不同,Model-Based 方法的首要目标是学习状态转移概率 。在确定性假设下,这等价于拟合一个正向动力学函数 :
这个函数 (通常由神经网络参数化)的作用是:给定当前状态 和假设采取的动作 ,预测下一时刻的状态 。通过收集历史交互数据 ,可以利用监督学习来训练该模型,最小化预测误差 。
一旦习得了环境模型 ,决策问题就转化为一个轨迹优化问题。智能体不再需要“记忆”所有情况下的最优动作,而是通过在线规划来求解。给定初始状态 和目标,我们需要寻找一个长度为 的动作序列 ,使得累积代价最小化(或累积回报最大化)。数学表达如下:
其中 是代价函数(例如状态与目标的距离)。
在实际操作中,常用的求解方法是 模型预测控制。 其工作流程如下:
- 采样与预测:在动作空间中随机采样(或基于分布采样)大量动作序列。
- 模拟推演:利用学习到的模型 并行预测这些动作序列产生的未来轨迹。
- 评估与选择:根据代价函数 评估每条轨迹的优劣,选择代价最低的最优序列。
- 执行与重规划:仅执行最优序列的第一步动作 ,然后接收真实环境反馈的新状态 ,重复上述过程。这种“滚动视界”机制能够有效修正模型预测误差带来的漂移。
但是,应该要怎么定义 就变成了一个问题。如果直接在像素空间进行预测,由于背景复杂且维度极高,模型往往难以捕捉精确的物理规律。目前主要有两种较为结构化的状态表示:
- 关键点:不再预测整张图,而是预测物体上的几个关键点的运动轨迹,这大幅降低了维度,但可能会导致物体形变信息的丢失。
- 粒子系统:特别适用于处理可变形物体。Lecture 17 以RoboCook: Long-Horizon Elasto-Plastic Object Manipulation with Diverse Tools 为例:这篇论文有一个极具挑战性的任务:机器人操作面团。面团具有无穷维度的自由度,且其动力学涉及复杂的弹塑性形变,传统的刚体物理引擎完全失效。所解决的办法就是采用粒子动力学模型:
- 感知:将 RGB-D 图像中的面团点云转化为一组粒子集合,记为 。
- 图神经网络(GNN):利用图神经网络建模粒子之间的相互作用(Interaction)。图中的节点是粒子,边代表粒子间的力学约束。GNN 能够学习粒子如何随动作 移动,从而预测整个面团的形变 。
- 闭环控制:基于这个可微分的粒子模型,机器人可以通过梯度下降或 MPC 规划出复杂的动作序列(如积压、拉伸),将面团塑造成目标形状。
Imitation Learning
鉴于强化学习(RL)在物理世界中面临的样本效率低下与安全性难题,模仿学习(Imitation Learning, IL)提供了一种更为务实且高效的替代方法。其核心理念不再是让智能体从零开始试错,而是利用监督学习的方法,让机器人直接拟合人类专家提供的演示数据。如果说 RL 是让机器人通过“痛感”自学,那么 IL 则是通过“观察”老师来学习,极大地降低了探索成本。
最基础的模仿学习方法被称为行为克隆(Behavior Cloning, BC)。其数学本质是将策略学习转化为一个标准的监督回归或分类问题。给定包含 条专家轨迹的数据集 ,其中每条轨迹由一系列观测-动作对 组成,BC 的目标是训练一个策略网络 来最小化与专家动作 之间的差异(通常使用均方误差 MSE 或负对数似然损失):
虽然 BC 方法简单直观,但它在实际应用中面临着分布漂移或级联误差问题。监督学习通常假设训练集和测试集数据是独立同分布(i.i.d.)的,但在序列决策任务中,这一假设失效了。专家的轨迹总是完美的,因此训练数据仅覆盖了“正确状态”下的分布 。然而,当训练好的策略 在测试时产生哪怕微小的预测误差,机器人就会进入一个稍微偏离正轨的状态 。由于专家从未在 这种“错误状态”下演示过如何恢复,机器人便会不知所措,进而产生更大的误差。这种误差随时间步 呈指数级累积,最终导致任务彻底失败。
除了误差累积,标准显式 BC 在处理复杂动作时还面临多模态分布的挑战。传统的 MSE 损失函数隐含了单峰高斯分布假设,当面对“从左绕或从右绕均可”的情境时,网络往往会输出两个动作的平均值(即直直地撞向障碍物)。为了解决这一问题,隐式行为克隆(Implicit Behavior Cloning, IBC)被提出。IBC 利用能量模型,不再直接拟合 的函数映射,而是学习一个能量函数 ,其中能量越低代表动作越符合专家行为。其策略分布被建模为 ,在推理阶段通过梯度优化寻找能量最低的动作。 这种隐式建模允许策略表达任意复杂的非连续分布,从而精确捕捉人类操作中的多解特性,避免了动作平均化带来的失效。
进一步地,为了从根本上理解任务意图而非仅仅模仿表面动作,逆向强化学习(Inverse Reinforcement Learning, IRL)提供了一种更高阶的方法。与 BC 不同,IRL 假设专家行为是最优的,并致力于从演示轨迹中反推专家内心优化的隐式奖励函数(Implicit Reward Function, )。数学上,IRL 旨在寻找一个 ,使得在该奖励下产生的最优策略 的统计特征与专家演示 相匹配:。一旦掌握了奖励函数,智能体便能通过标准 RL 算法在各种新环境中重新训练策略。尽管 IRL 计算开销巨大(通常涉及双层优化),但它习得的是任务的本质目标(如“避开泥潭”而非“在坐标(x,y)左转”),因此相比简单的行为克隆具有更强的鲁棒性与泛化能力。
尽管隐式行为克隆在理论上通过能量函数解决了多模态问题,但在实际部署中,其推断过程依赖于复杂的迭代优化(如梯度下降采样),这不仅计算成本高昂,且难以保证实时性。为了在保持多模态建模能力的同时提升生成质量与推理效率,机器人学习领域引入了扩散策略(Diffusion Policy)。
这一方法的核心在于将机器人控制重构为条件生成建模问题。Stable Diffusion 根据文本提示生成图像,Diffusion Policy 根据当前观测 生成动作序列,其数学基础建立在去噪扩散模型上。训练的过程主要分为两个阶段:前向过程向真实的专家动作轨迹 中逐步添加高斯噪声,直至其变为纯随机噪声;反向过程则训练一个神经网络(通常是基于 U-Net 或 Transformer 的噪声预测器 ),学习如何在给定观测条件 下,从纯噪声中一步还原出合法的动作轨迹。
相比于传统的行为克隆,Diffusion Policy 展现出了三大决定性优势:首先是完美的多模态处理,由于扩散模型本质上是对数据分布的梯度场进行建模,其能够自然地捕捉复杂的非凸分布。当面对左绕或者右绕的抉择时,Diffusion Policy 能够生成明确的向左或者向右的轨迹,而不会输出导致碰撞的中间平均路径;此外还具有长程时序一致性,与传统的 BC 仅预测单步动作 不同,Diffusion Policy 通常预测一个未来的动作序列(Action Horizon, )。这种“轨迹生成”的方式利用了动作之间的时间相关性,生成的运动极其平滑、连贯,有效抑制了高频抖动(Jittering),特别适用于精细的操作任务(如穿针引线、剥土豆);最后,其还具有训练稳定性,不同于 GANs 的极小博弈或者 IBC 的双层优化,Diffusion Policy 的训练目标仅仅是简单的均方误差回归,这使得训练的过程非常稳定且易于收敛。
目前 Diffusion Policy 已经成为 Robot Learning 领域的 SOTA,在模仿人类灵巧手操作等高维、接触丰富的任务中展现出惊人的鲁棒性与泛化能力,标志着机器人学习从拟合函数向生成行为的转变。
Robotic Foundation Models
随着大语言模型在自然语言处理领域的爆发式增长,机器人学习领域也逐渐开始向基础模型转型。传统的机器人策略(如 BC 或 Diffusion Policy)通常是专才,仅能够在特定的环境、特定的机器人形态上执行特定的任务。而机器人基础模型旨在构建具备通用泛化能力的通才,使其能够跨越不同的场景、物体甚至机器人硬件,理解并执行多样化的自然语言指令。
这一领域的某种主流架构被称为视觉-语言-动作模型。
其核心思想是将机器人控制问题重新构建为多模态序列生成问题。VLA 直接继承了视觉语言模型的架构(如 PaLM-E 或 LLaVA),输入由图像观测 和自然语言指令组成,输出则不仅包含文本回复,还包含被离散化的动作 Token。
通过将连续的物理动作空间量化为离散的词表,VLA 能够利用标准的 Transformer 架构和交叉熵损失函数,在海量的互联网图文数据与机器人轨迹数据上进行混合训练。这种训练方式赋予了机器人两大核心能力:一是来自互联网数据的语义推理能力(例如理解“把那个像苹果颜色的物体拿给我”);二是来自机器人数据的低层控制能力。代表性工作包括 Google DeepMind 的 RT-1 和 RT-2,以及开源社区的 OpenVLA。
然而,早期的 VLA 模型(如 RT-2)通常采用离散动作编码,导致动作执行缺乏精度且不平滑,难以应对精细操作任务。最新一代的基础模型架构如 Pi-0 (Physical Intelligence Zero) 解决了这一矛盾,Pi-0 采用了一种混合架构设计:
- VLM 主干:利用预训练的大模型处理视觉语义理解和高层规划。
- 连续动作头:摒弃了离散Token 输出,转而在输出端结合了Flow Matching。
这种设计巧妙结合大模型的脑与扩散策略的手,VLM 主干负责理解复杂的任务情境,而Flow Matching 的头则负责根据VLM的隐层特征生成高频、平滑且精准的连续动作轨迹,这种架构不仅保留了基础模型强大的零样本泛化能力,而且继承了生成式策略在灵巧操作上的优势,能够完成例如折叠衣物、清理餐桌等长程且复杂的物理任务。
此外,数据的规模与多样性是训练此类模型的关键。项目如 Open X-Embodiment 正在通过汇集全球数十个实验室、不同形态机器人的数据集,试图验证跨具身学习的可行性——即训练一个单一的大模型,使其能够同时控制机械臂、四足机器人甚至人形机器人。这一趋势表明,机器人学习正从“以算法为中心”向“以数据为中心”的大规模预训练演进。
Remaining Challenges
尽管 Robot Learning 在特定任务上取得了令人瞩目的进展,但要实现真正的通用机器人,仍面临着横亘在前的三大挑战。
评估是目前阻碍领域标准化的最大障碍。与计算机视觉(CV)或自然语言处理(NLP)领域拥有 ImageNet 或 GLUE 等标准化静态测试集不同,机器人领域缺乏一个被广泛认可的、涵盖多样化物理任务的通用基准。在现实世界中进行评估虽然是准确性的标准,但其成本极其高昂且充满噪声——光照变化、初始位置的微小差异都可能导致结果不可复现,且耗时极长。虽然仿真评估快速且廉价,但仿真与现实的差距始终存在,一个在仿真中得分完美的策略往往因摩擦系数或接触模型的微小误差而在真机上失效。这种评估困境导致研究者往往只能在自定义的简单环境上测试,难以客观对比不同算法的真实性能。
数据效率与可扩展性是制约模型性能提升的瓶颈。目前高质量数据的获取主要依赖遥操作,即通过人类专家穿戴设备或使用手柄远程控制机器人。尽管这种数据蕴含了人类的智慧与策略,但其采集过程是线性的——收集 1 小时的数据需要专家全神贯注工作 1 小时,这种不可扩展的方式难以支撑“Scaling Law”所需的海量数据。另一种路径是让机器人进行自监督学习,虽然边际成本低,但产生的数据大部分是无效的失败尝试,且高度依赖复杂的自动化复位工程。未来的突破口可能在于如何有效利用非机器人数据——即从 YouTube 等平台的海量人类视频中提取物理知识与操作逻辑,并将其迁移至机器人控制中。
构建通用的世界模型是通往通用人工智能(AGI)的关键拼图。目前的 Model-Free 方法更多是建立了 的直觉反射,而缺乏对物理世界的深层理解。理想的世界模型应当是一个高保真的视频预测模型,能够像人类想象未来一样,精确模拟“如果我做这个动作,世界会变成什么样”。然而,当前的生成模型(如 Sora)虽然能生成逼真的视频,但在长程预测中往往难以保持物理一致性(例如物体凭空消失、穿模或液体流动不自然),且缺乏对 3D 几何与接触力学的精确建模。如果能解决世界模型的问题,机器人就能在“大脑”中进行低成本的模拟与规划,从而彻底解决样本效率和安全性问题。
参考如下:
https://cs231n.stanford.edu/index.html
至此CS231n的理论学习部分就已经结束啦🎉,通过这门课还是让我对计算机视觉有了较为全面一些的认知,至少之前阅读的相关论文能够进一步知道论文提出的方法为什么要这样做,并且对人工智能当下的发展方向有了更好的了解,也更想去学习更多相关的知识,以及将这些知识好好地应用到现实生活中去。接下来的挑战就是考研了,希望自己能够安稳上岸吧~
