强化栗 发自 凹非寺 
量子位 报道 | 公众号 QbitAI

今天,DeepMind开源了一个基于TensorFlow的强化学习库,名字叫TRFL

思路是模块化,强调灵活度:如果把造智能体想象成搭积木,许多关键的、常用的木块都在这里集合了:

比如,DQN (深度Q网络) 、DDPG (深度确定策略梯度),以及IMPALA (重要性加权演员学习者架构) ,都是DeepMind功勋卓著的组件。

库里面的组件,虽然来源各不相同,但都经过严密测试,因而相对可靠;并且只要一个API,对开发者比较友好。

DeepMind团队自身做研究,也严重依赖这个库。

为了那些难以发觉的Bug

这个库,写作TRFL,读作“Truffle”。翻译成中文叫“松露”。

那么,松露为何而生?

交互Bug很隐秘

深度强化学习智能体,里面常常包含大量的交互组件

至少要有环境,加上价值网络或者策略网络

通常,还会有环境学习模型 (Learned Model) 、伪奖励函数 (Pseudo-Reward Functions) 、或者重播系统 (Replay System) 这样的部分。

可是,交互组件到底用什么方式交互?论文里一般没有细致的讨论,有bug也很难发现

为此,OpenAI写过一篇博客,研究了10个热门的强化学习智能体,发现6个都有隐藏bug。

虽然,用一个开源的、完整的智能体,对复现研究成果是有帮助的,但灵活度不够,要修改就很难了。

所以,才有了松露。

损失函数模块化

深度强化学习 (DRL) ,依赖价值网络策略网络的不断更新。

DeepMind团队发现,比起传统的RL更新,损失函数更加模块化,更容易结合到监督/无监督的目标里去。

松露里包含了许多损失函数运算,全部在纯TensorFlow里实现。

不是完整算法,但是各自经过严密测试,可以用来搭成完整的智能体。

并且,只要一个API来解决各种核心组件,即便各自来源是天南地北,也很容易互相组合。

松露,营养很丰富

松露里的许多函数和运算,既可以用在经典RL算法里,也可以用在尖端技术上。

基于价值

针对基于价值的强化学习,松露提供了各种TensorFlow运算,用于在离散动作空间 (Discrete Action Spaces) 里学习:时间差分法,Sarsa,Q学习,以及它们的变体。还有连续控制算法 (比如DPG) 需要的运算。

除此之外,也有学习分布式价值函数 (Distributional Value Function) 用的运算。

以上运算都支持批量 (Batches) ,返回的损失可以用TensorFlow优化器来最小化。不论是Transition的批量,还是Trajectory的批量。

基于策略

针对基于策略的强化学习,这里既有工具可以轻松实现在线方法,比如A2C ,也支持离线的修正技术,比如v-trace。

另外,连续动作里策略梯度的计算,松露也支持。

最后的最后,松露还提供辅助的伪奖励函数 (Pseudo-Reward Functions) ,用来提升数据效率。

开源了,并待续

如今,松露已经开源了,传送门在文底。

不过,团队在博客里写到,这不是一次性发布。

因为,DeepMind在做研究的过程中,也非常依赖这个库,所以会持续对它进行维护,也会随时添加新功能。

当然,团队也欢迎强化学习界的小伙伴们,为松露添砖加瓦。

多巴胺也是强化学习库

如果你还记得,今年8月谷歌开源了强化学习框架Dopamine,中文叫多巴胺,也是基于TensorFlow。

名字取自人类大脑奖励机制中的主角物质多巴胺,为了表达神经科学和强化学习之间的缘分联系。

多巴胺框架,也是强调灵活性稳定性复现性

至于,多巴胺和松露之间有怎样的关系,或者怎样的差别,如果你也好奇的话,可以自行探索一下。

松露传送门:
https://github.com/deepmind/trfl/

多巴胺传送门:
https://github.com/google/dopamine

加入社群

量子位AI社群开始招募啦,欢迎对AI感兴趣的同学,在量子位公众号(QbitAI)对话界面回复关键字“交流群”,获取入群方式;

此外,量子位专业细分群(自动驾驶、CV、NLP、机器学习等)正在招募,面向正在从事相关领域的工程师及研究人员。

进专业群请在量子位公众号(QbitAI)对话界面回复关键字“专业群”,获取入群方式。(专业群审核较严,敬请谅解)

诚挚招聘

量子位正在招募编辑/记者,工作地点在北京中关村。期待有才气、有热情的同学加入我们!相关细节,请在量子位公众号(QbitAI)对话界面,回复“招聘”两个字。

量子位 QbitAI · 头条号签约作者

վ'ᴗ' ի 追踪AI技术和产品新动态

