近端策略优化算法(PPO):RL最经典的博弈对抗算法之一「AI核心算法」

关注:决策智能与机器学习,深耕AI脱水干货

作者:Abhishek Suran

转载请联系作者

提要:PPO强化学习算法解析及其TensorFlow 2.x实现过程(含代码)

在本文中,我们将尝试理解Open-AI的强化学习算法:近端策略优化算法PPO(

Proximal Policy Optimization)。在一些基本理论之后,我们将使用TensorFlow 2.x实现PPO。

为什么PPO ?

因为PPO可以方便地克服以下两个问题。

  • 策略更新不稳定:在许多策略梯度方法中,由于步长较大,策略更新不稳定,导致错误的策略更新,当这个新的错误策略被用于学习时,会导致更糟糕的策略。如果步骤很小,那么就会导致学习的缓慢。

  • 数据效率低:很多学习方法都是借鉴现有经验,在梯度更新后丢弃经验。这使得学习过程变慢,因为神经网络需要大量的数据来学习。

PPO的核心理念

在早期的Policy梯度法中,目标函数类似于

但现在我们不用现行Policy的日志,而是用现行Policy与旧Policy的比率.

我们也将裁剪比例,并将两者的最小值,即b/w裁剪和未裁剪。

此压缩目标将限制大型策略更新,如下所示。

因此,最后的目标包括3个部分,

  • 第一个是Lclip,

  • 第二个是我们的批评者网的MSE,即预测的状态值和目标的平方损失。

  • 第三部分是熵来鼓励探索。

算法的步骤

  1. 游戏n步,存储状态,动作概率,奖励,完成变量。

  2. 基于上述经验,应用广义优势估计方法。我们将在编码部分看到这一点。

  3. 通过计算各自的损失,训练神经网络在某些时期的运行。

  4. 对完成训练的模型测试“m”轮。

  5. 如果测试片段的平均奖励大于你设定的目标奖励,那么就停止,否则就从第一步开始重复。

代码

神经网络:

  1. 在导入所需的库并初始化我们的环境之后,我们定义了神经网络,并且类似于actor评论家文章中的神经网络。

  2. Actor-network将当前状态

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值