想象一下,你正在教机器人冲一杯咖啡。这不仅仅是一个单一的动作,而是一系列清晰的步骤: 拿起杯子,放在咖啡机下,放入胶囊,按下按钮,最后拿起热咖啡。
在机器人技术中,我们称之为长视距任务 (Long-Horizon Task) 。 虽然现代模仿学习在短小的原子动作 (如“拿起杯子”) 上已经表现得相当不错,但将这些技能串联成连贯、稳健的序列仍然是一个巨大的障碍。序列越长,机器人偏离轨道的可能性就越大。第一步的一个小错误到了第四步就会演变成灾难。
为了解决这个问题,研究人员通常将任务分解为子目标 (subgoals) ——即指导机器人的检查点。但一个关键问题仍然存在: 机器人如何知道它何时完成了一个子目标并应该开始下一个?
今天,我们将深入探讨一篇题为 “Enabling Long(er) Horizon Imitation for Manipulation Tasks by Modeling Subgoal Transitions” 的论文。作者指出,切换子目标的标准方法——使用僵化、手工设计的规则——是脆弱的。作为回应,他们提出了两种新架构: 一种学习显式预测切换,另一种更强大的基于 Transformer 的模型则使用“软”注意力机制来模糊步骤之间的界限,从而实现显著更平滑和稳健的性能。
问题所在: “何时”与“如何”同样困难
模仿学习,特别是行为克隆 (Behavior Cloning, BC) ,将机器人控制视为一个监督学习问题。你向机器人展示专家演示 (视频或遥操作数据) ,它学习将观察结果映射到动作。
然而,对于长任务,BC 会遭受累积误差的影响。如果机器人稍微偏离了专家的路径,它就会进入以前从未见过的状态,犯错,进一步偏离,最终导致失败。
为了减轻这种情况,研究人员使用分层模仿学习 (Hierarchical Imitation Learning) 。 我们不再为整个咖啡制作过程学习一个巨大的策略,而是将任务分解为子目标序列 (\(G_1, G_2, \dots, G_n\))。机器人只需要弄清楚如何从当前状态到达当前子目标。

如图 1 所示,推理过程依赖于子目标转换机制 (Subgoal Transition Mechanism) 。 这是操作的大脑。它决定: “我们到了吗?”
启发式陷阱
历史上,研究人员一直使用启发式方法。他们定义一个阈值 \(\epsilon\) (epsilon)。如果机器人的当前状态与子目标足够接近 (数学上,如果均方误差小于 \(\epsilon\)) ,系统就会切换到下一个子目标。
这听起来合乎逻辑,但在实践中却存在严重缺陷:
- 敏感性: 如果 \(\epsilon\) 太小,机器人实际上需要以原子级的精度达到子目标,这会导致它卡住,永远无法转换。
- 过早切换: 如果 \(\epsilon\) 太大,机器人会过早切换,完全错过子目标 (例如,在咖啡胶囊进入机器之前就将其扔掉) 。
- 缺乏泛化能力: 适用于“打开抽屉”的 \(\epsilon\) 可能对于“穿针引线”完全失效。
这篇论文的作者认为,我们需要停止硬编码这些转换,并开始学习它们。
解决方案 1: ST-GPT (显式子目标转换)
提出的第一个解决方案是 ST-GPT (Subgoal Transition-GPT) 。 该架构承认转换是一个可以从演示数据中学习的决策。
该模型基于因果 Transformer (Causal Transformer) 。它将机器人的状态历史和当前子目标作为输入 token。然而,它不仅仅输出运动动作 (移动哪些关节) ,而是拥有一个“双头”输出。

正如你在图 2 中看到的,网络预测:
- 动作 (\(a_t\)): 物理运动。
- 转换信号 (\(\tau_t\)): 一个二元值 (0 或 1) 。
1表示“子目标已达成,切换到下一个”。
该模型的损失函数结合了动作误差 (MSE) 和转换分类误差 (二元交叉熵) :

在这里,模型受到专家何时转换子目标的显式监督。在部署期间,机器人不依赖距离阈值。它只是听从自己预测的 \(\tau\) 信号。如果模型说“继续”,它就会更新子目标条件。
关于 ST-GPT 的结论: 这种方法比 \(\epsilon\) 启发式方法有显著改进,因为它适应了任务的具体上下文。然而,它仍然依赖于“硬”切换。它迫使机器人在离散的时间戳上做出二元决策。在模棱两可的情况下,或者在非常长的任务中,单个错误的开关“点击”仍然可能使整个操作脱轨。
解决方案 2: SGPT (“软”转换)
这就是论文引入其最引人注目的贡献的地方: SGPT (Subgoal Guided Policy Transformer,子目标引导策略 Transformer) 。
研究人员提出了一个根本性的问题: 为什么我们需要在特定的毫秒切换子目标? 人类行为是流畅的。当你倒完牛奶准备搅拌咖啡时,你的注意力会逐渐从瓶子转移到勺子上。你不会瞬间切换你的大脑状态。
SGPT 利用 Transformers 中的交叉注意力 (Cross-Attention) 机制来模仿这种流畅性。
架构
SGPT 不再一次只给模型提供一个子目标,而是提供整个子目标序列 (\(G_1, \dots, G_n\)) 作为上下文。机器人的当前状态 (\(S_t\)) 被用作查询 (query) 来关注这些子目标。

