【新智元导读】谷歌大脑的 Denny Britz 在他的个人博客上发表了一篇强化学习经验总结,包括好用的教程和教材,最关键的,是他经试着用 Python、OpenAI Gym、Tensorflow 写了大部分标准强化学习算法,并且按章节列出,还提供了练习和答案,是为强化学习实践的好资料。
为什么要学习强化学习?
强化学习(Reinforcement Learning,RL)是我最感兴趣的领域之一。过去几年里强化学习取得的一些成果得到了很多关注,例如掌握围棋、从原始像素学会玩 Atari 游戏,但强化学习还可以广泛应用在机器人学、图像处理和自然语言处理。
强化学习和深度学习技术结合的效果非常好。这两个领域在很大程度上相互影响。从强化学习的角度看,深度神经网络可以作为函数逼近器学习好的表征,例如,处理 Atari 游戏图像或理解围棋棋局。从深度学习的角度看,RL 技术能监督通常由深度学习处理的问题。例如,RL 技术用于在图像处理时执行注意机制,或用于优化对话界面和神经翻译系统的长期奖励机制。最后,由于强化学习关注最佳决策,它和人类心理学、神经科学以及许多其他领域有一些非常有趣的相似之处。
随着基础性研究出现大量开放性问题和挑战,我认为不久的将来就能看到强化学习的许多突破。还有什么比教计算机玩《星际争霸》和《毁灭战士》更有趣呢?
怎样学习强化学习?
有关强化学习的优秀资源非常多,我极力推荐的是以下两个:
- AlphaGo 之父、谷歌 DeepMind 研究员 David Silver 的强化学习课程
- 最新版《强化学习》的教材,作者是 Richard Sutton 和 Andrew Barto
后者虽然还是正在进行的书,不过大约 80% 是完整的。David 的教程是根据这本教材来的,所以两者一起学更好。实际上,这两个资源已经几乎囊括了强化学习方面近期的所有研究成果。开始学习需要基础数学知识和一点机器学习知识。【点击阅读 David Silver 介绍 DeepMind 的强化学习实践】
上述材料属于理论学习。实践的话,推荐你实际去使用课程和教材中涉及的算法。这篇文章以及 Github 库中有很多这些算法。我已经试着用 Python、OpenAI Gym、Tensorflow写了大部分标准强化学习算法,我把它们按章节列出来了,还提供了练习和答案,可以用来作为上述理论学习的补充。这些都可以在 Github repository 中找到:https://github.com/dennybritz/reinforcement-learning。
【以下资源都有超链接,访问网站直达:http://www.wildml.com/2016/10/learning-reinforcement-learning/】
内容列表
- Introduction to RL problems, OpenAI gym
- MDPs and Bellman Equations
- Dynamic Programming: Model-Based RL, Policy Iteration and Value Iteration
- Monte Carlo Model-Free Prediction & Control
- Temporal Difference Model-Free Prediction & Control
- Function Approximation
- Deep Q Learning (WIP)
- Policy Gradient Methods (WIP)
- Learning and Planning (WIP)
- Exploration and Exploitation (WIP)
补充算法列表
- Dynamic Programming Policy Evaluation
- Dynamic Programming Policy Iteration
- Dynamic Programming Value Iteration
- Monte Carlo Prediction
- Monte Carlo Control with Epsilon-Greedy Policies
- Monte Carlo Off-Policy Control with Importance Sampling
- SARSA (On Policy TD Learning)
- Q-Learning (Off Policy TD Learning)
- Q-Learning with Linear Function Approximation
- Deep Q-Learning for Atari Games
- Double Deep-Q Learning for Atari Games
- Deep Q-Learning with Prioritized Experience Replay (WIP)
- Policy Gradient: REINFORCE with Baseline
- Policy Gradient: Actor Critic with Baseline
- Policy Gradient: Actor Critic with Baseline for Continuous Action Spaces
- Deterministic Policy Gradients for Continuous Action Spaces (WIP)
- Deep Deterministic Policy Gradients (DDPG) (WIP)
- Asynchronous Advantage Actor Critic (A3C) (WIP)
了解更多 & 编译来源:
http://www.wildml.com/2016/10/learning-reinforcement-learning/