深度強化學習

尹大偉 吳敏傑

商品描述

本書從強化學習的基礎入手,以非常直觀易懂的例子和實際應用來解釋其中的每個概念,接著介紹一些前沿的研究及進展,這些進展使得強化學習可以超過其他(人工)智能係統。本書的目的不僅在於為讀者闡釋多種前緣強化學習演算法背後的數學原理,也希望讀者能在各自的應用領域中實際運用這些演算法及類似的先進深度強化學習智能體。 本書從強化學習的基本模組開始,涵蓋了流行的經典動態規劃方法和經典強化學習方法,如價值迭代和策略迭代;同時也包括一些傳統的強化學習演算法,如時序差分學習、SARSA和Q學習。在此基礎之上,本書介紹了適用於現代強化學習環境和智能體的深度學習和輔助工具。本書隨後開始深入研究深度強化學習的概念,並介紹相應的演算法,如深度Q網絡、雙DQN、競爭DQN、(深度)同步演員-評論家,(深度)異步優勢演員-評論家和深度確定性策略梯度。在每一個介紹這些概念的理論/數學原理的章節之後都附有可用於這些智能體實現的代碼。

目錄大綱

第1章 強化學習簡介:AI智能體背後的智能
1.1 什麼是人工智能,強化學習與它有什麼關係
1.2 理解強化學習的基本設計
1.3 強化學習中的獎勵和確定一個合適的獎勵函數所涉及的問題
1.4 強化學習的狀態
1.5 強化學習中的智能體
1.6 小結
第2章 強化學習的數學與演算法理解:馬可夫決策過程與解決方法
2.1 馬可夫決策過程
2.2 貝爾曼方程
2.3 動態規劃與貝爾曼方程
2.4 價值迭代與策略迭代方法
2.5 小結
第3章 編碼環境與馬可夫決策過程的解法:編碼環境、價值迭代與策略迭代演算法
3.1 以網格世界問題為例
3.2 建構環境
3.3 平臺要求和程式碼的工程架構
3.4 創建網格世界環境的程式碼
3.5 基於價值迭代法求解網格世界的程式碼
3.6 基於策略迭代法求解網格世界的程式碼
3.7 小結
第4章 時序差分學習、SARSA和Q學習:幾種常用的基於值逼近的強化學習方法
4.1 經典DP的挑戰
4.2 基於模型和無模型的方法
4.3 時序差分(TD)學習
4.4 SARSA
4.5 Q學習
4.6 決定「探索」與「利用」之間機率的演算法(賭博機演算法)
4.7 小結
第5章 Q學習程式設計:Q學習智能體與行為策略編程
5.1 工程結構與依賴項
5.2 代碼
5.3 訓練統計圖
第6章 深度學習簡介
6.1 人工神經元-深度學習的基石
6.2 前饋深度神經網絡(DNN)
6.3 深度學習中的架構註意事項
6.4 捲積神經網絡-用於視覺深度學習
6.5 小結
第7章 可運用的資源:訓練環境與智能體實作庫
7.1 你並不孤單
7.2 標準化的訓練環境與平臺
7.3 Agent開發與實作庫
第8章 深度Q網絡、雙DQN和競爭DQN
8.1 通用人工智能
8.2 Google「Deep Mind」和「AlphaGo」簡介
8.3 DQN演算法
8.4 雙DQN演算法
8.5 競爭DQN演算法
8.6 小結
第9章 雙DQN的代碼:用£衰減行為策略編碼雙DQN
9.1 專案結構與依賴關係
9.2 雙DQN智能體的程式碼(檔案:DoubleDQN.py)
9.3 訓練統計圖
第10章 基於策略的強化學習方法:隨機策略梯度與REINFORCE演算法
10.1 基於策略的方法和策略近似介紹
10.2 基於價值的方法和基於策略的方法的廣義區別
10.3 計算策略梯度的問題
10.4 REINFORCE演算法
10.5 REINFORCE演算法中減少變異數的方法
10.6 為REINFORCE演算法選擇基線
10.7 小結
第11章 演員-評論家模型與A3C:異步優勢演員-評論家模型
11.1 演員-評論家方法簡介
11.2 演員-評論家方法的概念設計
11.3 演員-評論家實現的架構
11.4 異步優勢行動者-評論家實現(A3C)
11.5 (同步)優勢演員-評論家實現(A2C)
11.6 小結
第12章 A3C的代碼:編寫異步優勢演員-評論家代碼
12.1 專案結構與依賴關係
12.2 程式碼(A3C_Master—File:a3c_master.py)
12.3 訓練統計圖
第13章 確定性策略梯度與DDPG:基於確定性策略梯度的方法
13.1 確定性策略梯度(DPG)
13.2 深度確定性策略梯度(DDPG)
13.3 小結
第14章 DDPG的程式碼:使用進階封裝的函式庫編寫DDPG的程式碼
14.1 用於強化學習的高階封裝的庫
14.2 Mountain Car Continuous(Gym)環境
14.3 專案結構與依賴關係
14.4 程式碼(檔案:ddpg_continout_action.py)
14.5 智能體使用「MountainCarContinous-v0」環境
參考文獻