深度强化学习框架Acme【一】

本文介绍了Acme框架,涵盖在线强化学习、离线强化学习、imitationlearning等内容,详细阐述了Actor、Learner和经验回放机制,以及Acme在分布式强化学习中的应用,列举了如DQN、DDPG和TD3等经典和改进的算法。

Chapter 2 RL

强化学习的设置可以看作是一个智能体基于环境观察值生成动作、环境根据动作产生奖励和下一时刻观测值的迭代循环。从数学的角度而言,这样的迭代交互可以视为马尔可夫过程或者部分可观测马尔可夫过程。智能体通过策略与环境产生交互,在深度强化学习中,通常用一个深度神经网络来表示它,为了表征更加普遍的setting,智能体使用循环网络作为策略。

Online Reinforcement Learning

在线强化学习的setting常常与给定的环境描述有关,被视为”标准“的强化学习设置。在线强化学习算法分为on-policy和off-policy两种。其中off-policy算法采用experience replay充分利用数据进行策略的更新。

Offline Reinforcement Learning

离线强化学习也被称为batch-RL,agent无法与环境进行交互,只能从给定的数据集中学习策略。在setting下学习策略无法从环境中得到反馈,那么算法就可能出现选择了数据集中没有的actions导致高回报的错误。因此,离线setting中的方法经常包含正则化,以激励学习的策略避免未知或不确定的状态-动作区域。

Imitation Learning

对于一些任务,无法定义reward,使用模仿学习能够很好解决问题。在模仿学习的setting中,环境没有定义reward,而是使用一些demonstrations,目标是学习一个与所提供的demonstrations相匹配的策略或者推断这些demonstrations行为能够获得的奖励。

Learning from Demonstrations

环境可以定义reward,但是很难优化,使用一个专家agent引导学习。

Chapter 3 Acme

Acme是一个强化学习算法的实现框架,能够用于分布式的智能体并行执行。将agent分为三个组件:与环境交互生成数据的actor,存储数据的replay系统以及更新agent行为的learner。这些组件通过builder构成一个完整的agent用于训练和评估agent的性能。
在这里插入图片描述

3.1 Environments and environment loops

使用dm_env这个包来定义环境:dm_env.Environment,里面的方法有:

重新开始一段序列
def reset(self) -> TimeStep
更新环境
def step(self, action) -> TimeStep
返回奖励
def reward_spec(self)
返回折扣因子
def discount_spec(self)
定义观察值
def observation_spec(self)
定义动作
def action_spec(self)
释放环
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值