TensorFlow強(qiáng)化學(xué)習(xí)快速入門(mén)指南——使用Python動(dòng)手搭建自學(xué)習(xí)的智能體
定 價(jià):45 元
叢書(shū)名:大數(shù)據(jù)叢書(shū)
- 作者:[美]考?恕ぐ屠死锵D希↘aushik Balakrishnan)
- 出版時(shí)間:2020/5/1
- ISBN:9787111648123
- 出 版 社:機(jī)械工業(yè)出版社
- 中圖法分類(lèi):TP18
- 頁(yè)碼:120
- 紙張:膠版紙
- 版次:1
- 開(kāi)本:16K
強(qiáng)化學(xué)習(xí)是一類(lèi)重要的機(jī)器學(xué)習(xí)方法,在很多領(lǐng)域得到了成功的應(yīng)用,*近幾年與深度學(xué)習(xí)結(jié)合起來(lái),進(jìn)一步推動(dòng)了人工智能的發(fā)展?本書(shū)首先介紹了強(qiáng)化學(xué)習(xí)的基本原理,然后介紹典型的強(qiáng)化學(xué)習(xí)算法,包括時(shí)序差分? SARSA? Q-Learning? DeepQ-network? Double DQN?競(jìng)爭(zhēng)網(wǎng)絡(luò)結(jié)構(gòu)? Rainbow? Actor-Critic? A2C? A3C? TRPO和PPO等,每種算法基本上利用了主流的開(kāi)源機(jī)器學(xué)習(xí)框架TensorFlow,使用Python編程進(jìn)行實(shí)現(xiàn)?此外,還介紹了一些上述算法的應(yīng)用?本書(shū)可以使讀者快速理解強(qiáng)化學(xué)習(xí)的基本知識(shí),并通過(guò)簡(jiǎn)單的案例加深對(duì)算法的理解?本書(shū)適合對(duì)強(qiáng)化學(xué)習(xí)感興趣的普通高校師生以及相關(guān)專(zhuān)業(yè)人員閱讀?
Copyright ? Packt Publishing 2018First published in the English language under the title “Deep Learning with TensorFlow-SecondEdition- ( 9781788831109)”
Copyright in the Chinese language( simplified characters) ? 2020 China Machine PreesThis title is published in China by China Machine Press with license from Packt Publishing Ltd.This edition is authorized for sale in China only , excluding Hong Kong SAR. Macao SAR and Taiwan.Unauthorized export of this edition is a violation of the Copyright Act. Violation of this Law is subjectto Civil and Criminal Penalties.
譯者序
前 言
第 1 章 強(qiáng)化學(xué)習(xí)的啟動(dòng)和運(yùn)行 // 1
1.1 為何選擇強(qiáng)化學(xué)習(xí) // 1
闡述強(qiáng)化學(xué)習(xí)問(wèn)題 // 2
1.2 agent 及其環(huán)境之間的關(guān)系 // 3
1.2.1 定義 agent 的狀態(tài) // 3
1.2.2 定義 agent 的行為 // 3
1.2.3 了解策略、價(jià)值函數(shù)和優(yōu)勢(shì)函數(shù) // 4
1.3 認(rèn)識(shí)回合 // 5
1.4 認(rèn)識(shí)獎(jiǎng)勵(lì)函數(shù)和折扣獎(jiǎng)勵(lì) // 5
獎(jiǎng)勵(lì) // 6
1.5 學(xué)習(xí)馬爾可夫決策過(guò)程 // 6
1.6 定義貝爾曼方程 // 7
1.7 同步策略與異步策略學(xué)習(xí) // 7
1.7.1 同步策略方法 // 7
1.7.2 異步策略方法 // 8
1.8 無(wú)模型訓(xùn)練和基于模型訓(xùn)練 // 8
1.9 本書(shū)中涉及的算法 // 8
總結(jié) // 9
思考題 // 9
擴(kuò)展閱讀 // 9
第 2 章 時(shí)序差分、SARSA 與 Q-Learning // 10
2.1 技術(shù)需求 // 10
2.2 理解 TD 學(xué)習(xí) // 10
價(jià)值函數(shù)與狀態(tài)之間的關(guān)系 // 11
2.3 理解 SARSA 與 Q-Learning // 11
IX
2.3.1 學(xué)習(xí) SARSA // 12
2.3.2 理解 Q-Learning // 12
2.4 懸崖徒步與網(wǎng)格世界問(wèn)題 // 12
2.4.1 SARSA 下的懸崖徒步 // 13
2.4.2 Q-Learning 下的懸崖徒步 // 18
2.4.3 SARSA 下的網(wǎng)格世界 // 20
總結(jié) // 22
擴(kuò)展閱讀 // 22
第 3 章 深度 Q 網(wǎng)絡(luò) // 23
3.1 技術(shù)需求 // 23
3.2 學(xué)習(xí) DQN 原理 // 23
3.3 理解目標(biāo)網(wǎng)絡(luò) // 24
3.4 了解重放緩沖區(qū) // 25
3.5 Atari 環(huán)境介紹 // 25
3.5.1 Atari 游戲概述 // 26
3.5.2 用 TensorFlow 編寫(xiě) DQN // 27
3.6 驗(yàn)證 DQN 在 Atari Breakout 上的性能 // 39
總結(jié) // 40
思考題 // 40
擴(kuò)展閱讀 // 41
第 4 章 Double DQN、競(jìng)爭(zhēng)網(wǎng)絡(luò)結(jié)構(gòu)和 Rainbow // 42
4.1 技術(shù)需求 // 42
4.2 了解 Double DQN // 43
4.2.1 編寫(xiě) DDQN 并訓(xùn)練解決 Atari Breakout 問(wèn)題 // 43
4.2.2 在 Atari Breakout 問(wèn)題中評(píng)估 DDQN 的性能 // 44
4.3 理解競(jìng)爭(zhēng)網(wǎng)絡(luò)結(jié)構(gòu) // 45
4.3.1 編寫(xiě)競(jìng)爭(zhēng)網(wǎng)絡(luò)結(jié)構(gòu)并訓(xùn)練其解決 Atari Breakout 問(wèn)題 // 47
4.3.2 在 Atari Breakout 中評(píng)估競(jìng)爭(zhēng)網(wǎng)絡(luò)結(jié)構(gòu)的性能 // 48
4.4 了解 Rainbow 網(wǎng)絡(luò) // 49
DQN 改進(jìn) // 50
4.5 在 Dopamine 上運(yùn)行 Rainbow 網(wǎng)絡(luò) // 50
TensorFlow 強(qiáng)化學(xué)習(xí)快速入門(mén)指南
—使用 Python 動(dòng)手搭建自學(xué)習(xí)的智能體
X
使用 Dopamine 運(yùn)行 Rainbow // 52
總結(jié) // 53
思考題 // 53
擴(kuò)展閱讀 // 53
第 5 章 深度確定性策略梯度 // 55
5.1 技術(shù)需求 // 55
5.2 Actor-Critic 算法和策略梯度 // 56
策略梯度 // 56
5.3 深度確定性策略梯度 // 56
5.3.1 編寫(xiě) ddpg.py // 57
5.3.2 編寫(xiě) AandC.py // 59
5.3.3 編寫(xiě) TrainOrTest.py // 64
5.3.4 編寫(xiě) replay_buffer.py // 67
5.4 在 Pendulum-v0 中訓(xùn)練和測(cè)試 DDPG // 68
總結(jié) // 69
思考題 // 70
擴(kuò)展閱讀 // 70
第 6 章 異步的方法——A3C 和 A2C // 71
6.1 技術(shù)需求 // 71
6.2 A3C 算法 // 71
6.2.1 損失函數(shù) // 72
6.2.2 CartPole and LunarLander // 72
6.3 A3C 算法在 CartPole 中的應(yīng)用 // 73
6.3.1 編寫(xiě) cartpole.py // 73
6.3.2 編寫(xiě) a3c.py // 75
6.3.3 Worker 類(lèi) // 77
6.3.4 編寫(xiě) utils.py // 80
6.3.5 CartPole 訓(xùn)練 // 81
6.4 A3C 算法在 LunarLander 中的應(yīng)用 // 82
6.4.1 編寫(xiě) lunar.py // 82
6.4.2 在 LunarLander 上訓(xùn)練 // 82
6.5 A2C 算法 // 83
總結(jié) // 83
思考題 // 84
擴(kuò)展閱讀 // 84
第 7 章 信任區(qū)域策略?xún)?yōu)化和近端策略?xún)?yōu)化 // 85
7.1 技術(shù)需求 // 85
7.2 學(xué)習(xí) TRPO // 85
TRPO 方程 // 86
7.3 學(xué)習(xí) PPO // 86
PPO 損失函數(shù) // 86
7.4 使用 PPO 解決 Mountain Car 問(wèn)題 // 87
7.4.1 編寫(xiě) class_ppo.py // 87
7.4.2 編寫(xiě) train_test.py // 91
7.5 評(píng)估性能 // 95
7.6 馬力全開(kāi) // 95
7.7 隨機(jī)發(fā)力 // 96
總結(jié) // 97
思考題 // 97
擴(kuò)展閱讀 // 97
第 8 章 深度強(qiáng)化學(xué)習(xí)在自動(dòng)駕駛中的應(yīng)用 // 98
8.1 技術(shù)需求 // 98
8.2 汽車(chē)駕駛模擬器 // 99
8.3 學(xué)習(xí)使用 TORCS // 99
8.3.1 狀態(tài)空間 // 100
8.3.2 支持文件 // 100
8.4 訓(xùn)練 DDPG agent 來(lái)學(xué)習(xí)駕駛 // 101
8.4.1 編寫(xiě) ddpg.py // 101
8.4.2 編寫(xiě) AandC.py // 101
8.4.3 編寫(xiě) TrainOrTest.py // 102
TensorFlow 強(qiáng)化學(xué)習(xí)快速入門(mén)指南
—使用 Python 動(dòng)手搭建自學(xué)習(xí)的智能體
8.5 訓(xùn)練 PPO agent // 104
總結(jié) // 104
思考題 // 105
擴(kuò)展閱讀 // 105
附錄 思考題答案 // 10