设为首页 - 加入收藏 黄南站长网 (http://www.0973zz.com)- 国内知名站长资讯网站,提供最新最全的站长资讯,创业经验,网站建设等!
热搜: 为什么 2018 什么 模式
当前位置: 首页 > 运营中心 > 建站资源 > 经验 > 正文

DeepMind一次性开源3个新框架!深度强化学习应用落地即将迎来春天?

发布时间:2019-09-20 14:41 所属栏目:[经验] 来源:杨鲤萍
导读:本文转自雷锋网,如需转载请至雷锋网官网申请授权。 深度强化学习(Deep Reinforcement Learning,DRL)一直是近年来人工智能的一些重大突破的核心。然而,尽管 DRL 有了很大的进步,但由于缺乏工具和库,DRL 方法在主流解决方案中仍然难以应用。因此,DRL

本文转自雷锋网,如需转载请至雷锋网官网申请授权。

深度强化学习(Deep Reinforcement Learning,DRL)一直是近年来人工智能的一些重大突破的核心。然而,尽管 DRL 有了很大的进步,但由于缺乏工具和库,DRL 方法在主流解决方案中仍然难以应用。因此,DRL 仍然主要是以研究形式存在,并没有在现实世界看到许多采用机器学习的应用方案;而解决这个问题就需要更好的工具和框架。

就在最近,DeepMind 发布了一系列新的开源技术,包括三种 DRL 框架:OpenSpiel、SpriteWorld 和 Bsuite,这些技术将有助于简化 DRL 方法的应用。

DeepMind一次性开源3个新框架!深度强化学习应用落地即将迎来春天?

DRL 框架概述

作为一种新的深度学习技术,DRL 的采用面临着简单实现算法以外的挑战。例如:用以简化 DRL 技术应用的训练数据集、环境、监控优化工具以及精心设计的实验等。

考虑到 DRL 的机制不同于大多数传统的机器学习方法,尤其对于 DRL 的情况,这种差异更甚。DRL 智能体试图在给定的环境中通过反复试验来实现对任务的掌握。在这种情况下,环境和实验的稳健性在 DRL 智能体开发的知识中起着重要的作用。

为了实现 DRL 的重大突破,将其更好的应用于重大人工智能挑战中,DeepMind 构建了许多专有工具和框架,以大规模简化 DRL 智能体的训练、实验和管理。并且开放了三种 DRL 框架,包括:OpenSpiel、SpriteWorld 和 bsuite,以便其他研究人员可以使用它们来推进 DRL 方法的现状。

下面是三种框架的介绍,并附有对应的开源地址。

OpenSpiel

与其他数据集不同,游戏本质上基于试验和奖励机制,可以用来训练 DRL 智能体。然而,正如我们所看到的,游戏环境远不是简单的组装。

DeepMind一次性开源3个新框架!深度强化学习应用落地即将迎来春天?

OpenSpiel 是一系列环境和算法的集合,用于研究一般强化学习和游戏中的搜索/规划。OpenSpiel 的目的是在许多不同的游戏类型中促进通用多智能体的强化学习,其方式与通用游戏类似,但它重点是强调学习而不是竞争形式。当前版本的 OpenSpiel 包含 20 多种不同类型的游戏的实现,例如:完全信息、同步移动、不完全信息、网格世界游戏、博弈游戏和一些普通形式/矩阵游戏。

OpenSpiel 的核心实现是基于 C++和 Python 绑定,便于在不同的深度学习框架中采用。该框架包含了一系列游戏组合,允许 DRL 智能体掌握合作和竞争行为。类似地,OpenSpiel 包含了多种 DRL 算法组合,例如:搜索、优化和单一智能体等。OpenSpiel?还包括分析学习动态和其他常见评估指标的工具。

OpenSpiel?支持游戏类型

  • 单人和多人游戏

  • 完全可观测(通过观测)和不完全信息博弈(通过信息状态和观测)

  • 随机性(尽管部分支持隐式随机性,但主要为不确定事件)

  • n人普通形式的“一杆”游戏和(2人)矩阵游戏

  • 序贯和同时动作游戏

  • 零和、一般和和合作(相同收益)博弈

OpenSpiel?支持语言类型

  • C++ 11

  • Python 3

  • swift 中提供的部分语言

游戏和实用程序功能(例如:计算)是用 C++编写的。这些也可以使用 pybind11 python(2.7 和 3)绑定。方法名称位于 C++中的 CamelCase 和 Python 中的 SnaKeKY 情况(例如,在 C++中的 Apple 动作将是 Python 中的 Stest.Apple)。有关名称之间的完整映射,请参见 open_spiel/python/pybind11/pyspel.cc 中的 pybind11 定义。

OpenSpiel 已经在 linux 上进行了测试(debian 10 和 ubuntu 19.04),但它还未在 MacOS 或 Windows 上进行测试,由于代码使用了 MacOS 和 Windows 上也提供的免费工具,因此 DeepMind?预计在这些平台下编译和运行不会出现任何(重大)问题。

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

pybind11 地址:https://pybind11.readthedocs.io/en/stable/

SpriteWorld

几个月前,DeepMind 发表了一篇论文,介绍了一种基于无监督式目标搜索和好奇心驱动的强化学习模型(Curious Object-Based seaRch Agent,COBRA),它通过使用强化学习来识别给定环境中的对象(相关论文可参考:https://arxiv.org/abs/1905.09275)。

该模型使用了一系列二维游戏进行训练,在这些游戏中数字可以自由移动。用来训练 COBRA 模型的环境就是最近 deepmind 开源 DRL 三大框架之一,SpriteWorld。

DeepMind一次性开源3个新框架!深度强化学习应用落地即将迎来春天?

SpriteWorld 是一个基于 python 的强化学习环境,它由一个可以自由移动的简单形状的二维竞技场组成。更具体地说,SpriteWorld 是一个二维方形竞技场,有不同数量的彩色 Sprites,可以自由放置和渲染,但不会发生碰撞。SpriteWorld 环境基于一系列关键特征:

  • 多目标的竞技场反映了真实世界的组成,杂乱的物体场景可以用于共享特征,同时也可以独立移动。这也提供了测试与任务无关的特征/目标的稳健性和组合泛化的方法。

  • 连续点击和推动动作空间的结构反映了世界空间和运动的结构。它还允许智能体在任何方向上移动任何可见对象。

  • 目标的概念并非以任何特权方式所提供(例如:操作空间中没有特定目标的组件),并且完全可以由智能体发现。

SpriteWorld 为每个 DRL 智能体提供三项主要的训练任务:

  • 目标搜索。智能体必须将一组目标(可通过某些功能识别,例如:绿色的目标)带到屏幕上的隐藏位置,忽略干扰对象(例如:非绿色的目标);

  • 排序。智能体必须根据目标的颜色将每个目标带到规定的位置;

  • 聚类。智能体必须根据目标的颜色将其分组排列在群集中。

【免责声明】本站内容转载自互联网,其相关言论仅代表作者个人观点绝非权威,不代表本站立场。如您发现内容存在版权问题,请提交相关链接至邮箱:bqsm@foxmail.com,我们将及时予以处理。

网友评论
推荐文章