Reinforcement Learning an introduction (2)

函数逼近

目标函数
  • 定义: 目标函数

V E ˉ ( w ) = ∑ s μ ( s ) [ v π ( s ) − v ^ ( s , w ) ] 2 μ ( s ) = η ( s ) ∑ s ′ η ( s ′ ) \bar{VE}(w) = \sum_s \mu(s)[v_\pi(s) - \hat v(s,w)]^2 \\ \mu(s) = \frac{\eta(s)}{\sum_{s'}\eta(s')} VEˉ(w)=sμ(s)[vπ(s)v^(s,w)]2μ(s)=sη(s)η(s)

其中 η ( s ) \eta(s) η(s)定义为状态 s s s出现的概率、最小化损失函数 w ∗ = a r g m i n w V E ˉ ( w ) w^* = argmin_w \bar{VE}(w) w=argminwVEˉ(w)

  • 性质:
    • 函数逼近需要可以1适应on-line学习、2适应变化的目标函数
    • 举例: SGD可以、批量SGD不满足第一条、用直接法求解td fix点不满足第二条
SGD
  • 更新公式

w t + 1 = w t + 1 2 α ∇ w t [ v π ( s ) − v ^ π ( s , w t ) ] 2 = w t + α [ v π ( s ) − v ^ π ( s , w ) ] ∇ w t v ^ π ( s , w t ) ≈ w t + α [ U t − v ^ π ( s , w ) ] ∇ w t v ^ π ( s , w t ) w_{t+1} = w_t+ \frac{1}{2}\alpha\nabla_{w_t}[v_\pi(s)-\hat v_\pi(s,w_t)]^2 \\ = w_t + \alpha[v_\pi(s)-\hat v_\pi(s,w)]\nabla_{w_t}\hat v_\pi(s,w_t) \\ \approx w_t + \alpha[U_t-\hat v_\pi(s,w)]\nabla_{w_t}\hat v_\pi(s,w_t) wt+1=wt+21αwt[vπ(s)v^π(s,wt)]2=wt+α[vπ(s)v^π(s,w)]wtv^π(s,wt)wt+α[Utv^π(s,w)]wtv^π(s,wt)

  • 收敛性: 如果 U t U_t Ut v π ( s ) v_\pi(s) vπ(s)的无偏估计、且 α \alpha α递减、且采样数据服从分布 μ \mu μ,则根据SGD可知 w w w能够收敛到 w ∗ w^* w

  • semi-gradient methods

    • 引入原因: 用到自举的方法都将引入偏差: 包含初始化的偏差以及函数逼近的泛化误差、因此不能用SGD
    • 修正: 不对目标函数求导,只对估计函数求导,以下给出 T D ( 0 ) TD(0) TD(0)的更新公式

    w t + 1 = w t + α [ R + γ v ^ π ( s ′ , w ) − v ^ π ( s , w ) ] ∇ w t v ^ π ( s , w t ) w_{t+1} = w_t + \alpha[R+\gamma \hat v_\pi(s',w)-\hat v_\pi(s,w)]\nabla_{w_t}\hat v_\pi(s,w_t) wt+1=wt+α[R+γv^π(s,w)v^π(s,w)]wtv^π(s,wt)

    • episodic semi-gradient one-step Sarsa (很容易推广到n步)

    w t + 1 = w t + α [ R + γ q ^ π ( s ′ , a ′ , w t ) − q ^ π ( s , a , w t ) ] ∇ w t q ^ π ( s , a , w t ) w_{t+1} = w_t + \alpha[R+\gamma \hat q_\pi(s',a',w_t)-\hat q_\pi(s,a,w_t)]\nabla_{w_t}\hat q_\pi(s,a,w_t) wt+1=wt+α[R+γq^π(s,a,wt)q^π(s,a,wt)]wtq^π(s,a,wt)

    • 伪代码

线性函数
  • 定义

v ^ ( s , w ) = w T x ( s ) , ∇ v ^ ( s , w ) = x ( s ) \hat v(s,w) = w^Tx(s), \nabla\hat v(s,w) = x(s) v^(s,w)=wTx(s),v^(s,w)=x(s)

​ 简单推一下
d f = ( ∇ f ) T ( d x ) = t r ( ∇ f d x ) d ( v ^ ) = d ( w T x ) = t r ( d w T x ) = t r ( x T d w ) ⇒ ∇ v = x df = (\nabla f)^T (dx) = tr(\nabla f dx) \\ d(\hat v) = d(w^Tx) = tr(dw^T x) = tr(x^T dw) \Rightarrow \nabla v = x df=(f)T(dx)=tr(fdx)d(v^)=d(wTx)=tr(dwTx)=tr(xTdw)v=x

参考网站: https://zhuanlan.zhihu.com/p/24709748

  • semi-gradient methods

    • 收敛性: 如果迭代公式如下( T D ( 0 ) TD(0) TD(0))、且 α \alpha α递减、且采样数据服从分布 μ \mu μ,则 w w w能够收敛到 w T D w_{TD} wTD

    • 迭代公式: w t + 1 = w t + α [ R t + 1 + γ w t T x t + 1 − w t T x t ] x t w_{t+1} = w_t + \alpha[R_{t+1}+\gamma w_t^Tx_{t+1}-w^T_tx_t]x_t wt+1=wt+α[Rt+1+γwtTxt+1wtTxt]xt

    • 以下给出证明:

      首先证明 w T D = A − 1 b w_{TD} = A^{-1}b wTD=A1b 是迭代方程的解

    w t + 1 = w t + α [ R t + 1 + γ w t T x t + 1 − w t T x t ] x t = w t + α [ R t + 1 x t − x t ( x t − γ x t + 1 ) T w t ] = w t + α ( b − A w t ) w ∗ = w ∗ + α ( b − A w ∗ ) ⇒ w ∗ = w T D = A − 1 b w_{t+1} = w_t + \alpha[R_{t+1}+\gamma w_t^Tx_{t+1}-w^T_tx_t]x_t \\ = w_t + \alpha[R_{t+1}x_t-x_t(x_t-\gamma x_{t+1})^Tw_t] \\ = w_t + \alpha(b-Aw_t) \\ w^* = w^* + \alpha(b-Aw^*) \Rightarrow w^*=w_{TD} = A^{-1}b wt+1=wt+α[Rt+1+γwtTxt+1wtTxt]xt=wt+α[Rt+1xtxt(xtγxt+1)Twt]=wt+α(bAwt)w=w+α(bAw)w=wTD=A1b

    这里的目的是把 w w w移到后面去,又 w T x w^T x wTx是常数可以随便挪顺序

    ​ 接着证明当 A A A为正定矩阵时迭代公式能够收敛到 w T D w_{TD} wTD
    w t + 1 = ( I − α A ) w t + α b ∵ δ w + 1 = ( I − α A ) δ w ∴ ∣ λ m a x ( I − α A ) ∣ < 1 ⇒ lim ⁡ t → ∞ δ w t = 0 ( I − α A ) y = λ y ⇒ y T ( I − α A ) y = y T y − α y T A y = λ y T y ⇒ 1 − λ = α y T A y y T y > 0 ⇒ λ < 1 w_{t+1} = (I-\alpha A)w_t + \alpha b \\ \because\delta_{w+1} = (I-\alpha A)\delta_{w}\therefore|\lambda_{max}(I-\alpha A)|\lt 1\Rightarrow\lim_{t\rightarrow\infty}\delta_{w_t}= 0 \\ (I-\alpha A)y= \lambda y\Rightarrow y^T(I-\alpha A)y= y^Ty-\alpha y^TAy = \lambda y^Ty \\ \Rightarrow 1-\lambda = \alpha\frac{y^TAy}{y^Ty}\gt 0\Rightarrow\lambda\lt 1 wt+1=(IαA)wt+αbδw+1=(IαA)δwλmax(IαA)<1tlimδwt=0(IαA)y=λyyT(IαA)y=yTyαyTAy=λyTy1λ=αyTyyTAy>0λ<1

    用类似Gauss–Seidel method思想证明,但这样好像没法说明 λ > − 1 \lambda\gt -1 λ>1,另外是否能找到收敛更快的迭代公式呢?

    ​ 最后证明 A A A是正定矩阵

    书里写的比较详细

  • 误差: 使用上述方法将能够收敛到TD fixed point ( w T D w_{TD} wTD)与MC+SGD的解 w ∗ w^* w不相同,且 T D TD TD的误差较高,但TD因为目标函数的方差较小,因此收敛更快

V E ˉ ( w T D ) ≤ 1 1 − γ V E ( W ∗ ) ˉ \bar{VE}(w_{TD}) \leq \frac{1}{1-\gamma}\bar{VE(W^*)} VEˉ(wTD)1γ1VE(W)ˉ

  • linear semi-gradient DP同样能够收敛到TD fixed point、semi-gradient Sarsa(0)有近似的结果

  • 伪代码

  • Least-Squares TD: 上面使用迭代法求解线性方程,也可以使用直接法求解,收敛的更快但计算量大 O ( k n ) → O ( n 2 ) O(kn)\rightarrow O(n^2) O(kn)O(n2)
average reward
  • r ( π ) r(\pi) r(π)

    • 定义
      r ( π ) = ∑ s μ ( s ) ∑ a π ( a ∣ s ) ∑ s , a p ( s ′ , r ∣ s , a ) r (3) r(\pi) =\sum_s\mu(s)\sum_a\pi(a|s)\sum_{s,a}p(s',r|s,a)r \tag{3}\\ r(π)=sμ(s)aπ(as)s,ap(s,rs,a)r(3)

    • 推导

r ( π ) = lim ⁡ h → ∞ 1 h ∑ t = 1 h E π [ R t ∣ S 0 : t − 1 , A 0 : t − 1 ] = lim ⁡ t → ∞ E π [ R t ∣ S 0 : t − 1 , A 0 : t − 1 ] = ∑ s μ ( s ) ∑ a π ( a ∣ s ) ∑ s , a p ( s ′ , r ∣ s , a ) r r(\pi) = \lim_{h\rightarrow\infty}\frac{1}{h}\sum_{t=1}^h E_\pi[R_t|S_{0:t-1},A_{0:t-1}] \\ = \lim_{t\rightarrow\infty} E_\pi[R_t|S_{0:t-1},A_{0:t-1}] \\ = \sum_s\mu(s)\sum_a\pi(a|s)\sum_{s,a}p(s',r|s,a)r r(π)=hlimh1t=1hEπ[RtS0:t1,A0:t1]=tlimEπ[RtS0:t1,A0:t1]=sμ(s)aπ(as)s,ap(s,rs,a)r

  • μ ( s ) \mu(s) μ(s)

    • 定义

    μ ( s ) = lim ⁡ t → ∞ P r π { S t ∣ A 0 : t − 1 } \mu(s) = \lim_{t\rightarrow\infty} Pr_\pi\{S_t|A_{0:t-1}\} μ(s)=tlimPrπ{StA0:t1}

    • 性质
      μ ( s ′ ) = ∑ s μ ( s ) ∑ a π ( a ∣ s ) p ( s ′ , r ∣ s , a ) \mu(s') = \sum_s\mu(s)\sum_a\pi(a|s)p(s',r|s,a) \\ μ(s)=sμ(s)aπ(as)p(s,rs,a)

    • 直观理解: 代表在若从状态 S 0 S_0 S0开始、采取策略 π \pi π行动,停留在状态 s s s的概率

    • Ergodicity,若MDP满足Ergodicity特性,则 μ ( s ) \mu(s) μ(s) s 0 s_0 s0无关,只与 π \pi π有关。Ergodicity ⇒ \Rightarrow 式(3)成立

  • differential return

    • 定义
      G t = ( R t + 1 − r ( π ) ) + ( R t + 2 − r ( π ) ) + . . . G_t = (R_{t+1}-r(\pi)) + (R_{t+2}-r(\pi)) + ... Gt=(Rt+1r(π))+(Rt+2r(π))+...

    • TD_error变为
      δ t = ( R t + 1 − R ˉ ) + v ^ ( S t + 1 , w t ) − v ^ ( S t , w t ) \delta_t = (R_{t+1} - \bar R) + \hat v(S_{t+1},w_t) - \hat v(S_t, w_t) δt=(Rt+1Rˉ)+v^(St+1,wt)v^(St,wt)

  • 不用折扣因子原因

J ( π ) = r ( π ) + γ J ( π ) = r ( π ) 1 − γ J(\pi) = r(\pi) + \gamma J(\pi) = \frac{r(\pi)}{1-\gamma} J(π)=r(π)+γJ(π)=1γr(π)

J ( π ) J(\pi) J(π)是从任意点出发的的平均收益(带折扣因子 γ \gamma γ)、 r ( π ) r(\pi) r(π)是从任意点出发的平均收益 ( γ = 1 ) (\gamma=1) (γ=1)、第一个等号成立是因为 S 0 , S 1 S_0,S_1 S0,S1的对称性、第二个等号成立是因为等比数列、由此可知 J J J r r r只差了个常数倍,加不加 γ \gamma γ一样

  • 当使用函数逼近后无法满足策略更新后价值函数的单调递增性,因此前面提到的所有算法都是不能使用的(无法保证收敛),因此提出策略梯度法
其他细节
  • Memory based: 只记录一部份价值函数(不做参数近似)、没看过的状态就用相邻的近似(如:取平均)
  • Kernel-based: Memory based的进化,每个没看过的状态都是所有记录状态的函数
  • interest I I I、emphasis M M M : 在 μ \mu μ的基础上改变分布 (改变分布会不会影响收敛性?)

策略梯度

Policy Gradient Theorem

∇ θ J ( θ ) = E π [ q π ( s , a ) ∇ ln ⁡ π θ ( a ∣ s ) ] \nabla_\theta J(\theta) = E_\pi[q_\pi(s,a)\nabla\ln \pi_\theta(a|s)] θJ(θ)=Eπ[qπ(s,a)lnπθ(as)]

  • 首先证明 ∇ V π ( s ) = ∑ a [ ∇ π ( a ∣ s ) q π ( s , a ) + π ( a ∣ s ) ∑ s ′ P ( s ′ ∣ s , a ) ∇ V π ( s ′ ) ] \nabla V_{\pi}(s)= \sum_a[\nabla\pi(a|s)q_{\pi}(s,a) + \pi(a|s)\sum_{s'}P(s'|s,a)\nabla V_\pi(s')] Vπ(s)=a[π(as)qπ(s,a)+π(as)sP(ss,a)Vπ(s)]

J ( θ ) = v π θ ( s ) ,   ∇ J ( θ ) = ∇ θ v π ( s ) = ∇ θ [ ∑ a π ( a ∣ s ) q π ( s , a ) ] = ∑ a [ ∇ π ( a ∣ s 0 ) q π ( s , a ) + π ( a ∣ s ) ∇ q π ( s , a ) ] = ∑ a [ ∇ π ( a ∣ s 0 ) q π ( s , a ) + π ( a ∣ s ) ∇ ∑ s ′ , r P ( s ′ , r ∣ s , a ) ( r + V π ( s ′ ) ) ] = ∑ a [ ∇ π ( a ∣ s ) q π ( s , a ) + π ( a ∣ s ) ∑ s ′ P ( s ′ ∣ s , a ) ∇ V π ( s ′ ) ] J(\theta) = v_{\pi_\theta}(s),\space \nabla J(\theta) = \nabla_\theta v_{\pi}(s) = \nabla_\theta [\sum_a\pi(a|s)q_{\pi}(s,a)] \\ = \sum_a[\nabla\pi(a|s_0)q_{\pi}(s,a) + \pi(a|s)\nabla q_{\pi}(s,a)] \\ = \sum_a[\nabla\pi(a|s_0)q_{\pi}(s,a) + \pi(a|s)\nabla \sum_{s',r}P(s',r|s,a)(r+V_\pi(s'))] \\ = \sum_a[\nabla\pi(a|s)q_{\pi}(s,a) + \pi(a|s)\sum_{s'}P(s'|s,a)\nabla V_\pi(s')] \\ J(θ)=vπθ(s), J(θ)=θvπ(s)=θ[aπ(as)qπ(s,a)]=a[π(as0)qπ(s,a)+π(as)qπ(s,a)]=a[π(as0)qπ(s,a)+π(as)s,rP(s,rs,a)(r+Vπ(s))]=a[π(as)qπ(s,a)+π(as)sP(ss,a)Vπ(s)]

  • 定义 ρ π ( s → x , k ) \rho_\pi(s\rightarrow x, k) ρπ(sx,k)为从状态 s s s开始采用策略 π \pi π行动在 k k k步后到达 x x x的概率
  • 接下来证明 ∇ V π ( s ) = ∑ x ∑ k ρ π ( s → x , k ) ϕ ( x ) \nabla V_{\pi}(s) = \sum_x\sum_k \rho_\pi(s\rightarrow x, k)\phi(x) Vπ(s)=xkρπ(sx,k)ϕ(x)

∇ V π ( s ) = ϕ ( s ) + ∑ a π ( a ∣ s ) ∑ s ′ P ( s ′ ∣ s , a ) ∇ V π ( s ′ ) = ϕ ( s ) + ∑ s ′ ∑ a π ( a ∣ s ) P ( s ′ ∣ s , a ) ∇ V π ( s ′ ) = ϕ ( s ) + ∑ s ′ ρ π ( s → s ′ , 1 ) ∇ V π ( s ′ ) = ϕ ( s ) + ∑ s ′ ρ π ( s → s ′ , 1 ) [ ϕ ( s ′ ) + ∑ s ′ ′ ρ π ( s ′ → s ′ ′ , 1 ) ∇ V π ( s ′ ′ ) ] = ϕ ( s ) + ∑ s ′ ρ π ( s → s ′ , 1 ) ϕ ( s ′ ) + ∑ s ′ ′ ρ π ( s → s ′ ′ , 2 ) ∇ V π ( s ′ ′ ) = ∑ x ∑ k ρ π ( s 0 → x , k ) ϕ ( x ) \nabla V_{\pi}(s) = \phi(s) + \sum_a\pi(a|s)\sum_{s'}P(s'|s,a)\nabla V_\pi(s') \\ = \phi(s) + \sum_{s'}\sum_a\pi(a|s)P(s'|s,a)\nabla V_\pi(s') \\ = \phi(s) + \sum_{s'}\rho_\pi(s\rightarrow s', 1)\nabla V_\pi(s') \\ = \phi(s) + \sum_{s'}\rho_\pi(s\rightarrow s', 1)[\phi(s') + \sum_{s''}\rho_\pi(s'\rightarrow s'', 1)\nabla V_\pi(s'')] \\ = \phi(s) + \sum_{s'}\rho_\pi(s\rightarrow s', 1)\phi(s') + \sum_{s''}\rho_\pi(s\rightarrow s'', 2)\nabla V_\pi(s'') \\ = \sum_x\sum_k \rho_\pi(s_0\rightarrow x, k)\phi(x) Vπ(s)=ϕ(s)+aπ(as)sP(ss,a)Vπ(s)=ϕ(s)+saπ(as)P(ss,a)Vπ(s)=ϕ(s)+sρπ(ss,1)Vπ(s)=ϕ(s)+sρπ(ss,1)[ϕ(s)+s′′ρπ(ss′′,1)Vπ(s′′)]=ϕ(s)+sρπ(ss,1)ϕ(s)+s′′ρπ(ss′′,2)Vπ(s′′)=xkρπ(s0x,k)ϕ(x)

  • 最后证明 ∇ V π ( s ) = E π [ q π ( s , a ) ln ⁡ π θ ( a ∣ s ) ] \nabla V_{\pi}(s) = E_\pi[q_\pi(s,a)\ln \pi_\theta(a|s)] Vπ(s)=Eπ[qπ(s,a)lnπθ(as)]

∇ V π ( s ) = ∑ x ∑ k ρ π ( s 0 → x , k ) ϕ ( x ) = ∑ x η ( x ) ϕ ( x ) = ∑ s η ( s ) ∑ s η ( s ) ∑ s η ( s ) ϕ ( s ) ∝ ∑ s η ( s ) ∑ s η ( s ) ϕ ( s ) = ∑ s d π ( s ) ∑ a ∇ π ( a ∣ s ) q π ( s , a ) = ∑ s d π ( s ) ∑ a π ( a ∣ s ) q π ( s , a ) ∇ π ( a ∣ s ) π ( a ∣ s ) = E s ∼ d , a ∼ π [ q π ( s , a ) ∇ ln ⁡ π θ ( a ∣ s ) ] = E s ∼ d , a ∼ π [ G t ∇ ln ⁡ π θ ( a ∣ s ) ] \nabla V_{\pi}(s) = \sum_x\sum_k \rho_\pi(s_0\rightarrow x, k)\phi(x) \\ = \sum_x \eta(x)\phi(x) = \sum_s\eta(s)\sum_s\frac{\eta(s)}{\sum_s\eta(s)}\phi(s) \\ \propto \sum_s\frac{\eta(s)}{\sum_s\eta(s)}\phi(s) = \sum_sd_\pi(s)\sum_a\nabla\pi(a|s)q_{\pi}(s,a) \\ = \sum_sd_\pi(s)\sum_a\pi(a|s)q_{\pi}(s,a)\frac{\nabla\pi(a|s)}{\pi(a|s)} \\ = E_{s\sim d, a\sim\pi}[q_\pi(s,a)\nabla\ln \pi_\theta(a|s)] = E_{s\sim d, a\sim\pi}[G_t\nabla\ln \pi_\theta(a|s)] Vπ(s)=xkρπ(s0x,k)ϕ(x)=xη(x)ϕ(x)=sη(s)ssη(s)η(s)ϕ(s)ssη(s)η(s)ϕ(s)=sdπ(s)aπ(as)qπ(s,a)=sdπ(s)aπ(as)qπ(s,a)π(as)π(as)=Esd,aπ[qπ(s,a)lnπθ(as)]=Esd,aπ[Gtlnπθ(as)]

倒数第三个等号,把 π \pi π提出来是因为要对s,a同时取期望,才能用采样的方式更新。最后一个等号是因为 E [ G t ∣ s , a ] = q ( s , a ) E[G_t|s,a]=q(s,a) E[Gts,a]=q(s,a)

直观理解: 梯度代表朝这方向增加 θ \theta θ能够增加选取此动作的概率,前面乘 G G G就代表有利时提升选取动作概率、反之降低。再看一下监督学习时logistic回归的目标函数 − y log ⁡ π -y\log\pi ylogπ,感觉非常像多了个常数倍系数的分类问题

PG优势
  • 可以逼近确定性策略也可以逼近随机策略 (如使用softmax)
  • 策略函数相较于价值函数可能更好参数化学习
  • 更容易引入先验知识 (?)
  • 更新时更平滑 ( ϵ \epsilon ϵ-greedy是离散的更新)、有更好的收敛性
Baseline

∇ θ J ( θ ) = E π [ ( q π ( s , a ) − b ( s ) ) ∇ ln ⁡ π θ ( a ∣ s ) ] \nabla_\theta J(\theta) = E_\pi[(q_\pi(s,a)-b(s))\nabla\ln\pi_\theta(a|s)] θJ(θ)=Eπ[(qπ(s,a)b(s))lnπθ(as)]

  • 证明: 引入Baseline期望不变 (要求b不能是动作a的函数)

∇ θ J ( θ ) = ∑ s d π ( s ) ∑ a ∇ π ( a ∣ s ) ( q π ( s , a ) − b ( s ) ) = ∑ s d π ( s ) ∑ a ∇ π ( a ∣ s ) q π ( s , a ) 其中 ∑ s d π ( s ) ∑ a ∇ π ( a ∣ s ) b ( s ) = ∑ s d π ( s ) b ( s ) ∇ ∑ a π ( a ∣ s ) = ∑ s d π ( s ) b ( s ) ∇ 1 = 0 \nabla_\theta J(\theta) = \sum_sd_\pi(s)\sum_a\nabla\pi(a|s)(q_{\pi}(s,a)-b(s)) = \sum_sd_\pi(s)\sum_a\nabla\pi(a|s)q_{\pi}(s,a) \\ 其中\sum_sd_\pi(s)\sum_a\nabla\pi(a|s)b(s) = \sum_sd_\pi(s)b(s)\nabla\sum_a\pi(a|s) = \sum_sd_\pi(s)b(s)\nabla1 = 0 θJ(θ)=sdπ(s)aπ(as)(qπ(s,a)b(s))=sdπ(s)aπ(as)qπ(s,a)其中sdπ(s)aπ(as)b(s)=sdπ(s)b(s)aπ(as)=sdπ(s)b(s)∇1=0

  • 性质: 引入Baseline将改变方差

V a r [ ∑ τ ( G t : T − 1 − b ( s ) ) ∇ ln ⁡ π θ ( a ∣ s ) ] = ∑ τ V a r [ ( G t : T − 1 − b ( s ) ) ∇ ln ⁡ π θ ( a ∣ s ) ] = ∑ τ E τ [ ( [ ∇ ln ⁡ π θ ( a ∣ s ) ] [ G t : T − 1 − b ( s ) ] ) 2 ] = ∑ τ E τ [ ( ∇ ln ⁡ π θ ( a ∣ s ) ) 2 E τ [ ( G t : T − 1 − b ( s ) ) 2 ] Var[\sum_\tau(G_{t:T-1}-b(s))\nabla\ln\pi_\theta(a|s)] \\ = \sum_\tau Var[(G_{t:T-1}-b(s))\nabla\ln\pi_\theta(a|s)] \\ = \sum_\tau E_\tau[([\nabla\ln\pi_\theta(a|s)][G_{t:T-1}-b(s)])^2] \\ = \sum_\tau E_\tau[(\nabla\ln\pi_\theta(a|s))^2E_\tau[(G_{t:T-1}-b(s))^2] \\ Var[τ(Gt:T1b(s))lnπθ(as)]=τVar[(Gt:T1b(s))lnπθ(as)]=τEτ[([lnπθ(as)][Gt:T1b(s)])2]=τEτ[(lnπθ(as))2Eτ[(Gt:T1b(s))2]

第一个等号成立要求数据之间独立, 因为 D ( X + Y ) = D ( X ) + D ( Y ) + C o v ( X , Y ) D(X+Y) = D(X)+D(Y)+Cov(X,Y) D(X+Y)=D(X)+D(Y)+Cov(X,Y),因此数据不独立时上面的估计不准确

最终我们只要选取 b ( s ) = E ( G t : T − 1 ) b(s)=E(G_{t:T-1}) b(s)=E(Gt:T1)就可以最小化方差 (选 b = v ( s ) b=v(s) b=v(s)时方差必定减小)

连续动作空间的参数化
  • 假设 π \pi π服从高斯分布,参数化后表达式如下,这样就可以使用链式法则反向传播

π ( a ∣ s , θ ) = 1 σ s , θ 2 π exp ⁡ ( − ( a − μ s , θ ) 2 2 σ s , θ 2 ) \pi(a|s,\theta) = \frac{1}{\sigma_{s,\theta}\sqrt{2\pi}}\exp(-\frac{(a-\mu_{s,\theta})^2}{2\sigma_{s,\theta}^2}) π(as,θ)=σs,θ2π 1exp(2σs,θ2(aμs,θ)2)

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值