首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >最大熵策略梯度推导

最大熵策略梯度推导
EN

Data Science用户
提问于 2019-12-11 14:03:34
回答 1查看 235关注 0票数 3

我正在阅读关于概率推理中的强化学习与控制的论文:谢尔盖·莱文的“教程和评论”。我很难理解关于最大熵策略梯度的这部分推导(4.1节)

请注意,在上面的推导中,术语H(q(thetha(at区)应该是log (qthetha(at区st)),而该log指的是原木基e(即自然对数)。在梯度的第一行中,它应该是r(st,at) -log(qthetha(at\st))。

特别是,我不明白第二行中从t=t到t'=t的第二个求和项是如何在推导中产生的。我通过扩展期望的定义得到了公式,但是我得到的结果没有第二个求和项。有人能给我一些关于第二个求和项从数学上来的想法吗?

EN

回答 1

Data Science用户

发布于 2021-04-21 13:13:51

以不同的方式写出目标可能会有帮助。

如果我们only专注于奖励部分而忽略熵部分,因为问题中的焦点是关于第二次求和的,那么最初的目标是J(\theta)=\sum_{t=1}^T\mathbb{E}_{(s_t,a_t)\sim q(s_t,a_t)}[r(s_t,a_t)]

如果我们从完整轨迹\tau的角度来看它,就像Eq.19中的ELBO一样,目标是J(\theta)=\mathbb{E}_{\tau\sim q_\theta(\tau)}\left[\sum_{t=1}^Tr(s_t,a_t)\right]

然后是\begin{aligned} \nabla_\theta J(\theta)&=\nabla_\theta\sum_\tau q_\theta(\tau)\sum_{t=1}^T r(s_t,a_t)\\ &=\sum_\tau \nabla_\theta q_\theta(\tau)\sum_{t=1}^T r(s_t,a_t)\\ &=\sum_\tau q_\theta(\tau)\nabla_\theta \log q_\theta(\tau)\sum_{t=1}^T r(s_t,a_t)\\ &=\mathbb{E}_{\tau\sim q_\theta(\tau)}\left[\nabla_\theta \log q_\theta(\tau)\sum_{t=1}^Tr(s_t,a_t)\right] \end{aligned}

自从q_\theta(\tau)=q(s_1)\prod_{t=1}^T q(s_{t+1}|s_t|a_t) q_\theta(a_t|s_t)\nabla_\theta \log q_\theta(\tau)=\sum_{t=1}^T \nabla_\theta \log q_\theta(a_t|s_t)

然后是\nabla_\theta J(\theta)=\mathbb{E}_{\tau\sim q_\theta(\tau)}\left[\sum_{t=1}^T \nabla_\theta \log q_\theta(a_t|s_t) \sum_{t=1}^Tr(s_t,a_t)\right]

where,第二个求和来自

由于时间上的政策t'不能在时间上影响报酬当t (因果关系)时,\begin{aligned} \nabla_\theta J(\theta)&=\mathbb{E}_{\tau\sim q_\theta(\tau)}\left[\sum_{t=1}^T \nabla_\theta \log q_\theta(a_t|s_t) \sum_{t'=t}^Tr(s_t',a_t')\right]\\ &=\sum_{t=1}^T \mathbb{E}_{(s_t,a_t)\sim q(s_t,a_t)}\left[\nabla_\theta \log q_\theta(a_t|s_t) \sum_{t'=t}^Tr(s_t',a_t')\right] \end{aligned}

票数 0
EN
页面原文内容由Data Science提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://datascience.stackexchange.com/questions/64648

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档