深度教堂

  • 榜单数据10-16 17:00
  • 论文数据10-16 13:30
  • 周报10-17 11:22

变分推断与控制即推断

未发布阅读约 64 分钟人工撰写已核查审核人 ai-fact-check

CS285

本讲迁移自原课程讲义,经 AI 事实核查未发现存疑项,未逐页人工审核;如有出入,以原始论文和 CS285 课程资料为准。

第 07 讲核心模块控制即推断与基于模型的 RL

学习目标

  • 能从 Jensen 不等式独立推出 ELBO,并解释 ELBO 与 KL 的关系、"重建 − 正则"两项含义;
  • 理解 amortized VI(用编码器网络输出后验参数)与重参数化技巧为何让梯度可传;
  • 写出 control-as-inference 的图模型,独立推导 soft backup:$V(s)=\alpha\log\int\exp(Q/\alpha)\,da$、$Q(s,a)=r+\gamma\,\mathbb{E}[V(s')]$;
  • 说清楚"为什么精确后验策略过于乐观"、结构化 VI 如何固定动力学来修正,并由此得到 MaxEnt 目标 $\sum_t\mathbb{E}[r+\alpha\mathcal H(\pi)]$;
  • 推导 SAC 的软策略改进(对指数化 Q 做 KL 投影)与温度自动调节(带熵约束的对偶)。

本模块把强化学习”翻译”成概率推断问题。我们先补齐变分推断(Variational Inference, VI) 的数学工具——ELBO、KL 散度、amortized VI、重参数化技巧;再引入最优性变量(optimality variable) Ot\mathcal{O}_t,把”轨迹是最优的”当作一次观测,对图模型做推断。你会看到 soft Bellman backup 如何从精确推断中掉出来,为什么天真的 forward-backward 推断会得到”过于乐观”的策略,以及如何用结构化变分下界修正它,从而干净地导出最大熵 RL(MaxEnt RL) 目标,进而给出 Soft Q-Learning 与 SAC 的完整理论根基。

学习目标

  • 能从 Jensen 不等式独立推出 ELBO,并解释 ELBO 与 KL 的关系、“重建 − 正则”两项含义;
  • 理解 amortized VI(用编码器网络输出后验参数)与重参数化技巧为何让梯度可传;
  • 写出 control-as-inference 的图模型,独立推导 soft backup:V(s)=αlog⁡∫exp⁡(Q/α) daV(s)=\alpha\log\int\exp(Q/\alpha)\,da、Q(s,a)=r+γ E[V(s′)]Q(s,a)=r+\gamma\,\mathbb{E}[V(s')];
  • 说清楚”为什么精确后验策略过于乐观”、结构化 VI 如何固定动力学来修正,并由此得到 MaxEnt 目标 ∑tE[r+αH(π)]\sum_t\mathbb{E}[r+\alpha\mathcal H(\pi)];
  • 推导 SAC 的软策略改进(对指数化 Q 做 KL 投影)与温度自动调节(带熵约束的对偶)。

编者按 · 批判性视角

编者判断:最大熵框架在大模型后训练中的直接联系,主要体现在 KL / entropy 正则所提供的解释框架;MaxEnt IRL 与奖励模型训练的实际采用情况取决于具体系统,不宜据此作普遍排序。

1. 为什么把”控制”写成”推断”

标准 RL 把问题写成”最大化期望回报”的最优化:π⋆=arg⁡max⁡πEτ∼π[∑trt]\pi^\star=\arg\max_\pi \mathbb{E}_{\tau\sim\pi}[\sum_t r_t]。这是一个确定性的目标——最优策略往往是确定性的(在每个状态挑 arg⁡max⁡aQ\arg\max_a Q)。而控制即推断(control as inference) 提出另一个视角:把智能体的行为看成一个概率图模型,把”这条轨迹是好的/最优的”当成一次证据(evidence),然后问”在观测到最优的条件下,动作的后验分布是什么?”

举例

像破案或看病:法医不会先设定”凶手该怎么走”,而是先接受”人确实死了”这个既成事实,再反推最可能是哪串动作导致的;医生也是先看到”化验单异常”,再倒推病因。控制即推断用的是同一套逆向思维:把”任务成功了”当成已经观测到的证据 O=1\mathcal{O}=1,然后问”在成功的前提下,每一步动作最可能是什么”。于是”求最优策略”就被翻译成了”给定成功、反解动作的后验分布”。

这个视角有三重价值 [1]:

  • 统一语言:把 RL 与图模型、EM、变分推断、概率编程放进同一框架,从而能借用成熟的推断算法(消息传递、变分下界、采样)。
  • 解释随机性:真实人类/动物行为并非严格最优,而是”接近最优、带随机”。推断视角天然给出随机策略,其随机程度由”最优性证据的强度”控制。
  • 导出最大熵 RL:推断视角自然产生带熵正则的目标,这正是 Soft Q-Learning 与 SAC 的理论根基。

本质 Insight

为什么”控制”能被写成”推断”?因为二者共享同一个数学骨架:对数配分函数的最大化。最优化 max⁡\max 是 log⁡∑exp⁡\log\sum\exp 在温度 →0\to 0 时的极限(hardmax);而推断里的边缘化 log⁡∑exp⁡\log\sum\exp 是”软化”的 max⁡\max(softmax)。控制即推断本质上是:把 RL 目标里的硬 max 换成软 max(log-sum-exp),随之而来的”多出的那一项”恰好是策略熵。温度 α\alpha 就是这个软硬之间的旋钮。后面每一步推导都会印证这个骨架。

批判性追问:“控制即推断 = RL”是等号,还是口号?

常听到”控制即推断只是 RL 的另一种写法”。要分清:朴素(精确后向推断)版本并不等于标准 RL——它解的其实是另一个问题。精确推断里 Q=r+log⁡Es′[eV]Q=r+\log\mathbb E_{s'}[e^{V}] 用的是软最大化算子,会对动力学随机性也取乐观的 soft max,本质是一个风险寻求(risk-seeking) 的最优控制;对 VV 在 E[V]\mathbb E[V] 附近做二阶展开,它比”诚实”的 E[V]\mathbb E[V] 每步系统性高出约 12Var⁡[V(s′)]\tfrac12\operatorname{Var}[V(s')],而且这份乐观会沿 Bellman 备份逐层累积(后继价值方差越大、时域越长,偏差越可观)。等号只在两种情形下成立:其一,动力学确定性(Var⁡[V]=0\operatorname{Var}[V]=0,偏差自动消失);其二,先用结构化变分把动力学钉死为真实转移、只优化策略(第 6 节),才把乐观项抹掉、干净退回”真实动力学下的 MaxEnt RL”。所以严谨的表述是:“控制即推断 = MaxEnt RL”只对结构化变分修正后的版本成立,而不是那句朗朗上口的口号所暗示的”任何推断都等于 RL”。

图 1:硬最大化 vs 软最大化。RL 用 hardmax 挑最优动作;控制即推断用 softmax(log-sum-exp)给出随机策略,温度 α 控制软硬。

图 1:硬最大化 vs 软最大化。RL 用 hardmax 挑最优动作;控制即推断用 softmax(log-sum-exp)给出随机策略,温度 α 控制软硬。

2. 变分推断基础:ELBO 与 KL

先把推断工具备齐。设有隐变量模型 pθ(x,z)=pθ(x∣z)p(z)p_\theta(x,z)=p_\theta(x|z)p(z),其中 xx 为观测、zz 为隐变量。我们想做两件事:(1)计算边缘似然 pθ(x)=∫pθ(x,z) dzp_\theta(x)=\int p_\theta(x,z)\,dz 以做最大似然学习;(2)推断后验 pθ(z∣x)p_\theta(z|x)。二者都因积分难解而棘手。变分推断的思路:引入一个可处理的近似后验 qϕ(z∣x)q_\phi(z|x),用优化把它逼近真后验。

2.1 ELBO:证据下界

手上真正关心、却算不动的是边缘似然 log⁡pθ(x)\log p_\theta(x)(要对隐变量 zz 积分)。变分推断的破题思路是:不硬算它,而是给它造一个能梯度优化的下界。做法只需一步恒等变形——引入任意可处理的 qϕ(z∣x)q_\phi(z|x),就能把 log⁡pθ(x)\log p_\theta(x) 精确拆成”一个可算的期望项”加”一个恒非负的 KL 项”:

log⁡pθ(x)=Eqϕ(z∣x) ⁣[log⁡pθ(x,z)qϕ(z∣x)]⏟L(θ,ϕ;x) (ELBO)+DKL ⁣(qϕ(z∣x) ∥ pθ(z∣x))⏟≥0.(7.1)\log p_\theta(x) = \underbrace{\mathbb{E}_{q_\phi(z|x)}\!\Big[\log\frac{p_\theta(x,z)}{q_\phi(z|x)}\Big]}_{\displaystyle \mathcal{L}(\theta,\phi;x)\ \text{(ELBO)}} + \underbrace{D_{\mathrm{KL}}\!\big(q_\phi(z|x)\,\|\,p_\theta(z|x)\big)}_{\ge 0}. \tag{7.1}

因为 KL ≥0\ge 0,所以 log⁡pθ(x)≥L(θ,ϕ;x)\log p_\theta(x)\ge \mathcal{L}(\theta,\phi;x)——这就是证据下界(Evidence Lower BOund, ELBO)。最大化 ELBO 同时做两件事:把下界推高(学 θ\theta,做近似 MLE)、把 KL 压小(学 ϕ\phi,让 qq 逼近真后验)。

举例

真后验 p(z∣x)p(z|x) 常像一个形状怪异、面积算不出来的湖泊;变分推断的做法是拿一个”标准件”——比如一枚可调的椭圆 q=N(μ,σ2)q=\mathcal{N}(\mu,\sigma^2)——去套住它。要直接量不规则湖泊的面积很难,就转而调这个椭圆,让它尽量贴合湖岸。最大化 ELBO 就是在拧 μ,σ\mu,\sigma 这两个旋钮把椭圆往湖上贴;贴不严实剩下的那条缝,恰好就是那一项 KL(q∥p)\mathrm{KL}(q\|p)。这样”算不动的难分布”就被”好算的近似分布”替代了。

推导:ELBO 分解(两条等价路径,逐步)

关键假设

qϕ(z∣x)q_\phi(z|x) 是任意满足 qϕ(z∣x)>0q_\phi(z|x)>0(在 pp 支撑集上)的合法分布;期望与积分可交换(Fubini 成立)。

路径 A(乘 1 再拆)。 从定义出发:

log⁡pθ(x)=log⁡∫pθ(x,z) dz=log⁡∫qϕ(z∣x) pθ(x,z)qϕ(z∣x) dz.(7.2)\log p_\theta(x) = \log \int p_\theta(x,z)\,dz = \log \int q_\phi(z|x)\,\frac{p_\theta(x,z)}{q_\phi(z|x)}\,dz. \tag{7.2}

把它写成期望并用 Jensen 不等式(log⁡\log 是凹函数,log⁡E[Y]≥E[log⁡Y]\log\mathbb{E}[Y]\ge\mathbb{E}[\log Y]):

=log⁡Eqϕ ⁣[pθ(x,z)qϕ(z∣x)] ≥ Eqϕ ⁣[log⁡pθ(x,z)qϕ(z∣x)]=L.(7.3)= \log \mathbb{E}_{q_\phi}\!\Big[\frac{p_\theta(x,z)}{q_\phi(z|x)}\Big] \ \ge\ \mathbb{E}_{q_\phi}\!\Big[\log\frac{p_\theta(x,z)}{q_\phi(z|x)}\Big] = \mathcal{L}. \tag{7.3}

路径 B(恒等式,给出精确 gap)。 注意 pθ(x,z)=pθ(z∣x)pθ(x)p_\theta(x,z)=p_\theta(z|x)p_\theta(x),代入 ELBO:

L=Eqϕ ⁣[log⁡pθ(z∣x)pθ(x)qϕ(z∣x)]=log⁡pθ(x)−Eqϕ ⁣[log⁡qϕ(z∣x)pθ(z∣x)]=log⁡pθ(x)−DKL(qϕ∥pθ(⋅∣x)).(7.4)\mathcal{L}=\mathbb{E}_{q_\phi}\!\Big[\log\frac{p_\theta(z|x)p_\theta(x)}{q_\phi(z|x)}\Big] = \log p_\theta(x) - \mathbb{E}_{q_\phi}\!\Big[\log\frac{q_\phi(z|x)}{p_\theta(z|x)}\Big] = \log p_\theta(x) - D_{\mathrm{KL}}(q_\phi\|p_\theta(\cdot|x)). \tag{7.4}

移项即得分解式,且明确了 gap 恰为 KL。局限:ELBO 用的是”反向 KL” DKL(q∥p)D_{\mathrm{KL}}(q\|p),具有模式寻求(mode-seeking) 倾向——当真后验多峰时,qq 往往只锁定一个峰,导致后验被低估、不确定性被压小。

2.2 ELBO 的”重建 − 正则”分解

把联合概率写回 pθ(x,z)=pθ(x∣z)p(z)p_\theta(x,z)=p_\theta(x|z)p(z),ELBO 变成机器学习里最常见的形式:

L(θ,ϕ;x)=Eqϕ(z∣x)[log⁡pθ(x∣z)]⏟重建项 reconstruction−DKL(qϕ(z∣x) ∥ p(z))⏟正则项 regularizer.(7.5)\mathcal{L}(\theta,\phi;x)=\underbrace{\mathbb{E}_{q_\phi(z|x)}[\log p_\theta(x|z)]}_{\text{重建项 reconstruction}} - \underbrace{D_{\mathrm{KL}}\big(q_\phi(z|x)\,\|\,p(z)\big)}_{\text{正则项 regularizer}}. \tag{7.5}

这正是 VAE(变分自编码器) 的训练目标:编码器 qϕq_\phi 把 xx 压成隐码 zz,解码器 pθp_\theta 重建 xx,同时 KL 项把隐码后验拉向先验 p(z)p(z)(通常取标准正态)。

3. Amortized VI 与重参数化技巧

朴素 VI为每个数据点 x(i)x^{(i)} 单独优化一组变分参数 ϕ(i)\phi^{(i)},昂贵且不可泛化。Amortized VI(摊销变分推断) 改为学一个共享的推断网络(编码器) qϕ(z∣x)q_\phi(z|x):输入 xx,输出后验参数(如高斯的 μϕ(x),σϕ(x)\mu_\phi(x),\sigma_\phi(x))。“摊销”指用一次网络前向把推断成本分摊到所有数据点上——代价是引入摊销间隙(amortization gap):单个网络未必对每个点都给出最优 ϕ\phi。

3.1 重参数化技巧

要用梯度上升最大化 L\mathcal{L},需要对 ϕ\phi 求梯度。重建项 Eqϕ(z∣x)[f(z)]\mathbb{E}_{q_\phi(z|x)}[f(z)] 的期望分布依赖 ϕ\phi,直接求导困难(分数梯度/REINFORCE 估计方差大)。重参数化技巧(reparameterization trick) 把随机性挪到一个与 ϕ\phi 无关的噪声上:

z=gϕ(ϵ,x)=μϕ(x)+σϕ(x)⊙ϵ,ϵ∼N(0,I).(7.6)z=g_\phi(\epsilon,x)=\mu_\phi(x)+\sigma_\phi(x)\odot\epsilon,\qquad \epsilon\sim\mathcal{N}(0,I). \tag{7.6}

于是 Eqϕ[f(z)]=Eϵ∼N(0,I)[f(gϕ(ϵ,x))]\mathbb{E}_{q_\phi}[f(z)]=\mathbb{E}_{\epsilon\sim\mathcal N(0,I)}[f(g_\phi(\epsilon,x))],期望分布不再依赖 ϕ\phi,可直接把梯度穿过采样:

∇ϕ Eqϕ[f(z)]=Eϵ[∇ϕf(gϕ(ϵ,x))].(7.7)\nabla_\phi\,\mathbb{E}_{q_\phi}[f(z)] = \mathbb{E}_{\epsilon}\big[\nabla_\phi f(g_\phi(\epsilon,x))\big]. \tag{7.7}

为什么方差更低

分数梯度估计 ∇ϕEqϕ[f]=Eqϕ[f(z)∇ϕlog⁡qϕ(z∣x)]\nabla_\phi\mathbb{E}_{q_\phi}[f]=\mathbb{E}_{q_\phi}[f(z)\nabla_\phi\log q_\phi(z|x)] 只用到 ff 的取值,不用其梯度;重参数化则利用 ∇zf\nabla_z f 的方向信息,在许多连续可微模型中通常能得到方差更低的梯度估计。具体差异取决于模型、估计量和任务。代价:要求 zz 连续且 gϕg_\phi 可微(离散隐变量需 Gumbel-Softmax 等松弛)。

本质 Insight

重参数化把”采样一个随机变量”改写成”对固定噪声做确定性变换”。这一改写让随机计算图变得可微,是 VAE、扩散模型、以及 SAC 里连续动作策略(a=tanh⁡(μϕ(s)+σϕ(s)ϵ)a=\tanh(\mu_\phi(s)+\sigma_\phi(s)\epsilon))能用反向传播端到端训练的共同基石。记住这一招——它在第 9 节 SAC 的策略更新中会原样复现。

4. 最优性变量与概率图模型

现在把 RL 塞进图模型。标准的轨迹分布(只由动力学与某个先验策略生成,不含奖励)是:

p(τ)=p(s1)∏t=1Tp(st+1∣st,at) p(at),(7.8)p(\tau) = p(s_1)\prod_{t=1}^{T} p(s_{t+1}|s_t,a_t)\,p(a_t), \tag{7.8}

其中 p(at)p(a_t) 是动作先验(常取均匀分布)。这个模型里没有”目标”。为了注入”我们想要高回报”,Levine 引入一组二元最优性变量(optimality variables) Ot∈{0,1}\mathcal{O}_t\in\{0,1\},并规定其似然与奖励指数挂钩:

p(Ot=1 ∣ st,at)=exp⁡(r(st,at))(要求 r≤0,或吸收进比例常数).(7.9)p(\mathcal{O}_t=1\,|\,s_t,a_t) = \exp\big(r(s_t,a_t)\big)\quad(\text{要求 }r\le 0\text{,或吸收进比例常数}) . \tag{7.9}

直觉:Ot=1\mathcal{O}_t=1 表示”第 tt 步的行为是(趋向)最优的”,奖励越高,这个事件越可能发生。于是”求解 RL”被翻译成:在观测到所有 O1:T=1\mathcal{O}_{1:T}=1 的条件下,推断动作后验 p(at∣st,O1:T=1)p(a_t|s_t,\mathcal{O}_{1:T}=1)。

为什么偏偏取指数 ere^{r}(而不是别的形状)

Ot\mathcal{O}_t 是我们人为造出来的一个二元”最优性开关”,它本身不来自环境,纯粹是为了给无目标的图模型注入”想要高回报”这一意图;而它的似然之所以选指数,是要把”逐步相加的奖励”接到”逐步相乘的概率”上。一整条轨迹全程最优的似然是各步连乘 ∏tp(Ot=1∣st,at)=exp⁡(∑trt)\prod_t p(\mathcal{O}_t{=}1|s_t,a_t)=\exp(\sum_t r_t),取对数正好还原成累计回报 ∑trt\sum_t r_t——于是”轨迹后验 ∝e∑tr\propto e^{\sum_t r}“里概率最高的轨迹,恰是回报最高的轨迹,“求最优”与”求最可能”就此对齐。指数还有个副产品:它让第 5 节的边缘化(对动作积分)天然长成 log⁡ ⁣∫eQ\log\!\int e^{Q} 这个软 max(见式(7.13))。取值上只需能比较相对大小,故常要求 r≤0r\le 0、或把整体尺度吸进后面出现的温度 α\alpha。

图 2:控制即推断的图模型。圆=隐(状态/动作),方块=观测到的最优性变量 \mathcal{O}_t。奖励通过 p(\mathcal{O}_t{=}1|s_t,a_t)=e^{r} 进入模型。

图 2:控制即推断的图模型。圆=隐(状态/动作),方块=观测到的最优性变量 Ot\mathcal{O}_t。奖励通过 p(Ot=1∣st,at)=erp(\mathcal{O}_t{=}1|s_t,a_t)=e^{r} 进入模型。

局限 / 陷阱

该建模要求奖励能写进指数、且通常假设 r≤0r\le 0(否则 ere^{r} 不是概率、需归一化常数)。更微妙的是:把动力学 p(st+1∣st,at)p(s_{t+1}|s_t,a_t) 也放进这个联合模型意味着推断时”可以选择相信哪种转移会发生”——这正是第 6 节”过于乐观”问题的根源。先记住这个伏笔。

5. 精确推断:backward messages 与 soft value

做推断的标准工具是消息传递(belief propagation)。定义后向消息(backward message):给定当前处于 (st,at)(s_t,a_t) 或 sts_t,未来所有最优性证据成立的概率。

βt(st,at)=p(Ot:T=1 ∣ st,at),βt(st)=p(Ot:T=1 ∣ st).(7.10)\beta_t(s_t,a_t)=p(\mathcal{O}_{t:T}=1\,|\,s_t,a_t),\qquad \beta_t(s_t)=p(\mathcal{O}_{t:T}=1\,|\,s_t). \tag{7.10}

做一次向后递归(从 t=Tt=T 到 t=1t=1):

βt(st,at)=p(Ot∣st,at) Est+1∼p(⋅∣st,at)[βt+1(st+1)],βt(st)=Eat∼p(at)[βt(st,at)].(7.11)\beta_t(s_t,a_t)=p(\mathcal{O}_t|s_t,a_t)\,\mathbb{E}_{s_{t+1}\sim p(\cdot|s_t,a_t)}\big[\beta_{t+1}(s_{t+1})\big],\qquad \beta_t(s_t)=\mathbb{E}_{a_t\sim p(a_t)}\big[\beta_t(s_t,a_t)\big]. \tag{7.11}

关键一步:取对数并定义 soft value(软价值):

Q(st,at)≜log⁡βt(st,at),V(st)≜log⁡βt(st).(7.12)Q(s_t,a_t)\triangleq \log\beta_t(s_t,a_t),\qquad V(s_t)\triangleq \log\beta_t(s_t). \tag{7.12}

代入递归(式(7.11))、并暂时忽略动力学期望里的 Jensen 项(见下方推导与警告),得到 soft Bellman backup:

 V(st)=log⁡∫Aexp⁡(Q(st,at)) dat (当 p(at) 均匀时;即 V=softmax⁡aQ)(7.13)\boxed{\,V(s_t)=\log\int_{\mathcal A}\exp\big(Q(s_t,a_t)\big)\,da_t\,}\qquad(\text{当 }p(a_t)\text{ 均匀时;即 } V=\operatorname{softmax}_a Q) \tag{7.13}  Q(st,at)=r(st,at)+log⁡Est+1[exp⁡V(st+1)] (7.14)\boxed{\,Q(s_t,a_t)=r(s_t,a_t)+\log\mathbb{E}_{s_{t+1}}\big[\exp V(s_{t+1})\big]\,} \tag{7.14}

推导:从 backward message 到 soft backup(逐步)

关键假设

有限时域 TT;动作先验 p(at)p(a_t) 取均匀(否则 VV 里会多一项 log⁡p(at)\log p(a_t));边缘化用积分/求和;折扣暂设 γ=1\gamma=1(可事后引入)。

第 1 步(V 层)。 由 βt(st)=∫p(at) βt(st,at) dat\beta_t(s_t)=\int p(a_t)\,\beta_t(s_t,a_t)\,da_t,两边取对数:

V(st)=log⁡∫p(at) eQ(st,at) dat.(7.15)V(s_t)=\log\int p(a_t)\,e^{Q(s_t,a_t)}\,da_t. \tag{7.15}

若 p(at)=constp(a_t)=\text{const},把常数吸收进配分(或纳入 rr),得 V(st)=log⁡∫eQ(st,at) datV(s_t)=\log\int e^{Q(s_t,a_t)}\,da_t。这就是 log-sum-exp = soft max。当某个 QQ 远大于其它时,V≈max⁡aQV\approx\max_a Q;这解释了”软价值在极限下退化为硬价值”。

第 2 步(Q 层)。 由 βt(st,at)=p(Ot∣st,at) Est+1[βt+1(st+1)]\beta_t(s_t,a_t)=p(\mathcal O_t|s_t,a_t)\,\mathbb{E}_{s_{t+1}}[\beta_{t+1}(s_{t+1})],取对数并代入 p(Ot∣st,at)=erp(\mathcal O_t|s_t,a_t)=e^{r}(式(7.9))、βt+1=eV(st+1)\beta_{t+1}=e^{V(s_{t+1})}(式(7.12)):

Q(st,at)=r(st,at)+log⁡Est+1∼p[eV(st+1)].(7.16)Q(s_t,a_t)=r(s_t,a_t)+\log\mathbb{E}_{s_{t+1}\sim p}\big[e^{V(s_{t+1})}\big]. \tag{7.16}

局限(重要):第 2 步(式(7.16))里出现的是 log⁡E[eV]\log\mathbb{E}[e^{V}] 而不是 E[V]\mathbb{E}[V]。这是一个”软最大化”式的风险寻求(risk-seeking) 算子——它会对动力学的随机性也取 soft max,等价于”乐观地假设幸运的转移更常发生”。在确定性动力学下 log⁡E[eV]=V(st+1)\log\mathbb E[e^V]=V(s_{t+1}),无害;但在随机动力学下,对 VV 在 E[V]\mathbb E[V] 附近做二阶展开(log⁡E[eX]=E[X]+12Var⁡[X]+⋯\log\mathbb E[e^X]=\mathbb E[X]+\tfrac12\operatorname{Var}[X]+\cdots)给出 log⁡E[eV(st+1)]≈E[V(st+1)]+12Var⁡[V(st+1)]\log\mathbb E[e^{V(s_{t+1})}]\approx \mathbb E[V(s_{t+1})]+\tfrac12\operatorname{Var}\big[V(s_{t+1})\big]——即式(7.14) 比”诚实”的 E[V]\mathbb E[V] 系统性高出约 12Var⁡[V(st+1)]\tfrac12\operatorname{Var}[V(s_{t+1})](后继价值方差越大、乐观偏差越大;确定性转移下方差为 0、偏差消失)。这正是第 6 节要修正的问题。

本质 Insight

soft value 的本质是把”未来能成功(Ot:T=1\mathcal O_{t:T}=1)的对数概率”当作价值。硬 Bellman 里 V=max⁡aQV=\max_a Q 是”选最好的动作”;soft Bellman 里 V=log⁡∑aeQV=\log\sum_a e^{Q} 是”对所有动作按 eQe^Q 加权求和”。二者只差一个温度:把 Q→Q/αQ\to Q/\alpha、再乘回 α\alpha,V=αlog⁡∫eQ/αdaV=\alpha\log\int e^{Q/\alpha}da,当 α→0\alpha\to0 就还原成硬 max。推断天然给出软版本,因为边缘化(积分)就是软 max。

图 3:从终止时刻向初始时刻递归传播后向消息 \beta_t,取对数即得 soft value 的 Bellman 递归。

图 3:从终止时刻向初始时刻递归传播后向消息 βt\beta_t,取对数即得 soft value 的 Bellman 递归。

5.1 后验策略

有了前向-后向消息,可得动作后验(“给定当前及未来都最优”):

p(at∣st,Ot:T=1)=p(at) βt(st,at)βt(st) ∝ exp⁡(Q(st,at)−V(st))=exp⁡(A(st,at)),(7.17)p(a_t|s_t,\mathcal{O}_{t:T}=1)=\frac{p(a_t)\,\beta_t(s_t,a_t)}{\beta_t(s_t)}\ \propto\ \exp\big(Q(s_t,a_t)-V(s_t)\big)=\exp\big(A(s_t,a_t)\big), \tag{7.17}

其中 A=Q−VA=Q-V 是 soft advantage。结论:最优后验策略是”对 soft advantage 做 Boltzmann/softmax”:π(a∣s)∝eA(s,a)\pi(a|s)\propto e^{A(s,a)}。这是 Soft Q-Learning 的策略形式(第 8 节)。

6. 为什么朴素推断”过于乐观”

上面的精确推断有一个致命问题。后验策略 p(at∣st,O)p(a_t|s_t,\mathcal O) 固然合理,但如果我们同时看后验的状态转移 p(st+1∣st,at,O1:T)p(s_{t+1}|s_t,a_t,\mathcal O_{1:T}),会发现它不等于真实动力学 p(st+1∣st,at)p(s_{t+1}|s_t,a_t)!推断”篡改”了动力学,偏向那些能带来高未来回报的转移。

局限 / 陷阱:乐观偏差

后验 p(st+1∣st,at,Ot:T)∝p(st+1∣st,at) eV(st+1)p(s_{t+1}|s_t,a_t,\mathcal O_{t:T})\propto p(s_{t+1}|s_t,a_t)\,e^{V(s_{t+1})} 会把概率质量搬向 VV 高的后继状态。含义:智能体”假设自己走运”——面对随机环境时,它相信危险的赌博会以更高概率给出好结果。若照此后验行动,会在真实(未被篡改的)环境里表现糟糕。这就是”naive forward-backward 得到乐观策略”的精确含义。

6.1 用结构化变分推断修正

修正方法:不去求精确后验(它允许改动力学),而是限制近似后验的结构——强制它的动力学等于真实动力学,只让策略自由。这就是结构化变分推断(structured VI)。设变分分布:

q(τ)=p(s1)∏t=1Tp(st+1∣st,at)⏟固定=真实动力学 π(at∣st)⏟待优化.(7.18)q(\tau)=p(s_1)\prod_{t=1}^{T} \underbrace{p(s_{t+1}|s_t,a_t)}_{\text{固定=真实动力学}}\ \underbrace{\pi(a_t|s_t)}_{\text{待优化}}. \tag{7.18}

为什么这样 · 能不能不这样

为什么绕道去最大化一个变分下界,而不直接用第 5 节那个能精确算出的后验策略 π∝eA\pi\propto e^{A}(式(7.17))? 因为精确后验虽然可算,却是在”允许推断顺便挑选幸运转移”的联合模型里解出来的——它等价于偷偷把动力学也当成可优化的隐变量,得到风险寻求、系统性乐观的策略(每步高估约 12Var⁡[V]\tfrac12\operatorname{Var}[V],见第 6 节)。能不能不要下界、就用精确后验? 可以,但代价是策略会在真实随机环境里”赌自己走运”、真机上翻车。结构化变分的取舍是:把转移项钉死为真实动力学、只留策略自由(式(7.18)),用”只能拿到一个下界、且 qq 的表达力(如策略仅取高斯)会限制可逼近程度”这点妥协,换回”在真实动力学下诚实决策”——在随机环境里这笔交易几乎总是值得的。

注意关键设计:qq 里的转移项钉死为真实动力学,不可优化;只有策略 π(at∣st)\pi(a_t|s_t) 是自由参数。现在最大化 ELBO(把”证据”取为 O1:T=1\mathcal O_{1:T}=1,log⁡p(O1:T=1)≥L\log p(\mathcal O_{1:T}=1)\ge \mathcal L):

L=Eτ∼q[log⁡p(τ,O1:T)−log⁡q(τ)].(7.19)\mathcal{L}=\mathbb{E}_{\tau\sim q}\Big[\log p(\tau,\mathcal O_{1:T}) - \log q(\tau)\Big]. \tag{7.19}

推导:结构化 ELBO → 最大熵目标(逐步,动力学项相消)

关键假设

q(τ)q(\tau) 与先验 p(τ)p(\tau) 共用同一真实动力学 p(st+1∣st,at)p(s_{t+1}|s_t,a_t)、同一初始分布 p(s1)p(s_1);动作先验 p(at)p(a_t) 取均匀(吸收进常数)。

第 1 步:写出两个联合。

p(τ,O1:T)=p(s1)∏tp(st+1∣st,at) p(at) er(st,at),q(τ)=p(s1)∏tp(st+1∣st,at) π(at∣st).(7.20)p(\tau,\mathcal O_{1:T})=p(s_1)\prod_t p(s_{t+1}|s_t,a_t)\,p(a_t)\,e^{r(s_t,a_t)},\qquad q(\tau)=p(s_1)\prod_t p(s_{t+1}|s_t,a_t)\,\pi(a_t|s_t). \tag{7.20}

第 2 步:作比,动力学与初始分布相消。 因为 qq 与 pp 共享 p(s1)p(s_1) 与所有 p(st+1∣st,at)p(s_{t+1}|s_t,a_t):

log⁡p(τ,O)q(τ)=∑t[log⁡p(at)+r(st,at)−log⁡π(at∣st)].(7.21)\log\frac{p(\tau,\mathcal O)}{q(\tau)}=\sum_t\Big[\log p(a_t)+r(s_t,a_t)-\log\pi(a_t|s_t)\Big]. \tag{7.21}

第 3 步:取期望,均匀先验 log⁡p(at)\log p(a_t) 为常数(记作 0)。

L=Eτ∼q[∑tr(st,at)−log⁡π(at∣st)]=∑tE(st,at)∼q[r(st,at)+H(π(⋅∣st))],(7.22)\mathcal{L}=\mathbb{E}_{\tau\sim q}\Big[\sum_t r(s_t,a_t)-\log\pi(a_t|s_t)\Big]=\sum_t \mathbb{E}_{(s_t,a_t)\sim q}\big[r(s_t,a_t)+\mathcal H(\pi(\cdot|s_t))\big], \tag{7.22}

其中用到 −Ea∼π[log⁡π(a∣s)]=H(π(⋅∣s))-\mathbb{E}_{a\sim\pi}[\log\pi(a|s)]=\mathcal H(\pi(\cdot|s))(策略熵)。这就是最大熵 RL 目标。

为什么修好了乐观问题? 因为 qq 的期望 Eτ∼q\mathbb{E}_{\tau\sim q} 是在真实动力学下取的——我们不再允许推断去挑选幸运转移。剩下的自由只在策略上,于是得到”在真实随机性下最大化 期望奖励 + 策略熵”的干净目标。局限:结构化 VI 是下界近似,qq 的表达力(如策略仅取高斯)会限制能逼近的最优程度;且此推导默认能对整条轨迹的 qq 采样(on-policy)。

本质 Insight

朴素推断的病根是”把动力学也当可优化的隐变量”。结构化 VI 的修法极其朴素却深刻:把你不该控制的东西(环境动力学)从优化变量里剔除,只优化你真正能控制的东西(策略)。这与因果推断里”do 算子固定机制、只干预策略”的精神一致——它把”乐观地相信好运”改成了”在真实随机性下做最好的随机策略”。

7. 结构化变分修正与 MaxEnt 目标

上一步的结论值得单独立起来。最大熵强化学习(Maximum Entropy RL, MaxEnt RL) 的目标是:

 J(π)=∑tE(st,at)∼ρπ[r(st,at)+α H(π(⋅∣st))] (7.23)\boxed{\,J(\pi)=\sum_{t}\mathbb{E}_{(s_t,a_t)\sim\rho_\pi}\Big[r(s_t,a_t)+\alpha\,\mathcal H\big(\pi(\cdot|s_t)\big)\Big]\,} \tag{7.23}

为什么这样 · 能不能不这样

为什么要在目标里挂一个熵项 α H(π)\alpha\,\mathcal H(\pi),而不是就用标准 RL 的 max⁡πE[∑tr]\max_\pi\mathbb E[\sum_t r]? 因为这里的熵项不是事后外加的探索补丁,而是”在真实动力学下对指数化奖励做结构化推断”必然掉出来的那一项(正是式(7.22) 的推导结果)——它把探索、鲁棒、多模态一并写进了同一个目标,无需为它们各设计一个机制。能不能不要它、直接退回标准 RL? 可以,那恰是 α→0\alpha\to0 的零温极限(式(7.48)):softmax 坍缩成 hardmax、随机策略坍缩成确定性贪婪,于是探索只能靠 ε\varepsilon-greedy / 外加动作噪声这类启发式外挂,也拿不到熵项对”有界奖励扰动”的鲁棒对偶、以及在多个近优解上分摊概率的多模态。换来的好处是”训练更简单、少一个温度要调”,代价则是把探索与鲁棒重新甩回给算法之外的手工设计。

举例

上班有三条路,用时都约 30 分钟。确定性策略会咬死永远只走第 1 条;最大熵策略则本着”差不多好的就都留一手”,把概率分给三条,比如 40%/35%/25%,而不是孤注一掷。好处在某天第 1 条突然修路堵死时立刻显现:你早已熟悉另两条、换路毫不慌乱。熵项花钱买来的,正是这种”不把鸡蛋放一个篮子”的探索与鲁棒。

其中 α>0\alpha>0 是温度(temperature),权衡”追求奖励”与”保持随机(探索/鲁棒)“。它对应把 p(Ot∣st,at)=exp⁡(r/α)p(\mathcal O_t|s_t,a_t)=\exp(r/\alpha) 的温度显式化。对应的 soft value 函数满足带温度的 soft Bellman 方程:

Qsoft(s,a)=r(s,a)+γ Es′[Vsoft(s′)],Vsoft(s)=αlog⁡∫Aexp⁡ ⁣(1αQsoft(s,a))da.(7.24)Q_{\text{soft}}(s,a)=r(s,a)+\gamma\,\mathbb{E}_{s'}\big[V_{\text{soft}}(s')\big],\qquad V_{\text{soft}}(s)=\alpha\log\int_{\mathcal A}\exp\!\Big(\tfrac{1}{\alpha}Q_{\text{soft}}(s,a)\Big)da. \tag{7.24}

(注意这里 Q 递归用的是真实动力学下的 Es′[V]\mathbb{E}_{s'}[V]——结构化 VI 已把式(7.16) 那个乐观的 log⁡E[eV]\log\mathbb E[e^V] 换成了正常期望 E[V]\mathbb E[V],正好抹掉了上面那约 12Var⁡[V]\tfrac12\operatorname{Var}[V] 的乐观偏差。)最优 MaxEnt 策略为 Boltzmann 形式:

π⋆(a∣s)=exp⁡ ⁣(1α(Qsoft(s,a)−Vsoft(s))),Vsoft=αlog⁡ ⁣∫eQsoft/α.(7.25)\pi^\star(a|s)=\exp\!\Big(\tfrac{1}{\alpha}\big(Q_{\text{soft}}(s,a)-V_{\text{soft}}(s)\big)\Big),\qquad V_{\text{soft}}=\alpha\log\!\int e^{Q_{\text{soft}}/\alpha}. \tag{7.25}

本质 Insight:温度 α 的本质

α\alpha 有三种等价读法:(1) 奖励尺度的倒数——把奖励整体放大 1/α1/\alpha 倍等于降低温度;(2) 软硬旋钮——α→0\alpha\to0 时 V→max⁡aQV\to\max_a Q、策略 →\to 确定性贪婪,退回标准 RL;α→∞\alpha\to\infty 时策略 →\to 均匀随机;(3) 熵的”价格”——它是”每 nat 熵值多少奖励”的兑换率。SAC 的温度自动调节(第 9 节)正是把 α\alpha 当成一个对偶变量,让它自适应地维持某个目标熵。

举例

设某状态两个动作的 QQ 分别为 3 和 1,按 π∝eQ/α\pi\propto e^{Q/\alpha} 算概率:α=0.1\alpha=0.1 时约 1.001.00 对 0.000.00——几乎只挑最优动作,极度贪心;α=1\alpha=1 时约 0.880.88 对 0.120.12——仍偏好最优但给次优留了缝;α=10\alpha=10 时约 0.550.55 对 0.450.45——接近抛硬币,非常爱探索。同一组 QQ 值不变,仅仅旋动温度,策略就从”孤注一掷”平滑滑到”广撒网”。这就是”α\alpha 小=更贪心、α\alpha 大=更随机”的字面含义。

8. Soft Q-Learning

Soft Q-Learning(SQL, 2017) 把 MaxEnt 的 soft Bellman 方程直接变成一个类 Q-learning 算法,并用 SVGD 训练采样网络来近似能量策略 [2]。它拟合一个 soft Q 网络 QθQ_\theta,目标(soft Bellman error):

L(θ)=E(s,a,r,s′)∼D[(Qθ(s,a)−y^)2],y^=r+γ Vθˉ(s′),(7.26)\mathcal{L}(\theta)=\mathbb{E}_{(s,a,r,s')\sim\mathcal D}\Big[\big(Q_\theta(s,a)-\hat y\big)^2\Big],\qquad \hat y=r+\gamma\,V_{\bar\theta}(s'), \tag{7.26} Vθˉ(s′)=αlog⁡∫Aexp⁡ ⁣(1αQθˉ(s′,a′))da′.(7.27)V_{\bar\theta}(s')=\alpha\log\int_{\mathcal A}\exp\!\Big(\tfrac1\alpha Q_{\bar\theta}(s',a')\Big)da'. \tag{7.27}

难点在于连续动作下 VV 里的 log⁡∫eQ/α\log\int e^{Q/\alpha} 无法解析。SQL 的解法:

  • 估计 soft value:用重要性采样把 log⁡∫eQ/αda\log\int e^{Q/\alpha}da 写成 log⁡Ea∼μ[eQ/α/μ(a)]\log\mathbb{E}_{a\sim\mu}[e^{Q/\alpha}/\mu(a)],用样本估计(μ\mu 取某提议分布)。
  • 采样最优策略:由于 π∝eQ/α\pi\propto e^{Q/\alpha} 是任意形状的分布(连续动作下不可解析采样),SQL 训练一个随机采样网络(Stein Variational Gradient Descent, SVGD) a=fϕ(ξ,s)a=f_\phi(\xi,s),把噪声 ξ\xi 变换成服从 π\pi 的动作样本。

推导:为什么 soft Q 迭代收敛(soft Bellman 算子是压缩)

关键假设

有界奖励、γ<1\gamma<1、表格式(或算子在 ∞\infty 范数下可评估)。

定义 soft Bellman 算子 (TQ)(s,a)=r(s,a)+γ Es′[αlog⁡∫eQ(s′,a′)/αda′](\mathcal T Q)(s,a)=r(s,a)+\gamma\,\mathbb E_{s'}\big[\alpha\log\int e^{Q(s',a')/\alpha}da'\big]。要证 T\mathcal T 是 γ\gamma-压缩。关键引理:log-sum-exp 是 1-Lipschitz(在 ∞\infty 范数下非扩张):对任意 Q1,Q2Q_1,Q_2,

∣αlog⁡ ⁣∫eQ1/α−αlog⁡ ⁣∫eQ2/α∣≤max⁡a′∣Q1(s′,a′)−Q2(s′,a′)∣=∥Q1−Q2∥∞.(7.28)\Big|\alpha\log\!\int e^{Q_1/\alpha} - \alpha\log\!\int e^{Q_2/\alpha}\Big|\le \max_{a'}|Q_1(s',a')-Q_2(s',a')|=\|Q_1-Q_2\|_\infty. \tag{7.28}

(证:softmax 的加权平均落在 min 与 max 之间,故差不超过逐点差的上确界。)于是

∥TQ1−TQ2∥∞≤γ Es′[∥Q1−Q2∥∞]≤γ∥Q1−Q2∥∞.(7.29)\|\mathcal T Q_1-\mathcal T Q_2\|_\infty\le \gamma\,\mathbb E_{s'}\big[\|Q_1-Q_2\|_\infty\big]\le\gamma\|Q_1-Q_2\|_\infty. \tag{7.29}

由 Banach 不动点定理,soft Q 迭代收敛到唯一不动点 Qsoft⋆Q_{\text{soft}}^\star。局限:函数逼近 + off-policy + 自举依旧构成”致命三要素”,理论收敛不保证;连续动作下 VV 的估计有偏。

局限 / 陷阱

SQL 需要显式估计 V=log⁡∫eQ/αV=\log\int e^{Q/\alpha} 与用 SVGD 采样策略,实现复杂、方差大、调参敏感。SAC 用一个更简单的思路(把策略参数化为高斯,用 KL 投影做软策略改进)绕开了这些困难,因此在许多连续控制任务的实现中被更广泛采用(编者判断,非跨任务排名)。

9. SAC:软策略改进与温度自动调节

Soft Actor-Critic(SAC) 是 2018 年提出的 off-policy 最大熵 actor-critic 算法。原始版本使用给定温度;后续扩展加入了基于熵约束的自动温度调节 [3] [4]。下文采用该扩展版:维护两个 soft Q 网络、一个高斯策略,以及可自动调节的温度 α\alpha,分别执行软策略评估、软策略改进和温度调节。

9.1 软策略评估(critic 更新)

拟合 soft Q,目标里把熵项并入下一步 value:

y^=r+γ(min⁡i=1,2Qθˉi(s′,a′)−αlog⁡πϕ(a′∣s′)),a′∼πϕ(⋅∣s′),(7.30)\hat y = r + \gamma\Big(\min_{i=1,2}Q_{\bar\theta_i}(s',a') - \alpha\log\pi_\phi(a'|s')\Big),\quad a'\sim\pi_\phi(\cdot|s'), \tag{7.30} LQ(θi)=E(s,a,r,s′)∼D[(Qθi(s,a)−y^)2].(7.31)\mathcal{L}_Q(\theta_i)=\mathbb{E}_{(s,a,r,s')\sim\mathcal D}\big[(Q_{\theta_i}(s,a)-\hat y)^2\big]. \tag{7.31}

注意 −αlog⁡πϕ(a′∣s′)-\alpha\log\pi_\phi(a'|s') 就是熵项的样本估计(E[−αlog⁡π]=αH\mathbb E[-\alpha\log\pi]=\alpha\mathcal H),这正是 soft value V(s′)=Ea′[Q(s′,a′)−αlog⁡π(a′∣s′)]V(s')=\mathbb E_{a'}[Q(s',a')-\alpha\log\pi(a'|s')]。

9.2 软策略改进(actor 更新:对指数化 Q 做 KL 投影)

MaxEnt 的最优策略是 ∝exp⁡(Q/α)\propto\exp(Q/\alpha),但连续动作下这个分布不可解析。SAC 把策略限制在一个可处理的分布族 Π\Pi(如高斯),并把当前的指数化 Q 目标投影到该族里——即最小化二者的 KL:

πnew=arg⁡min⁡π′∈Π DKL ⁣(π′(⋅∣s) ∥ exp⁡(1αQθ(s,⋅))Zθ(s)).(7.32)\pi_{\text{new}}=\arg\min_{\pi'\in\Pi}\ D_{\mathrm{KL}}\!\Big(\pi'(\cdot|s)\ \Big\|\ \frac{\exp\big(\tfrac1\alpha Q_\theta(s,\cdot)\big)}{Z_\theta(s)}\Big). \tag{7.32}

式中分母 Zθ(s)=∫Aexp⁡ ⁣(1αQθ(s,a)) daZ_\theta(s)=\int_{\mathcal A}\exp\!\big(\tfrac1\alpha Q_\theta(s,a)\big)\,da 是配分函数(partition function),也就是把”未归一化的指数化 Q” eQθ/α\,e^{Q_\theta/\alpha} 除以它、才凑成一个积分为 1 的合法概率分布的那个归一化常数(引入它纯粹是为了让右边成为真正的分布)。它只随状态 ss 变、与待优化的 π′\pi' 无关——正因如此下一步能把 log⁡Zθ(s)\log Z_\theta(s) 整项丢掉(见式(7.33))。它还与式(7.24) 的 soft value 是同一个量:Vsoft(s)=αlog⁡Zθ(s)V_{\text{soft}}(s)=\alpha\log Z_\theta(s)。

推导:KL 投影 → SAC 的 actor 损失(配分函数为何可丢,重参数化如何登场)

关键假设

策略族含可重参数化的分布(高斯 + tanh 压缩);QθQ_\theta 对 aa 可微。

第 1 步:展开 KL。

DKL=Ea∼π′[log⁡π′(a∣s)−1αQθ(s,a)+log⁡Zθ(s)].(7.33)D_{\mathrm{KL}}=\mathbb{E}_{a\sim\pi'}\Big[\log\pi'(a|s)-\tfrac1\alpha Q_\theta(s,a)+\log Z_\theta(s)\Big]. \tag{7.33}

第 2 步:丢掉 log⁡Zθ(s)\log Z_\theta(s)。 它不依赖 π′\pi'(对 ϕ\phi 是常数),不影响 arg⁡min⁡\arg\min。得到(乘 α\alpha、翻号为”最小化”)actor 损失:

Lπ(ϕ)=Es∼D Ea∼πϕ[αlog⁡πϕ(a∣s)−Qθ(s,a)].(7.34)\mathcal{L}_\pi(\phi)=\mathbb{E}_{s\sim\mathcal D}\ \mathbb{E}_{a\sim\pi_\phi}\big[\alpha\log\pi_\phi(a|s)-Q_\theta(s,a)\big]. \tag{7.34}

这正是”最大化 QQ + 熵”的负号。第 3 步:重参数化让梯度可传。 写 a=fϕ(ϵ,s)=tanh⁡ ⁣(μϕ(s)+σϕ(s)⊙ϵ), ϵ∼N(0,I)a=f_\phi(\epsilon,s)=\tanh\!\big(\mu_\phi(s)+\sigma_\phi(s)\odot\epsilon\big),\ \epsilon\sim\mathcal N(0,I),则

∇ϕLπ=Es,ϵ[∇ϕ(αlog⁡πϕ(fϕ(ϵ,s)∣s))−∇aQθ(s,a)∣a=fϕ∇ϕfϕ(ϵ,s)].(7.35)\nabla_\phi\mathcal{L}_\pi=\mathbb{E}_{s,\epsilon}\Big[\nabla_\phi\big(\alpha\log\pi_\phi(f_\phi(\epsilon,s)|s)\big)-\nabla_a Q_\theta(s,a)\big|_{a=f_\phi}\nabla_\phi f_\phi(\epsilon,s)\Big]. \tag{7.35}

这就是第 3 节式(7.7) 的重参数化技巧原样复用。局限:tanh⁡\tanh 压缩会改变密度,需在 log⁡π\log\pi 上加雅可比修正项 −∑ilog⁡(1−tanh⁡2(ui))-\sum_i\log(1-\tanh^2(u_i));高斯族的表达力有限,无法精确表示多峰的 eQ/αe^{Q/\alpha}(KL 投影是”模式寻求”的近似)。

9.3 温度自动调节(带熵约束的对偶)

手调 α\alpha 很脆——不同任务、不同训练阶段的合适温度差异巨大。SAC 把它写成一个带约束的优化:最大化期望回报,同时约束策略的平均熵不低于目标 Hˉ\bar{\mathcal H}(常取 Hˉ=−dim⁡(A)\bar{\mathcal H}=-\dim(\mathcal A)):

max⁡π E[∑trt]s.t.E(st,at)∼ρπ[−log⁡π(at∣st)]≥Hˉ  ∀t.(7.36)\max_{\pi}\ \mathbb{E}\Big[\sum_t r_t\Big]\quad \text{s.t.}\quad \mathbb{E}_{(s_t,a_t)\sim\rho_\pi}\big[-\log\pi(a_t|s_t)\big]\ge \bar{\mathcal H}\ \ \forall t. \tag{7.36}

写出拉格朗日、α\alpha 为乘子,对 α\alpha 的更新(对偶梯度下降)为:

L(α)=Ea∼πϕ[−α(log⁡πϕ(a∣s)+Hˉ)] ⇒ ∇αL=E[−(log⁡πϕ(a∣s)+Hˉ)].(7.37)\mathcal{L}(\alpha)=\mathbb{E}_{a\sim\pi_\phi}\big[-\alpha\big(\log\pi_\phi(a|s)+\bar{\mathcal H}\big)\big]\ \Rightarrow\ \nabla_\alpha \mathcal L=\mathbb{E}\big[-\big(\log\pi_\phi(a|s)+\bar{\mathcal H}\big)\big]. \tag{7.37}

直觉

当当前策略熵低于目标(−log⁡π<Hˉ-\log\pi<\bar{\mathcal H},动作太确定)时,∇αL\nabla_\alpha\mathcal L 使 α\alpha 增大 → 更看重熵 → 策略变随机;反之 α\alpha 减小 → 更看重奖励。α\alpha 就这样被自动拉到”恰好维持目标熵”的水平。实践上优化 log⁡α\log\alpha 以保证正性与数值稳定。

推导:熵约束的拉格朗日对偶——为什么 α 恰好是对偶变量(逐步)

关键假设

逐时刻的熵约束 E(st,at)∼ρπ[−log⁡π(at∣st)]≥Hˉ\mathbb E_{(s_t,a_t)\sim\rho_\pi}[-\log\pi(a_t|s_t)]\ge\bar{\mathcal H};用动态规划从末步向前拆(dual DP);αt≥0\alpha_t\ge0 为各步乘子(稳态下取同一 α\alpha)。

第 1 步:写带约束的原问题与拉格朗日。 对约束优化 max⁡πE[∑trt]\max_\pi\mathbb E[\sum_t r_t] s.t. E[−log⁡πt]≥Hˉ\mathbb E[-\log\pi_t]\ge\bar{\mathcal H},引入乘子 αt≥0\alpha_t\ge0,拉格朗日为

L(π,α)=E[∑trt]+∑tαt(E[−log⁡πt]−Hˉ).(7.38)\mathcal L(\pi,\alpha)=\mathbb E\Big[\sum_t r_t\Big]+\sum_t\alpha_t\big(\mathbb E[-\log\pi_t]-\bar{\mathcal H}\big). \tag{7.38}

第 2 步:内层对 π\pi 求最大(给定 α\alpha)。 对最后一步,max⁡πTE[rT]+αTE[−log⁡πT]−αTHˉ\max_{\pi_T}\mathbb E[r_T]+\alpha_T\mathbb E[-\log\pi_T]-\alpha_T\bar{\mathcal H}。这是”奖励 + 加权熵”的最大化,其解正是 Boltzmann 策略 πT⋆∝exp⁡(1αTQT)\pi_T^\star\propto\exp(\tfrac1{\alpha_T}Q_T)(第 7 节式(7.25) 的结论),把它代回得到只关于 αT\alpha_T 的对偶函数 g(αT)g(\alpha_T)。向前递归即得所有步。

第 3 步:外层对 α\alpha 求最小(对偶问题)。 由弱对偶,min⁡α≥0g(α)\min_{\alpha\ge0}g(\alpha) 给出原问题上界;此处强对偶成立(凸对偶变量、约束线性于占用测度)。固定已解出的 π⋆\pi^\star 后,α\alpha 的目标简化为

L(α)=Ea∼πϕ[−α(log⁡πϕ(a∣s)+Hˉ)],∇αL=E[−(log⁡πϕ(a∣s)+Hˉ)].(7.39)\mathcal L(\alpha)=\mathbb E_{a\sim\pi_\phi}\big[-\alpha\big(\log\pi_\phi(a|s)+\bar{\mathcal H}\big)\big],\qquad \nabla_\alpha\mathcal L=\mathbb E\big[-\big(\log\pi_\phi(a|s)+\bar{\mathcal H}\big)\big]. \tag{7.39}

第 4 步:KKT 互补松弛读出 α 的含义。 最优处 α⋆(E[−log⁡π⋆]−Hˉ)=0\alpha^\star\big(\mathbb E[-\log\pi^\star]-\bar{\mathcal H}\big)=0:若熵严格大于目标(约束不紧),α⋆=0\alpha^\star=0(不需要熵激励);若约束紧(等号成立),α⋆>0\alpha^\star>0 恰好把平均熵钉在 Hˉ\bar{\mathcal H}。因此对偶梯度下降会自动把 α\alpha 拉到”维持目标熵”的水平。局限:这是把非平稳的逐步乘子近似成单一稳态 α\alpha,且用当前 πϕ\pi_\phi 的样本估计梯度;实践优化 log⁡α\log\alpha(保证 α>0\alpha>0),并与 actor/critic 交替更新而非精确解内层。

图 4:SAC 数据流。off-policy 从回放池采样;critic 做软策略评估,actor 做 KL 投影式软策略改进,温度 α 由对偶更新自动维持目标熵。

图 4:SAC 数据流。off-policy 从回放池采样;critic 做软策略评估,actor 做 KL 投影式软策略改进,温度 α 由对偶更新自动维持目标熵。

9.4 与其它算法的关系

算法策略形式value backup探索来源数据
DQN / DDPG确定性贪婪hard maxε-greedy / 外加噪声off-policy
Soft Q-Learning∝eQ/α\propto e^{Q/\alpha}(SVGD 采样)soft (log∫e^Q)内生(熵)off-policy
SAC高斯(KL 投影 e^{Q/α})soft(Q−α logπ)内生(熵)+ 自动 αoff-policy
A2C/PPO(+熵奖励)参数化随机hard(GAE)熵奖励(启发式)on-policy

本质 Insight

PPO 之类算法常加一个”熵奖励”作为启发式探索项;MaxEnt/SAC 则把熵放进目标本身与 Bellman backup 内部——熵不是外挂,而是价值函数的一部分。这就是为什么 SAC 的探索”内生一致”:critic 已经知道随机的好处,actor 的贪婪就自带探索。

10. MaxEnt 的好处与前沿

为什么要费这么大劲引入熵?MaxEnt 带来三个可证/可观测的好处:

  • 探索:策略天然保持随机,覆盖多个近优动作,不会过早坍缩到单一确定动作。
  • 鲁棒性:在特定不确定集合与附加条件下,MaxEnt 目标可对应奖励扰动的鲁棒目标,或给出动力学扰动下鲁棒目标的下界;这不是对任意模型误差的保证 [5]。
  • 多模态:当存在多条同样好的解法时,MaxEnt 会把概率分给所有峰(受策略族表达力限制),而非任意打破对称选一个——利于微调、迁移与从演示中学习。

批判性追问:MaxEnt”更鲁棒”——对何种扰动鲁棒?

“熵项 = 对模型误差买保险”是一个有条件的结论,不能读成”MaxEnt 普适地更鲁棒”。已有结果表明:对论文定义的特定奖励扰动集合,MaxEnt 目标具有精确的鲁棒解释;对特定动力学扰动,则需对训练奖励作悲观化修正,此时 MaxEnt 目标最大化相应鲁棒目标的一个下界 [5]。这些结论不覆盖任意奖励错设、分布外状态或任意动力学变化。

本质 Insight

上面三条好处(探索、鲁棒、多模态)看似是三个独立的”卖点”,其实是同一个框架的三个推论:一旦把控制写成”在真实动力学下、对指数化奖励做(结构化变分)推断”,最大熵项就不是外加的探索 trick,而是 KL-to-prior 的一个特例(先验取均匀即退化为熵正则)。于是”保持随机”自动给出探索、“对最坏情形奖励扰动的对偶”自动给出鲁棒、“把概率分给所有近优峰”自动给出多模态——你无需为它们各设计一个机制,它们都是同一个 max⁡πE[r]+αH(π)\max_\pi\mathbb{E}[r]+\alpha\mathcal{H}(\pi) 目标的必然结果。这正是”用一个统一框架取代三个独立 trick”的威力。

图 5:面对多模态奖励,确定性策略只押一个峰;MaxEnt 策略在多个近优峰上都保留概率,更鲁棒、更易迁移。

图 5:面对多模态奖励,确定性策略只押一个峰;MaxEnt 策略在多个近优峰上都保留概率,更鲁棒、更易迁移。

前沿实践

  • 真实机器人:扩展版 SAC 在四足运动和灵巧操作任务中进行了真实机器人评估;其中四足机器人实验报告了约两小时从零学习稳定步态 [4] [6]。
  • 控制即推断 ↔ 世界模型:把动力学也建成隐变量模型(VAE/latent),“在想象中推断最优轨迹”直接连到 Dreamer 式世界模型(见 模块 08)与 Genie 式可交互视频生成——它们本质上都是”对隐变量轨迹做(变分)推断”。
  • MaxEnt ↔ LLM 后训练:RLHF/DPO 的目标里那一项 KL-to-reference(−β DKL(π∥πref)-\beta\,D_{\mathrm{KL}}(\pi\|\pi_{\text{ref}}))与 MaxEnt 的熵正则同源——都是”别离先验/参考太远”的软约束。把参考策略取均匀就退化为熵正则。控制即推断为理解”RLHF 为何是带正则的软最优化”提供了统一视角(见 模块 13)。

前沿实验室视角

原始 SAC 论文在连续控制基准上报告了样本效率、最终性能和跨随机种子的稳定性;后续扩展加入自动温度调节,并在真实机器人任务上评估。论文将这些结果表述为 SAC 适用于真实机器人学习的证据,而不是所有任务上的默认基线或无需调参的保证 [3] [4]。

11. Soft Policy Iteration 的收敛性

第 8–9 节给了 Soft Q-Learning 与 SAC 的算法形式,但还欠一个理论保证:反复”软策略评估 + 软策略改进”真的会收敛到最优的最大熵策略吗? 答案是肯定的——在表格式(tabular)设定下,soft policy iteration 与经典 policy iteration 一样有干净的收敛性证明,由两块拼成:软评估算子是压缩(保证评估收敛),软改进步单调不降(保证策略越改越好)。SAC 正是它在函数逼近下的随机近似。

11.1 软策略评估:固定 π 的 soft Bellman 算子是 γ-压缩

对固定策略 π\pi,定义 soft Bellman 评估算子:

(TπQ)(s,a)=r(s,a)+γ Es′[Vπ(s′)],Vπ(s)=Ea∼π[Q(s,a)−αlog⁡π(a∣s)].(7.40)(\mathcal T^\pi Q)(s,a)=r(s,a)+\gamma\,\mathbb E_{s'}\big[V^\pi(s')\big],\qquad V^\pi(s)=\mathbb E_{a\sim\pi}\big[Q(s,a)-\alpha\log\pi(a|s)\big]. \tag{7.40}

它比硬 Bellman 只多了熵项 −αlog⁡π-\alpha\log\pi。关键观察:熵项只依赖 π\pi、不依赖 QQ,所以在比较两个 QQ 时会相消。

推导:软评估算子的 γ-压缩性(逐步)

关键假设

有界奖励、γ<1\gamma<1、π\pi 固定且其熵有限(VπV^\pi 良定义);用 ∞\infty 范数 ∥Q∥∞=max⁡s,a∣Q(s,a)∣\|Q\|_\infty=\max_{s,a}|Q(s,a)|。

取任意两个动作价值 Q1,Q2Q_1,Q_2。因熵项相消:

(TπQ1−TπQ2)(s,a)=γ Es′[Ea′∼π[Q1(s′,a′)−Q2(s′,a′)]].(7.41)(\mathcal T^\pi Q_1-\mathcal T^\pi Q_2)(s,a)=\gamma\,\mathbb E_{s'}\Big[\mathbb E_{a'\sim\pi}\big[Q_1(s',a')-Q_2(s',a')\big]\Big]. \tag{7.41}

逐点取绝对值并用 ∣E[X]∣≤E∣X∣≤∥Q1−Q2∥∞|\mathbb E[X]|\le\mathbb E|X|\le\|Q_1-Q_2\|_\infty:

∥TπQ1−TπQ2∥∞≤γ ∥Q1−Q2∥∞.(7.42)\|\mathcal T^\pi Q_1-\mathcal T^\pi Q_2\|_\infty\le\gamma\,\|Q_1-Q_2\|_\infty. \tag{7.42}

由 Banach 不动点定理,Tπ\mathcal T^\pi 有唯一不动点 QsoftπQ^\pi_{\text{soft}},且从任意初值迭代 Q←TπQQ\leftarrow\mathcal T^\pi Q 都几何收敛到它。这就是”软策略评估”。注意:这里 VπV^\pi 用真实动力学下的期望 Es′[V]\mathbb E_{s'}[V](结构化 VI 的成果),而非式(7.16) 那个乐观的 log⁡E[eV]\log\mathbb E[e^V](已如式(7.16) 的量化:抹掉了约 12Var⁡[V]\tfrac12\operatorname{Var}[V] 的偏差)——所以没有风险寻求偏差。

11.2 软策略改进:对指数化 Q 做 KL 投影使 Q 单调不降

给定当前策略 πold\pi_{\text{old}} 及其软价值 QπoldQ^{\pi_{\text{old}}},把策略更新为指数化 Q 的 KL 投影(第 9.2 节式(7.32) 的软策略改进):

πnew(⋅∣s)=arg⁡min⁡π′∈Π DKL ⁣(π′(⋅∣s) ∥ 1Z(s)exp⁡(1αQπold(s,⋅))).(7.43)\pi_{\text{new}}(\cdot|s)=\arg\min_{\pi'\in\Pi}\ D_{\mathrm{KL}}\!\Big(\pi'(\cdot|s)\ \Big\|\ \tfrac{1}{Z(s)}\exp\big(\tfrac1\alpha Q^{\pi_{\text{old}}}(s,\cdot)\big)\Big). \tag{7.43}

软策略改进定理:如此得到的 πnew\pi_{\text{new}} 满足 Qπnew(s,a)≥Qπold(s,a)Q^{\pi_{\text{new}}}(s,a)\ge Q^{\pi_{\text{old}}}(s,a),对所有 (s,a)(s,a) 成立。

推导:软策略改进的单调性(逐步)

关键假设

策略族 Π\Pi 含 πold\pi_{\text{old}}(保证投影至少不比原策略差);QπoldQ^{\pi_{\text{old}}} 已由软评估算准。

第 1 步:投影不劣于原策略。 因为 πold∈Π\pi_{\text{old}}\in\Pi 是可行解,最优投影 πnew\pi_{\text{new}} 的 KL 目标值 ≤\le 取 πold\pi_{\text{old}} 时的值。把 KL 展开、乘 α\alpha、丢掉与 π′\pi' 无关的 log⁡Z\log Z,等价于:对每个 ss,

Ea∼πnew[αlog⁡πnew(a∣s)−Qπold(s,a)] ≤ Ea∼πold[αlog⁡πold(a∣s)−Qπold(s,a)].(7.44)\mathbb E_{a\sim\pi_{\text{new}}}\big[\alpha\log\pi_{\text{new}}(a|s)-Q^{\pi_{\text{old}}}(s,a)\big]\ \le\ \mathbb E_{a\sim\pi_{\text{old}}}\big[\alpha\log\pi_{\text{old}}(a|s)-Q^{\pi_{\text{old}}}(s,a)\big]. \tag{7.44}

移项,并记 soft 状态价值 Vπold(s)=Ea∼πold[Qπold−αlog⁡πold]V^{\pi_{\text{old}}}(s)=\mathbb E_{a\sim\pi_{\text{old}}}[Q^{\pi_{\text{old}}}-\alpha\log\pi_{\text{old}}]:

Ea∼πnew[Qπold(s,a)−αlog⁡πnew(a∣s)] ≥ Vπold(s).(7.45)\mathbb E_{a\sim\pi_{\text{new}}}\big[Q^{\pi_{\text{old}}}(s,a)-\alpha\log\pi_{\text{new}}(a|s)\big]\ \ge\ V^{\pi_{\text{old}}}(s). \tag{7.45}

第 2 步:沿 soft Bellman 反复自举。 把上式(式(7.45))代入 QπoldQ^{\pi_{\text{old}}} 的 soft Bellman 方程并反复展开:

Qπold(s,a)=r+γEs′[Vπold(s′)] ≤ r+γEs′[Ea′∼πnew[Qπold(s′,a′)−αlog⁡πnew]]≤⋯≤Qπnew(s,a).(7.46)Q^{\pi_{\text{old}}}(s,a)=r+\gamma\mathbb E_{s'}[V^{\pi_{\text{old}}}(s')]\ \le\ r+\gamma\mathbb E_{s'}\big[\mathbb E_{a'\sim\pi_{\text{new}}}[Q^{\pi_{\text{old}}}(s',a')-\alpha\log\pi_{\text{new}}]\big]\le\cdots\le Q^{\pi_{\text{new}}}(s,a). \tag{7.46}

每次把 VπoldV^{\pi_{\text{old}}} 替换成”用 πnew\pi_{\text{new}} 至少不更差”的下界,重复收敛到 QπnewQ^{\pi_{\text{new}}},故 Qπnew≥QπoldQ^{\pi_{\text{new}}}\ge Q^{\pi_{\text{old}}}。局限:函数逼近下 Π\Pi 只是高斯族,KL 投影是近似(eQ/αe^{Q/\alpha} 未必在族内),单调性只近似成立——这正是 SAC “理论优雅、实践仍需双 Q / 目标网络等 trick”的原因。

本质 Insight

soft policy iteration = 压缩(评估收敛)+ 单调(改进不降)+ 有界(价值被 rmax⁡/(1−γ)r_{\max}/(1-\gamma) 加熵上界封顶) 三件套,与经典 policy iteration 的证明结构一模一样,只是把 hard max 换成 log-sum-exp、把”贪婪改进”换成”KL 投影改进”。换汤不换药:最大熵没有破坏动态规划的骨架,只是给每一步套上温度 α\alpha。SAC 就是把这两步各用一次随机梯度近似——critic 近似软评估、actor 近似软改进。

图 6:soft policy iteration 的单调阶梯——每次软改进抬高策略、每次软评估几何收敛,共同保证收敛到唯一软最优 Q^\star_{\text{soft}}。

图 6:soft policy iteration 的单调阶梯——每次软改进抬高策略、每次软评估几何收敛,共同保证收敛到唯一软最优 Qsoft⋆Q^\star_{\text{soft}}。

12. 软硬极限:α→0 退回标准 RL,α→∞ 退回均匀策略

温度 α\alpha 是最大熵框架的总旋钮。把它拧到两个极端,能看清”控制即推断”与”标准 RL”如何在同一根谱线的两端相遇。回顾式(7.24)、式(7.25) 的带温度 soft value 与最优策略:

Vα(s)=αlog⁡∫Aexp⁡ ⁣(1αQ(s,a))da,πα(a∣s)=exp⁡ ⁣(1α(Q(s,a)−Vα(s))).(7.47)V_\alpha(s)=\alpha\log\int_{\mathcal A}\exp\!\Big(\tfrac1\alpha Q(s,a)\Big)da,\qquad \pi_\alpha(a|s)=\exp\!\Big(\tfrac1\alpha\big(Q(s,a)-V_\alpha(s)\big)\Big). \tag{7.47}

12.1 α→0⁺:hardmax 与确定性贪婪(标准 RL 的极限)

当 α→0+\alpha\to0^+,1αQ\tfrac1\alpha Q 把动作间的 QQ 差异无限放大,log-sum-exp 被最大项主导:

lim⁡α→0+Vα(s)=max⁡aQ(s,a),πα(⋅∣s) ⟶ 集中在 arg⁡max⁡aQ 上的点质量(确定性贪婪).(7.48)\lim_{\alpha\to0^+}V_\alpha(s)=\max_a Q(s,a),\qquad \pi_\alpha(\cdot|s)\ \longrightarrow\ \text{集中在 }\arg\max_a Q\text{ 上的点质量(确定性贪婪)}. \tag{7.48}

于是 soft Bellman 方程退回标准 Bellman 最优方程、softmax 退回 hardmax、随机策略坍缩为确定性策略——标准 RL 就是最大熵 RL 在零温极限下的特例。

推导:为何 α→0 时 α·log∫exp(Q/α) → max(逐步)

关键假设

离散情形假设动作集有限,并可定义最优集合与其余动作之间的正 gap;连续情形假设动作集有界、Q(s,⋅)Q(s,\cdot) 连续。若需定量展开,再假设唯一内点最大值附近二阶可微且负 Hessian 非退化。

把最大值提出:αlog⁡∫eQ/αda=Q⋆+αlog⁡∫e(Q−Q⋆)/αda\alpha\log\int e^{Q/\alpha}da=Q^\star+\alpha\log\int e^{(Q-Q^\star)/\alpha}da。在连续且有界的动作空间上,只有最大值附近对积分有主要贡献,因此 Vα→Q⋆V_\alpha\to Q^\star。对有限离散动作,若非最优动作与最优值之间有 gap Δ>0\Delta>0,其相对权重按 e−Δ/αe^{-\Delta/\alpha} 衰减。连续动作通常不存在覆盖所有非最优点的统一正 gap;此时应按最大点附近的局部曲率作 Laplace 分析。若最优动作不唯一,极限质量由最优集合及其局部几何决定。

12.2 α→∞:熵支配与均匀策略

当 α→∞\alpha\to\infty,目标 E[r]+αH(π)\mathbb E[r]+\alpha\mathcal H(\pi) 里熵项压倒奖励项,最优策略趋向该动作空间上的最大熵分布——在有界动作集上即均匀分布:

πα(a∣s) ⟶ Uniform(A),1α(Q(s,a)−Vα(s))→0.(7.49)\pi_\alpha(a|s)\ \longrightarrow\ \text{Uniform}(\mathcal A),\qquad \tfrac1\alpha\big(Q(s,a)-V_\alpha(s)\big)\to 0. \tag{7.49}

直觉:温度极高时,有限的 QQ 差异除以巨大的 α\alpha 趋于 0,指数权重趋于常数,策略被”抹平”。此时智能体几乎不看奖励、只求最随机——完全的探索、零利用。

本质 Insight:α 是一根连续谱线

α\alpha 把”纯利用(确定性贪婪、标准 RL)“与”纯探索(均匀随机)“连成一条连续谱线,中间是 Boltzmann 软策略。这也解释了第 9.1 节的奖励尺度对偶:把奖励整体放大 cc 倍 ≡\equiv 把温度除以 cc ≡\equiv 沿这根谱线向”更硬/更贪婪”一端滑动。因此”调奖励尺度”和”调温度”是同一件事的两种说法——SAC 的自动 α\alpha 本质上是在这根谱线上自适应地找一个”维持目标熵”的落点。

图 7:随温度 α 增大,最优策略从集中于 argmax 的确定性尖峰(左),经 Boltzmann 软分布(中),过渡到均匀分布(右)。α 是利用↔探索的连续旋钮。

图 7:随温度 α 增大,最优策略从集中于 argmax 的确定性尖峰(左),经 Boltzmann 软分布(中),过渡到均匀分布(右)。α 是利用↔探索的连续旋钮。

12.3 两极限的定量渐近:不止”退回谁”,还退回得多快

第 12.1–12.2 节给了两极限的定性结论(α→0\alpha\to0 退回硬 max、α→∞\alpha\to\infty 退回均匀)。把 Vα(s)=αlog⁡∫AeQ(s,a)/αdaV_\alpha(s)=\alpha\log\int_{\mathcal A}e^{Q(s,a)/\alpha}da 做渐近展开,能进一步读出”退回得多快”以及中间的定量修正项。

低温端(α→0+\alpha\to0^+)。 对连续 dd 维动作,设 QQ 在唯一内点最大值 a⋆a^\star 附近二阶可微,且 −∇a2Q(s,a⋆)-\nabla_a^2Q(s,a^\star) 正定。Laplace 展开给出:

Vα(s)=Q⋆+d2αlog⁡α+α2log⁡ ⁣(2π)ddet⁡(−∇a2Q(s,a⋆))+o(α).(7.49a)V_\alpha(s)=Q^\star+\frac{d}{2}\alpha\log\alpha+\frac{\alpha}{2}\log\!\frac{(2\pi)^d}{\det(-\nabla_a^2Q(s,a^\star))}+o(\alpha). \tag{7.49a}

因此 Vα→Q⋆V_\alpha\to Q^\star,修正项的量级为 O(αlog⁡1α)O(\alpha\log\tfrac1\alpha)。对与最优集合保持正距离、且其 QQ 值与 Q⋆Q^\star 相差至少 Δ>0\Delta>0 的子集,其概率质量至多按 e−Δ/αe^{-\Delta/\alpha} 的尺度衰减;不能把这个 gap 推广到连续空间中的所有非最优动作。

高温端(α→∞\alpha\to\infty)。 把被积函数在 Q/α→0Q/\alpha\to0 处泰勒展开 eQ/α≈1+Qα+Q22α2e^{Q/\alpha}\approx 1+\tfrac{Q}{\alpha}+\tfrac{Q^2}{2\alpha^2},对均匀测度(体积 ∣A∣|\mathcal A|)积分再取对数:

Vα(s)=αlog⁡∣A∣+Q‾(s)⏟均匀均值+12αVar⁡Unif ⁣[Q(s,⋅)]+O ⁣(1α2),Q‾=1∣A∣ ⁣∫A ⁣Q da.(7.49b)V_\alpha(s)=\alpha\log|\mathcal A|+\underbrace{\overline{Q}(s)}_{\text{均匀均值}}+\frac{1}{2\alpha}\operatorname{Var}_{\mathrm{Unif}}\!\big[Q(s,\cdot)\big]+O\!\big(\tfrac1{\alpha^2}\big),\qquad \overline{Q}=\tfrac1{|\mathcal A|}\!\int_{\mathcal A}\!Q\,da. \tag{7.49b}

三项各有含义:主导项 αlog⁡∣A∣\alpha\log|\mathcal A| 正是均匀分布的熵值(乘以温度),Q‾\overline Q 是奖励地形的均值偏置,12αVar⁡[Q]\tfrac1{2\alpha}\operatorname{Var}[Q] 是随温度下降才显现的”对高值动作的偏好”一阶修正。相应地策略 πα(a∣s)≈1∣A∣(1+1α(Q(s,a)−Q‾))\pi_\alpha(a|s)\approx\tfrac1{|\mathcal A|}\big(1+\tfrac1\alpha(Q(s,a)-\overline Q)\big)——在均匀分布上叠加一个正比于”QQ 偏离均值”、幅度 ∝1/α\propto 1/\alpha 的小扰动。这就把”α→∞\alpha\to\infty 退回均匀”精确成了”以 1/α1/\alpha 的速率、沿 QQ 的方向偏离均匀”。

13. 控制即推断的 KL 正则 ↔ RLHF 的 KL-to-reference

前面为推导简洁,一直把动作先验 p(a)p(a) 取成均匀分布,于是正则项化简成策略熵 H(π)\mathcal H(\pi)。但先验不必均匀——把它换成一个一般的参考分布 πref(a∣s)\pi_{\text{ref}}(a|s),整套结构化变分推导原样成立,只是”熵正则”升级为”到参考分布的 KL 正则”。这一步把控制即推断与 RLHF / DPO 的目标显式对齐,是理解第 10 节那句”MaxEnt 与 KL-to-ref 同源”的技术兑现。

推导:一般动作先验 → KL-to-prior 正则(逐步)

关键假设

沿用第 6 节结构化变分设定,只把动作先验从均匀改为一般的 p(at)=πref(at∣st)p(a_t)=\pi_{\text{ref}}(a_t|s_t);qq 与 pp 仍共享真实动力学与初始分布。

第 1 步:重走轨迹比。 动力学与初始分布相消后(同第 6 节),逐步项里 log⁡p(at)\log p(a_t) 不再是常数,而是 log⁡πref\log\pi_{\text{ref}}:

log⁡p(τ,O)q(τ)=∑t[r(st,at)+log⁡πref(at∣st)−log⁡π(at∣st)].(7.50)\log\frac{p(\tau,\mathcal O)}{q(\tau)}=\sum_t\big[r(s_t,a_t)+\log\pi_{\text{ref}}(a_t|s_t)-\log\pi(a_t|s_t)\big]. \tag{7.50}

第 2 步:取期望,用 KL 定义合并后两项。 因 Ea∼π[log⁡πref−log⁡π]=−DKL(π∥πref)\mathbb E_{a\sim\pi}[\log\pi_{\text{ref}}-\log\pi]=-D_{\mathrm{KL}}(\pi\|\pi_{\text{ref}}):

L=∑tE(st,at)∼q[r(st,at)−DKL(π(⋅∣st) ∥ πref(⋅∣st))].(7.51)\mathcal L=\sum_t\mathbb E_{(s_t,a_t)\sim q}\big[r(s_t,a_t)-D_{\mathrm{KL}}\big(\pi(\cdot|s_t)\,\|\,\pi_{\text{ref}}(\cdot|s_t)\big)\big]. \tag{7.51}

当 πref\pi_{\text{ref}} 取均匀分布时,−DKL(π∥Unif)=H(π)+const-D_{\mathrm{KL}}(\pi\|\text{Unif})=\mathcal H(\pi)+\text{const},正好退回式(7.23) 的熵正则目标。这说明熵正则只是 KL 正则在”均匀参考”下的特例。

带温度 β\beta 的一般目标及其闭式最优解为(把最优性似然写成 p(Ot∣st,at)∝er/βp(\mathcal O_t|s_t,a_t)\propto e^{r/\beta}、先验 πref\pi_{\text{ref}}):

max⁡π E[∑tr(st,at)]−β∑tE[DKL(π(⋅∣st) ∥ πref(⋅∣st))],π⋆(a∣s) ∝ πref(a∣s) exp⁡ ⁣(1βQ(s,a)).(7.52)\max_\pi\ \mathbb E\Big[\sum_t r(s_t,a_t)\Big]-\beta\sum_t\mathbb E\big[D_{\mathrm{KL}}\big(\pi(\cdot|s_t)\,\|\,\pi_{\text{ref}}(\cdot|s_t)\big)\big],\qquad \pi^\star(a|s)\ \propto\ \pi_{\text{ref}}(a|s)\,\exp\!\Big(\tfrac1\beta Q(s,a)\Big). \tag{7.52}
概念控制即推断 / MaxEnt RLRLHF / LLM 后训练
参考 / 先验均匀先验 p(a)p(a)参考模型 πref\pi_{\text{ref}}(通常是 SFT 模型)
正则项策略熵 α H(π)\alpha\,\mathcal H(\pi)per-token KL β DKL(π∥πref)\beta\,D_{\mathrm{KL}}(\pi\Vert \pi_{\text{ref}})
最优策略π⋆∝eQ/α\pi^\star\propto e^{Q/\alpha}π⋆∝πref er/β\pi^\star\propto\pi_{\text{ref}}\,e^{r/\beta}
温度α\alpha(熵权重)β\beta(KL 系数)
代表算法SAC / Soft Q-LearningPPO-RLHF / DPO

本质 Insight

RLHF 里的 KL 惩罚和 SAC 的熵项都可写成到参考分布的 KL 正则;差别在于参考分布的选择。DPO 利用 KL 正则目标的闭式最优策略关系,将显式奖励模型与后续 RL 改写为直接的偏好分类目标 [7]。这一对应说明控制即推断可作为理解相关目标的数学视角,但不表示这些算法的训练流程完全相同。

讨论课 · Section 6:Variational Inference(变分推断实操)

本节把第 2–3 节的 ELBO 与重参数化从”公式”落到”能上手算、能写成几行梯度更新”的层面,再补上 amortized VI 的推断网络、mean-field 与结构化变分的取舍;最后显式点明:控制即推断本质上就是把这套 VI 工具用在一张带最优性变量 Ot\mathcal O_t 的概率图模型上——soft RL 不是新东西,而是 VI 的一个特例。

D6.1 一个完整可手算的例子:高斯隐变量的 ELBO 与重参数化梯度

取最小可算模型:隐变量 z∈Rdz\in\mathbb R^d、先验 p(z)=N(0,I)p(z)=\mathcal N(0,I);对单个观测 xx,近似后验取对角高斯 qϕ(z∣x)=N(μ, diag(σ2))q_\phi(z|x)=\mathcal N\big(\mu,\ \mathrm{diag}(\sigma^2)\big),可训练参数 ϕ=(μ, log⁡σ)\phi=(\mu,\ \log\sigma)(优化 log⁡σ\log\sigma 以保证 σ>0\sigma>0)。ELBO 用第 2.2 节的”重建 − 正则”形式:

L(ϕ)=Eqϕ[log⁡pθ(x∣z)]⏟重建 − DKL(N(μ,σ2) ∥ N(0,I))⏟正则(有闭式).(7.53)\mathcal L(\phi)=\underbrace{\mathbb E_{q_\phi}\big[\log p_\theta(x|z)\big]}_{\text{重建}}\ -\ \underbrace{D_{\mathrm{KL}}\big(\mathcal N(\mu,\sigma^2)\,\|\,\mathcal N(0,I)\big)}_{\text{正则(有闭式)}}. \tag{7.53}

两个高斯的 KL 有闭式,逐维求和即可手算:

DKL=12∑i=1d(μi2+σi2−1−log⁡σi2),∂DKL∂μi=μi,∂DKL∂(log⁡σi)=σi2−1.(7.54)D_{\mathrm{KL}}=\tfrac12\sum_{i=1}^{d}\big(\mu_i^2+\sigma_i^2-1-\log\sigma_i^2\big),\qquad \frac{\partial D_{\mathrm{KL}}}{\partial\mu_i}=\mu_i,\quad \frac{\partial D_{\mathrm{KL}}}{\partial(\log\sigma_i)}=\sigma_i^2-1. \tag{7.54}

重建项的期望依赖 ϕ\phi,用第 3 节的重参数化写成对固定噪声的期望:z=μ+σ⊙ϵ, ϵ∼N(0,I)z=\mu+\sigma\odot\epsilon,\ \epsilon\sim\mathcal N(0,I),于是梯度可穿过采样。

手算:一维数值走一遍重参数化梯度(点开看逐步)

关键假设

d=1d=1;解码器取单位方差高斯 log⁡pθ(x∣z)=−12(x−z)2+const\log p_\theta(x|z)=-\tfrac12(x-z)^2+\text{const}(即”zz 直接预测 xx”);用单样本蒙特卡洛估计期望。

第 1 步:重建项的重参数化梯度。 记 f(z)=−12(x−z)2f(z)=-\tfrac12(x-z)^2,z=μ+σϵz=\mu+\sigma\epsilon。链式法则:

∂f∂μ=∂f∂z⋅∂z∂μ=(x−z)⋅1,∂f∂(log⁡σ)=∂f∂z⋅∂z∂(log⁡σ)=(x−z)⋅σϵ.(7.55)\frac{\partial f}{\partial\mu}=\frac{\partial f}{\partial z}\cdot\frac{\partial z}{\partial\mu}=(x-z)\cdot 1,\qquad \frac{\partial f}{\partial(\log\sigma)}=\frac{\partial f}{\partial z}\cdot\frac{\partial z}{\partial(\log\sigma)}=(x-z)\cdot\sigma\epsilon. \tag{7.55}

(用到 ∂z/∂log⁡σ=σϵ\partial z/\partial\log\sigma=\sigma\epsilon,因为 σ=elog⁡σ\sigma=e^{\log\sigma}。)

第 2 步:合并 KL 梯度,得到 ELBO 的上升方向。

∇μL=Eϵ[(x−z)]−μ,∇log⁡σL=Eϵ[(x−z)σϵ]−(σ2−1).(7.56)\nabla_\mu\mathcal L=\mathbb E_\epsilon[(x-z)]-\mu,\qquad \nabla_{\log\sigma}\mathcal L=\mathbb E_\epsilon[(x-z)\sigma\epsilon]-(\sigma^2-1). \tag{7.56}

第 3 步:代数字。 设 x=1x=1,当前 μ=0, σ=1(log⁡σ=0)\mu=0,\ \sigma=1(\log\sigma=0),采到 ϵ=0.5⇒z=0.5\epsilon=0.5\Rightarrow z=0.5。则 ∇μL=(1−0.5)−0=0.5>0\nabla_\mu\mathcal L=(1-0.5)-0=0.5>0(把 μ\mu 往 xx 拉);∇log⁡σL=(0.5)(1)(0.5)−(1−1)=0.25>0\nabla_{\log\sigma}\mathcal L=(0.5)(1)(0.5)-(1-1)=0.25>0(把 σ\sigma 略微调大)。方向与直觉一致:让后验均值靠近观测、保留合理的不确定度。局限:单样本估计有方差,实践取 mini-batch 平均;tanh⁡\tanh 等非线性压缩会引入雅可比修正项(正是第 9 节 SAC 的做法)。

写成可直接落地的一步更新(VAE / amortized 版本,μ,σ\mu,\sigma 由编码器网络输出):

# 一步 ELBO 上升(对 batch 求均值)
mu, log_sigma = encoder(x)          # amortized:网络直接吐后验参数
sigma = exp(log_sigma)
eps   = randn_like(sigma)           # 与 phi 无关的噪声
z     = mu + sigma * eps            # 重参数化:把采样变成确定性变换
recon = log_p_decoder(x, z)         # 重建对数似然(可微解码器)
kl    = 0.5 * sum(mu**2 + sigma**2 - 1 - 2*log_sigma)
loss  = -(recon.mean() - kl.mean()) # 最小化 −ELBO
loss.backward();  opt.step()        # 梯度自动穿过 z=mu+sigma*eps

D6.2 Amortized VI 与推断网络

朴素 VI 为每个数据点 x(i)x^{(i)} 单独优化一组 ϕ(i)=(μ(i),σ(i))\phi^{(i)}=(\mu^{(i)},\sigma^{(i)})——每来一个新点都要跑一轮内层优化,昂贵且不可泛化。Amortized VI(摊销变分推断) 改学一个共享的推断网络(编码器) qϕ(z∣x)=N(μϕ(x),σϕ(x))q_\phi(z|x)=\mathcal N(\mu_\phi(x),\sigma_\phi(x)):一次前向就把任意 xx 映射到其后验参数,推断成本被”摊”到所有点上,且能对没见过的 xx 直接泛化。代价是摊销间隙(amortization gap):一个网络未必对每个点都输出该点的最优 ϕ\phi,比逐点优化略差一截。

本质 Insight

amortization 把”推断”从一个优化问题变成一次前向预测——这正是”用学习替代搜索”的通用套路。它与 RL 里”用策略网络 πϕ(a∣s)\pi_\phi(a|s) 替代每步重新规划”(模块 08 的 MPC vs 学策略)是同一种权衡:预测快但有近似间隙,搜索准但昂贵。SAC 的策略网络就是一个摊销的推断网络——它摊销的是”给定 ss,从 eQ/αe^{Q/\alpha} 里采动作”这个推断。

D6.3 Mean-field vs 结构化变分:取舍

近似族形式优点代价 / 陷阱
Mean-field(平均场)q(z)=∏iqi(zi)q(z)=\prod_i q_i(z_i) 完全因子化最简单、每维可独立更新、坐标上升有闭式丢弃变量间相关性 → 系统性低估后验方差、对多峰”模式寻求”
结构化变分保留部分依赖(如链式 q(zt∣zt−1)q(z_t\vert z_{t-1})、低秩协方差)能表达相关性、逼近更紧、下界更高更新更贵、需设计依赖结构;仍是下界近似

经验法则:变量间相关性强(时间序列、图模型的相邻节点)时,mean-field 会明显偏差,值得上结构化变分;追求实现简单、维度间近似独立时,mean-field 足够。这不是纸上谈兵——它正是第 6 节修正”乐观推断”的核心手段。

D6.4 接回控制即推断:soft RL 就是这套 VI 工具的应用

把上面每一件工具与本模块正文一一对上,就能看清”控制即推断”没有引入任何新数学,只是 VI 的复用:

  • 隐变量模型 ↔ 轨迹 τ=(s1:T,a1:T)\tau=(s_{1:T},a_{1:T}) 是隐变量、最优性变量 O1:T=1\mathcal O_{1:T}=1 是观测(第 4 节);
  • 精确后验推断(消息传递) ↔ backward messages βt\beta_t、soft value V=log⁡∫eQV=\log\int e^{Q}(第 5 节)——这就是对图模型做精确推断;
  • 朴素后验方差被低估 / 篡改 ↔ 精确后验”过于乐观”地改动了动力学(第 6 节);
  • 结构化变分(把动力学钉死为真实转移、只让策略自由) ↔ 恰好导出 MaxEnt 目标 ∑tE[r+αH(π)]\sum_t\mathbb E[r+\alpha\mathcal H(\pi)](第 6–7 节推导);
  • amortized VI(推断网络)+ 重参数化 ↔ SAC 的高斯策略网络与其 actor 更新(第 9 节)。

一句话

Soft RL = 在”轨迹图模型 + 最优性证据”上做结构化变分推断。ELBO 就是 MaxEnt 目标,KL 投影就是软策略改进,重参数化就是让策略梯度可传的那一招——你在本节手算的每一步,第 8–9 节都会原样再用一次。

讨论课 · Section 4:DQN and SAC(SAC 训练实操)

第 9 节给了 SAC 的理论根基(软策略评估 + KL 投影式软策略改进 + 温度对偶)。本节把它拼成一份可照抄的完整训练伪代码,再给一份工程实践清单。SAC 的理论根基之所以放在本模块,是因为它整个就是 MaxEnt / 控制即推断的落地;至于同属 CS285 Section 4 的 DQN(value-based、hard max、ϵ\epsilon-greedy)部分,请见 模块 05。

D4.1 SAC 完整训练伪代码

初始化 critic Q_θ1, Q_θ2;actor π_φ(tanh 压缩的高斯);log α
目标网络 θ̄1←θ1, θ̄2←θ2;回放池 D=∅
目标熵 H̄ = −dim(A)                         # 连续动作的经验默认值
for 每个环境步:
    a ~ π_φ(·|s)                            # 采样动作
    执行 a,观测 r, s', done;存 (s,a,r,s',done) → D
    for 每个梯度步 (每步可做 1~G 次):
        采样 batch {(s,a,r,s',done)} ~ D
        # ---------- critic:软策略评估 ----------
        a' ~ π_φ(·|s');   logp' = log π_φ(a'|s')          # 重新采样 + 概率
        y  = r + γ(1−done)·( min_{i∈{1,2}} Q_θ̄i(s',a') − α·logp' )
        for i in {1,2}:  θi ← θi − η ∇_θi (Q_θi(s,a) − y)²   # y 停梯度
        # ---------- actor:软策略改进(重参数化)----------
        ã = tanh( μ_φ(s) + σ_φ(s)⊙ε ),  ε~N(0,I)         # 可微采样
        logp = log π_φ(ã|s)                               # 含 tanh 雅可比修正
        L_π  = mean( α·logp − min_{i} Q_θi(s,ã) )         # =−(Q+熵)
        φ ← φ − η ∇_φ L_π                                 # 梯度穿过 ã
        # ---------- 温度 α:带熵约束的对偶更新 ----------
        L_α  = mean( −logα · ( logp.detach() + H̄ ) )      # 对 logα 求导
        logα ← logα − η ∇_{logα} L_α;   α = exp(logα)
        # ---------- 目标网络 Polyak 软更新 ----------
        θ̄i ← ρ·θ̄i + (1−ρ)·θi     (i=1,2),  ρ≈0.995

三处要点与理论的对应:双 Q 取 min(min⁡iQ\min_i Q)缓解自举带来的过估计;目标里的 −αlog⁡π-\alpha\log\pi 就是 soft value V(s′)=Ea′[Q−αlog⁡π]V(s')=\mathbb E_{a'}[Q-\alpha\log\pi] 的样本估计;α\alpha 的对偶更新把温度自动拉到”恰好维持目标熵 Hˉ\bar{\mathcal H}“的水平(当前熵低于 Hˉ\bar{\mathcal H} 时增大 α\alpha → 更随机,反之减小)。

为什么 tanh 高斯策略要加雅可比修正(logp 的正确写法)

关键假设

基分布 u∼N(μϕ(s),σϕ(s)2)u\sim\mathcal N(\mu_\phi(s),\sigma_\phi(s)^2),动作 a=tanh⁡(u)a=\tanh(u) 把值域压到 (−1,1)(-1,1)。

变量替换的密度变换给出:log⁡π(a∣s)=log⁡N(u;μ,σ)−∑ilog⁡ ⁣(1−tanh⁡2(ui))\log\pi(a|s)=\log\mathcal N(u;\mu,\sigma)-\sum_i\log\!\big(1-\tanh^2(u_i)\big)。第二项是 tanh⁡\tanh 的对数雅可比,不能漏——漏掉会让熵估计错误、温度调节失灵。数值上常用 log⁡(1−tanh⁡2u)=log⁡(1−a2)\log(1-\tanh^2 u)=\log(1-a^2) 并加 ϵ\epsilon 防溢出,或用更稳的 2(log⁡2−u−softplus(−2u))2(\log 2-u-\text{softplus}(-2u)) 写法。

D4.2 实践清单

工程要点

  • Replay buffer:off-policy,大容量(1e6 级)均匀采样即可;SAC 对回放数据”陈旧”相对鲁棒,无需优先级也能工作。
  • Target Q 的 Polyak 平均:用 θˉ←ρ θˉ+(1−ρ)θ\bar\theta\leftarrow\rho\,\bar\theta+(1-\rho)\theta 的软更新(ρ≈0.995\rho\approx0.995)而非硬拷贝,稳定自举目标;只对 critic 用目标网络,actor/α 不需要。
  • Reward scale 直接改变熵权重:因为 α\alpha 是”每 nat 熵值多少奖励”的兑换率,把奖励整体乘 cc 等价于把温度除以 cc。奖励尺度过大 → 相对熵太便宜 → 策略过早确定、探索不足;过小 → 策略过度随机学不动。用自动 α\alpha 能吸收大部分尺度问题,但极端尺度仍建议归一化奖励。
  • 目标熵 Hˉ\bar{\mathcal H}:连续动作默认 −dim⁡(A)-\dim(\mathcal A) 是稳健起点;想更确定/更随机可按比例调。
  • 双 Q + min:几乎必开;去掉会明显过估计。actor 更新里也用 min⁡iQ\min_i Q。
  • 优化 log⁡α\log\alpha 而非 α\alpha:保证正性与数值稳定。

讨论课 · Section 7:IRL and LLM RL(逆强化学习 / Inverse RL)

前面都假设奖励 r(s,a)r(s,a) 是给定的。但很多真实任务里,奖励恰恰是最难写对的东西(自动驾驶的”开得好”、对话的”回答得好”)。逆强化学习(Inverse Reinforcement Learning, IRL) 反过来问:给定专家演示轨迹,能否反推出专家在优化的那个奖励函数? 本节说明:最大熵 IRL 恰恰就是本模块”控制即推断”框架的一次直接应用;而它与 RLHF 的奖励建模存在深刻同构。

D7.1 问题设定与奖励歧义性

给定专家演示 DE={τ(i)}\mathcal D_E=\{\tau^{(i)}\}(假设由某最优/近优策略产生),目标是找一个奖励 rψ(s,a)r_\psi(s,a),使得”在该奖励下的最优策略”能解释这些演示。核心困难是奖励歧义性(reward ambiguity):

局限 / 陷阱:为什么 IRL 天生欠定

同一批最优行为可以由多个奖励解释;例如,势函数塑形可在相应条件下保持最优策略不变。因此 IRL 需要额外假设或正则。最大熵原则是在给定特征匹配约束下选择唯一的最大熵轨迹分布,而不一般唯一识别奖励参数,也不消除奖励塑形等价类 [8]。

D7.2 特征匹配

经典设定把奖励写成特征的线性组合 rψ(s,a)=ψ⊤f(s,a)r_\psi(s,a)=\psi^\top \mathbf f(s,a)。一条轨迹的特征计数 F(τ)=∑tf(st,at)\mathbf F(\tau)=\sum_t \mathbf f(s_t,a_t)。若能让学到策略的期望特征匹配专家的期望特征 Eπ[F]=EπE[F]\mathbb E_{\pi}[\mathbf F]=\mathbb E_{\pi_E}[\mathbf F],则在线性奖励下两者的期望回报相等——这就是 特征匹配(feature matching)。问题:满足匹配的策略仍不唯一(回到歧义性),需要一个原则来定选择。MaxEnt IRL 用”熵最大”来定。

D7.3 最大熵 IRL:正是”控制即推断”的应用

最大熵 IRL(MaxEnt IRL, 2008) 假设专家轨迹服从与奖励指数挂钩的分布——这正是第 4–5 节的最优性模型 p(O1:T=1∣τ)∝e∑trp(\mathcal O_{1:T}=1|\tau)\propto e^{\sum_t r} [8]:

pψ(τ) ∝ p(τ) exp⁡ ⁣(∑trψ(st,at)) = 1Z(ψ) p(τ) exp⁡(ψ⊤F(τ)),(7.57)p_\psi(\tau)\ \propto\ p(\tau)\,\exp\!\Big(\sum_t r_\psi(s_t,a_t)\Big)\ =\ \frac{1}{Z(\psi)}\,p(\tau)\,\exp\big(\psi^\top\mathbf F(\tau)\big), \tag{7.57}

其中 Z(ψ)=∫p(τ) eψ⊤F(τ) dτZ(\psi)=\int p(\tau)\,e^{\psi^\top\mathbf F(\tau)}\,d\tau 是配分函数。学习 ψ\psi = 最大化专家轨迹在此分布下的对数似然。其梯度有一个极其干净的形式(下推导),并且——关键——计算梯度需要在当前奖励 rψr_\psi 下解一次 soft RL(即本模块的 backward soft value / 控制即推断)。

推导:MaxEnt IRL 的梯度 = 专家特征期望 − 当前策略特征期望(骨架)

关键假设

奖励线性于特征 rψ=ψ⊤fr_\psi=\psi^\top\mathbf f;专家演示 i.i.d. 采自 pψp_\psi;能对当前 ψ\psi 求解 soft 最优策略(做一次控制即推断的 backward pass)以估计其特征期望;有限时域。

第 1 步:写对数似然。 对专家集合 DE\mathcal D_E,

L(ψ)=1∣DE∣∑τ∈DElog⁡pψ(τ)=1∣DE∣∑τ∈DE[ψ⊤F(τ)+log⁡p(τ)]−log⁡Z(ψ).(7.58)\mathcal L(\psi)=\frac{1}{|\mathcal D_E|}\sum_{\tau\in\mathcal D_E}\log p_\psi(\tau)=\frac{1}{|\mathcal D_E|}\sum_{\tau\in\mathcal D_E}\Big[\psi^\top\mathbf F(\tau)+\log p(\tau)\Big]-\log Z(\psi). \tag{7.58}

第 2 步:对 ψ\psi 求梯度。 前一项直接给专家平均特征 EπE[F]\mathbb E_{\pi_E}[\mathbf F];难点在 ∇ψlog⁡Z\nabla_\psi\log Z:

∇ψlog⁡Z(ψ)=1Z∫p(τ) eψ⊤F(τ) F(τ) dτ=Eτ∼pψ[F(τ)].(7.59)\nabla_\psi\log Z(\psi)=\frac{1}{Z}\int p(\tau)\,e^{\psi^\top\mathbf F(\tau)}\,\mathbf F(\tau)\,d\tau=\mathbb E_{\tau\sim p_\psi}\big[\mathbf F(\tau)\big]. \tag{7.59}

(这是配分函数的经典性质:log⁡Z\log Z 对自然参数的梯度 = 充分统计量的期望。)第 3 步:合并。

 ∇ψL=EπE[F]⏟专家特征期望−Eπψ[F]⏟当前(soft最优)策略特征期望 (7.60)\boxed{\ \nabla_\psi\mathcal L=\underbrace{\mathbb E_{\pi_E}[\mathbf F]}_{\text{专家特征期望}}-\underbrace{\mathbb E_{\pi_\psi}[\mathbf F]}_{\text{当前(soft最优)策略特征期望}}\ } \tag{7.60}

梯度上升让”当前奖励诱导的软最优策略”的特征期望去追平专家——零梯度即特征匹配。其中 Eπψ[F]\mathbb E_{\pi_\psi}[\mathbf F] 怎么算? 正是对当前 rψr_\psi 做一遍本模块的 soft value backward pass 得到软最优策略 πψ∝eAψ\pi_\psi\propto e^{A_\psi},再前向求各状态访问频率(state visitation)× 特征。这就是”控制即推断”作为 IRL 内循环的确切位置。

局限:小状态空间要精确算 ZZ 需动态规划(表格式可行);大/连续空间要用采样近似(重要性采样、引导代价学习 GCL),方差大;线性特征假设限制表达力(深度 MaxEnt IRL 用神经网络奖励放宽)。

图 8:MaxEnt IRL 的外循环更新奖励、内循环用"控制即推断"求软最优策略;奖励梯度 = 专家特征期望 − 当前策略特征期望。

图 8:MaxEnt IRL 的外循环更新奖励、内循环用”控制即推断”求软最优策略;奖励梯度 = 专家特征期望 − 当前策略特征期望。

D7.4 GAIL:对抗式模仿的直觉

MaxEnt IRL 的内循环(每步都要解一遍 RL)很贵。GAIL(Generative Adversarial Imitation Learning, 2016) 换个思路:不显式恢复奖励,而是像 GAN 一样对抗训练——判别器 Dω(s,a)D_\omega(s,a) 学着区分”专家的 (s,a)(s,a)“与”当前策略的 (s,a)(s,a)“;策略以判别器输出构造隐式奖励,从而把自己的占用度量(occupancy measure) 推向专家 [9]。判别器扮演了 IRL 中隐式代价函数的角色,避免每轮先显式恢复奖励再完整求解策略。

前沿实践:IRL ↔ RLHF 奖励建模的深刻同构

  • RM ≈ 学一个奖励:RLHF 的奖励模型(Reward Model, RM) 从人类偏好比较里拟合一个标量奖励 rψr_\psi(Bradley–Terry:P(τa≻τb)=σ(rψ(τa)−rψ(τb))P(\tau_a\succ\tau_b)=\sigma(r_\psi(\tau_a)-r_\psi(\tau_b)))——这本质上就是一次 IRL:从”专家/被偏好的行为”反推奖励,再用它跑 RL。人类偏好数据 = 专家演示的软化版本。
  • DPO / RLHF 与正则化策略优化:RLHF 的 KL-正则最优策略 π⋆∝πref erψ/β\pi^\star\propto\pi_{\text{ref}}\,e^{r_\psi/\beta} 与本模块的 soft 最优策略同形;DPO 利用这一闭式关系,把显式奖励建模与后续 RL 改写为对偏好数据的分类目标 [7]。控制即推断为理解其中的参考策略正则提供了统一视角(详见模块 13)。

方法溯源:动机 · 启发 · 局限

本模块的每个方法都不是凭空出现,而是被前一个方法的局限逼出来的。下表把”控制即推断”这条谱系按时间与因果串起来——读法是:每一行的”关键局限”往往正是下一行”要解决的问题”。

方法 / 代表作(年代)要解决什么问题(动机)受什么启发 / 技术脉络关键局限(→ 引出谁)
变分推断 / ELBO(Jordan 等 1999;Kingma–Welling VAE 2013)隐变量模型的边缘似然 p(x)p(x) 与后验 p(z∣x)p(z\vert x) 含难解积分,无法直接做 MLE / 推断Jensen 不等式、EM 算法、统计物理的平均场;重参数化让采样可微反向 KL 的”模式寻求”低估多峰后验、有摊销间隙(→ 成为控制即推断的推断工具箱)
线性可解 MDP / KL 控制(Todorov 2007;Kappen 路径积分 2005)希望最优控制有闭式、可组合的解,而非逐问题数值求解把控制代价写成一个 KL 散度、Feynman–Kac 公式;用 log-sum-exp 替代 hard max依赖特殊结构(受控与被动动力学分离),难推广到一般 MDP(→ 启发一般化的图模型表述)
控制即推断框架(Toussaint 2009;Levine 2018 综述)把 RL 统一进概率推断,借用成熟的消息传递 / 变分工具概率图模型、最优性变量 Ot\mathcal{O}_t、p(Ot∣s,a)∝erp(\mathcal{O}_t\vert s,a)\propto e^{r}、前向-后向消息精确后验会”篡改动力学”、显得过于乐观(→ 结构化变分修正)
最大熵 RL 目标(结构化 VI 的产物)在真实随机性下既最大化奖励、又保留随机性(探索 / 鲁棒 / 多模态)结构化变分把动力学钉死、只优化策略;Jaynes 最大熵原理温度 α\alpha 需选、连续动作下 V=αlog⁡∫eQ/αV=\alpha\log\int e^{Q/\alpha} 的配分难算(→ Soft Q-Learning)
Soft Q-Learning(Haarnoja 等 2017)把 soft Bellman 方程变成能训练的类 Q-learning 算法能量模型、Stein 变分梯度下降(SVGD)采样 π∝eQ/α\pi\propto e^{Q/\alpha}要显式估配分函数、SVGD 采样器实现复杂、方差大、调参敏感(→ SAC)
SAC(Haarnoja 等 2018)要一个稳定、样本高效、超参鲁棒的实用 MaxEnt 算法对指数化 Q 做 KL 投影得高斯策略、重参数化、双 Q 取 min;原始版本使用给定温度高斯族表达力有限(难精确表示多峰 eQ/αe^{Q/\alpha})、仍需目标网络等 trick;自动温度见后续扩展
最大熵 IRL(2008)奖励难人工设定时,从专家演示学习能解释行为的奖励最大熵原理 + 配分函数、特征匹配;内循环正是控制即推断的 backward pass最大熵原则消除满足特征匹配时对轨迹分布的选择歧义,但不一般消除奖励参数的非可识别性或势函数塑形等价类;且需计算配分函数(→ GAIL)
GAIL(Ho & Ermon 2016)绕开”显式恢复奖励 + 内层反复解 RL”的昂贵两层循环GAN 式对抗博弈、占用度量匹配;判别器充当隐式奖励对抗训练不稳、不产出可复用的显式奖励(成对抗式模仿主流)

演进故事线 ①:从”最优控制”到”概率推断”再到 SAC

整条主线由一个换框架的念头点燃:能否把”最大化回报”这件确定性最优化,重述成”在观测到最优的条件下推断动作”的概率问题? Todorov / Kappen 先在特殊结构上给出肯定答案(KL 控制、线性可解 MDP),Toussaint 与 Levine 再把它一般化为带最优性变量 Ot\mathcal{O}_t 的图模型——此时 hard max 被自然软化成 log⁡ ⁣∑exp⁡\log\!\sum\exp,“多出来的那一项”恰是策略熵。但精确推断露出破绽:它会偷偷偏向”幸运的转移”(Q=r+log⁡E[eV]Q=r+\log\mathbb{E}[e^{V}] 的风险寻求),得到过于乐观的策略。修补的关键洞察极朴素——把你无权控制的环境动力学从优化变量里剔除(结构化变分),于是干净地掉出最大熵目标 ∑tE[r+αH(π)]\sum_t\mathbb{E}[r+\alpha\mathcal H(\pi)]。剩下的只是工程化:Soft Q-Learning 把 soft Bellman 变成 Q-learning,却卡在配分函数与 SVGD 的复杂度上;SAC 用”对指数化 Q 做 KL 投影 + 重参数化 + 温度对偶”把它们一举绕开。每一步都是被上一步的局限推着走的。

演进故事线 ②:逆问题支线——奖励歧义 → 最大熵 → 对抗化

当奖励本身难写时,问题反了过来:给定专家演示,学习能解释行为的奖励。这条支线的病根是奖励歧义——多个奖励可能诱导同一行为。最大熵 IRL 在给定特征匹配约束下选择唯一的最大熵轨迹分布,但不一般唯一识别奖励参数,也不消除势函数塑形等价类 [8]。计算配分函数的内循环对应控制即推断的 backward pass。GAIL 则不显式恢复奖励,而以对抗训练直接匹配占用度量 [9]。

贯穿线:温度 α\alpha 是这条谱系的唯一旋钮

把整条谱系压成一句话:控制即推断只是把 RL 目标里的 hard max 换成软 max,而温度 α\alpha 就是软硬之间的旋钮。α→0\alpha\to0 时它退回标准 RL(确定性贪婪),α→∞\alpha\to\infty 时退回均匀策略;把动作先验从均匀换成参考策略 πref\pi_{\text{ref}},熵正则就升级为 KL-to-reference——这正是 RLHF / DPO 里那一项 β DKL(π∥πref)\beta\,D_{\mathrm{KL}}(\pi\|\pi_{\text{ref}})。因此本模块所有方法(soft value、SQL、SAC、MaxEnt IRL)共享同一个数学骨架,差别只在”先验取什么、温度设多大、以及在哪一步做近似”。这也印证了编者按:MaxEnt 框架在 LLM 时代真正落地的,几乎正是”目标里那一项 KL / 熵正则”(详见 模块 13)。

图 9:控制即推断的方法谱系。上排为"控制→推断→MaxEnt"主线与其算法落地(SQL→SAC),下排紫色为逆强化学习支线;箭头上的标注是"上一个方法的局限如何催生下一个"。

图 9:控制即推断的方法谱系。上排为”控制→推断→MaxEnt”主线与其算法落地(SQL→SAC),下排紫色为逆强化学习支线;箭头上的标注是”上一个方法的局限如何催生下一个”。

14. 小结

  • 变分推断:ELBO = log⁡p(x)\log p(x) − KL(q∥p(z∣x))(q\|p(z|x)),最大化 ELBO 同时做近似 MLE 与后验拟合;amortized VI 用编码器共享推断,重参数化让采样可微。
  • 控制即推断:引入 Ot\mathcal O_t、p(Ot∣s,a)∝erp(\mathcal O_t|s,a)\propto e^{r},精确后向推断给出 soft value V=log⁡∫eQV=\log\int e^{Q}、后验策略 π∝eA\pi\propto e^{A}。
  • 乐观陷阱与修正:精确推断会篡改动力学(乐观);结构化 VI 固定真实动力学、只优化策略,干净地导出 MaxEnt 目标 ∑tE[r+αH(π)]\sum_t\mathbb E[r+\alpha\mathcal H(\pi)]。
  • 算法:Soft Q-Learning 直接迭代 soft Bellman;SAC 用软策略评估 + KL 投影式软策略改进,并在后续扩展中加入温度自动调节;论文在特定连续控制基准上报告了较强结果(非跨任务「旗舰」断言)。
  • 价值:MaxEnt 带来内生探索、鲁棒性、多模态,并与世界模型、RLHF 的 KL 正则同源。

参考来源

  1. [1]Reinforcement Learning and Control as Probabilistic Inference: Tutorial and Review(在新窗口打开)arXiv · 2018-05-02 · Sections 2–3 · 访问于 2026-10-17↩
  2. [2]Reinforcement Learning with Deep Energy-Based Policies(在新窗口打开)arXiv · 2017-02-27 · Sections 3–4 · 访问于 2026-10-17↩
  3. [3]Soft Actor-Critic: Off-Policy Maximum Entropy Deep Reinforcement Learning with a Stochastic Actor(在新窗口打开)PMLR · 2018-07-10 · Sections 4–5 · 访问于 2026-10-17↩
  4. [4]Soft Actor-Critic Algorithms and Applications(在新窗口打开)arXiv · 2018-12-13 · Sections 5–6 · 访问于 2026-10-17↩
  5. [5]Maximum Entropy RL (Provably) Solves Some Robust RL Problems(在新窗口打开)arXiv · 2021-03-10 · Theorems 4.1–4.2 · 访问于 2026-10-17↩
  6. [6]Learning to Walk Via Deep Reinforcement Learning(在新窗口打开)Robotics Science and Systems · Abstract · 访问于 2026-10-17↩
  7. [7]Direct Preference Optimization: Your Language Model is Secretly a Reward Model(在新窗口打开)arXiv · 2023-05-29 · Sections 1 and 3 · 访问于 2026-10-17↩
  8. [8]Maximum Entropy Inverse Reinforcement Learning(在新窗口打开)AAAI · Learning and inference · 访问于 2026-10-17↩
  9. [9]Generative Adversarial Imitation Learning(在新窗口打开)NeurIPS · Abstract and Section 3 · 访问于 2026-10-17↩
  10. [10]CS 285: Deep Reinforcement Learning(UC Berkeley)(在新窗口打开)UC Berkeley · 访问于 2026-10-17