5653 words
28 minutes
HER

Hindsight Experience Replay - Andrychowicz et al. 2017#

一句话总结#

[[Hindsight Experience Replay]] 的核心思想是:在 [[Sparse Reward]] 下,智能体即使没有完成原始目标,也通常达成了某个别的结果;HER 将失败轨迹重新标注为“以实际达成状态为目标”的经验,从而把原本无信息的失败样本转化为可学习的监督信号。

论文元信息#

字段内容
TitleHindsight Experience Replay
AliasesHER, 事后经验回放, hindsight goal relabeling
AuthorsMarcin Andrychowicz, Filip Wolski, Alex Ray, Jonas Schneider, Rachel Fong, Peter Welinder, Bob McGrew, Josh Tobin, Pieter Abbeel, Wojciech Zaremba
Year2017
VenueNeurIPS 2017
URLarXiv PDF
SourceTabbit sidebar paper reading
Statusprocessed

研究问题#

论文要解决的问题是:在奖励极其稀疏且只有成功/失败信号的情况下,如何让 [[Reinforcement Learning]] 算法仍然能够有效学习?

在机器人操作任务中,随机探索几乎不可能直接完成目标。例如机械臂随机动作很难刚好把物体推到目标位置、滑到指定区域,或者抓起并放到空中目标。因此普通 RL 算法在 replay buffer 中看到的几乎全是失败样本,奖励长期为 ,critic 很难学习出有意义的价值差异。

论文关心的不是“如何让探索访问更多状态”,而是“如何从已经访问过但看似失败的轨迹中提取学习信号”。这一区别很关键:在高维连续控制任务中,探索本身固然重要,但如果所有探索结果都被原始目标评价为失败,那么数据利用效率仍然极低。

背景与动机#

传统机器人强化学习常依赖 [[Reward Shaping]]。例如为了训练机械臂完成复杂操作,研究者往往需要设计包含多个项的 cost function,并手工调整权重。这限制了 RL 在真实世界中的适用性,因为它需要同时具备 RL 专业知识和任务领域知识。

HER 的动机来自人类的事后学习能力。比如一个人打冰球时本来想射门,但球偏到了球门右侧。普通 RL 会把这条轨迹视为失败;但人类可以意识到:如果球门本来就在右侧,那么这次击球就是成功的。HER 将这种“事后重新解释目标”的思想形式化为经验回放机制。

论文中的 bit-flipping toy example 清楚说明了问题本质。在 个 bit 的环境中,随机达到目标状态的概率随 指数下降。普通 DQN 在较大 下几乎永远看不到非 的奖励,因此无法学习。但 DQN + HER 可以把实际到达的 bit 状态当成 hindsight goal,使轨迹产生正确信号,从而解决更大规模的问题。

核心直觉#

HER 的核心直觉是:失败只是在原目标下失败;在另一个目标视角下,同一条轨迹可能是成功的。​

如果 episode 中真实轨迹为:

原始目标为 ,但智能体没有达成 。普通 experience replay 会存储:

其中大部分

HER 额外选择一个 hindsight goal ,例如最终状态 对应的目标:

然后重新计算奖励:

并把同一条 transition 存成:

这样,原本关于目标 的失败轨迹,就变成了关于目标 的有效经验。

这个思想依赖一个关键事实:目标会影响智能体当时为什么选择某个动作,但不会改变环境动力学本身。​ 因此只要使用 [[Off-Policy Reinforcement Learning]],就可以用不同目标重新解释同一条真实发生过的轨迹。

方法机制#

HER 建立在 [[Goal-Conditioned Reinforcement Learning]] 和 [[Universal Value Function Approximators]] 的框架上。策略和值函数不仅输入状态,还输入目标:

其中 是目标,通常表示希望物体达到的位置。在机器人操作实验中,目标空间为:

目标谓词为:

也就是说,当物体位置 距离目标位置 不超过容差 时,目标达成。

奖励函数为稀疏二值形式:

其中 是执行动作后的状态。若目标未达成,奖励为 ;若目标达成,奖励为

HER 需要一个从状态到目标的映射:

使得:

在机器人操作中,这个映射很自然:

即某个状态下物体实际所在的位置,就可以被看作该状态已经达成的目标。

算法流程#

HER 的算法流程可以理解为在普通 [[Experience Replay]] 外加了一步 goal relabeling。

首先,在每个 episode 开始时采样原始目标 和初始状态 。智能体根据 goal-conditioned behavior policy 执行动作:

其中 表示把状态和目标拼接后作为网络输入。

