6行代码搞定基本的RL算法,速度围观Reddit高赞帖

百家 作者:新智元 2019-05-27 09:16:23



  新智元报道  

来源:reddit

编辑:张佳

【新智元导读】今天和大家分享Reddit上的一个热帖,楼主用PyTorch实现了基本的RL算法,而且每个算法都在一个文件夹中完成,即使没有GPU,每个算法也可以在30秒内完成训练。


近日,有开发人员用PyTorch实现了基本的RL算法,比如REINFORCE, vanilla actor-critic, DDPG, A3C, DQN 和PPO。这个帖子在Reddit论坛上获得了195个赞并引发了热议,一起来看一下吧。



特点如下:


每个算法都在一个文件中完成。

每个算法的长度可达100~150行代码。

即使没有GPU,每个算法也可以在30秒内完成训练。

Envs固定在“CartPole-v1”上,你只需关注执行。

 

minimalRL-pytorch算法:


1. REINFORCE(66行)

2. TD Actor-Critic(97行)

3. DQN(113行,包括重放内存和目标网络)

4. PPO(116行,包括GAE)

5. DDPG(149行,包括OU噪声和软目标更新)

6. A3C(116行)

7. 有什么建议吗?

 

依赖配置:


1. PyTorch

2. OpenAI GYM

 

使用:

# Works only with Python 3.# e.g.python3 REINFORCE.pypython3 actor_critic.pypython3 dqn.pypython3 ppo.pypython3 ddpg.pypython3 a3c.py

 

评论中,不少朋友表示了对楼主的认可和感谢:



Dump7留言:“可以!这是我见过的最美的东西之一。我不是一个能用框架编写NN的人。但我正在努力。这将在很大程度上帮助到我。谢谢你做了这个。但是你能为基本的CNNRNN制作这样的单一文件代码吗?”


CodeReclaimers表示:“谢谢你分享这个——我知道把代码简化到最少是很费事的。特别好的是,你的代码将依赖配置控制在最低限度。通常都是,我去寻找可以学习的例子,要花至少30多分钟来收集所有依赖配置,结果发现我的平台上少了一些关键的东西。”


Reddit上的讨论:

https://www.reddit.com/r/MachineLearning/comments/bt8sap/p_implementations_of_basic_rl_algorithms_with/


Github资源:

https://github.com/seungeunrho/minimalRL



新智元春季招聘开启,一起弄潮 AI 之巅!

岗位详情请戳:


【加入社群】


新智元 AI 技术 + 产业社群招募中,欢迎对 AI 技术 + 产业落地感兴趣的同学,加小助手微信号:aiera2015_2   入群;通过审核后我们将邀请进群,加入社群后务必修改群备注(姓名 - 公司 - 职位;专业群审核较严,敬请谅解)。


关注公众号:拾黑(shiheibook)了解更多

[广告]赞助链接:

四季很好,只要有你,文娱排行榜:https://www.yaopaiming.com/
让资讯触达的更精准有趣:https://www.0xu.cn/

公众号 关注网络尖刀微信公众号
随时掌握互联网精彩
赞助链接