最大熵如何使强化学习更加稳健

ML at Berkeley 论文

摘要

本文解释了将香农熵纳入强化学习目标函数,如何创造出更稳健的智能体,使其能够应对奖励和动态环境中出现的意外甚至对抗性变化。

<p><em>文 / <a href="https://ashwinreddy.github.io/">Ashwin Reddy</a></em></p><p>本文将解释<strong>香农熵</strong>的概念,以及为何将其添加到经典的强化学习(RL)公式中能够创造出<strong>稳健</strong>的智能体,即那些能够容忍意外、甚至是对抗性变化的智能体。</p><p>我假设你已经熟悉强化学习的一般概念,因此我们可以专注于探讨为什么具有高熵的智能体具有稳健性,特别是针对奖励或动态环境变化的稳健性。</p><h2>强化学习简要回顾</h2><p>回顾一下,强化学习旨在解决游戏中的决策问题,其中<strong>奖励函数</strong> <em>r(s,a)</em> 为游戏状态 <em>s</em> 下的动作 <em>a</em> 分配数值分数。广义上讲,目标是确定如何获得最多的分数(我们稍后会将这一说法具体化)。</p><p>智能体的决策策略,也被称为其<strong>策略</strong>(policy),记为 <em>π</em>,可以是<strong>确定性</strong>的,也可以是<strong>随机性</strong>(stochastic)的。当反复面对相同的情况时,确定性策略总是会选择相同的选项,而随机性策略则根据选项上的概率分布进行选择。</p><p>以石头剪刀布为例,这是一个随机性策略的具体例子。你不会在面对聪明的对手时使用确定性策略,因为对手一旦知道哪个选项能击败你的选项,就能一直赢。相反,你会让每个选项的概率相等,从而最大限度地减少对手利用你策略的能力。</p><p>事实上,确定性策略<em>也是</em>一种随机性策略;它以概率 1 选择单个动作。因此,强化学习的形式化通常将策略视为给定状态下的动作分布,即 <em>π(a|s)</em>。</p><p>由于策略是随机化的,在长度为 <em>T</em> 个步骤的回合中,总奖励是一个随机变量。为了将其转化为标量目标,我们取期望值。理想的策略旨在最大化这一目标。</p><div class="latex-rendered" data-attrs="{&quot;persistentExpression&quot;:&quot;\\pi^\\star = \\arg\\max_\\pi \\mathbb{E}_{\\pi}\\left[\\sum_{t=1}^T r(s_t, a_t) \\right]&quot;,&quot;id&quot;:&quot;KIGUFMIQCV&quot;}" data-component-name="LatexBlockToDOM"></div><h2>引入熵</h2><p>现在我们将介绍第二个关键要素。</p><p>1948 年,信息论之父克劳德·香农(Claude Shannon)在其开创性论文《通信的数学理论》中提出了熵的概念,这是一种衡量随机变量信息量的度量。</p><p>对香农而言,事件的信息含量与其令人惊讶的程度有关。信息与发生概率呈负相关,因为高概率事件本来就是预期会发生的。</p><p>假设你在玩“刽子手”(Hangman,猜词游戏)。如果你猜“e”且单词中确实有“e”,你并没有获得太多新信息;因为“e”是英语中最常见的字符。然而,如果你发现单词中含有“z”,这一事件提供了大量信息,因为这极大地缩小了候选单词的范围。</p><p>香农对熵的要求还包括以下几点:假设 <em>p<sub>1</sub></em> 和 <em>p<sub>2</sub></em> 是独立事件的概率,那么观察到这两个事件所获得的信息 <em>I</em> 等于分别观察到每个事件所获得的信息之和。</p><div class="latex-rendered" data-attrs="{&quot;persistentExpression&quot;:&quot;I(p_1p_2) = I(p_1) + I(p_2)&quot;,&quot;id&quot;:&quot;LTIWEUNKEZ&quot;}" data-component-name="LatexBlockToDOM"></div><p>请尝试推导一下,为什么这些标准意味着概率为 <em>p</em> 的事件的信息量可以适当地定义为:</p><div class="latex-rendered" data-attrs="{&quot;persistentExpression&quot;:&quot;I(p) \\equiv \\log \\frac{1}{p}&quot;,&quot;id&quot;:&quot;TFHLOYZZEP&quot;}" data-component-name="LatexBlockToDOM"></div><p>香农熵 <em>H</em> 紧凑地定义为随机变量 <em>X</em> 的<em>期望</em>信息含量:</p><div class="latex-rendered" data-attrs="{&quot;persistentExpression&quot;:&quot;\\mathcal{H}(X) \\equiv \\mathbb{E}_{x \\sim X}\\left[I\\big(p(x)\\big)\\right]&quot;,&quot;id&quot;:&quot;EHJSRTBYQE&quot;}" data-component-name="LatexBlockToDOM"></div><p>为简单起见,我不赘述关于<strong>微分熵</strong>的细节,微分熵定义了连续随机变量的熵。就我们的目的而言,上述公式适用于任何随机变量。</p><h2>熵的直观理解</h2><p>伯努利抛硬币实验是理解熵的一个典型例子。给定 <em>X ∼ Bernoulli(p)</em>,</p><div class="latex-rendered" data-attrs="{&quot;persistentExpression&quot;:&quot;\\mathcal{H}(X) = p \\log \\frac{1}{p} + (1-p)\\log\\frac{1}{1-p}&quot;,&quot;id&quot;:&quot;ALJNDGTWKK&quot;}" data-component-name="LatexBlockToDOM"></div><p>让我们看一张图。当 <em>I(p)</em> 中的对数底数为 2 时,熵以比特(bits)为单位进行度量。</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!lDad!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff209d71b-7dd7-41b5-b0bc-0e68070c34b7_3165x1733.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!lDad!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff209d71b-7dd7-41b5-b0bc-0e68070c34b7_3165x1733.jpeg 424w, https://substackcdn.com/image/fetch/$s_!lDad!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff209d71b-7dd7-41b5-b0bc-0e68070c34b7_3165x1733.jpeg 848w, https://substackcdn.com/image/fetch/$s_!lDad!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff209d71b-7dd7-41b5-b0bc-0e68070c34b7_3165x1733.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!lDad!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff209d71b-7dd7-41b5-b0bc-0e68070c34b7_3165x1733.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!lDad!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff209d71b-7dd7-41b5-b0bc-0e68070c34b7_3165x1733.jpeg" width="1456" height="797" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/f209d71b-7dd7-41b5-b0bc-0e68070c34b7_3165x1733.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:797,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!lDad!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff209d71b-7dd7-41b5-b0bc-0e68070c34b7_3165x1733.jpeg 424w, https://substackcdn.com/image/fetch/$s_!lDad!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff209d71b-7dd7-41b5-b0bc-0e68070c34b7_3165x1733.jpeg 848w, https://substackcdn.com/image/fetch/$s_!lDad!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff209d71b-7dd7-41b5-b0bc-0e68070c34b7_3165x1733.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!lDad!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff209d71b-7dd7-41b5-b0bc-0e68070c34b7_3165x1733.jpeg 1456w"></picture></div></a></figure></div>
查看原文 导出为 Word 导出为 PDF
查看缓存全文