采集完整 episode 后,对于每个 transition,先按普通 replay 方式存入:

然后 HER 根据当前 episode 采样若干额外目标 ,例如未来状态、最终状态或 episode 中其他状态所对应的目标。对每个 ,重新计算奖励:

再额外存入:

最后,从 replay buffer 中采样 minibatch,用原 off-policy RL 算法更新 actor 和 critic。

在 DDPG + HER 中:

是 actor,负责根据状态和目标输出连续动作;

是 critic,负责评估在目标 下执行动作 的长期价值。

HER 并不替代 DDPG,而是改变 replay buffer 中训练数据的构造方式。

实验设计#

论文主要实验使用 Fetch 机械臂在 MuJoCo 中完成三个机器人操作任务。

Pushing#

盒子放在桌面上,目标是把盒子移动到桌面上的目标位置。机器人夹爪手指被锁住,不能抓取,只能推动或滚动物体。该任务测试机械臂是否能通过接触控制物体在平面上的位置。

Sliding#

puck 放在长而光滑的桌子上,目标位置在机器人可达范围之外。机器人必须击打 puck,使其滑行并最终因摩擦停在目标附近。这要求策略学习非准静态操作,需要预测击打力度和滑行动力学。

Pick-and-place#

任务类似 pushing,但目标位置在空中,夹爪可以开合。机器人需要学会抓取、抬升并放置物体。为了降低探索难度,作者在训练中让一半 episode 从一个物体已被抓住的 demonstration state 开始。论文脚注指出,后来发现如果目标位置有时在桌面、有时在空中,则不一定需要这个技巧。

状态、目标与动作#

仿真内部状态包括机器人关节角度与速度、物体位置、旋转、线速度和角速度。但策略网络输入经过限制,以便更接近真实机器人可获得的信息。策略输入包括夹爪绝对位置、物体相对于夹爪的位置、目标相对于物体的位置,以及夹爪两指距离。critic 额外使用速度信息。

动作空间为 4 维:前三维指定下一时间步期望的相对夹爪位置,第四维指定两指间距。夹爪旋转保持固定。

对比方法#

论文比较了:

  • DDPG

  • DDPG + count-based exploration

  • DDPG + HER

  • 不同 HER goal sampling strategy

HER 默认版本使用 final strategy,即用 episode 最终状态对应的目标作为额外 hindsight goal。后续消融实验比较 final、future、episode 和 random 等策略。

主要实验结论#

第一,在多目标设置下,普通 DDPG 无法解决 pushing、sliding 和 pick-and-place 三个任务。加入 count-based exploration 的 DDPG 只在 sliding 上取得一些进展,但不能稳定解决任务。DDPG + HER 几乎完美解决全部任务。这说明 HER 的作用不是简单提高训练速度,而是让原本在稀疏奖励下不可学习的问题变得可学习。

第二,即使只有一个原始目标,HER 仍然显著优于普通 DDPG。单目标设置中,每个 episode 的 desired goal 固定,但 HER 仍可把失败轨迹 relabel 为 achieved goals,因此 replay buffer 中仍然产生多目标训练信号。

第三,多目标训练比单目标训练学得更快。即使最终只关心一个目标,训练时使用多样化目标也更有利。多目标分布诱导更丰富的行为数据,使 actor 和 critic 学到更一般的目标条件控制结构。

第四,简单 reward shaping 在实验中失败。作者测试了基于距离的 shaped reward,例如鼓励物体靠近目标,但 DDPG 和 DDPG + HER 都未能成功解决任务。论文认为原因可能是 shaped reward 优化目标与最终成功指标不一致,并且 shaped reward 可能惩罚早期不精确但必要的探索行为,使智能体学会“不碰物体”。

第五,future strategy 是表现最好的 hindsight goal 采样策略之一。future strategy 对每个 transition 采样同一 episode 中该 transition 之后的状态作为 hindsight goal。实验显示 时表现最好,尤其是 sliding 任务中,future strategy 是唯一几乎完美解决任务的策略。过大的 会降低普通 replay 数据比例,反而损害性能。

第六,仿真训练策略可以迁移到真实机器人。作者将仿真中训练的 pick-and-place 策略部署到真实 Fetch 机器人上,初始成功率为 2/5。加入 1 cm 标准差的观测高斯噪声重新训练后,真实机器人成功率提升到 5/5。这说明 HER 可用于 sim-to-real,但对感知误差鲁棒性需要在训练中显式考虑。

对机器人研究的启发#

