本書從強(qiáng)化學(xué)習(xí)的基礎(chǔ)入手,以非常直觀易懂的例子和實(shí)際應(yīng)用來(lái)解釋其中的每個(gè)概念,接著介紹一些前沿的研究及進(jìn)展,這些進(jìn)展使得強(qiáng)化學(xué)習(xí)可以超過其他(人工)智能系統(tǒng)。本書的目的不僅在于為讀者闡釋多種前沿強(qiáng)化學(xué)習(xí)算法背后的數(shù)學(xué)原理,而且也希望讀者們能在各自的應(yīng)用領(lǐng)域中實(shí)際運(yùn)用這些算法及類似的先進(jìn)深度強(qiáng)化學(xué)習(xí)智能體。
本書從強(qiáng)化學(xué)習(xí)的基本模塊開始,涵蓋了流行的經(jīng)典動(dòng)態(tài)規(guī)劃方法和經(jīng)典強(qiáng)化學(xué)習(xí)方法,如價(jià)值迭代和策略迭代;同時(shí)也包括一些傳統(tǒng)的強(qiáng)化學(xué)習(xí)算法,如時(shí)序差分學(xué)習(xí)、SARSA和Q學(xué)習(xí)。在此基礎(chǔ)之上,本書介紹了適用于現(xiàn)代強(qiáng)化學(xué)習(xí)環(huán)境和智能體的深度學(xué)習(xí)和輔助工具。本書繼而開始深入研究深度強(qiáng)化學(xué)習(xí)的概念,并介紹相應(yīng)的算法,如深度Q網(wǎng)絡(luò)、雙DQN、競(jìng)爭(zhēng)DQN、(深度)同步演員-評(píng)論家,(深度)異步優(yōu)勢(shì)演員-評(píng)論家和深度確定性策略梯度。在每一個(gè)介紹這些概念的理論/數(shù)學(xué)原理的章節(jié)之后都附有可用于這些智能體實(shí)現(xiàn)的代碼。
第1章 強(qiáng)化學(xué)習(xí)簡(jiǎn)介:AI智能體背后的智能
1.1 什么是人工智能,強(qiáng)化學(xué)習(xí)與它有什么關(guān)系
1.2 理解強(qiáng)化學(xué)習(xí)的基本設(shè)計(jì)
1.3 強(qiáng)化學(xué)習(xí)中的獎(jiǎng)勵(lì)和確定一個(gè)合適的獎(jiǎng)勵(lì)函數(shù)所涉及的問題
1.4 強(qiáng)化學(xué)習(xí)的狀態(tài)
1.5 強(qiáng)化學(xué)習(xí)中的智能體
1.6 小結(jié)
第2章 強(qiáng)化學(xué)習(xí)的數(shù)學(xué)和算法理解:馬爾可夫決策過程與解決方法
2.1 馬爾可夫決策過程
2.2 貝爾曼方程
2.3 動(dòng)態(tài)規(guī)劃和貝爾曼方程
2.4 價(jià)值迭代和策略迭代方法
2.5 小結(jié)
第3章 編碼環(huán)境和馬爾可夫決策過程的求解:編碼環(huán)境、價(jià)值迭代和策略迭代算法
3.1 以網(wǎng)格世界問題為例
3.2 構(gòu)建環(huán)境
3.3 平臺(tái)要求和代碼的工程架構(gòu)
3.4 創(chuàng)建網(wǎng)格世界環(huán)境的代碼
3.5 基于價(jià)值迭代方法求解網(wǎng)格世界的代碼
3.6 基于策略迭代方法求解網(wǎng)格世界的代碼
3.7 小結(jié)
第4章 時(shí)序差分學(xué)習(xí)、SARSA和Q學(xué)習(xí):幾種常用的基于值逼近的強(qiáng)化學(xué)習(xí)方法
4.1 經(jīng)典DP的挑戰(zhàn)
4.2 基于模型和無(wú)模型的方法
4.3 時(shí)序差分(TD)學(xué)習(xí)
4.4 SARSA
4.5 Q學(xué)習(xí)
4.6 決定探索和利用之間概率的算法(賭博機(jī)算法)
4.7 小結(jié)
第5章 Q學(xué)習(xí)編程:Q學(xué)習(xí)智能體和行為策略編程
5.1 工程結(jié)構(gòu)與依賴項(xiàng)
5.2 代碼
5.3 訓(xùn)練統(tǒng)計(jì)圖
第6章 深度學(xué)習(xí)簡(jiǎn)介
6.1 人工神經(jīng)元深度學(xué)習(xí)的基石
6.2 前饋深度神經(jīng)網(wǎng)絡(luò)(DNN)
6.3 深度學(xué)習(xí)中的架構(gòu)注意事項(xiàng)
6.4 卷積神經(jīng)網(wǎng)絡(luò)用于視覺深度學(xué)習(xí)
6.5 小結(jié)
第7章 可運(yùn)用的資源:訓(xùn)練環(huán)境和智能體實(shí)現(xiàn)庫(kù)
7.1 你并不孤單
7.2 標(biāo)準(zhǔn)化的訓(xùn)練環(huán)境和平臺(tái)
7.3 Agent開發(fā)與實(shí)現(xiàn)庫(kù)
第8章 深度Q網(wǎng)絡(luò)、雙DQN和競(jìng)爭(zhēng)DQN
8.1 通用人工智能
8.2 GoogleDeep Mind和AlphaGo簡(jiǎn)介
8.3 DQN算法
8.4 雙DQN算法
8.5 競(jìng)爭(zhēng)DQN算法
8.6 小結(jié)
第9章 雙DQN的代碼:用£衰減行為策略編碼雙DQN
9.1 項(xiàng)目結(jié)構(gòu)和依賴關(guān)系
9.2 雙DQN智能體的代碼(文件:DoubleDQN.py)
9.3 訓(xùn)練統(tǒng)計(jì)圖
第10章 基于策略的強(qiáng)化學(xué)習(xí)方法:隨機(jī)策略梯度與REINFORCE算法
10.1 基于策略的方法和策略近似介紹
10.2 基于價(jià)值的方法和基于策略的方法的廣義區(qū)別
10.3 計(jì)算策略梯度的問題
10.4 REINFORCE算法
10.5 REINFORCE算法中減少方差的方法
10.6 為REINFORCE算法選擇基線
10.7 小結(jié)
第11章 演員-評(píng)論家模型和A3C:異步優(yōu)勢(shì)演員-評(píng)論家模型
11.1 演員-評(píng)論家方法簡(jiǎn)介
11.2 演員-評(píng)論家方法的概念設(shè)計(jì)
11.3 演員-評(píng)論家實(shí)現(xiàn)的架構(gòu)
11.4 異步優(yōu)勢(shì)行動(dòng)者-評(píng)論家實(shí)現(xiàn)(A3C)
11.5 (同步)優(yōu)勢(shì)演員-評(píng)論家實(shí)現(xiàn)(A2C)
11.6 小結(jié)
第12章 A3C的代碼:編寫異步優(yōu)勢(shì)演員-評(píng)論家代碼
12.1 項(xiàng)目結(jié)構(gòu)和依賴關(guān)系
12.2 代碼(A3C_MasterFile:a3c_master.py)
12.3 訓(xùn)練統(tǒng)計(jì)圖
第13章 確定性策略梯度和DDPG:基于確定性策略梯度的方法
13.1 確定性策略梯度(DPG)
13.2 深度確定性策略梯度(DDPG)
13.3 小結(jié)
第14章 DDPG的代碼:使用高級(jí)封裝的庫(kù)編寫DDPG的代碼
14.1 用于強(qiáng)化學(xué)習(xí)的高級(jí)封裝的庫(kù)
14.2 Mountain Car Continuous(Gym)環(huán)境
14.3 項(xiàng)目結(jié)構(gòu)和依賴關(guān)系
14.4 代碼(文件:ddpg_continout_action.py)
14.5 智能體使用MountainCarContinous-v0環(huán)境
參考文獻(xiàn)