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