HER 对机器人学习的最大启发是:在机器人操作中,数据并不只是“成功/失败”的记录,而是可以从多个目标视角重新解释的交互轨迹。一次失败试验如果只用原任务目标评价,可能毫无信息;但如果用 achieved goal 评价,它可以成为成功样本。这对真实机器人尤其重要,因为真实机器人采样昂贵,任何提高数据复用率的方法都具有很高价值。

对于 [[Robot Manipulation]],HER 提供了一种避免复杂 reward engineering 的路径。许多机器人任务的真实目标本来就是二值的:物体是否到达位置、门是否打开、插头是否插入、零件是否装配成功。相比手工设计 dense reward,HER 更接近任务真实评价标准。

HER 也提示:机器人学习中的“目标分布设计”本身是一种重要建模选择。论文显示多目标训练比单目标训练更有效,这意味着即使最终任务是单一目标,也可以通过构造目标族来获得更丰富的训练信号。对机器人研究而言,可以把一个任务重新表述为 goal-conditioned family,而不是固定目标的单一 MDP。

这次阅读中重点讨论了 [[Epsilon-Greedy Policy]]。选中的核心句子是:智能体以概率 随机选择动作,以概率 选择当前 函数认为最好的动作。这个机制的研究启发是:有效学习需要在 exploitation 和 exploration 之间保持张力;HER 进一步说明,探索产生的“偏离原目标”的轨迹不应被浪费,而应通过目标重标注转化为训练资源。

对于 [[Sim-to-Real]],论文的启发是:策略训练不能只追求仿真中完美状态下的最优表现,还要考虑真实部署中的观测噪声。加入观测噪声后真实机器人成功率提升,说明 robustness 不是部署后的补丁,而应该成为训练分布的一部分。

方法的适用条件#

HER 适用于可以定义多个目标的任务,尤其是目标可以由状态中的某些量表示的任务。例如物体位置、末端执行器位置、关节配置、门角度、抽屉开合程度等。

HER 需要能够从状态中提取 achieved goal,即存在映射:

对于机器人操作,这通常可行,因为物体实际位置天然就是一个 achieved goal。但对于目标不容易从状态中提取的任务,HER 的使用会更困难。

HER 依赖 [[Off-Policy Reinforcement Learning]]。因为 relabel 后的目标不是行为策略当时真正追求的目标,必须使用 off-policy 算法才能合法地从这些重标注经验中学习。

HER 尤其适合 [[Sparse Reward]] 和 [[Binary Reward]] 场景。如果任务本来已经有高质量 dense reward,HER 的边际收益可能较小。但论文也显示,简单 dense reward 未必可靠,因此不能简单认为 shaped reward 一定优于 sparse reward + HER。

HER 要求目标不会改变环境动力学。目标可以影响智能体动作选择,但不能改变同一动作在环境中的物理后果。如果目标本身改变环境 dynamics,则同一轨迹不能随意 relabel。

局限性#

HER 不能直接解决探索完全无法覆盖有意义状态的问题。HER 可以把已经达到的状态转化为目标,但如果智能体从未接触物体、从未移动关键对象、从未进入任务相关状态空间,那么 HER 也缺乏可利用的 achieved goals。

在 pick-and-place 中,作者一开始需要 demonstration state 来帮助探索抓取状态。这说明 HER 虽然能缓解稀疏奖励问题,但对长时程、强前置技能依赖的任务仍可能需要辅助探索机制、演示、课程学习或更合理的目标分布。

HER 对 goal representation 敏感。如果目标表示不合适,或者 achieved goal 与任务成功标准之间存在偏差,relabel 可能产生弱监督甚至误导性监督。

HER 的 performance 与 hindsight goal sampling strategy 有关。论文中 future strategy 明显优于 random strategy,说明不是任意 relabel 都同样有效。目标需要与当前 transition 有一定因果相关性。

HER 主要解决目标达成类任务。对于没有明显 goal state 或成功谓词难定义的任务,例如开放式技能学习、交互式语言任务、复杂长期规划任务,需要额外抽象才能使用 HER。

和相关概念的关系#

[[Experience Replay]] 是 HER 的基础。普通 replay 复用过去 transition,但目标保持不变;HER 则在 replay 时额外改变目标并重算奖励。

[[Goal-Conditioned Reinforcement Learning]] 是 HER 的表示前提。策略和值函数必须接受目标输入,否则无法学习一个可根据目标变化而改变行为的 universal policy。

[[Universal Value Function Approximators]] 与 HER 紧密相关。UVFA 学习 ,HER 则提供一种高效构造多目标训练数据的方法。

