DeepMind发布Acme,高效分布式强化学习算法框架轻松编写RL智能体

简介: DeepMind 本周发布了一个强化学习优化框架Acme,可以让AI驱动的智能体在不同的执行规模上运行,从而简化强化学习算法的开发过程。

微信图片_20220109010702.jpg


DeepMind 本周发布了一个强化学习优化框架 Acme,可以让AI驱动的智能体在不同的执行规模上运行,从而简化强化学习算法的开发过程。 Acme 背后的工程师和研究人员共同撰写了一篇关于这项工作的技术论文,根据他们的说法,用这种方法创建智能体,并行性会更好。      


 微信图片_20220109010704.png


强化学习可以让智能体与环境互动,生成他们自己的训练数据,这在电子游戏、机器人技术、自动驾驶机器人出租车等领域取得了突破。 


随着所使用的培训数据量的增加,这促使设计了一个系统,使智能体与环境实例相互作用,迅速积累经验。


DeepMind 断言,将算法的单进程原型扩展到分布式系统通常需要重新实现相关的智能体,这就是 Acme 框架的用武之地 


DeepMind研究员写道,「Acme 是一个用于构建可读、高效、面向研究的 RL 算法的框架。Acme 的核心是设计用于简单描述 RL 智能体,这些智能体可以在不同规模的执行中运行,包括分布式智能体。」


「通过发布 Acme,我们的目标是使学术界和工业实验室开发的各种 RL 算法的结果更容易为整个机器学习社区复制和扩展。」


Acme 框架要实现的目标?


研究者明确指出了Acme框架的高级目标


 1 实现方法和结果可重复性2 简化新算法设计的方式3 提高RL智能体的可读性 如何实现这一目标? 从最高层次来看,我们可以将 Acme 视为一个经典的强化学习接口,其作用是将 actor(比如一个动作选择智能体)连接到环境。 actor 是一个具有选择动作、观察并实现自我更新能力的简单接口。


 从内部看,学习智能体可以拆分为「执行」和「学习」两部分。从表面上看,这使得我们在不同的多智能体之间重复使用 acting portion。


 但是,更重要的是,这提供了一个可以对学习过程进行划分和并行化处理的关键边界。我们甚至可以从此处按比例缩小规模,并在没有环境,只有固定数据集的情况下无缝攻击批RL设置(batch RL setting)。


这些不同级别的复杂度的图示如下:


      微信图片_20220109010706.gif


除了 Acme 的基础框架之外,研究人员还发布了用 Acme 框架创建的大量智能体的单进程实例。 通过跨越执行/学习边界,我们能够以分布式方式运行这些相同的智能体,过程中的改变最小。


Acme 框架首个版本主要针对学生和研究人员使用最多的单进程智能体。 研究者在 control suite、Atari 和 bsuite 等环境中对这些智能体进行了基准测试。

QQ图片20220109010759.png

点击查看原视频链接

利用 Acme 框架进行智能体训练的示例  


Acme 框架有哪些优势?


Acme是一组开发套件,用于培训强化学习智能体,用来解决复杂性和规模的问题,其组件用于从算法和策略到学习者等不同抽象层次来指导代理。 


这样做可以让idea快速迭代,并在生产过程中对这些 idea 进行评估,主要是通过训练循环、强迫性日志记录和检查点。 


一种特殊类型的 Acme actor 包括执行和学习两个组件ーー它们都被称为「智能体」ーー它们的状态更新是由learner组件中的一些步骤触发的。也就是说,智能体大部分情况会把他们的行动选择权交给他们自己的执行组件。


在 Acme 框架中,actors与环境密切交互,通过观察环境,执行动作,反过来为环境提供素材。


  微信图片_20220109010709.png


在观察了随后发生的变化后,actors 有机会更新其状态,这通常与其行动选择策略有关,这些策略决定了它们为应对环境而采取的行动。 


Acme 提供了一个位于 actor 和 learner 组件之间的数据集模块,该模块由一个名为 Reverb 的低级存储系统支持,DeepMind 本周也刚刚发布这个系统。此外,该框架建立了一个接入Reverb的通用接口,使不同风格的预处理和观察数据的持续聚合成为可能。 


Reverb是一个专为机器学习研究设计的高效、易用的数据存储和传输系统。

Reverb主要作为分布式强化学习算法的经验回放(experience replay)系统,但该系统也支持多种数据结构表示,如FIFO、LIFO和优先级队列等。


      微信图片_20220109010711.png


在 Acme 当中,执行、学习和存储组件被划分为不同的线程或进程,这带来了两个好处: 环境交互与学习过程非同步发生,以及数据生成的加速。


在其他地方,Acme允许从学习到执行以任何速率运行,只要流程保持在一定的定义公差内就可以不受阻碍。


例如,如果一个进程由于网络问题或资源不足而落后于另一个进程,速率限制器将阻塞落后者,而另一个进程将赶上来。 除了这些工具和资源,Acme 还附带了一组示例智能体,作为各自强化学习算法以及强大研究基线的参考实现。 


DeepMind研究人员写道,「通过提供这些... ... 我们希望 Acme 将有助于提高[强化学习]的可再生性地位,并为学术研究者提供简单的组件来创造新的智能体。」「此外,我们的baseline应该提供额外的衡量标准,以衡量该领域的进展。」


