临清网站制作公司,徐州网站建设费用,房屋设计网站有哪些,贵阳白云网站建设目录 值函数近似一个例子TD 算法的值函数近似形式Sarsa, Q-learning 的值函数近似形式Deep Q-learningexperience replay 策略梯度方法#xff08;Policy Gradient#xff09;Policy Gradient 的目标函数目标函数 1目标函数 2两种目标函数的同一性 Policy Gradient 目标函数的… 目录 值函数近似一个例子TD 算法的值函数近似形式Sarsa, Q-learning 的值函数近似形式Deep Q-learningexperience replay 策略梯度方法Policy GradientPolicy Gradient 的目标函数目标函数 1目标函数 2两种目标函数的同一性 Policy Gradient 目标函数的梯度Policy Gradient 目标函数梯度的统一形式discounted case 情形下的目标函数梯度undiscounted case 情形下的目标函数梯度 蒙特卡洛 policy gradient ( REINFORCE 算法) 系列笔记 【强化学习的数学原理】课程笔记–1基本概念贝尔曼公式 【强化学习的数学原理】课程笔记–2贝尔曼最优公式值迭代与策略迭代 【强化学习的数学原理】课程笔记–3蒙特卡洛方法 【强化学习的数学原理】课程笔记–4随机近似与随机梯度下降时序差分方法
值函数近似
回忆前面章节所介绍的各种强化学习算法在求解 state value 和 action value 时 v π [ v π ( s 1 ) , v π ( s 2 ) , ⋯ , v π ( s n ) ] v_{\pi} \left[ v_{\pi}(s_1), v_{\pi}(s_2), \cdots, v_{\pi}(s_n) \right] vπ[vπ(s1),vπ(s2),⋯,vπ(sn)] q π [ q π ( s 1 , a 1 ) q π ( s 1 , a 2 ) ⋯ q π ( s 1 , a m ) q π ( s 2 , a 1 ) q π ( s 2 , a 2 ) ⋯ q π ( s 2 , a m ) ⋮ ⋮ ⋱ ⋮ q π ( s n , a 1 ) q π ( s n , a 2 ) ⋯ q π ( s n , a m ) ] q_{\pi} \begin{bmatrix} q_{\pi}(s_1,a_1) q_{\pi}(s_1,a_2) \cdots q_{\pi}(s_1,a_m) \\ q_{\pi}(s_2,a_1) q_{\pi}(s_2,a_2) \cdots q_{\pi}(s_2,a_m) \\ \vdots \vdots \ddots \vdots\\ q_{\pi}(s_n,a_1) q_{\pi}(s_n,a_2) \cdots q_{\pi}(s_n,a_m) \end{bmatrix} qπ qπ(s1,a1)qπ(s2,a1)⋮qπ(sn,a1)qπ(s1,a2)qπ(s2,a2)⋮qπ(sn,a2)⋯⋯⋱⋯qπ(s1,am)qπ(s2,am)⋮qπ(sn,am)
都是对上述一维或者二维向量 后面统称 tabular里的值一个个求解的。这样在实际使用中有一个问题当 state space 以及 action space 非常大时需要求解以及储存的未知量都会非常大。为了缓解这样的情况因此提出了 值函数近似 的想法NOTE前面基于 tabular 的求解是精确求解而这里的值函数是 近似 求解相当于为了减少计算/存储量牺牲了一定的精度
一个例子
下面我们看一个例子首先看一下用前面精确求解时得到的准确结果
前面基于 tabular 的算法求到的结果即是 ( b ) (b) (b)。这里为了方便理解我们将 ( b ) (b) (b) 中的 tabular 画成了图像 ( c ) (c) (c)其中的底面对应的是 (state_index, action_index)。
那么值函数近似即想拟合 ( c ) (c) (c) 中的图像。这里的图像明显是个高阶的曲面且阶数约高拟合得越好因为高阶函数总可以拟合低阶的函数但一味追求高阶会使得计算复杂度上升相当于又回到了 tabular 的算法 事实上只要阶数够高值函数是可以完全拟合 tabular 算法的。所以下面我们进行几个实验将阶数从低往高逐渐提升来看值函数近似的效果
线性值函数近似可以写成 v ^ ( s , w ) ϕ T ( s ) w ϕ ( s ) , w ∈ R n × 1 \hat v(s,w) \phi^T(s) w\qquad \phi(s),w \in \mathbb{R}^{n \times 1} v^(s,w)ϕT(s)wϕ(s),w∈Rn×1 其中 ϕ T ( s ) \phi^T(s) ϕT(s) 是特征函数用于描述函数的形式例如是直线平面还是 n 阶曲面。 w w w 则是要求的参数 图中从左到右函数的阶分别为 1 阶2 阶3 阶 ϕ ( 1 ) ( s ) [ 1 , x , y ] ϕ ( 2 ) ( s ) [ 1 , x , y , x 2 , y 2 , x y ] ϕ ( 3 ) ( s ) [ 1 , x , y , x 2 , y 2 , x y , x 3 , y 3 , x 2 y , x y 2 ] \begin{aligned} \phi^{(1)}(s) [1, x, y]\\ \phi^{(2)}(s) [1, x, y, x^2, y^2, xy]\\ \phi^{(3)}(s) [1, x, y, x^2, y^2, xy, x^3, y^3, x^2y, xy^2] \end{aligned} ϕ(1)(s)ϕ(2)(s)ϕ(3)(s)[1,x,y][1,x,y,x2,y2,xy][1,x,y,x2,y2,xy,x3,y3,x2y,xy2]
可以看到阶数越高对图像 ( c ) (c) (c) 的拟合越好这意味着值函数近似求到的策略与最优策略越接近但同时需要求解的参数也更多了 d i m ( w ) dim(w) dim(w) 分别为 3610。
泛化性
同时由于值函数近似的建模方式在之前的 tabular-based 算法中我们需要对每个 state 都访问足够多次才能获得每个 state 较为准确的 state value但值函数的建模方式使得每个样本对于参数 w w w 的修改都能作用于其他的 state所以值函数近似相比 tabular-based 算法有更强的泛化性。
特征函数 ϕ ( s ) \phi(s) ϕ(s) 的选择
从上面的例子也不难发现其实特征函数 ϕ ( s ) \phi(s) ϕ(s) 的选择是非常 nontrival 的如果特征函数的选择与实际的情况差别比较大是很难学到好的 policy 的这也是实际中当问题比较复杂且先验知识比较小时往往会选择神经网络来作为特征函数因为神经网络具有可以拟合任何函数的效力see为什么神经网络可以拟合任何函数。当然这种情况下 v ^ ( s , w ) \hat v(s,w) v^(s,w) 就不再能写成 v ^ ( s , w ) ϕ T ( s ) w \hat v(s,w) \phi^T(s)w v^(s,w)ϕT(s)w 这样线性的形式了。 TD 算法的值函数近似形式
首先给出 目标函数 J ( w ) E [ ( v π ( S ) − v ^ ( S , w ) ) 2 ] J(w) E[(v_{\pi}(S) - \hat v(S,w))^2] J(w)E[(vπ(S)−v^(S,w))2] 由梯度下降 w k 1 w k − α k ∇ w J ( w k ) w_{k1} w_k - \alpha_k \nabla_w J(w_k) wk1wk−αk∇wJ(wk) w k 1 w k − α k ∇ w J ( w k ) w k − α k E [ ∇ w ( v π ( S ) − v ^ ( S , w k ) ) 2 ] w k 2 α k E [ ( v π ( S ) − v ^ ( S , w k ) ) ∇ w v ^ ( S , w k ) ] \begin{aligned} w_{k1} w_k - \alpha_k \nabla_w J(w_k)\\ w_k - \alpha_k E[\nabla_w(v_{\pi}(S) - \hat v(S,w_k))^2]\\ w_k 2\alpha_k E[(v_{\pi}(S) - \hat v(S,w_k))\nabla_w \hat v(S,w_k)]\\ \end{aligned} wk1wk−αk∇wJ(wk)wk−αkE[∇w(vπ(S)−v^(S,wk))2]wk2αkE[(vπ(S)−v^(S,wk))∇wv^(S,wk)] 用 SGD 算法则有 w t 1 w t α t ( v π ( s t ) − v ^ ( s t , w t ) ) ∇ w v ^ ( s t , w t ) w_{t1} w_t \alpha_t (v_{\pi}(s_t) - \hat v(s_t,w_t))\nabla_w \hat v(s_t,w_t) wt1wtαt(vπ(st)−v^(st,wt))∇wv^(st,wt) 其中 α t \alpha_t αt 等于上面的 2 α k 2\alpha_k 2αk。但这里有一个问题 v π v_{\pi} vπ 就是我们要求的所以它实际是未知的跟深度学习一样这里用样本来替代 golden truth v π ( s t ) v_{\pi}(s_t) vπ(st)。与上一章类似这里根据样本来更新参数也分成两种办法 蒙特卡洛方法先采一条 episode ( s 0 , r 1 , s 1 , r 2 , . . . ) (s_0, r_1, s_1, r_2,...) (s0,r1,s1,r2,...)记 g t g_t gt 为其中从 s t s_t st 出发的 trajectory 的 disounted return那么 w t 1 w t α t ( g t − v ^ ( s t , w t ) ) ∇ w v ^ ( s t , w t ) w_{t1} w_t \alpha_t ( g_t - \hat v(s_t,w_t))\nabla_w \hat v(s_t,w_t) wt1wtαt(gt−v^(st,wt))∇wv^(st,wt) TD 方法每拿到一个样本 ( s t , r t , s t 1 , r t 1 ) (s_t, r_t, s_{t1}, r_{t1}) (st,rt,st1,rt1)TD target 为 v ˉ t r t 1 γ v t ( s t 1 ) \bar{v}_t r_{t1} \gamma v_t(s_{t1}) vˉtrt1γvt(st1)这里就用 v ˉ t \bar{v}_t vˉt 来近似 v π ( s t ) v_{\pi}(s_t) vπ(st) 迭代式变成 w t 1 w t α t ( r t 1 γ v ^ t ( s t 1 ) − v ^ ( s t , w k ) ) ∇ w v ^ ( s t , w k ) w_{t1} w_t \alpha_t ( r_{t1} \gamma \hat v_t(s_{t1}) - \hat v(s_t,w_k))\nabla_w \hat v(s_t,w_k) wt1wtαt(rt1γv^t(st1)−v^(st,wk))∇wv^(st,wk) NOTETD 方法中用样本 r t 1 γ v ^ t ( s t 1 ) r_{t1} \gamma \hat v_t(s_{t1}) rt1γv^t(st1) 代表 golden truth 会导致一个问题即模拟的这个 golden truth 永远也不会逃出特征函数 ϕ ( s ) \phi(s) ϕ(s) 的特征空间因为样本就是当前 Policy 生成的而当前 Policy 的 state value 是用我们假设的特征空间中的向量表示的由于特征空间是根据先验给定的不一定与实际情况相符 所以使用上述 TD 方法实际求解的是 J ( w ) E ( ( v ^ ( w ) − M v π ( w ) ) 2 ) J(w) E((\hat v(w) - Mv_{\pi}(w))^2) J(w)E((v^(w)−Mvπ(w))2) 其中 M M M 是将所有向量投影至特征函数展开的特征空间的投影矩阵 这样 当特征空间无法表达真实的 v π v_{\pi} vπ 时会出现在样本上训练误差不断减少甚至到0但与 optimal state value 对比计算的 state value error 却在下降到一定程度后就无法再继续下降了。eg: Sarsa, Q-learning 的值函数近似形式
Sarsa 与上述 TD 算法的区别在于它是直接求解 action value 的回忆 Sarsa 的 tabular 形式 q t 1 ( s t , a t ) q t ( s t , a t ) − α t ( s t , a t ) [ q t ( s t , a t ) − ( r t 1 γ q t ( s t 1 , a t 1 ) ) ] q_{t1}(s_t,a_t) q_t(s_t,a_t) - \alpha_t(s_t,a_t) [q_t(s_t,a_t) - (r_{t1} \gamma q_t(s_{t1},a_{t1}))] qt1(st,at)qt(st,at)−αt(st,at)[qt(st,at)−(rt1γqt(st1,at1))] 其值函数形式为 w t 1 w t α t [ r t 1 γ q ^ ( s t 1 , a t 1 , w t ) − q ^ ( s t , a t , w t ) ] ∇ w q ^ ( s t , a t , w t ) w_{t1} w_t \alpha_t [r_{t1} \gamma \hat q(s_{t1},a_{t1},w_t) - \hat q(s_t,a_t,w_t)] \nabla_w \hat q(s_t,a_t,w_t) wt1wtαt[rt1γq^(st1,at1,wt)−q^(st,at,wt)]∇wq^(st,at,wt) 算法
############################################################################################################# 同理Q-learning 的 tabular 形式 q t 1 ( s t , a t ) q t ( s t , a t ) − α t ( s t , a t ) [ q t ( s t , a t ) − ( r t 1 γ max a q t ( s t 1 , a ) ) ] q_{t1}(s_t,a_t) q_t(s_t,a_t) - \alpha_t(s_t,a_t) [q_t(s_t,a_t) - (r_{t1} \gamma \max_{a} q_t(s_{t1},a))] qt1(st,at)qt(st,at)−αt(st,at)[qt(st,at)−(rt1γamaxqt(st1,a))] 其值函数形式为 w t 1 w t α t [ r t 1 γ max a q ^ ( s t 1 , a t 1 , w t ) − q ^ ( s t , a t , w t ) ] ∇ w q ^ ( s t , a t , w t ) w_{t1} w_t \alpha_t [r_{t1} \gamma \max_{a} \hat q(s_{t1},a_{t1},w_t) - \hat q(s_t,a_t,w_t)] \nabla_w \hat q(s_t,a_t,w_t) wt1wtαt[rt1γamaxq^(st1,at1,wt)−q^(st,at,wt)]∇wq^(st,at,wt) 算法 Deep Q-learning
Deep Q-learning 是将深度学习应用于上述 Q-learning 值函数形式的算法其中有一些非常经典的实践技巧值得一看。跟 Q-learning 一样其目标函数 J ( w ) E [ ( R γ max a q ^ ( S ′ , a , w ) − q ^ ( S , A , w ) ) 2 ] J(w) E[(R \gamma \max_a \hat q(S,a,w) - \hat q(S,A,w))^2] J(w)E[(Rγamaxq^(S′,a,w)−q^(S,A,w))2] 实际也相当于在求贝尔曼最优公式因为上式为0时也就等价于 q ( s , a ) E [ R t 1 γ max a q ( S t 1 , a ) ∣ S t s , A t a ] q(s,a) E[R_{t1} \gamma \max_{a} q(S_{t1},a) |S_t s, A_ta ] q(s,a)E[Rt1γamaxq(St1,a)∣Sts,Ata]
但在对 J ( w ) J(w) J(w) 求导时有一个难点 max a q ^ ( S ′ , a , w ) \max_a \hat q(S,a,w) maxaq^(S′,a,w) 首先不一定是可微的其次要求这一项的复杂度也非常高要求对所有可能的 action 都进行求解最后这一项的梯度往往非常不稳定不利于模型的收敛。因此 DQN 引入了 target network 的概念在一定时期内将 target nerwork 的参数 w T w_T wT 固定住认为是常值而只对当前步的 q ^ ( S , A , w ) \hat q(S,A,w) q^(S,A,w) 求导。然后每隔一段时间再将 main network 中更新到的 w w w 赋给 w T w_T wT 。即 ∇ w J ( w ) − E [ ( R γ max a q ^ ( S ′ , a , w ) − q ^ ( S , A , w ) ) ∇ w q ^ ( S , A , w ) ] \nabla_w J(w) - E[(R \gamma \max_a \hat q(S,a,w) - \hat q(S,A,w)) \nabla_w \hat q(S,A,w)] ∇wJ(w)−E[(Rγamaxq^(S′,a,w)−q^(S,A,w))∇wq^(S,A,w)]
NOTE实际使用中由于深度学习一般是 mini-batch 进行训练的因此上式的更新实际也是 mini-batch而不是单个样本。
experience replay
DQN 中还用到了一种叫 experience replay 的采样技术即对于样本 ( s t , a t , r t 1 , s t 1 ) (s_t, a_t, r_{t1}, s_{t1}) (st,at,rt1,st1)在使用时无需再像之前算法当中那样根据其在 trajectory 中的顺序来取。而是可以将样本都打散之后在样本集中随机采样一批来进行迭代更新。这样做的好处是
打破时间相关性强化学习环境中的连续经验通常是高度相关的这会导致模型在训练时的高方差和低效率。通过随机采样经验回放打破了这种时间相关性使得训练样本更加独立同分布从而提高了模型的训练稳定性和效率。提高数据利用率传统的 Q-learning 在每次更新时仅使用最新的经验可能会浪费之前收集到的宝贵经验。而经验回放可以重用过去的经验从而提高数据的利用率使得训练更加高效。由于 DQN 同时还叠加了值函数近似对样本的高效使用因此达到同样的效果其需要的样本量会比普通 Q-learning 小很多eg1000 vs 100,000
DQN 算法 策略梯度方法Policy Gradient
Policy gradient 的想法与 value approximation 类似只是针对的对象变成了 Policy将原来 tabular-based 的策略 π [ π ( a 1 ∣ s 1 ) π ( a 2 ∣ s 1 ) ⋯ π ( a m ∣ s 1 ) π ( a 1 ∣ s 2 ) π ( a 2 ∣ s 2 ) ⋯ π ( a m ∣ s 2 ) ⋮ ⋮ ⋱ ⋮ π ( a 1 ∣ s n ) π ( a 2 ∣ s n ) ⋯ π ( a m ∣ s n ) ] \pi \begin{bmatrix} \pi(a_1|s_1) \pi(a_2|s_1) \cdots \pi(a_m|s_1) \\ \pi(a_1|s_2) \pi(a_2|s_2) \cdots \pi(a_m|s_2) \\ \vdots \vdots \ddots \vdots\\ \pi(a_1|s_n) \pi(a_2|s_n) \cdots \pi(a_m|s_n) \end{bmatrix} π π(a1∣s1)π(a1∣s2)⋮π(a1∣sn)π(a2∣s1)π(a2∣s2)⋮π(a2∣sn)⋯⋯⋱⋯π(am∣s1)π(am∣s2)⋮π(am∣sn)
改成了基于函数的 π ( a ∣ , s , θ ) e h ( s , a , θ ) ∑ a ′ e h ( s , a ′ , θ ) \pi(a|,s,\theta) \frac{e^{h(s,a,\theta)}}{\sum_{a} e^{h(s,a,\theta)}} π(a∣,s,θ)∑a′eh(s,a′,θ)eh(s,a,θ) 因为 策略函数通常也是直接用深度学习来表征了因此在最后一层使用 softmax即为给定 state 时每个 action 的概率softmax 经常用于表征概率分布因为既能保证概率和为1又能保证所有的概率值为正。图例 Policy Gradient 的目标函数
最优策略的目标函数 J ( θ ) J(\theta) J(θ)依然需要借助最优化 state value / action value 来表达但不同于之前 valued-based 的算法这里需要一个统一的标量来表征可以使得所有的 state value / action value 都最大。
目标函数 1
优化 state value一个自然的想法是 average state value v ˉ π ∑ s d ( s ) v π ( s ) \bar v_{\pi} \sum_{s} d(s)v_{\pi}(s) vˉπs∑d(s)vπ(s) 这里 d ( s ) d(s) d(s) 既 state 的分布可以分为两种情况 d ( s ) d(s) d(s) 与 π \pi π 无关例如出现在所有的 state 的概率都相同即 d ( s i ) 1 ∣ S ∣ d(s_i) \frac{1}{|S|} d(si)∣S∣1 d ( s ) d(s) d(s) 与 π \pi π 相关这种情况常用的是 马尔可夫过程的平稳分布 第一章 中提到过强化学习一般都假设满足马尔可夫条件 P ( s t 1 ∣ a t 1 , s t , . . . , a 1 , s 0 ) P ( s t 1 ∣ a t 1 , s t ) P ( r t 1 ∣ a t 1 , s t , . . . , a 1 , s 0 ) P ( r t 1 ∣ a t 1 , s t ) \begin{aligned} P(s_{t1}|a_{t1},s_t, ..., a_1,s_0) P(s_{t1}|a_{t1},s_t) \\ P(r_{t1}|a_{t1},s_t, ..., a_1,s_0) P(r_{t1}|a_{t1},s_t) \end{aligned} P(st1∣at1,st,...,a1,s0)P(rt1∣at1,st,...,a1,s0)P(st1∣at1,st)P(rt1∣at1,st) 而对于一个有穷状态空间的马尔可夫链记 d k d_k dk 为走了 k k k 步后state 的概率分布。如果满足该马尔可夫链满足 不可约性那么它存在唯一的平稳分布 d d d满足 lim k → ∞ d k d π \lim_{k \rightarrow \infin} d_k d_{\pi} k→∞limdkdπ即 系统在长时间运行后各状态之间的转移会趋于稳定即各状态之间会以固定的概率分布进行转移。 由上式可得 d π T P π d π T d^T_{\pi} P_{\pi} d^T_{\pi} dπTPπdπT 其中 P π P_{\pi} Pπ 是马尔可夫链的转移矩阵 [ P π ] i , j [P_{\pi}]_{i,j} [Pπ]i,j 表示从 agent 从 s i s_i si 移动到 s j s_j sj 的概率。 不可约性即对所有的 state s j s_j sj 和 s j s_j sj 总存在一个有限的 k使得 k 步后可以从 s i s_i si 走到 s j s_j sj即 [ P π k ] i , j 0 [P_{\pi}^k]_{i,j} 0 [Pπk]i,j0 \quad 不可约性要求 policy 是探索性的因为贪婪策略无法保证从一个 state 出发可以在有限步内到达任意另一个 state并且要避免出现循环的情况否则上述 k → ∞ k \rightarrow \infin k→∞ 这里 v ˉ π ∑ s d ( s ) v π ( s ) \bar v_{\pi} \sum_{s} d(s)v_{\pi}(s) vˉπ∑sd(s)vπ(s) 中 d ( s ) d(s) d(s) 采用平稳分布的原因也是在进入平稳运行后 d ( s i ) d(s_i) d(si) 更大的 state表明有更大的概率走到这个位置那么在计算 v ˉ π \bar v_{\pi} vˉπ 时自然应该多给这个 state 一些权重。
等价表达式 除了上述表示 v ˉ π \bar v_{\pi} vˉπ 还有一些等价的表示方法 v ˉ π ∑ s d ( s ) v π ( s ) ∑ s d ( s ) E [ R 1 γ R 2 γ 2 R 3 . . . ∣ S 0 s ] ∑ s d ( s ) E [ ∑ t 0 ∞ γ t R t 1 ∣ S 0 s ] E [ ∑ t 0 ∞ γ t R t 1 ] \begin{aligned} \bar v_{\pi} \sum_{s} d(s)v_{\pi}(s)\\ \sum_{s} d(s) E[R_{1} \gamma R_{2} \gamma^2 R_{3} ... | S_0 s]\\ \sum_{s} d(s) E[ \sum_{t0}^{\infin} \gamma^t R_{t1} | S_0 s]\\ E[ \sum_{t0}^{\infin} \gamma^t R_{t1}] \end{aligned} vˉπs∑d(s)vπ(s)s∑d(s)E[R1γR2γ2R3...∣S0s]s∑d(s)E[t0∑∞γtRt1∣S0s]E[t0∑∞γtRt1] v ˉ π d T v π \bar v_{\pi} d^T v_{\pi} vˉπdTvπ 其中 v π [ ⋯ , v π ( s ) , ⋯ ] T ∈ R ∣ S ∣ d [ ⋯ , d ( s ) , ⋯ ] T ∈ R ∣ S ∣ \begin{aligned} v_{\pi} [\cdots, v_{\pi}(s), \cdots]^T \in \mathbb{R}^{|S|}\\ d [\cdots, d(s), \cdots]^T \in \mathbb{R}^{|S|} \end{aligned} vπd[⋯,vπ(s),⋯]T∈R∣S∣[⋯,d(s),⋯]T∈R∣S∣
目标函数 2
另一个目标函数是 average one-step reward 为基础 r ˉ π ∑ s d ( s ) r π ( s ) \bar r_{\pi} \sum_{s} d(s)r_{\pi}(s) rˉπs∑d(s)rπ(s) 其中 d ( s ) d(s) d(s) 与上面相同而 r π ( s ) ∑ a π ( a ∣ s , θ ) r ( s , a ) E A ∼ π ( s , θ ) [ r ( s , A ) ∣ s ] r_{\pi}(s) \sum_a \pi(a|s,\theta) r(s,a) E_{A \sim \pi(s,\theta)}[r(s,A)|s] rπ(s)a∑π(a∣s,θ)r(s,a)EA∼π(s,θ)[r(s,A)∣s]
即 state s 所有可能的 action 的期望 reward
等价形式 r ˉ π \bar r_{\pi} rˉπ 有一些更常见的等价形式 r ˉ π lim n → ∞ 1 n E [ ∑ t 0 n − 1 R t 1 ] \bar r_{\pi} \lim_{n \rightarrow \infin} \frac{1}{n} E[\sum_{t0}^{n-1} R_{t1}] rˉπn→∞limn1E[t0∑n−1Rt1] Proof: 由 Cesaro mean 定理 Cesaro mean 定理 如果 { a k } n 1 ∞ \{a_k\}_{n1}^{\infin} {ak}n1∞ 收敛且满足 lim k → ∞ a k a ∗ \lim_{k \rightarrow \infin} a_k a^* k→∞limaka∗ 那么 { 1 n ∑ k 1 n a k } n 1 ∞ \{\frac{1}{n} \sum_{k1}^n a_k\}_{n1}^{\infin} {n1∑k1nak}n1∞ 也收敛且 lim n → ∞ 1 n ∑ k 1 n a k a ∗ \lim_{n \rightarrow \infin} \frac{1}{n} \sum_{k1}^n a_k a^* n→∞limn1k1∑naka∗ 因此 lim n → ∞ 1 n E [ ∑ t 0 n − 1 R t 1 ∣ S 0 s 0 ] lim t → ∞ E [ R t 1 ∣ S 0 s 0 ] lim t → ∞ ∑ s E [ R t 1 ∣ S t s ] P ( t ) ( s ∣ s 0 ) ( P ( t ) ( s ∣ s 0 ) 指从 s 0 出发 t 步后走到 s 的概率 ) ∑ s r π ( s ) d ( s ) ( 由于 lim t → ∞ P ( t ) ( s ∣ s 0 ) d ( s ) ) r ˉ π \begin{aligned} \lim_{n \rightarrow \infin} \frac{1}{n} E[\sum_{t0}^{n-1} R_{t1}|S_0s_0] \lim_{t \rightarrow \infin} E[R_{t1}|S_0s_0]\\ \lim_{t \rightarrow \infin} \sum_{s}E[R_{t1}|S_ts] P^{(t)}(s|s_0) \quad (P^{(t)}(s|s_0) 指从 s_0 出发t步后走到 s 的概率)\\ \sum_{s} r_{\pi}(s) d(s) \quad (由于 \lim_{t \rightarrow \infin} P^{(t)}(s|s_0) d(s))\\ \bar r_{\pi} \end{aligned} n→∞limn1E[t0∑n−1Rt1∣S0s0]t→∞limE[Rt1∣S0s0]t→∞lims∑E[Rt1∣Sts]P(t)(s∣s0)(P(t)(s∣s0)指从s0出发t步后走到s的概率)s∑rπ(s)d(s)(由于t→∞limP(t)(s∣s0)d(s))rˉπ r ˉ π d T r π \bar r_{\pi} d^T r_{\pi} rˉπdTrπ 其中 r π [ ⋯ , r π ( s ) , ⋯ ] T ∈ R ∣ S ∣ d [ ⋯ , d ( s ) , ⋯ ] T ∈ R ∣ S ∣ \begin{aligned} r_{\pi} [\cdots, r_{\pi}(s), \cdots]^T \in \mathbb{R}^{|S|}\\ d [\cdots, d(s), \cdots]^T \in \mathbb{R}^{|S|} \end{aligned} rπd[⋯,rπ(s),⋯]T∈R∣S∣[⋯,d(s),⋯]T∈R∣S∣
综上
两种目标函数的同一性
可证 r ˉ π ( 1 − γ ) v ˉ π \bar r_{\pi} (1-\gamma)\bar v_{\pi} rˉπ(1−γ)vˉπ
Proof由贝尔曼公式 v π r π γ P π v π v_{\pi} r_{\pi} \gamma P_{\pi} v_{\pi} vπrπγPπvπ 因此 d π T v π d π T r π γ d π T P π v π ⇒ v ˉ π r ˉ π γ d π T v π ( 由平稳分布的性质 d π T P π d π T ) v ˉ π r ˉ π γ v ˉ π \begin{aligned} d_{\pi}^T v_{\pi} d_{\pi}^T r_{\pi} \gamma d_{\pi}^T P_{\pi} v_{\pi}\\ \Rightarrow \qquad \bar v_{\pi} \bar r_{\pi} \gamma d_{\pi}^T v_{\pi} \qquad (由平稳分布的性质d^T_{\pi} P_{\pi} d^T_{\pi})\\ \bar v_{\pi} \bar r_{\pi} \gamma \bar v_{\pi} \end{aligned} dπTvπ⇒vˉπvˉπdπTrπγdπTPπvπrˉπγdπTvπ(由平稳分布的性质dπTPπdπT)rˉπγvˉπ
因此使得 v ˉ π \bar v_{\pi} vˉπ 最大的 θ \theta θ 同样也会使得 r ˉ π \bar r_{\pi} rˉπ 最大在最优化问题中这两个统计量等价。 Policy Gradient 目标函数的梯度
首先给出各种目标函数梯度的统一形式后面再依次证明梯度确实符合这个形式
Policy Gradient 目标函数梯度的统一形式 ∇ θ J ( θ ) ∑ s η ( s ) ∑ a ∇ θ π ( a ∣ s , θ ) q π ( s , a ) \nabla_{\theta} J(\theta) \sum_s \eta(s) \sum_a \nabla_{\theta} \pi(a|s,\theta) q_{\pi}(s,a) ∇θJ(θ)s∑η(s)a∑∇θπ(a∣s,θ)qπ(s,a) 上式的一个等价形式 ∇ θ J ( θ ) E S ∼ η , A ∼ π ( S , θ ) [ ∇ θ ln π ( A ∣ S , θ ) q π ( S , A ) ] \nabla_{\theta} J(\theta) E _{S \sim \eta, A \sim \pi(S,\theta)} [\nabla_{\theta} \ln \pi(A|S,\theta) q_{\pi}(S,A)] ∇θJ(θ)ES∼η,A∼π(S,θ)[∇θlnπ(A∣S,θ)qπ(S,A)] Proof ∇ θ J ( θ ) ∑ s η ( s ) ∑ a ∇ θ π ( a ∣ s , θ ) q π ( s , a ) E S ∼ η [ ∑ a ∇ θ π ( a ∣ S , θ ) q π ( S , a ) ] E S ∼ η [ ∑ a π ( a ∣ S , θ ) ∇ θ ln π ( a ∣ S , θ ) q π ( S , a ) ] ( 因为 ∇ θ ln π ( a ∣ S , θ ) ∇ θ π ( a ∣ S , θ ) π ( a ∣ S , θ ) ) E S ∼ η , A ∼ π ( S , θ ) [ ∇ θ ln π ( A ∣ S , θ ) q π ( S , A ) ] \begin{aligned} \nabla_{\theta} J(\theta) \sum_s \eta(s) \sum_a \nabla_{\theta} \pi(a|s,\theta) q_{\pi}(s,a)\\ E _{S \sim \eta} [\sum_a \nabla_{\theta} \pi(a|S,\theta) q_{\pi}(S,a)]\\ E _{S \sim \eta}[\sum_a \pi(a|S,\theta) \nabla_{\theta} \ln \pi(a|S,\theta) q_{\pi}(S,a)] \qquad (因为 \nabla_{\theta} \ln \pi(a|S,\theta) \frac{\nabla_{\theta} \pi(a|S,\theta)}{\pi(a|S,\theta)})\\ E _{S \sim \eta, A \sim \pi(S,\theta)} [\nabla_{\theta} \ln \pi(A|S,\theta) q_{\pi}(S,A)] \end{aligned} ∇θJ(θ)s∑η(s)a∑∇θπ(a∣s,θ)qπ(s,a)ES∼η[a∑∇θπ(a∣S,θ)qπ(S,a)]ES∼η[a∑π(a∣S,θ)∇θlnπ(a∣S,θ)qπ(S,a)](因为∇θlnπ(a∣S,θ)π(a∣S,θ)∇θπ(a∣S,θ))ES∼η,A∼π(S,θ)[∇θlnπ(A∣S,θ)qπ(S,A)]
discounted case 情形下的目标函数梯度
当 γ ∈ ( 0 , 1 ) \gamma \in (0,1) γ∈(0,1) 时由于 r ˉ π ( 1 − γ ) v ˉ π \bar r_{\pi} (1-\gamma)\bar v_{\pi} rˉπ(1−γ)vˉπ因此可以只求 ∇ θ v ˉ π \nabla_{\theta} \bar v_{\pi} ∇θvˉπ 这里首先给出 v π v_{\pi} vπ 的梯度 ∇ θ v π ( s ) ∑ s ′ ∑ k 0 ∞ γ k [ P π k ] s s ′ ∑ a ∇ θ π ( a ∣ s ′ , θ ) q π ( s ′ , a ) \nabla_{\theta} v_{\pi}(s) \sum_{s} \sum_{k0}^{\infin} \gamma^k [P_{\pi}^k]_{ss} \sum_a \nabla_{\theta} \pi(a|s,\theta) q_{\pi}(s,a) ∇θvπ(s)s′∑k0∑∞γk[Pπk]ss′a∑∇θπ(a∣s′,θ)qπ(s′,a) Proof ∇ θ v π ( s ) ∇ θ [ ∑ a π ( a ∣ s , θ ) q π ( s , a ) ] ∑ a [ ∇ θ π ( a ∣ s , θ ) q π ( s , a ) π ( a ∣ s , θ ) ∇ θ q π ( s , a ) ] \begin{aligned} \nabla_{\theta} v_{\pi}(s) \nabla_{\theta}[\sum_a \pi(a|s,\theta) q_{\pi}(s,a)]\\ \sum_a [\nabla_{\theta}\pi(a|s,\theta) q_{\pi}(s,a) \pi(a|s,\theta) \nabla_{\theta}q_{\pi}(s,a)]\\ \end{aligned} ∇θvπ(s)∇θ[a∑π(a∣s,θ)qπ(s,a)]a∑[∇θπ(a∣s,θ)qπ(s,a)π(a∣s,θ)∇θqπ(s,a)] 由于 ∇ θ q π ( s , a ) ∇ θ [ ∑ r P ( r ∣ s , a ) r γ ∑ s ′ P ( s ′ ∣ s , a ) v π ( s ′ ) ] 0 γ ∑ s ′ P ( s ′ ∣ s , a ) ∇ θ v π ( s ′ ) \begin{aligned} \nabla_{\theta} q_{\pi}(s,a) \nabla_{\theta} [\sum_r P(r|s,a)r \gamma \sum_{s}P(s|s,a)v_{\pi}(s)]\\ 0 \gamma \sum_{s}P(s|s,a) \nabla_{\theta}v_{\pi}(s) \end{aligned} ∇θqπ(s,a)∇θ[r∑P(r∣s,a)rγs′∑P(s′∣s,a)vπ(s′)]0γs′∑P(s′∣s,a)∇θvπ(s′) 因此 ∇ θ v π ( s ) ∑ a [ ∇ θ π ( a ∣ s , θ ) q π ( s , a ) π ( a ∣ s , θ ) γ ∑ s ′ P ( s ′ ∣ s , a ) ∇ θ v π ( s ′ ) ] ∑ a ∇ θ π ( a ∣ s , θ ) q π ( s , a ) γ ∑ s ′ P ( s ′ ∣ s ) ∇ θ v π ( s ′ ) ∑ a ∇ θ π ( a ∣ s , θ ) q π ( s , a ) γ ∑ s ′ [ P π ] s s ′ ∇ θ v π ( s ′ ) u ( s ) γ ∑ s ′ ( P π ⊗ I m ) ∇ θ v π ( s ′ ) ( 记 u ( s ) ∑ a ∇ θ π ( a ∣ s , θ ) q π ( s , a ) ) \begin{aligned} \nabla_{\theta} v_{\pi}(s) \sum_a [\nabla_{\theta}\pi(a|s,\theta) q_{\pi}(s,a) \pi(a|s,\theta) \gamma \sum_{s}P(s|s,a) \nabla_{\theta}v_{\pi}(s)]\\ \sum_a \nabla_{\theta}\pi(a|s,\theta) q_{\pi}(s,a) \gamma \sum_{s}P(s|s) \nabla_{\theta}v_{\pi}(s)\\ \sum_a \nabla_{\theta}\pi(a|s,\theta) q_{\pi}(s,a) \gamma \sum_{s} [P_{\pi}]_{ss} \nabla_{\theta}v_{\pi}(s)\\ u(s) \gamma \sum_{s} (P_{\pi} \otimes I_m) \nabla_{\theta}v_{\pi}(s) \qquad (记 u(s) \sum_a \nabla_{\theta}\pi(a|s,\theta) q_{\pi}(s,a)) \end{aligned} ∇θvπ(s)a∑[∇θπ(a∣s,θ)qπ(s,a)π(a∣s,θ)γs′∑P(s′∣s,a)∇θvπ(s′)]a∑∇θπ(a∣s,θ)qπ(s,a)γs′∑P(s′∣s)∇θvπ(s′)a∑∇θπ(a∣s,θ)qπ(s,a)γs′∑[Pπ]ss′∇θvπ(s′)u(s)γs′∑(Pπ⊗Im)∇θvπ(s′)(记u(s)a∑∇θπ(a∣s,θ)qπ(s,a))
上式可以求解 ∇ θ v π ( s ) ∑ s ′ ( I n m − γ P π ⊗ I m ) − 1 u ( s ′ ) ∑ s ′ ( I n ⊗ I m − γ P π ⊗ I m ) − 1 u ( s ′ ) ∑ s ′ [ ( I n − γ P π ) − 1 ⊗ I m ] u ( s ′ ) ∑ s ′ [ ( I n − γ P π ) − 1 ] s s ′ u ( s ′ ) ∑ s ′ [ ( I n − γ P π ) − 1 ] s s ′ ∑ a ∇ θ π ( a ∣ s ′ , θ ) q π ( s ′ , a ) ∑ s ′ [ I γ P π γ 2 P π 2 ⋯ ] s s ′ ∑ a ∇ θ π ( a ∣ s ′ , θ ) q π ( s ′ , a ) ∑ s ′ ∑ k 0 ∞ γ k [ P π k ] s s ′ ∑ a ∇ θ π ( a ∣ s ′ , θ ) q π ( s ′ , a ) \begin{aligned} \nabla_{\theta} v_{\pi}(s) \sum_{s}(I_{nm} - \gamma P_{\pi} \otimes I_m)^{-1} u(s)\\ \sum_{s}(I_n \otimes I_m - \gamma P_{\pi} \otimes I_m)^{-1} u(s)\\ \sum_{s}[(I_n - \gamma P_{\pi})^{-1} \otimes I_m ] u(s)\\ \sum_{s}[(I_n - \gamma P_{\pi})^{-1}]_{ss} u(s)\\ \sum_{s}[(I_n - \gamma P_{\pi})^{-1}]_{ss} \sum_a \nabla_{\theta}\pi(a|s,\theta) q_{\pi}(s,a)\\ \sum_{s} [I \gamma P_{\pi} \gamma^2 P_{\pi}^2 \cdots]_{ss} \sum_a \nabla_{\theta}\pi(a|s,\theta) q_{\pi}(s,a)\\ \sum_{s} \sum_{k0}^{\infin} \gamma^k [P_{\pi}^k]_{ss} \sum_a \nabla_{\theta} \pi(a|s,\theta) q_{\pi}(s,a) \end{aligned} ∇θvπ(s)s′∑(Inm−γPπ⊗Im)−1u(s′)s′∑(In⊗Im−γPπ⊗Im)−1u(s′)s′∑[(In−γPπ)−1⊗Im]u(s′)s′∑[(In−γPπ)−1]ss′u(s′)s′∑[(In−γPπ)−1]ss′a∑∇θπ(a∣s′,θ)qπ(s′,a)s′∑[IγPπγ2Pπ2⋯]ss′a∑∇θπ(a∣s′,θ)qπ(s′,a)s′∑k0∑∞γk[Pπk]ss′a∑∇θπ(a∣s′,θ)qπ(s′,a) 下面求解 v ˉ π \bar v_{\pi} vˉπ 的梯度 先给结论 当 γ \gamma γ 靠近 1 时 ∇ θ r ˉ π ( s ) ( 1 − γ ) ∇ θ v ˉ π ( s ) ≈ ∑ s d π ( s ) ∑ a ∇ θ π ( a ∣ s , θ ) q π ( s , a ) E S ∼ d π , A ∼ π ( S , θ ) [ ∇ θ ln π ( A ∣ S , θ ) q π ( S , A ) ] \begin{aligned} \nabla_{\theta} \bar r_{\pi}(s) (1-\gamma)\nabla_{\theta} \bar v_{\pi}(s) \\ \approx \sum_s d_{\pi}(s) \sum_a \nabla_{\theta} \pi(a|s,\theta) q_{\pi}(s,a)\\ E_{S \sim d_{\pi}, A \sim \pi(S,\theta)} [\nabla_{\theta} \ln \pi(A|S,\theta) q_{\pi}(S,A)] \end{aligned} ∇θrˉπ(s)(1−γ)∇θvˉπ(s)≈s∑dπ(s)a∑∇θπ(a∣s,θ)qπ(s,a)ES∼dπ,A∼π(S,θ)[∇θlnπ(A∣S,θ)qπ(S,A)] Proof ∇ θ v ˉ π ( s ) ∇ θ [ ∑ s d π ( s ) v π ( s ) ] ∑ s ∇ θ d π ( s ) v π ( s ) ∑ s d π ( s ) ∇ θ v π ( s ) (1) \begin{aligned} \nabla_{\theta} \bar v_{\pi}(s) \nabla_{\theta} [\sum_s d_{\pi}(s)v_{\pi}(s)]\\ \sum_s \nabla_{\theta}d_{\pi}(s)v_{\pi}(s) \sum_s d_{\pi}(s) \nabla_{\theta} v_{\pi}(s) \end{aligned} \tag{1} ∇θvˉπ(s)∇θ[s∑dπ(s)vπ(s)]s∑∇θdπ(s)vπ(s)s∑dπ(s)∇θvπ(s)(1) 其中 ∑ s d π ( s ) ∇ θ v π ( s ) ( d π T ⊗ I m ) v π ( s ) ( d π T ⊗ I m ) [ ( I n − γ P π ) − 1 ⊗ I m ] u ( s ) [ d π T ( I n − γ P π ) − 1 ] ⊗ I m u ( s ) 1 1 − γ d π T ⊗ I m u ( s ) ( 因为 d π T ( I n − γ P π ) d π T − γ d π T ) 1 1 − γ ∑ s d π ( s ) ∑ a ∇ θ π ( a ∣ s , θ ) q π ( s , a ) \begin{aligned} \sum_s d_{\pi}(s) \nabla_{\theta} v_{\pi}(s) (d_{\pi}^T \otimes I_m) v_{\pi}(s) \\ (d_{\pi}^T \otimes I_m) [(I_n - \gamma P_{\pi})^{-1} \otimes I_m] u(s)\\ [d_{\pi}^T (I_n - \gamma P_{\pi})^{-1}] \otimes I_m u(s)\\ \frac{1}{1-\gamma} d_{\pi}^T \otimes I_m u(s) \qquad (因为 d_{\pi}^T(I_n - \gamma P_{\pi}) d_{\pi}^T - \gamma d_{\pi}^T) \\ \frac{1}{1-\gamma} \sum_s d_{\pi}(s) \sum_a \nabla_{\theta}\pi(a|s,\theta) q_{\pi}(s,a) \end{aligned} s∑dπ(s)∇θvπ(s)(dπT⊗Im)vπ(s)(dπT⊗Im)[(In−γPπ)−1⊗Im]u(s)[dπT(In−γPπ)−1]⊗Imu(s)1−γ1dπT⊗Imu(s)(因为dπT(In−γPπ)dπT−γdπT)1−γ1s∑dπ(s)a∑∇θπ(a∣s,θ)qπ(s,a)
当 γ → 1 \gamma \rightarrow 1 γ→1 时 ( 1 ) (1) (1) 式中第二项占主导第一项相对第二项可以忽略不计因此 ∇ θ r ˉ π ( s ) ( 1 − γ ) ∇ θ v ˉ π ( s ) ≈ ∑ s d π ( s ) ∑ a ∇ θ π ( a ∣ s , θ ) q π ( s , a ) \begin{aligned} \nabla_{\theta} \bar r_{\pi}(s) (1-\gamma)\nabla_{\theta} \bar v_{\pi}(s) \\ \approx \sum_s d_{\pi}(s) \sum_a \nabla_{\theta}\pi(a|s,\theta) q_{\pi}(s,a) \end{aligned} ∇θrˉπ(s)(1−γ)∇θvˉπ(s)≈s∑dπ(s)a∑∇θπ(a∣s,θ)qπ(s,a) undiscounted case 情形下的目标函数梯度
此时 γ 1 \gamma 1 γ1可以证明此时上述约等号变成等号即 ∇ θ r ˉ π ( s ) ( 1 − γ ) ∇ θ v ˉ π ( s ) ∑ s d π ( s ) ∑ a ∇ θ π ( a ∣ s , θ ) q π ( s , a ) E S ∼ d π , A ∼ π ( S , θ ) [ ∇ θ ln π ( A ∣ S , θ ) q π ( S , A ) ] \begin{aligned} \nabla_{\theta} \bar r_{\pi}(s) (1-\gamma)\nabla_{\theta} \bar v_{\pi}(s) \\ \sum_s d_{\pi}(s) \sum_a \nabla_{\theta} \pi(a|s,\theta) q_{\pi}(s,a)\\ E_{S \sim d_{\pi}, A \sim \pi(S,\theta)} [\nabla_{\theta} \ln \pi(A|S,\theta) q_{\pi}(S,A)] \end{aligned} ∇θrˉπ(s)(1−γ)∇θvˉπ(s)s∑dπ(s)a∑∇θπ(a∣s,θ)qπ(s,a)ES∼dπ,A∼π(S,θ)[∇θlnπ(A∣S,θ)qπ(S,A)] 详细推导见 强化学习的数学原理 蒙特卡洛 policy gradient ( REINFORCE 算法)
根据上述推导Policy gradient 的迭代式是 θ t 1 θ t α ∇ θ J ( θ t ) θ t α ∇ θ E [ ∇ θ ln π ( A ∣ S , θ t ) q π ( S , A ) ] \begin{aligned} \theta_{t1} \theta_t \alpha \nabla_{\theta} J(\theta_t)\\ \theta_t \alpha \nabla_{\theta} E[\nabla_{\theta} \ln \pi(A|S,\theta_t) q_{\pi}(S,A)] \end{aligned} θt1θtα∇θJ(θt)θtα∇θE[∇θlnπ(A∣S,θt)qπ(S,A)]
由于真实的 q π ( S , A ) q_{\pi}(S,A) qπ(S,A) 未知所以如果是t哦那个给蒙特卡洛方法用样本来模拟则称为 REINFORCE 算法: θ t 1 θ t α ∇ θ ln π ( a t ∣ s t , θ t ) q π ( s t , a t ) θ t α ∇ θ π ( a t ∣ s t , θ t ) π ( a t ∣ s t , θ t ) q π ( s t , a t ) θ t α q π ( s t , a t ) π ( a t ∣ s t , θ t ) ∇ θ π ( a t ∣ s t , θ t ) θ t α β t ∇ θ π ( a t ∣ s t , θ t ) ( 这里记 β t q π ( s t , a t ) π ( a t ∣ s t , θ t ) ) \begin{aligned} \theta_{t1} \theta_t \alpha \nabla_{\theta} \ln \pi(a_t|s_t,\theta_t) q_{\pi}(s_t,a_t)\\ \theta_t \alpha \frac{\nabla_{\theta}\pi(a_t|s_t,\theta_t)}{\pi(a_t|s_t,\theta_t)} q_{\pi}(s_t,a_t)\\ \theta_t \alpha \frac{q_{\pi}(s_t,a_t)}{\pi(a_t|s_t,\theta_t)} \nabla_{\theta}\pi(a_t|s_t,\theta_t)\\ \theta_t \alpha \beta_t \nabla_{\theta}\pi(a_t|s_t,\theta_t) \qquad (这里记 \beta_t \frac{q_{\pi}(s_t,a_t)}{\pi(a_t|s_t,\theta_t)}) \end{aligned} θt1θtα∇θlnπ(at∣st,θt)qπ(st,at)θtαπ(at∣st,θt)∇θπ(at∣st,θt)qπ(st,at)θtαπ(at∣st,θt)qπ(st,at)∇θπ(at∣st,θt)θtαβt∇θπ(at∣st,θt)(这里记βtπ(at∣st,θt)qπ(st,at)) 上述迭代式有两个结论
当 β t ≥ 0 \beta_t \geq 0 βt≥0 时上式是梯度上升因此 π ( a t ∣ s t , θ t 1 ) ≥ π ( a t ∣ s t , θ t ) \pi(a_t|s_t,\theta_{t1}) \geq \pi(a_t|s_t,\theta_t) π(at∣st,θt1)≥π(at∣st,θt)即新的 policy 会更倾向于选择 a t a_t at而当 β t 0 \beta_t 0 βt0 时上式是梯度下降 π ( a t ∣ s t , θ t 1 ) π ( a t ∣ s t , θ t ) \pi(a_t|s_t,\theta_{t1}) \pi(a_t|s_t,\theta_t) π(at∣st,θt1)π(at∣st,θt)因此新的 policy 会更不倾向于选择 a t a_t at再分析 β t \beta_t βt 的构成 β t q π ( s t , a t ) π ( a t ∣ s t , θ t ) \beta_t \frac{q_{\pi}(s_t,a_t)}{\pi(a_t|s_t,\theta_t)} βtπ(at∣st,θt)qπ(st,at) 首先 β t \beta_t βt 与 q π ( s t , a t ) q_{\pi}(s_t,a_t) qπ(st,at) 成正比因此 q π ( s t , a t ) q_{\pi}(s_t,a_t) qπ(st,at) 越大即样本中 a t a_t at 的 action value 越大 β t \beta_t βt 越大因此新的 policy 会更倾向于选择 a t a_t atmake sense。但另一方面 β t \beta_t βt 与 π ( a t ∣ s t , θ t ) \pi(a_t|s_t,\theta_t) π(at∣st,θt) 成反比即当前策略选择 a t a_t at 的概率越大那么更新后的策略反而会减少选择 a t a_t at 的概率这是由于 Policy gradient 方法都是 on-policy 的由于样本中的 a t a_t at 需依赖当前策略 π \pi π这样的话可以保持策略的 exploration。
如何采样 理论上来说应该是 S ∼ d π , A ∼ π ( A ∣ S , θ ) S \sim d_{\pi}, A\sim \pi(A|S,\theta) S∼dπ,A∼π(A∣S,θ)其中 d π d_{\pi} dπ 是 π \pi π 的平稳分布即运行很多步后的样本 π ( A ∣ S , θ ) \pi(A|S,\theta) π(A∣S,θ) 是当前的策略。但实际使用中由于标准的做法效率比较低实际是根据当前的 π ( θ ) \pi(\theta) π(θ) 先采一个 episode再利用这个 episode 中的数据更新一波 Reference 1.强化学习的数学原理