[[Reward Shaping]] 与 HER 是两种处理 sparse reward 的不同路线。Reward shaping 通过引入 dense signal 指导学习,但可能引入与真实目标不一致的优化偏差。HER 保留 sparse binary reward,通过 relabel 增加有效样本。

[[Curriculum Learning]] 与 HER 有相似性。HER 可以被看作一种隐式课程学习:早期智能体只能达到简单目标,HER 就用简单 achieved goals 训练;随着能力增强,能达到的目标自然变难。

[[Exploration]] 与 HER 是互补关系。探索决定智能体能产生哪些轨迹,HER 决定这些轨迹如何被更高效利用。HER 不是探索算法本身,但能放大探索数据的训练价值。

[[Sim-to-Real]] 中,HER 证明了 sparse reward 训练出的策略可以迁移到真实机器人,但部署成功依赖对观测噪声的鲁棒训练。

可复现线索#

实验环境为 Fetch 机械臂操作任务,仿真使用 MuJoCo。任务包括 pushing、sliding 和 pick-and-place。

强化学习算法为 DDPG,策略和价值函数使用 MLP,激活函数为 ReLU,优化器为 Adam。训练使用 8 个 workers,并在每次更新后平均参数。

奖励采用 sparse binary reward,未达成目标为 ,达成目标为

目标表示为物体目标位置 ,目标达成条件是物体位置与目标位置距离小于阈值。pushing 和 pick-and-place 成功阈值为 7 cm,sliding 成功阈值为 20 cm。

HER replay strategy 包括:

  • final:使用 episode 最终状态作为 hindsight goal

  • future:使用当前 transition 之后的若干未来状态作为 hindsight goals

  • episode:使用同一 episode 中随机状态作为 hindsight goals

  • random:使用训练过程中任意已访问状态作为 hindsight goals

论文结果显示 future strategy with or 效果最好。过大 会降低普通 replay 占比,导致性能下降。

真实机器人部署中,物体位置由 CNN 从机器人头部相机图像估计。加入 1 cm 标准差观测噪声训练后,pick-and-place 真实机器人成功率从 2/5 提升到 5/5。

我的思考#

HER 的关键价值不只是“从失败中学习”,而是改变了机器人数据的语义结构。普通 RL 中,一条 trajectory 的意义由原始 goal 唯一决定;HER 中,同一 trajectory 可以在多个 goal 条件下具有不同意义。这本质上是一种 data augmentation,但增强对象不是图像或状态,而是任务语义。

对机器人操作来说,HER 适合与自动目标生成、对象中心表示、技能发现和离线数据复用结合。特别是在真实机器人采样昂贵的场景中,可以把大量未完成任务的数据转化为“完成了某个替代目标”的训练材料。

我需要特别注意 HER 和 exploration 的边界。HER 不能凭空产生未访问区域的经验,它只能重解释已经发生的轨迹。因此在 contact-rich manipulation 或需要精确前置技能的任务中,HER 可能仍需要 demonstration、curriculum、reset distribution design 或 intrinsic exploration 配合。

多目标与多任务需要严格区分。论文中的 multi-goal 主要不是指一个 actor 同时学 pushing、sliding、pick-and-place,而是指同一个任务内目标位置变化。一个 goal-conditioned actor 学的是 ,通过输入不同目标位置产生不同行为。三个任务在论文中通常是分别训练策略,而不是一个 actor 统一完成所有任务。

这次对话中我对 -greedy 的理解也可以保留:探索不是“做错误动作”,而是有意保留对当前价值估计的不信任。HER 的贡献在于,即使探索没有命中原目标,只要它到达了某个可描述状态,这段探索仍可能被转化为有效训练信号。

后续问题#

  • HER 在 contact-rich manipulation 中与 demonstration、reset distribution、curriculum learning 的最佳组合方式是什么?

  • 对于目标不是物体位置而是关系、约束或语言描述的任务,如何定义 achieved goal 和 relabeling?

  • HER 的 hindsight goal sampling 是否可以由 learned value、uncertainty 或 causal relevance 自动选择,而不是手工使用 future strategy?

  • HER 是否适合离线机器人数据集?如果数据中的行为策略没有 goal annotation,能否通过 hindsight relabel 构造 goal-conditioned offline RL 数据?

  • 在 sim-to-real 中,除了 observation noise,HER 是否需要 dynamics randomization 或 perception uncertainty-aware critic?

  • HER 与 modern diffusion policy、behavior cloning、offline RL 结合时,goal relabeling 应该发生在 trajectory level、transition level 还是 skill level?

  • 对长时程 manipulation,是否可以分层使用 HER:低层 relabel object pose,高层 relabel subgoal sequence?

