本文經AI新媒體量子位(公衆號ID:QbitAI)授權轉載,轉載請聯繫出處。
自從有了強化學習(RL),AI上能星際爭霸,下能雅達利稱王,讓內行人沉醉,讓外行人驚奇。
這裏恰有一份標星過萬的強化學習資源,既有教程推薦,又有配套練習,網友學了都說好,並且還在實時更新。
入學要求並不高,只需要一些基礎的數學和機器學習知識。
清晰的學習路徑
想要入門強化學習,一份優質的課程必不可少。
強化學習資源千千萬,項目作者 Denny Britz 大力推薦這兩個:
David Silver 的強化學習課程:
http://www0.cs.ucl.ac.uk/staff/d.silver/web/Teaching.html
以及 Richard Sutton 和 Andrew Barto的《強化學習:簡介(第二版)》:
http://incompleteideas.net/book/RLbook2018.pdf
p.s. 實測無需魔法
Denny Britz 小哥表示,這兩本書幾乎涵蓋了入門強化學習需要了解的大部分研究論文,基礎決定高度,理論知識還是要紮紮實實學起來。
理論有了,可書裏並沒有算法實現。
別擔心,幫人幫到底,送佛送到西,Denny Britz 親自動手,用 Python,OpenAI Gym 和 Tensorflow 實現了大多數標準強化算法,並把它們都共享了出來,方便大家配合教材食用。
簡直太貼心。
在這份萬星資源裏,每個文件夾都對應着教材的一個或多個章節。除了練習和解決方案之外,每個文件夾下還包含了一系列學習目標,基礎概念摘要,以及相關鏈接。
以基於模型的強化學習:使用動態規劃的策略迭代和值迭代這一章爲例。
這一章配套的是 David Silver RL課程的第三講,動態編程規劃。
首先是學習目標:
- 瞭解策略評估和策略改進之間的區別,以及這些流程如何相互作用
- 理解策略迭代算法
- 理解值迭代算法
- 瞭解動態規劃方法的侷限性
設定好學習目標,這份教程還替你劃了重點概念。
最後,奉上實戰演練。
大框架已經搭好,只需專注重點思考如何填空:
文後附標準答案:
實現算法列表
這份教程現在涵蓋了以下算法實現。
- 動態規劃策略評估
- 動態規劃策略迭代
- 動態規劃值迭代
- 蒙特卡洛預測
- Epslion-Greedy 策略的蒙特卡洛控制
- 具有重要性抽樣的蒙特卡洛非策略控制
- SARSA(策略 TD 學習)
- Q學習(非策略 TD 學習)
- 線性函數逼近的Q學習
- 雅達利遊戲的深度Q學習
- 雅達利遊戲的雙重深度Q學習
- 優先經驗回放的深度Q學習(施工中)
- 策略梯度:基線強化
- 策略梯度:基線Actor-Critic 算法
- 策略梯度:具有連續動作空間的基線 Actor-Critic 算法
- 連續動作空間的確定性策略梯度(施工中)
- DDPG(施工中)
- 異步優勢 Actor-Critic 算法(A3C)
學習路徑如此清晰,這樣的優質資源,不Mark一下嗎?
傳送門:
https://github.com/dennybritz/reinforcement-learning