深度強化學(xué)習(xí)算法與實踐:基于PyTorch的實現(xiàn)
定 價:108 元
- 作者:張校捷
- 出版時間:2022/2/1
- ISBN:9787121429729
- 出 版 社:電子工業(yè)出版社
- 中圖法分類:TP181
- 頁碼:256
- 紙張:
- 版次:01
- 開本:16開
本書從強化學(xué)習(xí)的基礎(chǔ)知識出發(fā),結(jié)合PyTorch深度學(xué)習(xí)框架,介紹深度強化學(xué)習(xí)算法各種模型的相關(guān)算法原理和基于PyTorch的代碼實現(xiàn)。作為一本介紹深度強化學(xué)習(xí)知識的相關(guān)圖書,本書介紹了常用的強化學(xué)習(xí)環(huán)境,基于價值網(wǎng)絡(luò)的強化學(xué)習(xí)算法和基于策略梯度的強化學(xué)習(xí)算法,以及一些常用的比較流行的深度強化學(xué)習(xí)算法(如蒙特卡洛樹搜索)等。另外,還介紹了深度強化學(xué)習(xí)算法在實際問題中的一些應(yīng)用。
張校捷,Shopee資深機器學(xué)習(xí)工程師,負(fù)責(zé)推薦系統(tǒng)的算法實現(xiàn)和優(yōu)化。目前主要使用的技術(shù)棧是深度學(xué)習(xí)框架后端的C/C++/CUDA,以及深度學(xué)習(xí)框架前端的Python。熟悉主流的深度學(xué)習(xí)框架,如PyTorch和TensorFlow,同時熟悉計算機視覺、自然語言處理和推薦系統(tǒng)方面的深度學(xué)習(xí)算法。作者曾多次作為專題演講嘉賓,受邀參加Google、PyCon和CSDN主辦的技術(shù)大會。
第1章 強化學(xué)習(xí)簡介 1
1.1 強化學(xué)習(xí)的歷史 1
1.1.1 人工智能的歷史 1
1.1.2 強化學(xué)習(xí)和人工智能的關(guān)系 4
1.2 強化學(xué)習(xí)基本概念 8
1.2.1 智能體相關(guān)概念 8
1.2.2 馬爾可夫決策過程 9
1.2.3 動作價值函數(shù)和狀態(tài)-動作價值函數(shù) 11
1.3 強化學(xué)習(xí)算法的分類 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 深度強化學(xué)習(xí)基本概念 14
1.5 強化學(xué)習(xí)的優(yōu)缺點 15
1.6 蒙特卡洛梯度估計 15
1.7 總結(jié) 19
第2章 深入了解強化學(xué)習(xí) 20
2.1 強化學(xué)習(xí)基本要素 20
2.1.1 馬爾可夫決策過程和回溯圖 20
2.1.2 貪心策略和最優(yōu)策略 22
2.1.3 最優(yōu)策略的迭代算法 24
2.2 強化學(xué)習(xí)的探索和利用 26
2.3 策略迭代和價值迭代 32
2.3.1 策略迭代 32
2.3.2 價值迭代 33
2.4 貝爾曼方程及其應(yīng)用 35
2.5 總結(jié) 37
第3章 強化學(xué)習(xí)環(huán)境 38
3.1 簡單的強化學(xué)習(xí)環(huán)境 39
3.1.1 網(wǎng)格世界(Grid World) 39
3.1.2 多臂賭博機(Multi-armed Bandit) 40
3.1.3 井字棋(Tic-Tac-Toe) 40
3.2 OpenAI Gym環(huán)境 47
3.2.1 Gym環(huán)境的安裝和基本接口 47
3.2.2 Gym的經(jīng)典控制環(huán)境 50
3.2.3 Gym的Atari強化學(xué)習(xí)環(huán)境 53
3.2.4 Gym的MuJoCo環(huán)境 55
3.2.5 自定義Gym強化學(xué)習(xí)環(huán)境 57
3.3 DeepMind Lab強化學(xué)習(xí)環(huán)境 60
3.4 其他強化學(xué)習(xí)環(huán)境 63
3.4.1 PySC2 強化學(xué)習(xí)環(huán)境 63
3.4.2 OpenSpiel強化學(xué)習(xí)環(huán)境 66
3.5 深度強化學(xué)習(xí)框架簡介 68
3.5.1 Dopamine框架 68
3.5.1 ReAgent框架 70
3.6 總結(jié) 71
第4章 深度Q函數(shù)強化學(xué)習(xí)算法 72
4.1 經(jīng)典深度Q網(wǎng)絡(luò)算法(DQN) 72
4.1.1 DQN算法理論背景 73
4.1.2 DQN模型結(jié)構(gòu) 75
4.1.3 DQN模型的輸入 78
4.1.4 DQN模型的訓(xùn)練 80
4.1.5 結(jié)合DQN算法的采樣和模型的訓(xùn)練 82
4.2 雙網(wǎng)絡(luò)Q學(xué)習(xí)算法(Double Q-Learning) 84
4.2.1 算法原理 84
4.2.2 算法實現(xiàn) 86
4.2.3 算法效果 88
4.3 優(yōu)先經(jīng)驗回放(Prioritized Experience Replay) 89
4.3.1 算法原理 89
4.3.2 算法實現(xiàn) 92
4.3.3 算法效果 95
4.4 競爭DQN算法(Duel DQN) 96
4.4.1 算法原理 98
4.4.2 算法實現(xiàn) 99
4.4.3 算法效果 102
4.5 分布形式的DQN算法(Distributional DQN) 103
4.5.1 分類DQN模型 103
4.5.2 分類DQN模型算法實現(xiàn) 106
4.5.3 分類DQN模型算法效果 110
4.5.4 分位數(shù)回歸DQN模型 111
4.5.5 分位數(shù)回歸DQN模型算法實現(xiàn) 112
4.5.6 分位數(shù)回歸DQN模型算法效果 115
4.5.7 分類DQN模型小結(jié) 116
4.6 彩虹算法(Rainbow) 117
4.6.1 彩虹算法對DQN的優(yōu)化 117
4.6.2 彩虹算法的部分實現(xiàn) 120
4.6.3 彩虹算法的模型效果 125
4.7 總結(jié) 128
第5章 策略梯度強化學(xué)習(xí)算法 129
5.1 經(jīng)典策略梯度算法(VPG) 130
5.1.1 算法原理 130
5.1.2 基于離散動作空間算法的模型實現(xiàn) 132
5.1.3 基于離散動作空間算法的運行結(jié)果 137
5.1.4 基于連續(xù)動作空間算法的實現(xiàn) 138
5.1.5 基于連續(xù)動作空間算法的運行結(jié)果 143
5.1.6 小結(jié) 144
5.2 優(yōu)勢演員-評論家算法(A2C和A3C) 145
5.2.1 算法原理 145
5.2.2 泛化優(yōu)勢估計(Generalized Advantage Estimation) 147
5.2.3 熵正則化方法 149
5.2.4 優(yōu)勢演員-評論家算法的實現(xiàn)(離散動作空間) 149
5.2.5 優(yōu)勢演員-評論家算法運行效果(離散動作空間) 158
5.2.6 算法實現(xiàn)(連續(xù)動作空間) 158
5.2.7 運行效果(連續(xù)動作空間) 160
5.2.8 異步優(yōu)勢演員-評論家算法的實現(xiàn) 160
5.2.9 異步優(yōu)勢演員-評論家算法的效果 164
5.3 置信區(qū)間策略優(yōu)化算法 165
5.3.1 算法原理 166
5.3.2 近端策略優(yōu)化算法的實現(xiàn) 172
5.3.3 近端策略優(yōu)化算法的效果(離散動作空間) 174
5.4 克羅內(nèi)克分解近似置信區(qū)間算法(ACKTR) 175
5.4.1 算法原理 175
5.4.2 算法實現(xiàn) 179
5.4.3 算法效果 183
5.5 軟演員-評論家算法(SAC) 184
5.5.1 算法的基本原理 184
5.5.2 算法的實現(xiàn)(連續(xù)動作空間) 186
5.5.3 算法的效果(連續(xù)動作空間) 193
5.6 總結(jié) 194
第6章 其他強化學(xué)習(xí)算法 195
6.1 噪聲網(wǎng)絡(luò)(Noisy Networks) 195
6.1.1 噪聲網(wǎng)絡(luò)的原理 195
6.1.2 噪聲網(wǎng)絡(luò)的實現(xiàn) 197
6.1.3 噪聲網(wǎng)絡(luò)的效果 201
6.2 深度確定性策略梯度算法(DDPG) 203
6.2.1 算法原理 203
6.2.2 算法實現(xiàn) 205
6.2.3 算法效果 209
6.3 雙延遲深度確定性策略梯度算法(TD3) 210
6.3.1 算法原理 210
6.3.2 算法實現(xiàn) 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 算法的搜索執(zhí)行過程 222
6.5 總結(jié) 225
第7章 深度強化學(xué)習(xí)在實踐中的應(yīng)用 226
7.1 神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)搜索(NAS) 226
7.1.1 算法原理 226
7.1.2 算法效果 229
7.1.3 總結(jié) 230
7.2 超分辨率模型 (SRGAN) 230
7.2.1 算法原理 231
7.2.2 總結(jié) 232
7.3 序列生成模型(SeqGAN) 233
7.3.1 算法原理 233
7.3.2 總結(jié) 235
7.4 基于深度強化學(xué)習(xí)的推薦系統(tǒng) 235
7.4.1 推薦系統(tǒng)的強化學(xué)習(xí)環(huán)境構(gòu)建 236
7.4.2 推薦系統(tǒng)的強化學(xué)習(xí)算法 237
7.4.3 總結(jié) 238
7.5 基于深度強化學(xué)習(xí)的交易系統(tǒng) 239
7.5.1 算法原理 239
7.5.2 總結(jié) 241
7.6 總結(jié) 241
附錄A 本書使用的數(shù)學(xué)符號 242
參考文獻 244