强化学习入门资料整理
整理了我在入门强化学习的过程中收集的一些资料。
比较杂,图书、课程、博客、代码等等都有,但每一项都是我认真看过的、在学习和研究的过程中帮助到我的,因此也在这里推荐给大家。
图书
Reinforcement Learning: An Introduction
Sutton的良心巨制,最近也出了第二版。致力于长期从事RL研究的同志们一定要去拜读一下。
冯超 | 强化学习精要
知乎大神冯超的新书,在图书馆偶然看到就读了一下,涵盖的面挺广的,从实现到原理都有细致的讨论。
课程
UCB CS294
我不太爱看课程视频来学东西,感觉来的比较慢,而且太大而全了也不太消化的了。但有一个系统性的认识是很有必要的,而且UCB CS294这个课非常前沿,有时间的话非常推荐去看,没时间看看他们课程的Slides也大有脾益。
快速入门
强化学习从入门到放弃的资料
先摆上一份大神的集锦,也是一份总结,相比我这个更全,很多资料也是从那里看到的。
南京大学俞扬老师强化学习介绍
俞扬老师是周志华老师(西瓜书的作者)的高徒,从事强化学习的研究也有七八年了,做了很多非常扎实的研究。这里列了他做一些会议报告的Slides,逻辑清楚、举例得当,适合短时间内对RL有一个整体的了解。
知乎专栏 | 无痛的机器学习
上面提到的冯超写的一系列文章,虽然主题是机器学习,但也花了很大的篇幅在讨论RL。里面一些文章也写进了他的新书里。
知乎专栏 | 强化学习知识大讲堂
这个专栏我一直在关注,里面有很多非常好的文章,比如Actor-Critic算法小结,对AC方法做了非常细致的总结。更多宝藏大家可以自己去挖掘。
莫烦python | 强化学习
莫烦大神的博客非常推荐,对很多问题都有直观的解释,而且都有详细的代码实现和讲解。上面的只给了他RL部分的博客,在他Pytorch的博客里也有一部分Pytorch对RL算法的实现。
Pytorch Tutorials | Reinforcement Learning (DQN) Tutorial
个人非常喜欢Pytorch,因此经常逛Pytorch的官网。Pytorch也会把一些国外大牛的文章放在自己的教程里,更关系实现细节的同学们可以去学习一下。
OpenAI Spinning Up
前段时间OpenAI放出的大杀器,旨在帮助新手迅速上手RL。非常不错的资料,里面甚至还列举了RL各个方向上的一些经典Paper。
细节与调参
强化学习调参方法 | DeepRLHacks(中文版)
RL好听不好用,实现中会出现各种问题,这份资料帮助你思考自己的算法为什么不行以及如何改进。
强化学习 | DQN调整超参数体会
博主对比了同一问题下不同超参数的影响,帮助你对主要的超参数有更深刻的认识。
Deep Reinforcement Learning Doesn’t Work Yet
(中文版变革尚未成功:深度强化学习研究的短期悲观与长期乐观)
虽然叫做“RL doesn’t work”,但其中谈到的问题对我们让RL work非常有帮助,比如随机种子对结果的影响等。
代码
OpenAI Baselines
OpenAI实现的目前公认的RL算法baselines,如果你刚刚开始研究,不如先用baselines在你的问题上试一试效果如何。
另外,baselines对RL代码的组织结构也非常值得学习。
莫烦 | Reinforcement-learning-with-tensorflow
直接看baselines的代码可能会让你比较头疼,因为不同模块之间的耦合度很高。如果你只是想亲手码出来一各简单的RL demo(像倒立摆),那么就来看看莫烦的代码吧,对新手更加友好。
ikostrikov | pytorch-a2c-ppo-acktr
这是一份用Pytorch实现的AC框架主要算法的代码,相比TensorFlow我更喜欢用Pytorch一点,上手更快而且更Pythonic。
前沿
OpenAI Blog & DeepMind Blog
想要了解强化学习最新的一些研究?关注一下OpenAI和DeepMind的博客吧!两家公司可以说是目前RL的风向标了,博客也比Paper读起来更加亲民一点(有演示动画)。
深度强化学习的18个关键问题
目前RL还属于一个比较初期的研究阶段,很多问题有待解决。这篇文章列出来了普遍关心的一些问题和小方向,没有选择好方向的同学要好好看一下。