对大多数机器学习初学者来说,较为熟悉的是监督学习(Supervised Learning,SL),但是对强化学习(Reinforcement Learning,RL)比较陌生。2016年初AlphaGo火了以后,作为AlphaGo背后核心技术的Deep Q-Network(DQN)就是一种强化学习算法的一种。
网上关于强化学习的科普文章、介绍资料很多,有些水平差强人意,尤其是一些中文博客简直没法看。下面给出强化学习的一种学习路线图,帮助初学者少走一些弯路。
基础
推荐David Silver关于RL的公开课:
http://www0.cs.ucl.ac.uk/staff/d.silver/web/Teaching.html
(David Silver是DeepMind的研究员,也是AlphaGo、DQN背后的大牛之一。)
结合Sutton的经典教材《Reinforcement Learning: An Introduction》
https://webdocs.cs.ualberta.ca/~sutton/book/bookdraft2016sep.pdf
搞定RL的基础不是问题。
进阶
传统RL的主要困难之一在于对复杂的环境进行建模,需要对高维的传感器输入如图像、语音等,抽取特征来表征环境。近年来RL的巨大进展是由于和深度学习(Deep Learning)结合,直接实现了end-to-end的学习和规划。可以看下面几篇paper。
DeepMind用Deep Q-Network来玩Atari系列游戏,达到接近甚至超越人类高手玩家的水平:
Playing atari with deep reinforcement learning. arXiv preprint arXiv:1312.5602 (2013). [pdf])
Human-level control through deep reinforcement learning. Nature 518.7540 (2015): 529-533. [pdf]
大名鼎鼎的AlphaGo,用的是policy gradient算法:
Mastering the game of Go with deep neural networks and tree search. Nature 529.7587 (2016): 484-489. [pdf]
A3C算法,当前的state-of-the-art方法,其中实验结果表明从效果来看A3C > policy gradient > DQN:
Asynchronous methods for deep reinforcement learning." arXiv preprint arXiv:1602.01783 (2016).
前沿
强化学习有很多好的应用,如robotics、route planning等,去看各个顶级会议的paper吧。