在这个架构中 (图 3) :
- 编码器: 将所有子目标处理成嵌入 (embeddings) 。
- 交叉注意力: 当前状态 \(S_t\) 关注子目标嵌入。
- 解码器: 模型计算子目标的加权和。
这意味着机器人的动作实际上是以子目标的混合为条件的。在任务开始时,注意力权重可能 95% 在子目标 1 上,5% 在子目标 2 上。随着机器人的进展,对子目标 1 的注意力减弱,而对子目标 2 的注意力增强。
这里的损失函数很直接,纯粹关注动作预测,允许注意力机制隐式地组织自己:

可视化“软”切换
要理解 SGPT 的强大之处,最好的方法是观察模型在任务期间实际关注的内容。

图 5 显示了“Franka Kitchen”任务期间的注意力权重 (热力图) 。
- Y 轴代表时间 (向下进行) 。
- X 轴代表不同的子目标 (1 到 6) 。
- 颜色代表注意力强度 (红色 = 高关注度) 。
注意那个对角线图案了吗?它不是尖锐方块组成的阶梯。它是一个平滑的渐变 。
- 面板 (a): 在时间步 50 左右,模型对子目标 1 的关注达到顶峰,但它已经开始“注视”子目标 2 了。
- 面板 (b): 看一下时间步 150 附近的有趣行为。模型关注子目标 5,但它对子目标 4 也有很强的早期峰值。
这意味着策略不仅仅是对紧接着的下一步做出反应;它保持着计划的全局上下文。它连续地进行转换,使其对微小的时序错误具有鲁棒性,而这些错误通常会破坏 ST-GPT 或启发式模型。
引入 FrankaLHT: 更难的基准测试
为了真正测试“长视距”能力,现有的基准测试如标准 Franka Kitchen (约 250 步) 是不够的。作者引入了一套新的套件,称为 FrankaLHT (Long Horizon Tasks,长视距任务) 。

FrankaLHT 包含的任务明显更长 (平均 1000 步) 且语义更丰富,例如:
- 家庭辅助: 将水果放入篮子。
- 医疗废物分类: 精确处理注射器和瓶子。
- 包装: 将瓶子放入分格的盒子中。
这些任务不仅要求达到某个姿态,还需要按顺序与物体交互 (抓取 A \(\rightarrow\) 放置 A \(\rightarrow\) 抓取 B \(\rightarrow\) 放置 B) 。
实验结果
研究人员将他们的模型与强基线进行了比较:
- MLP: 使用 \(\epsilon\) 阈值的简单网络。
- GPT: 使用 \(\epsilon\) 阈值的因果 Transformer (类似于 ST-GPT,但没有学习到的转换头) 。
- BAKU: 最先进的 Transformer,它以最终目标图像而不是子目标为条件。
仿真结果
FrankaLHT 环境中的结果非常鲜明。

查看表 2 :
- Franka Kitchen (较简单) : ST-GPT 表现出色 (92.8% 分布内成功率) ,实际上与 SGPT 持平。硬转换对于较短、较简单的任务很有效。
- FrankaLHT (较难) : 这是基线模型崩溃的地方。
- MLP & GPT 得分为 0.00% 成功率。任务太长了;启发式方法失效了。
- BAKU 实现了 1.1% 的分布内成功率。
- SGPT (我们的) 实现了 92.2% 的成功率 。
差异是巨大的。SGPT 平滑转换的能力使其能够在离散转换模型失败的 1000 步序列中存活下来。即使在分布外 (OoD) 设置中 (初始状态被随机化) ,SGPT 的表现 (22.2%) 也明显优于其他模型 (0%) 。
真实世界验证
仿真很有用,但这在物理硬件上行得通吗?团队在 Franka Panda 机器人上进行了测试,执行诸如摆桌子或处理垃圾等桌面任务。

真实世界的结果反映了仿真结果:
- MLP, GPT, 和 BAKU 未能完成任何一个完整的任务 (0.00% 成功率) 。
- SGPT 实现了 52.4% 的成功率 。
为什么其他的失败得如此惨烈?在现实世界中,传感器噪声和微小的物理变化使得 \(\epsilon\) 阈值几乎不可能完美调整。SGPT 的软注意力机制吸收了这些不一致性。
结论: 未来是“软”的
这就给机器人学习提供了令人信服的一课: 僵化是可靠性的敌人。
通过试图将机器人行为强制纳入离散的、逻辑门式的转换中 (“如果误差 < 0.005,则切换”) ,我们引入了故障点。 ST-GPT 模型通过学习切换对此进行了改进,但它仍然强制进行二元选择。
SGPT 架构证明,允许神经网络连续地管理转换——模糊一步与下一步之间的界限——产生了一个显著更稳健的策略,特别是当任务变得更长和更复杂时。
对于进入该领域的学生和研究人员来说,这突显了 Transformer 架构的力量,它不仅用于处理序列,还用于管理上下文 。 交叉注意力不仅帮助机器人“看到”子目标;它给了机器人对任务的时间理解,使其能够流畅地执行动作,而不是机械地一步步执行。
当我们展望能够打扫整个房子或做全套饭菜的机器人时,像软子目标转换这样的技术可能会成为使其成为可能的“大脑”的标准组件。
](https://deep-paper.org/en/paper/543_enabling_long_er_horizon_i-2601/images/cover.png)