●譯者序
前言
第1章引言
1.1深度強化學習可以做什麼
1.2本書的結構
1.3框架:Chainer和ChainerRL
1.4Python的運行檢查
1.5Chainer的安裝
1.6ChainerRL的安裝
1.7模擬器:OpenAIGym
第2章深度學習
2.1什麼是深度學習
2.2神經網絡
2.3基於Chainer的神經網絡
2.3.1Chainer與神經網絡的對應
2.3.2Chainer程序
2.3.3參數設置
2.3.4創建數據
2.3.5定義神經網絡
2.3.6各種聲明
2.3.7顯示訓練狀態
2.3.8保存訓練狀態
2.3.9執行訓練
2.4與其他神經網絡的對應
2.4.1感知器
2.4.25層神經網絡(深度學習)
2.4.3計算輸入中的1的數量
2.5基於深度神經網絡的手寫數字識別
2.5.1手寫數字的輸入格式
2.5.2深度神經網絡的結構
2.5.38×8的手寫數字數據
2.6基於卷積神經網絡的手寫數字識別
2.6.1卷積
2.6.2激活函數
2.6.3池化
2.6.4執行
2.7一些技巧
2.7.1讀取文件數據
2.7.2使用訓練模型
2.7.3重啟訓練
2.7.4檢查權重
2.7.5從文件中讀取手寫數字
第3章強化學習
3.1什麼是強化學習
3.1.1有監督學習
3.1.2無監督學習
3.1.3半監督學習
3.2強化學習原理
3.3通過簡單的示例來學習
3.4應用到Q學習問題中
3.4.1狀態
3.4.2行動
3.4.3獎勵
3.4.4Q值
3.5使用Python進行訓練
3.5.1運行程序
3.5.2說明程序
3.6基於OpenAIGym的倒立擺
3.6.1運行程序
3.6.2說明程序
3.7如何保存和加載Q值
第4章深度強化學習
4.1什麼是深度強化學習
4.2對於老鼠學習問題的應用
4.2.1運行程序
4.2.2說明程序
4.2.3如何保存和讀取智能體模型
4.3基於OpenAIGym的倒立擺
4.3.1運行程序
4.3.2說明程序
4.4基於OpenAIGym的太空侵略者
4.5基於OpenAIGym的顛球
4.5.1運行程序
4.5.2說明程序
4.6對戰遊戲
4.6.1黑白棋
4.6.2訓練方法
4.6.3變更盤面
4.6.4黑白棋實體
4.6.5如何與人類對戰
4.6.6卷積神經網絡的應用
4.7使用物理引擎進行模擬
4.7.1物理引擎
4.7.2運行程序
4.7.3說明程序
4.8物理引擎在顛球問題中的應用
4.9物理引擎在倒立擺問題中的應用
4.10物理引擎在機械臂問題中的應用
4.11使用其他深度強化學習方法
4.11.1深度強化學習的類型
4.11.2將訓練方法更改為DDQN
4.11.3將訓練方法更改為PER-DQN
4.11.4將訓練方法更改為DDPG
4.11.5將訓練方法更改為A3C
第5章實際環境中的應用
5.1使用攝像機觀察環境(MNIST)
5.1.1攝像機設置
5.1.2通過卷積神經網絡對攝像機圖像進行分類
5.1.3使用圖像大小為28×28的手寫數字進行訓練
5.2實際環境中的老鼠學習問題
5.3使用RaspberryPi處理老鼠學習問題
5.3.1環境構建
5.3.2以輸入輸出為重點的簡化
5.3.3使用攝像機測量環境
5.4使用Arduino+PC處理老鼠學習問題
5.4.1環境構建
5.4.2以輸入輸出為重點的簡化
5.4.3使用攝像機測量環境
5.5使用RaspberryPi+Arduino處理老鼠學習問題
5.6結語
附錄