Intel发布开源增强学习框架Coach
jopen 7年前
<p style="text-align: center;"><a href="/misc/goto?guid=4958995631824946297" title="Intel"><img alt="Intel发布开源增强学习框架Coach" src="https://simg.open-open.com/show/186e8e18d7afbd3c587c3d54e719720e.gif" /></a></p> <p>今天,英特尔发布了一个新的<a href="/misc/goto?guid=4959011380757416165" rel="nofollow">开源增强学习框架 Coach</a>。该框架利用多核 CPU 处理能力,用于训练和评估增强学习 Agent。Coach 包含一些领先的增强学习算法的多线程实现,适用于各种游戏和机器人环境。它能够在台式计算机上高效地训练强化学习 Agent,而无需任何额外的硬件。</p> <p>自从 2016 年推出用于深层加强学习的异步方法以来,许多算法通过在许多 CPU 内核中并行运行多个实例,能够更快地实现更好的策略。到目前为止,这些算法包括 A3C 、DDPG、PPO、DFP 和 NAF,而 Coach 不仅包括上述等最新算法的实现,更可以帮助用户现场搭建使用。</p> <p>要使用 Coach 首先需要定义想要解决的问题,或选择一个现有问题,然后选择一套强化学习算法来解决问题。Coazh 可以使用现有算法进行简单的实验,并用作沙盒(雷锋网注:沙盒是在受限的安全环境中运行应用程序的一种做法,这种做法是要限制授予应用程序的代码访问权限,便于在开发测试中的调试)以简化新算法的开发。框架定义了一组用于强化学习的 API 和关键组件,使用户能够轻松地重用组件,并在现有的组件之上构建新的算法。</p> <p>Coach 可与如 OpenAI Gym、Roboschool 和 ViZDoom 等顶级环境进行集成,同时它还提供了可视化培训过程和了解代理的基本机制的各种技术,所有的算法都是使用英特尔优化的 TensorFlow 来实现的,也可以通过 Intel 的 neon™框架来实现。</p> <p><strong>Agent</strong></p> <p>Coach 包含许多 Agent 类型的实现,包括从单线程实现到多线程实现的无缝转换。Agent 以模块化方式实现,以允许重用不同的构建块来构建新的和更复杂的代理。此外,Coach 可以在单个任务的基础上编写新的 Agent,并切换到同步或异步的多任务实现,并进行最少的更改。</p> <p>在 Coach 中集成了过去几年引入的各种 Agent 类型的实现方式,这让用户解决具有不同需求和与代理交互的方式的环境,例如连续和离散的动作空间,视觉观察空间或仅包括原始测量的观察空间。</p> <p style="text-align:center"><img alt="Intel发布开源增强学习框架Coach" src="https://simg.open-open.com/show/850dcc9fa8779e865824a4ccfb01903a.jpg" /></p> <p>环境</p> <p>Coach 使用 OpenAI Gym 作为与不同环境进行交互的主要工具。它还支持 Gym 的外部扩展,包括 Roboschool, gym-extensions 和 PyBullet, 其环境封装器可以添加更多的自定义环境,以解决更广泛的学习问题。</p> <p><strong>可视化</strong></p> <p>Intel 还发布了 Coach Dashboard 作为可视化和调试的补充工具。Dashboard 是 Coach 的一个图形用户界面,通过展示训练过程中的不同信号,可以让用户以简单易懂的方式比较不同方式运行的训练质量。在训练期间,Coach 可跟踪任何有意义的内部信息并存储,以便在执行期间和完成后可视化进度。</p> <p style="text-align:center"><img alt="Intel发布开源增强学习框架Coach" src="https://simg.open-open.com/show/e9f0fe8b03b7dd07a981ef86fbce0ac5.jpg" /></p> <p>Coach 还支持其他调试和可视化方法,例如存储最佳场景的 GIF 动画,在游戏过程中显示动作值,等等。</p> <p><strong>使用</strong></p> <p>为方便用户使用 Coach,Intel 已经开放了 <a href="/misc/goto?guid=4959011380757416165" rel="nofollow">GitHub 信息库</a>,然后按照的机器上安装 Coach 的说明进行操作即可。Intel 还提供了友好的帮助文件,在 GitHub 存储库 README 文档中有几个简单的例子,同时在<a href="/misc/goto?guid=4959011380877828213" rel="nofollow">官网</a>还有一个更全面的使用和实现文档。</p> <p>Coach 已经准备了超过 60 个预定义的预设、不同的代理和可用的环境。这些预设已经用于训练数百名 Agent,并经过验证以获得良好的业绩。但是,使用这些预设并不是强制性的,并且创建新的预设与选择现有代理和现有环境一样容易。</p> <p>下一步,Intel 计划在未来的版本中增加更多算法和环境,如果你有任何建议和评论,可以在 Github 上进行互动。</p> <p>雷锋网发现,目前不少巨头均推出了自己的深度学习框架,如 Google 的 TensorFlow、Amazon 的 MxNet、非死book 的 Caffe 2 等。这些深度学习框架的流行降低了深度学习的门槛,让越来越多人开始参与到深度学习当中,但在降低门槛后如何提高训练的效率也成为了差异化的关键因素,这也是是多线程并行计算、多机器上的水平扩展甚至定制硬件最近开始得势的原因。</p> <p>来自: <a href="/misc/goto?guid=4959011380982253402" id="link_source2">雷锋网</a></p>