可以拆出的永久笔记#

  • [[Hindsight Experience Replay]]

  • [[Goal Relabeling]]

  • [[Sparse Reward]]

  • [[Goal-Conditioned Reinforcement Learning]]

  • [[Universal Value Function Approximators]]

  • [[Experience Replay]]

  • [[Off-Policy Reinforcement Learning]]

  • [[Reward Shaping]]

  • [[Implicit Curriculum Learning]]

  • [[Sim-to-Real]]

  • [[Epsilon-Greedy Policy]]

  • [[Exploration vs Exploitation]]

相关双链#

  • [[Reinforcement Learning]]

  • [[Robot Manipulation]]

  • [[Robot Learning]]

  • [[DDPG]]

  • [[DQN]]

  • [[Experience Replay]]

  • [[Sparse Reward]]

  • [[Binary Reward]]

  • [[Goal-Conditioned Policy]]

  • [[Multi-Goal Reinforcement Learning]]

  • [[Reward Engineering]]

  • [[MuJoCo]]

  • [[Fetch Robot]]

  • [[Pick-and-Place]]

  • [[Pushing]]

  • [[Sliding]]

  • [[Sim-to-Real Transfer]]

后续阅读#

  • [[Universal Value Function Approximators]]

  • [[Deep Deterministic Policy Gradient]]

  • [[Deep Q-Network]]

  • [[Prioritized Experience Replay]]

  • [[Curriculum Learning]]

  • [[Automatic Goal Generation]]

  • [[Count-Based Exploration]]

  • [[VIME]]

  • [[Offline Goal-Conditioned Reinforcement Learning]]

原始对话索引#

这篇笔记来自一次 Tabbit 侧边栏论文阅读会话。对话重点包括:

  • 翻译并解释论文题目、摘要、引言和背景部分。

  • 梳理论文中的 DQN、DDPG、UVFA 和 HER 基本机制。

  • 重点解释 -greedy policy:以概率 随机探索,以概率 选择当前 函数认为最优的动作。

  • 解释 HER 如何把失败轨迹重新标注为 achieved goal 下的成功经验。

  • 翻译并讨论 4.1 到 4.6 节实验,包括 pushing、sliding、pick-and-place、reward shaping、goal sampling strategy 和真实机器人部署。

  • 讨论 multi-goal 与 single-goal 的区别:multi-goal 指同一任务中目标 变化,通常训练一个 goal-conditioned actor ;论文中的三个机器人任务不是同一个 actor 同时完成的三个目标,而是三个不同实验任务。

  • 形成的关键理解:HER 的价值在于提高机器人交互数据的语义复用率,而不仅是提高普通 replay 的样本效率。

我的一句话评价#

HER 最值得保留的洞见是:在机器人学习中,失败轨迹不应被视为无效数据;只要能从状态中提取 achieved goal,它就可以被重新解释为另一个目标下的成功经验,从而把稀疏奖励问题转化为目标条件数据复用问题。


HER:把失败轨迹变成目标条件训练数据#

[[Hindsight Experience Replay]] 认为,机器人没有完成原始目标并不等于这条轨迹没有价值;它通常达成了某个别的状态。通过把实际达成的状态重新标注为 hindsight goal,HER 将 sparse reward 下的失败经验转化为 [[Goal-Conditioned Reinforcement Learning]] 的训练样本。

核心机制是:同一条 transition 可以从原目标 的视角存一次,也可以从 achieved goal 的视角再存一次,并重新计算奖励。只要使用 [[Off-Policy Reinforcement Learning]],这种 relabeling 就可以用于训练

对机器人研究的启发是:真实机器人数据昂贵,关键不是只收集更多成功数据,而是提高每条交互轨迹的语义复用率。HER 让“失败”成为可检索、可复用、可训练的多目标数据。

相关链接:

  • [[Sparse Reward]]

  • [[Goal-Conditioned Reinforcement Learning]]

  • [[Experience Replay]]

  • [[Off-Policy Reinforcement Learning]]

  • [[Robot Manipulation]]

  • [[Sim-to-Real]]

来自论文:

  • [[Hindsight Experience Replay - Andrychowicz et al. 2017]]
HER
https://ny-wakeup.github.io/myblog/posts/HER/
Author
Nwaky
Published at
2026-06-09
License
CC BY-NC-SA 4.0