前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >人人能上手:OpenAI发射初学者友好的强化学习教程 | 代码简约易懂

人人能上手:OpenAI发射初学者友好的强化学习教程 | 代码简约易懂

作者头像
量子位
发布2018-12-07 15:52:12
1.1K0
发布2018-12-07 15:52:12
举报
文章被收录于专栏:量子位量子位
栗子 发自 凹非寺 量子位 出品 | 公众号 QbitAI

OpenAI说,全无机器学习基础的人类,也可以迅速上手强化学习。

他们刚刚发射了一套强化学习 (RL) 入门教程,叫做Spinning Up。真诚友好,无微不至。

从一套重要概念,到一系列关键算法实现代码,再到热身练习,每一步都以清晰简明为上,全程站在初学者视角。

新手光环

团队表示,目前还没有一套比较通用的强化学习教材,RL领域只有一小撮人进得去。这样的状态要改变啊,因为强化学习真的很有用。

说不定你也用得上。所以,仔细翻翻这个新手包,看看到底有多关怀:

五大核心

Spinning Up包含了5个重要部分。

第一部分,认识一下强化学习

这里分为三小步:

一是了解基础概念,即知道RL能用来做什么,理解概念和术语。

二是了解算法分为哪些种类。

三是了解策略优化

https://spinningup.openai.com/en/latest/spinningup/rl_intro.html

第二部分,成为RL研究人员

(此部分可选择性忽略)

如何让自己习惯RL研究人员的新设定?

第一,知道哪些数学知识深度学习知识,是需要简要了解的。

第二,在实践中学习,写最最最简单的实现 (后面有代码) ,注重理解。

第三,有了小小的经验之后,试着开发自己的研究项目。这是入门之后的事了。

第四之后,有些遥远,暂时不详述了。

第三部分,论文阅读清单

这个论文列表非常详细,分为12个小类别,每个类别下有2-8篇论文。

团队说,列表比全面还全面,足够给一个想做RL研究的人类铺路了。

https://spinningup.openai.com/en/latest/spinningup/keypapers.html

第四部分,为初学者定制的代码

GitHub上面有个叫spinningup的项目,包含了强化学习能用到的各种关键算法:

VPG、TRPO、PPO、DDPG、TD3和SAC等。

团队说,这里的代码都是为初学者定制,很短很好学。比起模块化,Spinning Up以清晰为重,代码都注释过了,可以很清楚得看出每一步都在做什么,并且有背景材料可以辅助理解。

目标就是用最简约的实现,来演示一条理论是如何变成代码的,而抽象层和混淆层(Layers of Abstraction and Obfuscation) 这些东西,都省去了。

https://github.com/openai/spinningup

第五部分,热身练习

这里有两个习题集。

一是关于实现的基础,二是关于算法失效模式。

后面还有附加题,是要从零开始自己写代码实现,相对艰辛。

https://spinningup.openai.com/en/latest/spinningup/exercises.html

Hello World

团队说,要感受强化学习是怎样运作的,最好的方式是跑一跑。

在Spinning Up里面,就很容易,只要用这段代码:

1python -m spinup.run ppo --env CartPole-v1 --exp_name hello_world

训练结束的时候,你会看到说明,然后可以按照里面讲的方法来观察数据,也观察训练好的智能体的视频。

另外,Spinning Up里面的实现,和一系列Gym环境都兼容:Classic Control,Box2D,MUJOCO等等。

去吧,皮卡丘

看上去,好像真的没有很难。

OpenAI就是希望其他领域的研究人员,也能很轻易地用强化学习来辅助研究。

所以,试一下吧。

教程入口: https://spinningup.openai.com/en/latest/index.html

GitHub传送门: https://github.com/openai/spinningup

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2018-11-09,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 量子位 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 五大核心
    • 第一部分,认识一下强化学习
      • 第二部分,成为RL研究人员
        • 第三部分,论文阅读清单
          • 第四部分,为初学者定制的代码
            • 第五部分,热身练习
            • Hello World
            • 去吧,皮卡丘
            领券
            问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档