Intel发布开源增强学习框架Coach

今天,英特尔发布了一个新的开源增强学习框架Coach。该框架利用多核CPU处理能力,用于训练和评估增强学习Agent。Coach包含一些领先的增强学习算法的多线程实现,适用于各种游戏和机器人环境。它能够在台式计算机上高效地训练强化学习Agent,而无需任何额外的硬件。

自从2016年推出用于深层加强学习的异步方法以来,许多算法通过在许多CPU内核中并行运行多个实例,能够更快地实现更好的策略。到目前为止,这些算法包括A3C 、DDPG、PPO、DFP和NAF,而Coach不仅包括上述等最新算法的实现,更可以帮助用户现场搭建使用。

要使用Coach首先需要定义想要解决的问题,或选择一个现有问题,然后选择一套强化学习算法来解决问题。Coazh可以使用现有算法进行简单的实验,并用作沙盒(AI研习社注:沙盒是在受限的安全环境中运行应用程序的一种做法,这种做法是要限制授予应用程序的代码访问权限,便于在开发测试中的调试)以简化新算法的开发。框架定义了一组用于强化学习的API和关键组件,使用户能够轻松地重用组件,并在现有的组件之上构建新的算法。

Coach可与如OpenAI Gym、Roboschool和ViZDoom等顶级环境进行集成,同时它还提供了可视化培训过程和了解代理的基本机制的各种技术,所有的算法都是使用英特尔优化的TensorFlow来实现的,也可以通过Intel的neon™框架来实现。

Agent

Coach包含许多Agent类型的实现,包括从单线程实现到多线程实现的无缝转换。Agent以模块化方式实现,以允许重用不同的构建块来构建新的和更复杂的代理。此外,Coach可以在单个任务的基础上编写新的Agent,并切换到同步或异步的多任务实现,并进行最少的更改。

在Coach中集成了过去几年引入的各种Agent类型的实现方式,这让用户解决具有不同需求和与代理交互的方式的环境,例如连续和离散的动作空间,视觉观察空间或仅包括原始测量的观察空间。

环境

Coach使用OpenAI Gym作为与不同环境进行交互的主要工具。它还支持Gym的外部扩展,包括Roboschool, gym-extensions和PyBullet, 其环境封装器可以添加更多的自定义环境,以解决更广泛的学习问题。

可视化

Intel还发布了CoachDashboard作为可视化和调试的补充工具。Dashboard是Coach的一个图形用户界面,通过展示训练过程中的不同信号,可以让用户以简单易懂的方式比较不同方式运行的训练质量。在训练期间,Coach可跟踪任何有意义的内部信息并存储,以便在执行期间和完成后可视化进度。

Coach还支持其他调试和可视化方法,例如存储最佳场景的GIF动画,在游戏过程中显示动作值,等等。

使用

为方便用户使用Coach,Intel已经开放了GitHub信息库,然后按照的机器上安装Coach的说明进行操作即可。Intel还提供了友好的帮助文件,在GitHub存储库README文档中有几个简单的例子,同时在官网还有一个更全面的使用和实现文档。

Coach已经准备了超过60个预定义的预设、不同的代理和可用的环境。这些预设已经用于训练数百名Agent,并经过验证以获得良好的业绩。但是,使用这些预设并不是强制性的,并且创建新的预设与选择现有代理和现有环境一样容易。

下一步,Intel计划在未来的版本中增加更多算法和环境,如果你有任何建议和评论,可以在Github上进行互动。

AI研习社发现,目前不少巨头均推出了自己的深度学习框架,如Google 的TensorFlow、Amazon 的MxNet、Facebook的Caffe 2等。这些深度学习框架的流行降低了深度学习的门槛,让越来越多人开始参与到深度学习当中,但在降低门槛后如何提高训练的效率也成为了差异化的关键因素,这也是是多线程并行计算、多机器上的水平扩展甚至定制硬件最近开始得势的原因。

原文发布于微信公众号 - AI研习社(okweiwu)

原文发表时间:2017-10-23

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏机器之心

资源 | 让你事半功倍的小众Python库

提取数据,特别是从网络中提取数据是数据科学家的重要任务之一。Wget 是一个免费的工具,用于以非交互式方式从 Web 上下载文件。它支持 HTTP、HTTPS ...

15230
来自专栏玉树芝兰

如何对PDF文献做可视化分析?

看了大量文献后,你的硬盘上想必存下不少PDF文件。能否充分利用它们,挖掘出你独特的领域知识地图呢?本文为你提供一种简便易行的办法。

14420
来自专栏吉浦迅科技

假如用多个CPU核同时控制一个GPU,并且进行运算与数据的传递,请问这能够实现么?...

问:假如用多个CPU核同时控制一个GPU,并且进行运算与数据的传递,请问这能够实现么?我的工作站是48个CPU核,两块GPU卡,打算把CPU和GPU都用起来,我...

38770
来自专栏CDA数据分析师

资源 | 让你事半功倍的小众Python库

提取数据,特别是从网络中提取数据是数据科学家的重要任务之一。Wget 是一个免费的工具,用于以非交互式方式从 Web 上下载文件。它支持 HTTP、HTTPS ...

14830
来自专栏CreateAMind

神经网络艺术图片效果及课程ppt

11120
来自专栏AI研习社

Github 项目推荐 | 用于构建端对端对话系统和训练聊天机器人的开源库 —— DeepPavlov

DeepPavlov 是一个开源的会话 AI 库,建立在 TensorFlow 和 Keras 之上,用于以下设计: NLP和对话系统研究; 实施和评估复杂的会...

63890
来自专栏瓜大三哥

乒乓结构和流水线设计

乒乓结构 ? l 通过“输入数据选择单元”和“输出数据选择单元”按节拍、相互配合的切换,将经过缓冲的数据流没有停顿地送到“数据流运算处理模块”进行运算与处...

30460
来自专栏腾讯高校合作

【犀牛鸟论道】深度学习必备!解读腾讯优图首个开源项目ncnn

ncnn (GitHub地址:https://github.com/Tencent/ncnn)是一个为手机端极致优化的高性能神经网络前向计算框架。ncnn 从设...

38060
来自专栏AI科技大本营的专栏

AI 技术讲座精选:5款新手也能快速构建的深度学习应用(使用Python)

前 言 深度学习从根本上改变了我们周围的一切。很多人认为必须成为深度学习的专家,才能将深度学习用到自己的应用中。然而,实际并非如此。 在我之前的文章中,我讨论了...

34870
来自专栏AI科技评论

开发 | Intel发布开源增强学习框架Coach,多线程实现领先的增强学习算法

AI科技评论消息,日前,英特尔发布了一个新的开源增强学习框架Coach。该框架利用多核CPU处理能力,用于训练和评估增强学习Agent。Coach包含一些领先的...

38080

扫码关注云+社区

领取腾讯云代金券