缓存时间: 2026/05/08 08:18

# 最大熵如何让强化学习变得稳健 来源: https://mlberkeley.substack.com/p/max-ent *作者:Ashwin Reddy (https://ashwinreddy.github.io/)* 本文解释了**香农熵**(Shannon entropy)是什么,以及为什么将其添加到经典的强化学习(RL)公式中可以创造出**稳健**的智能体,这些智能体能够容忍甚至对抗性的意外变化。 我假设你对强化学习的一般概念已经熟悉,因此我们可以专注于直观理解为什么具有高熵的智能体是稳健的,特别是针对奖励变化或动态变化。 回顾一下,强化学习旨在解决游戏中的决策问题,其中**奖励函数** *r(s,a)* 为游戏状态 *s* 下的动作 *a* 分配数值点数。 broadly 来说,目标是确定如何获得最多的分数(稍后我们会使这一表述更加具体)。 智能体的决策策略,也称为其**策略**,记为 *π*,可以是**确定性的**或**随机性的**。当反复面对相同的情况时,确定性策略总是选择相同的选项,而随机策略则根据选项上的概率分布进行选择。 以石头剪刀布为例来说明随机策略。你不会对一个聪明的对手使用确定性策略,因为他们知道哪种选项能击败你的选项,从而总能获胜。相反,你会让每个选项等概率出现,最小化对手利用你策略的能力。 事实上,确定性策略*是*一种随机策略;它以概率 1 采取单一动作。因此,RL 的形式化通常将策略视为给定状态下的动作分布,*π(a|s)*。 由于策略是随机化的,在 T 步的回合中,总奖励是一个随机变量。为了将其简化为标量目标,我们取其期望值。理想策略最大化这一目标。 \\(\pi^\star = \arg\max_\pi \mathbb{E}_\pi\left[\sum_{t=1}^T r(s_t, a_t) \right]\\) 现在我们引入第二个关键要素。 1948 年,信息论之父克劳德·香农在他开创性的论文《通信的数学理论》中引入了熵的概念,即随机变量的信息度量。 对于香农来说,事件的信息内容与其意外程度相关。信息与发生概率呈负相关,因为高概率的事件无论如何都会被期待发生。 假设你在玩“猜单词游戏”(Hangman)。如果你猜“e”并且单词中确实有“e”,你并没有发现太多新信息;“e”是英语中最常见的字符。然而,如果你发现单词中包含“z”,这一事件提供了大量信息,因为它极大地缩小了考虑的单词集合。 香农对熵的期望还包括以下一点:假设 *p1* 和 *p2* 是独立事件的概率,从看到这两个事件中接收到的信息 *I* 等于分别看到每个事件的信息之和。 \\(I(p_1p_2) = I(p_1) + I(p_2)\\) 看看你是否能推导出为什么这些标准意味着概率为 *p* 的事件的信息可以适当地定义为 \\(I(p) \equiv \log \frac{1}{p}\\) 香农熵 *H* 紧凑地定义为随机变量 *X* 的*预期*信息内容: \\(\mathcal{H}(X) \equiv \mathbb{E}_{x \sim X}\left[I\big(p(x)\big)\right]\\) 为简单起见,我略去了关于**微分熵**的细节,它为连续随机变量定义了熵。就我们的目的而言,上面的方程适用于任何随机变量。 伯努利抛硬币是一个理解熵的典型例子。给定 *X∼Bernoulli(p)*, \\(\mathcal{H}(X) = p \log \frac{1}{p} + (1-p)\log\frac{1}{1-p}\\) 让我们看一个图。当 *I(p)* 中的对数底数为 2 时,熵以比特为单位测量。 [](https://substackcdn.com/image/fetch/$s_!lDad!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff209d71b-7dd7-41b5-b0bc-0e68070c34b7_3165x1733.jpeg) 正面或反面的等概率最大化了熵。然而,随着正面或反面的概率变得越来越确定(达到 0 或 1),熵会减少——我们对结果不那么惊讶。 扩展这一逻辑,我们看到均匀分布是所有离散随机变量中熵最高的。由于没有一个选项比其他选项更可能出现,结果给出了最大的惊喜。 **最大熵分布**在具有不确定性的应用中通常发挥着重要作用。再举一个例子,假设你知道某个分布的方差由某个常数 *σ2* 给出。在所有方差为 *σ2* 的连续分布中,适当的高斯分布将具有最高的熵。 粗略地说,均匀分布和高斯分布(在受到某些约束的情况下最大化熵)最小化了它们假设的先验信息量,因为它们允许最大的惊喜。因此,定性地说,高熵分布往往具有更大的**支撑集**(即具有非零概率的更大的点集)。 具体地说,如果有人让你猜一个可能有偏倚的硬币抛出正面的概率,猜 50% 比猜 100% 或 0% 更有意义。或者,如果你必须猜随机数生成器会吐出什么,把所有赌注押在一个数字上是不明智的。 如果我们承认随机策略,强化学习就成为信息论概念的一个很好的应用领域。 为此,让我们思考智能体策略的熵如何影响其行为。熵创造了惊喜,因此高熵的智能体实际上会因为策略的随机性而拥有多种策略。此外,我们可以将最大熵策略分布解释为对其所处世界做出的较少假设。 因此,我们假设鼓励智能体中的熵具有有益的特性。这种公式化正是 MaxEnt RL。我们将在优化中包括一个熵项作为奖励。 \\(\pi^\star_{\mathsf{MaxEnt}} = \arg\max_{\pi} \left( \mathbb{E}_\pi\left[\sum_{t=1}^T r(s_t, a_t) \right] \color{red}{+\mathcal{H}\left(\pi\big(a \mid s\big)\right)} \color{black}\right).\\) 这实际上为我们保证了什么特性? MaxEnt RL 解决了强化学习的一个变体,称为**稳健奖励问题**(robust reward problem)。在稳健奖励问题中,奖励函数可能会发生变化。 换句话说,我们有一个对抗性玩家,可以改变智能体的得分方式。因此,这是一个二人零和博弈;智能体需要在最坏的情况下最大化其总奖励。由对抗性玩家引起的变化用红色标出。 \\(\arg\max_\pi \color{red}{\min_{r' \in R}} \color{black}\mathbb{E}_\pi \left[ \sum_{t=1}^T \color{red}{r'}\color{black}(s_t, a_t) \right].\\) 其中 *R* 是对抗性玩家可以选择的奖励函数集合。 让我们简要概述证明。首先,我们将看**交叉熵**(cross-entropy),它告诉我们在*假设*事件遵循分布 *q* 而实际上来自分布 *p* 时,预期会有多少惊喜: \\(\mathcal{H}(p, q) = \mathbb{E}_{x \sim p}\left[\log \frac{1}{q(x)} \right].\\) 自然,最低交叉熵出现在我们的假设与现实一致时,即 *p=q*。 \\(\mathcal{H}(p) = \min_{q} \mathcal{H}(p, q).\\) 通过一些变换,最大熵 RL 公式中的熵项可以打包到奖励函数中! \\(\overbrace{\mathbb{E}_\pi\left[\sum_{t=1}^T r(s_t, a_t) \right] + \mathcal{H}\left(\pi\big(a \mid s\big)\right)}^{\text{MaxEnt Reward}} = \overbrace{\min_{r' \in R}\mathbb{E}_\pi\left[\sum_{t=1}^T r'(s_t, a_t) \right]}^{\text{Robust Reward Problem}}\\) 其中 \\(R = \{r(s,a) - \log q(a \mid s)\}\\) 对于任何有效的分布 *q*。换句话说,MaxEnt RL 确保了在原奖励函数 *r(s,a)* 受到扰动下的最高奖励。 让我们以论文中的例子来理解这里发生的事情。想象一个简单的两臂老虎机,其奖励为 \\(r(a) = \begin{cases}2 & a = 1 \\ 1 & a = 2\end{cases}.\\) 稳健集合由来自任意分布 *q* 的扰动组成。 \\(R = \left\{ r'(a) = \begin{cases}2 -\log q(a)& a = 1 \\ 1- \log(1-q(a)) & a = 2\end{cases} \,\middle|\, q \in [0,1] \right\}.\\) 然后我们可以绘制稳健集并查看相关奖励。 [](https://substackcdn.com/image/fetch/$s_!NUqZ!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F228620ea-276b-494d-80bc-eb196819e880_1794x924.png) 我们现在已经看到 MaxEnt RL 如何对奖励的变化保持稳健。这一见解实际上使我们可以做出另一个关于稳健性的声明:MaxEnt RL 也对动态变化保持稳健! 我们不会深入证明(如果你感兴趣,这在这篇博客文章中有介绍 (https://bair.berkeley.edu/blog/2021/03/09/maxent-robust-rl/)),但高层思想是将动态变化转化为奖励变化。 [](https://substackcdn.com/image/fetch/$s_!Rm1D!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc0f80a13-bf64-4747-a45c-6fd499b464db_870x738.png) 我们已经建立了一些对熵是什么以及它如何与 RL 智能体联系的直观理解。这种联系结合了来自概率论、信息论和人工智能的丰富见解。特别是,我们可以利用这些见解来鼓励智能体对奖励和动态的稳健性。稳健性属性和保证可能对机器人学等应用有用,其中传感器信息可能充满噪声,且奖励函数不易编写。如果你对这些想法感兴趣,我邀请你阅读相关的论文! - If MaxEnt RL is the Answer, what is the Question? (https://arxiv.org/pdf/1910.01913.pdf) - Maximum Entropy RL \(Provably\) Solves Some Robust RL Problems (https://arxiv.org/pdf/2103.06257.pdf) - KL Divergence for Machine Learning (https://dibyaghosh.com/blog/probability/kldivergence.html) - Maximum Entropy RL \(Provably\) Solves Some Robust RL Problems (https://bair.berkeley.edu/blog/2021/03/09/maxent-robust-rl/) #### 关于本文的讨论 ### 准备阅读更多内容?

相似文章

通过参数噪声实现更好的探索

OpenAI Blog

OpenAI 提出了参数噪声技术,该方法向神经网络策略参数添加自适应噪声,而不是向动作空间添加噪声,使得智能体能够比传统动作噪声方法快得多地学习任务。该方法在 HalfCheetah 上实现了 2 倍的学习速度提升,代表了进化策略与 TRPO、DDPG 等深度强化学习方法之间的平衡点。

野外中的错误奖励函数

OpenAI Blog

OpenAI 讨论了强化学习中错误奖励函数的问题,其中智能体会利用奖励规范中的漏洞,而不是实现预期目标。本文通过赛车游戏示例探索了这一问题,并提出了包括从演示学习、人类反馈和迁移学习等研究方向,以减轻此类问题。