深度強化學習算法與實踐:基於PyTorch的實現

深度強化學習算法與實踐:基於PyTorch的實現

《深度強化學習算法與實踐:基於PyTorch的實現》是2022年4月電子工業出版社出版圖書,作者是張校捷

從基礎理論到項目實踐,詳細介紹新版本PyTorch在強化學習領域中的套用。

基本介紹

  • 書名:深度強化學習算法與實踐:基於PyTorch的實現
  • 作者:張校捷
  • 出版社:電子工業出版社
  • 出版時間:2022年4月
  • 頁數:256 頁
  • 定價:108 元
  • 開本:16 開
  • ISBN:9787121429729
內容簡介,圖書目錄,作者簡介,

內容簡介

從強化學習的基礎知識出發,結合PyTorch 深度學習框架,介紹深度強化學習算法各種模型的相關算法原理和基於PyTorch 的代碼實現

圖書目錄

第1章 強化學習簡介 1
1.1 強化學習的歷史 1
1.1.1 人工智慧的歷史 1
1.1.2 強化學習和人工智慧的關係 4
1.2 強化學習基本概念 8
1.2.1 智慧型體相關概念 8
1.2.2 馬爾可夫決策過程 9
1.2.3 動作價值函式和狀態-動作價值函式 11
1.3 強化學習算法的分類 12
1.3.1 基於模型的(Model-Based)和無模型的(Model-Free) 13
1.3.2 基於策略的(Policy-Based)和基於價值的(Value-Based) 13
1.3.3 線上(On-policy)算法和離線(Off-policy)算法 13
1.4 深度強化學習基本概念 14
1.5 強化學習的優缺點 15
1.6 蒙特卡洛梯度估計 15
1.7 總結 19
第2章 深入了解強化學習 20
2.1 強化學習基本要素 20
2.1.1 馬爾可夫決策過程和回溯圖 20
2.1.2 貪心策略和最優策略 22
2.1.3 最優策略的疊代算法 24
2.2 強化學習的探索和利用 26
2.3 策略疊代和價值疊代 32
2.3.1 策略疊代 32
2.3.2 價值疊代 33
2.4 貝爾曼方程及其套用 35
2.5 總結 37
第3章 強化學習環境 38
3.1 簡單的強化學習環境 39
3.1.1 格線世界(Grid World) 39
3.1.2 多臂賭博機(Multi-armed Bandit) 40
3.1.3 井字棋(Tic-Tac-Toe) 40
3.2 OpenAI Gym環境 47
3.2.1 Gym環境的安裝和基本接口 47
3.2.2 Gym的經典控制環境 50
3.2.3 Gym的Atari強化學習環境 53
3.2.4 Gym的MuJoCo環境 55
3.2.5 自定義Gym強化學習環境 57
3.3 DeepMind Lab強化學習環境 60
3.4 其他強化學習環境 63
3.4.1 PySC2 強化學習環境 63
3.4.2 OpenSpiel強化學習環境 66
3.5 深度強化學習框架簡介 68
3.5.1 Dopamine框架 68
3.5.1 ReAgent框架 70
3.6 總結 71
第4章 深度Q函式強化學習算法 72
4.1 經典深度Q網路算法(DQN) 72
4.1.1 DQN算法理論背景 73
4.1.2 DQN模型結構 75
4.1.3 DQN模型的輸入 78
4.1.4 DQN模型的訓練 80
4.1.5 結合DQN算法的採樣和模型的訓練 82
4.2 雙網路Q學習算法(Double Q-Learning) 84
4.2.1 算法原理 84
4.2.2 算法實現 86
4.2.3 算法效果 88
4.3 優先經驗回放(Prioritized Experience Replay) 89
4.3.1 算法原理 89
4.3.2 算法實現 92
4.3.3 算法效果 95
4.4 競爭DQN算法(Duel DQN) 96
4.4.1 算法原理 98
4.4.2 算法實現 99
4.4.3 算法效果 102
4.5 分布形式的DQN算法(Distributional DQN) 103
4.5.1 分類DQN模型 103
4.5.2 分類DQN模型算法實現 106
4.5.3 分類DQN模型算法效果 110
4.5.4 分位數回歸DQN模型 111
4.5.5 分位數回歸DQN模型算法實現 112
4.5.6 分位數回歸DQN模型算法效果 115
4.5.7 分類DQN模型小結 116
4.6 彩虹算法(Rainbow) 117
4.6.1 彩虹算法對DQN的最佳化 117
4.6.2 彩虹算法的部分實現 120
4.6.3 彩虹算法的模型效果 125
4.7 總結 128
第5章 策略梯度強化學習算法 129
5.1 經典策略梯度算法(VPG) 130
5.1.1 算法原理 130
5.1.2 基於離散動作空間算法的模型實現 132
5.1.3 基於離散動作空間算法的運行結果 137
5.1.4 基於連續動作空間算法的實現 138
5.1.5 基於連續動作空間算法的運行結果 143
5.1.6 小結 144
5.2 優勢演員-評論家算法(A2C和A3C) 145
5.2.1 算法原理 145
5.2.2 泛化優勢估計(Generalized Advantage Estimation) 147
5.2.3 熵正則化方法 149
5.2.4 優勢演員-評論家算法的實現(離散動作空間) 149
5.2.5 優勢演員-評論家算法運行效果(離散動作空間) 158
5.2.6 算法實現(連續動作空間) 158
5.2.7 運行效果(連續動作空間) 160
5.2.8 異步優勢演員-評論家算法的實現 160
5.2.9 異步優勢演員-評論家算法的效果 164
5.3 置信區間策略最佳化算法 165
5.3.1 算法原理 166
5.3.2 近端策略最佳化算法的實現 172
5.3.3 近端策略最佳化算法的效果(離散動作空間) 174
5.4 克羅內克分解近似置信區間算法(ACKTR) 175
5.4.1 算法原理 175
5.4.2 算法實現 179
5.4.3 算法效果 183
5.5 軟演員-評論家算法(SAC) 184
5.5.1 算法的基本原理 184
5.5.2 算法的實現(連續動作空間) 186
5.5.3 算法的效果(連續動作空間) 193
5.6 總結 194
第6章 其他強化學習算法 195
6.1 噪聲網路(Noisy Networks) 195
6.1.1 噪聲網路的原理 195
6.1.2 噪聲網路的實現 197
6.1.3 噪聲網路的效果 201
6.2 深度確定性策略梯度算法(DDPG) 203
6.2.1 算法原理 203
6.2.2 算法實現 205
6.2.3 算法效果 209
6.3 雙延遲深度確定性策略梯度算法(TD3) 210
6.3.1 算法原理 210
6.3.2 算法實現 211
6.3.3 算法效果 213
6.4 蒙特卡洛樹搜尋(MCTS) 214
6.4.1 算法原理 214
6.4.2 算法的基本步驟 215
6.4.3 算法使用的模型 219
6.4.4 算法的博弈樹表示 221
6.4.5 算法的搜尋執行過程 222
6.5 總結 225
第7章 深度強化學習在實踐中的套用 226
7.1 神經網路結構搜尋(NAS) 226
7.1.1 算法原理 226
7.1.2 算法效果 229
7.1.3 總結 230
7.2 超解析度模型 (SRGAN) 230
7.2.1 算法原理 231
7.2.2 總結 232
7.3 序列生成模型(SeqGAN) 233
7.3.1 算法原理 233
7.3.2 總結 235
7.4 基於深度強化學習的推薦系統 235
7.4.1 推薦系統的強化學習環境構建 236
7.4.2 推薦系統的強化學習算法 237
7.4.3 總結 238
7.5 基於深度強化學習的交易系統 239
7.5.1 算法原理 239
7.5.2 總結 241
7.6 總結 241
附錄A 本書使用的數學符號 242
參考文獻 244

作者簡介

張校捷,Shopee資深機器學習工程師,負責推薦系統的算法實現和最佳化。主要使用的技術棧是深度學習框架後端的C/C++/CUDA,以及深度學習框架前端的Python。熟悉主流的深度學習框架,如PyTorch和TensorFlow,同時熟悉計算機視覺、自然語言處理和推薦系統方面的深度學習算法。
作者曾多次作為專題演講嘉賓,受邀參加Google、PyCon和CSDN主辦的技術大會。

相關詞條

熱門詞條

聯絡我們