深度强化学习之Policy Gradient & Actor-Critic Model & A3C

本文详细介绍了深度强化学习中的Policy Gradient算法,包括其优势和在高维连续动作空间中的应用。接着,讨论了Actor-Critic模型,通过引入baseline函数减少variance,并探讨了如何利用DQN近似Q值来进一步优化。最后,介绍了A3C(Asynchronous Advantage Actor-Critic)算法,这是一种分布式更新策略和价值函数的高效方法,被广泛应用于现代深度强化学习研究。
摘要由CSDN通过智能技术生成

policy gradient

在之前的DQN是进行value function的approximation,是value-vased RL。这次要讲的是policy-based RL。

对于RL的policy直接进行参数表示:比如可以输入state(一幅图片,一个feature vector),然后由带有参数的某种算法(比如linear regression,deep learning)计算得出对不同的action的一个probability distribution。对于符号的表示,Sutton的书里面用的是另外一种符号。
这里写图片描述

policy-based RL可以使用model-free进行训练,就是不需要对environment进行建模。policy-based RL可以更好收敛,可以在高维和连续action space进行训练。可以学习stochastic policy(概率,可求导)缺点是容易陷入local optimum。同时对于一个policy进行evaluating会有high variance,这里主要是因为采用MC计算了value,所以有较大的variance。之后会说到如何解决这个问题。

Stochastic Policy相比于Deterministic Policy有它的好处在于不确定性,随机性。Stochastic Policy的输出采用sampling或者是argmax。比如在猜拳的时候,如果策略的固定的,那么就容易被猜中你的下一步是什么。采用Stochastic Policy,uniform random policy,就可以得到更优的reward,比如纳什均衡。

value-based RL在同样的状态的时候,有时候获得最优解的概率更低。比如下图中gridworld,灰色部分是一模一样的state,如果是value-based RL就会对这两个state执行一样的action,那么就会有50%的概率无法拿到黄金(reward)。
这里写图片描述

如果是采用policy-based policy,那么就会随机向两边走,都有可能。那么获取更高reward的概率更高。
这里写图片描述

那么给定了一个policy,如何判断一个policy的好坏呢?衡量一个policy的好坏呢?

我们采用MC或者TD计算state value来获得policy objective function的表达。可以用start value,计算某个state的value(在episodic environments)。
这里写图片描述

在continuing environment中,使用average value:
这里写图片描述
或者采用average reward per time step:
这里写图片描述

这里的d是Markov chain,是在policy的作用下的stationary distribution,其实都是含有 θ 的函数表达式。

所以policy-based RL就是要找到参数来最大化 J( θ ),有些方法用hill climbing,genetic algorithms,更有效的方法就是梯度下降(gradient descent,conjugate gradient,quasi-Newton)那么要最大化J( θ ),那么更新应该就是应该往梯度的方向更新(这里是最大化Objective,和深度学习的minimize loss要注意区分)
这里写图片描述
α 是learning rate,另外一部分是policy gradient。
这里写图片描述

在计算求导部分,有一个叫做automation differentiation的东西,计算的是J( θ )的导数,当里面的unit vector为0的时候,gradient不变,通过这样的方法debug代码。
这里写图片描述

所以,至此我已经把policy-based RL中的优化目标介绍了 J( θ )。接下来介绍policy function求导,再介绍两者之间的联系。

policy gradient可以写成如下形式:

### 回答1: ppo(proximal policy optimization)是一种用于强化学习的策略优化算法,其基本思想是在策略更新函数的优化过程中,使用了一些新的技巧来提高学习效率和稳定性。 actor-critic是一种深度强化学习算法,其中actorcritic分别负责学习决策策略和估计价值函数。actor-critic算法通过训练actorcritic模型来实现策略优化。 pp actor-critic算法结合了ppo和actor-critic的两种算法,是一种新的策略优化算法。它通过使用ppo算法对策略进行优化,并使用actor-critic算法来学习和估计策略价值。在这种模型中,actor负责生成动作,critic负责评估策略价值,pp算法保证了策略更新的稳定性和效率。 pp actor-critic算法具有许多优点,例如可以有效地解决强化学习中出现的稀疏奖励和高维空间问题,能够在没有先验知识的情况下自动学习和适应。不过,它的训练过程比较复杂,需要选择合适的超参数,并且需要较长的训练时间来获得最佳效果。 尽管存在一些挑战,但pp actor-critic算法仍被广泛应用于各种强化学习任务,例如游戏、机器人控制等。它的发展也为解决实际应用中的问题提供了新的思路和方法。 ### 回答2: PPO Actor-Critic深度强化学习领域中的一个算法。它是基于Actor-Critic方法的一种改进。Actor-Critic算法将决策策略和价值函数相结合,以达到更准确的评估和更新。而PPO算法则是为了解决常规Policy Gradient算法的训练不稳定性而提出的一种策略优化算法。 PPO Actor-Critic算法的核心思想是通过对策略的更新,不断改善训练的效果。该算法是由Proximal Policy Optimization(PPO)算法和Actor-Critic算法结合而成。在训练过程中,PPO Actor-Critic会利用现有的经验,通过Actor-Critic算法更新策略和价值函数。其更新策略的过程中,会采用PPO算法进行优化,从而能够根据实际情况平衡策略更新和训练效果。 PPO Actor-Critic算法的优点是能够同时利用线性和非线性的函数逼近器来最小化优势函数的误差。从而避免了传统策略梯度算法的过拟合问题,大大增强了该算法的鲁棒性。此外,PPO Actor-Critic也能够避免过多的数据采样和重复推断,大大提升了算法的效率。 综上所述,PPO Actor-Critic是一种结合了PPO算法和Actor-Critic算法的强化学习算法,可用于训练智能代理以达到更精确的评估和更新。 ### 回答3: PPO Actor-Critic 是指一种深度强化学习算法。在这种算法中,通过两个模型一起工作来提高决策过程的效率。 其中,Actor 模型用于执行动作。它使用一系列状态来计算每个可能的策略,并选择相应的行动方案。这个过程被看作是一个正则化的过程。这意味着在执行过程中,Actor 模型不断从环境中获取反馈信息,并根据这些反馈信息进行优化。 相反,Critic 模型则用于评估 Actor 模型的表现。它通过测量实际的奖励和预测的奖励之间的差距来判断 Actor 模型是否做决策。如果结果不好,则系统会通过重新计算 Actor 模型的策略来提出新的决策方案。 PPO Actor-Critic 算法通过优化 Actor 模型的过程来提高决策的效率。这通常会导致更好的策略和更好的结果。此外,由于 Critic 模型的存在,系统可以更好地理解和评估策略的表现。这使得 PPO Actor-Critic 算法成为适用于机器人控制、游戏策略和金融交易等领域的一种流行算法。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值