强化学习入门7—Actor-Critic

本文介绍了强化学习中的Actor-Critic算法,它结合策略梯度和时序差分方法。Actor负责选取动作,Critic则对其进行评估并反馈,指导Actor优化策略。在训练过程中,两者同步更新,通过策略梯度和TD方法改进策略和价值函数。尽管存在参数更新的相关性问题,但其效率优势使其成为强化学习的重要算法。
摘要由CSDN通过智能技术生成

本文是强化学习入门系列的第七篇,介绍一种结合了策略梯度和时序差分的算法——Actor-Critic即演员评论家算法。

Actor-Critic

介绍

Actor-Critic即演员-评论家算法。分为两部分,Actor基于概率选动作(不用Epsilon-greedy了),Critic基于Actor的动作进行打分,Actor再根据Critic的得分修改选择动作的概率。

我们知道状态价值函数如下:
V π ( s , a ) = ∑ a π ( a ∣ s ) Q π ( s , a ) V_{\pi}(s,a)=\sum_a\pi(a|s)Q_{\pi}(s,a) Vπ(s,a)=aπ(as)Qπ(s,a)

策略函数 π \pi π 以及动作价值函数 Q π Q_{\pi} Qπ 可以分别用两个神经网络来表示,也是分别对应Actor与Critic。

对于Actor,用神经网络(即策略网络) π ( a ∣ s ; θ ) \pi(a|s;\theta) π(as;θ) 来近似策略函数 π ( a ∣ s ) \pi(a|s) π(as) θ \theta θ 是决定策略的参数。Actor的目标是选出最优的策略,使得状态价值函数最大。更新方法采用Policy-Gradient。然而在更新过程中 Q π Q_{\pi} Qπ 的值Actor是不知道的,所以需要Critic来更新这一值。

对于Critic,用神经网络(即价值网络 ) q ( s , a ; ω ) q(s,a;\omega) q(s,a;ω) 来近似价值函数 Q θ ( s , a ) Q_{\theta}(s,a) Qθ(s,a) ω \omega ω 是神经网络的参数。Critic的目标对Actor选出的动作打分,然后作为Actor的监督信号,指导Actor更新参数。更新方法采用时序差分(TD)方法。其实本质上就是在更新q-function。

如何训练?

我们来看看具体如何训练。实际上,这两个网络是同时训练的。步骤如下:

  1. 观察到初始状态 s t s_t st
  2. 从策略函数 π \pi π 随机采样动作 a t a_t at,进入到下一状态 s t + 1 s_{t+1}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值