深度强化学习课程文档

(可选) 深度强化学习中的好奇心是什么?

Hugging Face's logo
加入 Hugging Face 社区

并获取增强的文档体验

开始

(可选) 深度强化学习中的好奇心是什么?

这是一个(可选)关于好奇心的介绍。如果你想了解更多,可以阅读另外两篇文章,我们在其中深入探讨了数学细节

现代强化学习中的两个主要问题

要理解什么是好奇心,我们首先需要理解强化学习的两个主要问题

首先,稀疏奖励问题:也就是说,大多数奖励不包含信息,因此被设置为零

请记住,强化学习是基于奖励假设的,即每个目标都可以描述为奖励的最大化。因此,奖励充当强化学习智能体的反馈;如果他们没有收到任何奖励,他们关于哪个动作是合适的(或不合适)的知识就无法改变

Curiosity
来源:感谢奖励,我们的智能体知道在那个状态下这个动作是好的

例如,在 Vizdoom 中,这是一组基于 Doom 游戏“DoomMyWayHome”的环境,你的智能体只有在找到背心时才会获得奖励。然而,背心离你的起点很远,所以你的大多数奖励将为零。因此,如果我们的智能体没有收到有用的反馈(密集奖励),它将花费更长的时间来学习最优策略,并且可能会花费时间在原地转圈而找不到目标

Curiosity

第二个大问题是,外部奖励函数是手工制作的;在每个环境中,都必须由人来实现奖励函数。但是,我们如何在大型和复杂的环境中扩展它呢?

那么,什么是好奇心?

解决这些问题的一个方法是开发一个智能体固有的奖励函数,即由智能体自身生成的奖励函数。智能体将充当自学者,因为它将是学生和自己的反馈大师。

这种内在的奖励机制被称为好奇心,因为这种奖励推动智能体去探索新颖/不熟悉的状态。为了实现这一点,我们的智能体在探索新的轨迹时将获得高奖励。

这种奖励的灵感来自于人类的行为方式。我们天生就有一种探索环境和发现新事物的内在渴望

计算这种内在奖励有不同的方法。经典的方法(通过预测下一状态的好奇心)是将好奇心计算为我们的智能体在预测下一状态时的误差,给定当前状态和采取的动作

Curiosity

因为好奇心的想法是鼓励我们的智能体执行能够减少智能体预测其行为后果的不确定性的动作(在智能体花费较少时间或具有复杂动态的区域,不确定性会更高)。

如果智能体在这些状态上花费大量时间,它将擅长预测下一状态(低好奇心)。另一方面,如果它处于一个新的、未探索的状态,它将很难预测下一个状态(高好奇心)。

Curiosity

使用好奇心将促使我们的智能体倾向于选择具有高预测误差的转换(这在智能体花费较少时间或具有复杂动态的区域会更高),从而更好地探索我们的环境

还有其他的好奇心计算方法。ML-Agents 使用了一种更高级的方法,称为通过随机网络蒸馏的好奇心。这超出了本教程的范围,但如果您有兴趣,我写了一篇文章详细解释了它

< > 更新 在 GitHub 上