DeepMind开源了强化学习库“松露”,团队自身也严重依赖它相关推荐

  1. 【重磅推荐】哥大开源“FinRL”: 一个用于量化金融自动交易的深度强化学习库

    深度强化学习实验室 官网:http://www.neurondance.com/ 论坛:http://deeprl.neurondance.com/ 编辑:DeepRL 一.关于FinRL 目前,深度 ...

  2. AI周报丨标清变4k?B站超分辨率算法开源;强化学习算法控制核聚变登上《nature》

    AI周刊丨标清变4k?B站超分辨率算法开源:强化学习算法控制核聚变登上<nature> 2022年2月22日 极链AI云 文章目录 AI周刊丨标清变4k?B站超分辨率算法开源:强化学习算法 ...

  3. DeepMind 的新强化学习系统是迈向通用 AI 的一步吗?

    作者 | Ben Dickson 来源 | 数据实战派 这篇文章是我们对 AI 研究论文评论的一部分,这是一系列探索人工智能最新发现的文章. 对于已经精通围棋.星际争霸 2 和其他游戏的深度强化学习模 ...

  4. DeepMind 的新强化学习系统,是迈向通用人工智能的一步吗?

    作者:Ben Dickson 来源:数据实战派 前言 尽管已经掌握围棋.星际争霸 2 和其他游戏,深度强化学习模型的主要挑战之一是,它们无法将其能力泛化到训练领域之外.这种限制使得将这些系统在现实世界 ...

  5. DeepMind的新强化学习系统是迈向通用AI的下一步吗?

    来源:AI前线 作者:Ben Dickson 译者:马可薇 策划 :凌敏 本文是 TechTalks 在人工智能领域最新研究发现的论文评论系列. 对于精通围棋.星际争霸 2 以及其他游戏的深度强化学习 ...

  6. Life——一个简洁易用的强化学习库,基于pytorch

    简介 Life是一个基于pytorch实现的强化学习库,实现了多种强化学习算法. 项目地址:https://github.com/HanggeAi/Life 目前包含的强化学习算法 Sarsa mul ...

  7. DeepMind的新强化学习系统,是迈向通用人工智能的一步吗?

    尽管已经掌握围棋.星际争霸 2 和其他游戏,深度强化学习模型的主要挑战之一是,它们无法将其能力泛化到训练领域之外.这种限制使得将这些系统在现实世界中的应用变得非常困难,因为现实世界中的情况比训练模型的 ...

  8. DeepMind发布神经网络、强化学习库,网友:推动JAX发展

    点击上方"AI遇见机器学习",选择"星标"公众号 重磅干货,第一时间送达 十三 发自 凹非寺 量子位 报道 | 公众号 QbitAI DeepMind今日发布了 ...

  9. 强化学习原理与python实现原理pdf_纯Python实现!Facebook发布PyTorch分布式强化学习库...

    图灵TOPIA来源:Facebook编译:刘静图灵联邦编辑部出品Facebook于近日发布了PyTorch中用于强化学习(RL)研究的平台:TorchBeast.TorchBeast实现了流行的IMP ...

最新文章

  1. chapter3.3字典
  2. 【干货分享】32本优秀的 JavaScript 免费电子书
  3. 四年C++老炮,转攻Python实践分享
  4. 计算机if函数and,excel if_EXCEL函数IF()+()和IF(and)区别是什么?
  5. deepfefm 算法思维导图
  6. 裂墙推荐!IntelliJ IDEA 常用插件一览,让效率成为习惯
  7. Python nose单元测试框架的安装与使用
  8. DI 之 3.4 Bean的作用域(捌)
  9. enum.values_占用内存的Enum.values()方法
  10. python django mysql web页面多级联动_Python Web实战:Python+Django+MySQL实现基于Web版的增删改查...
  11. Wolfram 语言之父 Stephen Wolfram :编程的未来
  12. WIFI篇(3.python破解wifi--pywifi的介绍)
  13. 苹果电脑如何快速用计算机,苹果电脑快捷键如何使用 Mac快捷键大全详细教程...
  14. E680最强综合技巧集合
  15. 如何查找各个手机放序列号
  16. NoSQLBooster for MongoDB 5x版本商业版(mac os)
  17. 常识——(adb)小米VR正式版使用第三方APP,电脑充当手机的蓝牙手柄,实现确认功能,从电脑键盘向手机输入文字
  18. 计算机里面的固态硬盘,怎么判断电脑里面的是不是固态硬盘?
  19. 基于51单片机的12864液晶演示器驱动
  20. 不使用采集卡,实现相机手机多机位直播

热门文章

  1. 领导:“请在今晚进行网络系统升级”
  2. IT工程师志强追剧《延禧攻略》后,竟然……
  3. 华米OV坐不住了!九大手机厂商围剿微信小程序
  4. 上传excel腾讯云服务器,使用SpringBoot上传文件到腾讯云
  5. html垂直线6,HTML的垂直线
  6. java中容器里的增删改查_Java工程师的第八天——简单的增删改查的应用
  7. 学创杯创业模拟大赛攻略_蝉联冠军!哈尔滨理工大学连续两届获得“学创杯”一等奖...
  8. git分支拉项目_Git 拉取 GitLab 分支上的项目
  9. centos 7.5 mysql_CentOS7.5安装MySQL8以及相关设置
  10. gzdeflate函数_PHP中的gzcompress、gzdeflate、gzencode函数详解