GitHub地址:https://github.com/deepmind/acme


论文地址:https://arxiv.org/pdf/2006.00979v1.pdf


参考链接:
https://venturebeat.com/2020/06/03/deepmind-releases-acme-a-distributed-framework-for-reinforcement-learning-algorithm-development/https://deepmind.com/research/publications/Acme

相关文章
|
6月前
|
机器学习/深度学习 算法 调度
14种智能算法优化BP神经网络(14种方法)实现数据预测分类研究(Matlab代码实现)
14种智能算法优化BP神经网络(14种方法)实现数据预测分类研究(Matlab代码实现)
487 0
|
10月前
|
机器学习/深度学习 数据采集 算法
智能限速算法:基于强化学习的动态请求间隔控制
本文分享了通过强化学习解决抖音爬虫限速问题的技术实践。针对固定速率请求易被封禁的问题,引入基于DQN的动态请求间隔控制算法,智能调整请求间隔以平衡效率与稳定性。文中详细描述了真实经历、问题分析、技术突破及代码实现,包括代理配置、状态设计与奖励机制,并反思成长,提出未来优化方向。此方法具通用性,适用于多种动态节奏控制场景。
465 6
智能限速算法:基于强化学习的动态请求间隔控制
|
6月前
|
算法 安全 定位技术
【创新未发表】【无人机路径巡检】三维地图路径规划无人机路径巡检GWO孙发、IGWO、GA、PSO、NRBO五种智能算法对比版灰狼算法遗传研究(Matlab代码实现)
【创新未发表】【无人机路径巡检】三维地图路径规划无人机路径巡检GWO孙发、IGWO、GA、PSO、NRBO五种智能算法对比版灰狼算法遗传研究(Matlab代码实现)
385 40
|
11月前
|
人工智能 自然语言处理 算法
阿里云 AI 搜索开放平台:从算法到业务——AI 搜索驱动企业智能化升级
本文介绍了阿里云 AI 搜索开放平台的技术的特点及其在各行业的应用。
1099 3
|
8月前
|
机器学习/深度学习 存储 算法
强化学习算法基准测试:6种算法在多智能体环境中的表现实测
本文系统研究了多智能体强化学习的算法性能与评估框架,选用井字棋和连珠四子作为基准环境,对比分析Q-learning、蒙特卡洛、Sarsa等表格方法在对抗场景中的表现。实验表明,表格方法在小规模状态空间(如井字棋)中可有效学习策略,但在大规模状态空间(如连珠四子)中因泛化能力不足而失效,揭示了向函数逼近技术演进的必要性。研究构建了标准化评估流程,明确了不同算法的适用边界,为理解强化学习的可扩展性问题提供了实证支持与理论参考。
403 0
强化学习算法基准测试:6种算法在多智能体环境中的表现实测
|
10月前
|
传感器 人工智能 算法
企业内训|智能调控系统算法与优化——某汽车厂商
5月9日,东北某市,TsingtaoAI团队为某汽车厂商的智能驾驶业务和研发团队交付“智能调控系统算法与优化”课程。 本课程系统化解析智能调控系统的核心算法原理与前沿优化技术,深度融合经典控制、现代控制及模型预测控制(MPC)三大理论体系,聚焦自动驾驶与工业自动化场景的实践需求。课程从硬件层(传感器、异构计算芯片、执行器)到软件层(闭环反馈、实时优化)逐层拆解系统架构,结合车辆横纵向控制等实际案例,详解PID参数整定、LQR最优控制、MPC多目标优化等关键技术。
254 16
|
9月前
|
机器学习/深度学习 算法 数据可视化
基于Qlearning强化学习的机器人迷宫路线搜索算法matlab仿真
本内容展示了基于Q-learning算法的机器人迷宫路径搜索仿真及其实现过程。通过Matlab2022a进行仿真,结果以图形形式呈现,无水印(附图1-4)。算法理论部分介绍了Q-learning的核心概念,包括智能体、环境、状态、动作和奖励,以及Q表的构建与更新方法。具体实现中,将迷宫抽象为二维网格世界,定义起点和终点,利用Q-learning训练机器人找到最优路径。核心程序代码实现了多轮训练、累计奖励值与Q值的可视化,并展示了机器人从起点到终点的路径规划过程。
431 0
|
12月前
|
机器学习/深度学习 算法 机器人
强化学习:时间差分(TD)(SARSA算法和Q-Learning算法)(看不懂算我输专栏)——手把手教你入门强化学习(六)
本文介绍了时间差分法(TD)中的两种经典算法:SARSA和Q-Learning。二者均为无模型强化学习方法,通过与环境交互估算动作价值函数。SARSA是On-Policy算法,采用ε-greedy策略进行动作选择和评估;而Q-Learning为Off-Policy算法,评估时选取下一状态中估值最大的动作。相比动态规划和蒙特卡洛方法,TD算法结合了自举更新与样本更新的优势,实现边行动边学习。文章通过生动的例子解释了两者的差异,并提供了伪代码帮助理解。
937 2

热门文章

最新文章