深度強(qiáng)化學(xué)習(xí)實(shí)戰(zhàn) 用OpenAI Gym構(gòu)建智能體
定 價(jià):69.8 元
- 作者:普拉文·巴拉尼沙米(Praveen Palanisamy)
- 出版時(shí)間:2023/6/1
- ISBN:9787115561596
- 出 版 社:人民郵電出版社
- 中圖法分類(lèi):TP311.561
- 頁(yè)碼:170
- 紙張:
- 版次:01
- 開(kāi)本:16開(kāi)
這是一本介紹用 OpenAI Gym 構(gòu)建智能體的實(shí)戰(zhàn)指南。全書(shū)先簡(jiǎn)要介紹智能體和學(xué)習(xí)環(huán)境的一些入門(mén)知識(shí),概述強(qiáng)化學(xué)習(xí)和深度強(qiáng)化學(xué)習(xí)的基本概念和知識(shí)點(diǎn),然后重點(diǎn)介紹 OpenAI Gym 的相關(guān)內(nèi)容,隨后在具體的 Gym 環(huán)境中運(yùn)用強(qiáng)化學(xué)習(xí)算法構(gòu)建智能體。本書(shū)還探討了這些算法在游戲、自動(dòng)駕駛領(lǐng)域的應(yīng)用。
本書(shū)適合想用 OpenAI Gym 構(gòu)建智能體的讀者閱讀,也適合對(duì)強(qiáng)化學(xué)習(xí)和深度強(qiáng)化學(xué)習(xí)感興趣的讀者參考。讀者應(yīng)具備一定的 Python 編程基礎(chǔ)。
一本介紹在OpenAI Gym環(huán)節(jié)中構(gòu)建智能體的實(shí)戰(zhàn)指南!
只需要專(zhuān)注算法的優(yōu)化,無(wú)需浪費(fèi)時(shí)間去搭建環(huán)境!
·從零起步,內(nèi)容通俗易懂,輕松學(xué)習(xí)OpenAI Gym的用法
·運(yùn)用強(qiáng)化學(xué)習(xí)/深度強(qiáng)化學(xué)習(xí)算法構(gòu)建智能體,不用浪費(fèi)時(shí)間去搭建環(huán)境!
·案例應(yīng)用側(cè)重于游戲、自動(dòng)駕駛領(lǐng)域,幫你解決基于智能體的領(lǐng)域問(wèn)題!
·基于Python編程語(yǔ)言,講解基本概念和應(yīng)用知識(shí),操作易上手!
普拉文·巴拉尼沙米(Praveen Palanisamy)專(zhuān)注于研究自主智能系統(tǒng)。他是通用汽車(chē)研發(fā)部門(mén)的 AI(人工智能)研究員,主要負(fù)責(zé)針對(duì)自動(dòng)駕駛開(kāi)發(fā)基于深度強(qiáng)化學(xué)習(xí)的規(guī)劃和決策算法。在此之前,他在卡內(nèi)基-梅隆大學(xué)機(jī)器人所從事自動(dòng)導(dǎo)航的研究(包括可移動(dòng)機(jī)器人的感知與智能),曾從零開(kāi)始研發(fā)一個(gè)完整的、自動(dòng)的機(jī)器人系統(tǒng)。
第 1章 智能體與學(xué)習(xí)環(huán)境入門(mén) 1
1.1 智能體簡(jiǎn)介 1
1.2 學(xué)習(xí)環(huán)境 2
1.3 OpenAI Gym簡(jiǎn)介 3
1.4 理解OpenAI Gym的主要特性 8
1.4.1 簡(jiǎn)單的環(huán)境接口 8
1.4.2 可比較與可復(fù)現(xiàn) 8
1.4.3 進(jìn)程可監(jiān)控 9
1.5 OpenAI Gym工具包的作用 9
1.6 創(chuàng)建第 一個(gè)OpenAI Gym環(huán)境 9
1.7 小結(jié) 11
第 2章 強(qiáng)化學(xué)習(xí)和深度強(qiáng)化學(xué)習(xí) 12
2.1 強(qiáng)化學(xué)習(xí)簡(jiǎn)介 12
2.2 直觀(guān)理解人工智能的含義和內(nèi)容 13
2.2.1 監(jiān)督學(xué)習(xí) 13
2.2.2 非監(jiān)督學(xué)習(xí) 14
2.2.3 強(qiáng)化學(xué)習(xí) 14
2.3 強(qiáng)化學(xué)習(xí)實(shí)戰(zhàn) 14
2.3.1 智能體 15
2.3.2 獎(jiǎng)勵(lì) 15
2.3.3 環(huán)境 15
2.3.4 狀態(tài) 16
2.3.5 模型 17
2.3.6 值函數(shù) 17
2.3.7 策略 18
2.4 馬爾可夫決策過(guò)程 18
2.5 動(dòng)態(tài)規(guī)劃 19
2.6 蒙特卡洛學(xué)習(xí)和時(shí)序差分學(xué)習(xí) 19
2.7 SARSA和Q-Learning 20
2.8 深度強(qiáng)化學(xué)習(xí) 21
2.9 強(qiáng)化學(xué)習(xí)和深度強(qiáng)化學(xué)習(xí)算法的實(shí)踐應(yīng)用 22
2.10 小結(jié) 23
第3章 開(kāi)啟OpenAI Gym和深度強(qiáng)化學(xué)習(xí)之旅 24
3.1 代碼庫(kù)、設(shè)置和配置 24
3.1.1 先決條件 25
3.1.2 創(chuàng)建conda環(huán)境 26
3.1.3 最小化安裝—快捷簡(jiǎn)便的方法 27
3.1.4 完整安裝OpenAI Gym學(xué)習(xí)環(huán)境 28
3.2 安裝深度強(qiáng)化學(xué)習(xí)所需的工具和庫(kù) 32
3.2.1 安裝必備的系統(tǒng)軟件包 32
3.2.2 安裝CUDA 33
3.2.3 安裝PyTorch 34
3.3 小結(jié) 35
第4章 探索Gym及其功能 36
4.1 探索環(huán)境列表和術(shù)語(yǔ) 36
4.1.1 術(shù)語(yǔ) 37
4.1.2 探索Gym環(huán)境 38
4.2 理解Gym接口 40
4.3 Gym中的空間 43
4.4 小結(jié) 47
第5章 實(shí)現(xiàn)第 一個(gè)智能體—解決過(guò)山車(chē)問(wèn)題 48
5.1 了解過(guò)山車(chē)問(wèn)題 48
5.2 從零開(kāi)始實(shí)現(xiàn)Q-Learning智能體 50
5.2.1 Q-Learning回顧 53
5.2.2 使用Python和NumPy實(shí)現(xiàn)Q-Learning智能體 53
5.3 在Gym中訓(xùn)練強(qiáng)化學(xué)習(xí)智能體 58
5.4 測(cè)試并記錄智能體的性能 58
5.5 一個(gè)簡(jiǎn)單且完整的Q-Learner實(shí)現(xiàn)—過(guò)山車(chē)問(wèn)題的解決方案 59
5.6 小結(jié) 63
第6章 用深度Q-Learning實(shí)現(xiàn)最優(yōu)化控制智能體 64
6.1 優(yōu)化Q-Learning智能體 65
6.1.1 用神經(jīng)網(wǎng)絡(luò)近似Q函數(shù) 65
6.1.2 經(jīng)驗(yàn)回放 71
6.1.3 重溫ε-貪婪動(dòng)作策略 74
6.2 實(shí)現(xiàn)一個(gè)深度Q-Learning智能體 76
6.2.1 用PyTorch實(shí)現(xiàn)一個(gè)深度卷積Q網(wǎng)絡(luò) 77
6.2.2 使用目標(biāo)Q網(wǎng)絡(luò)穩(wěn)定智能體的學(xué)習(xí) 78
6.2.3 記錄和可視化智能體的學(xué)習(xí)過(guò)程 79
6.2.4 管理超參數(shù)和配置參數(shù) 81
6.2.5 用完整的深度Q-Learner處理輸入為原始像素的復(fù)雜問(wèn)題 83
6.3 Atari Gym環(huán)境 89
6.4 訓(xùn)練深度Q-Learner玩Atari游戲 98
6.4.1 整合一個(gè)完整的深度Q-Learner 98
6.4.2 超參數(shù) 101
6.4.3 啟動(dòng)訓(xùn)練過(guò)程 102
6.4.4 在A(yíng)tari游戲中測(cè)試深度Q-Learner的性能 103
6.5 小結(jié) 104
第7章 創(chuàng)建自定義OpenAI Gym環(huán)境—CARLA 105
7.1 理解Gym環(huán)境結(jié)構(gòu) 105
7.1.1 為自定義Gym環(huán)境實(shí)現(xiàn)創(chuàng)建模板 106
7.1.2 在OpenAI Gym環(huán)境中注冊(cè)自定義環(huán)境 108
7.2 創(chuàng)建與OpenAI Gym兼容的CARLA環(huán)境 108
7.2.1 配置和初始化 110
7.2.2 實(shí)現(xiàn)reset方法 111
7.2.3 為CARLA環(huán)境實(shí)現(xiàn)step函數(shù) 115
7.2.4 測(cè)試CARLA Gym環(huán)境 120
7.3 小結(jié) 122
第8章 用深度演員-評(píng)論家算法實(shí)現(xiàn)無(wú)人駕駛智能體 123
8.1 深度n步優(yōu)勢(shì)演員-評(píng)論家算法 123
8.1.1 策略梯度 124
8.1.2 演員-評(píng)論家算法 126
8.1.3 優(yōu)勢(shì)演員-評(píng)論家算法 127
8.1.4 n步優(yōu)勢(shì)演員-評(píng)論家算法 129
8.1.5 深度n步優(yōu)勢(shì)演員-評(píng)論家算法 132
8.2 實(shí)現(xiàn)深度n步優(yōu)勢(shì)演員-評(píng)論家智能體 133
8.2.1 初始化演員和評(píng)論家網(wǎng)絡(luò) 133
8.2.2 用當(dāng)前策略獲取n步經(jīng)驗(yàn) 137
8.2.3 計(jì)算演員和評(píng)論家的損失 137
8.2.4 更新演員-評(píng)論家模型 139
8.2.5 用于保存/加載、記錄、可視化和監(jiān)視的工具 139
8.2.6 擴(kuò)展——異步深度n步優(yōu)勢(shì)演員-評(píng)論家 139
8.3 訓(xùn)練一個(gè)“聰明”的自動(dòng)駕駛智能體 140
8.3.1 訓(xùn)練和測(cè)試深度n步優(yōu)勢(shì)演員-評(píng)論家智能體 140
8.3.2 訓(xùn)練智能體在CARLA中駕駛車(chē)輛 143
8.4 小結(jié) 144
第9章 探索學(xué)習(xí)環(huán)境全景——Roboschool、Gym Retro、StarCraft-Ⅱ和DeepMind Lab 145
9.1 Gym接口兼容的環(huán)境 146
9.1.1 Roboschool 146
9.1.2 Gym Retro 150
9.2 其他基于Python的開(kāi)源學(xué)習(xí)環(huán)境 153
9.2.1 星際爭(zhēng)霸Ⅱ—PySC2 153
9.2.2 DeepMind Lab 156
9.3 小結(jié) 160
第 10章 探索學(xué)習(xí)算法世界——DDPG(演員-評(píng)論家)、PPO (策略梯度)、Rainbow(基于值) 161
10.1 深度確定性策略梯度 162
10.2 近端策略?xún)?yōu)化 163
10.3 Rainbow 165
10.3.1 核心概念 165
10.3.2 優(yōu)點(diǎn)及應(yīng)用簡(jiǎn)要總結(jié) 169
10.4 小結(jié) 170