邊做邊學(xué)深度強化學(xué)習(xí):PyTorch程序設(shè)計實踐
定 價:69 元
叢書名:輕松上手IT技術(shù)日文譯叢
當(dāng)前圖書已被 36 所學(xué)校薦購過!
查看明細
- 作者:[日] 小川雄太郎(Yutaro ogawa)
- 出版時間:2020/4/1
- ISBN:9787111650140
- 出 版 社:機械工業(yè)出版社
- 中圖法分類:TP181
- 頁碼:221
- 紙張:膠版紙
- 版次:1
- 開本:16K
Pytorch是基于python且具備強大GPU加速的張量和動態(tài)神經(jīng)網(wǎng)絡(luò),更是Python中優(yōu)先的深度學(xué)習(xí)框架,它使用強大的 GPU 能力,提供*大的靈活性和速度。本書指導(dǎo)讀者以Pytorch為工具在Python中學(xué)習(xí)深層強化學(xué)習(xí)(DQN)。主要內(nèi)容包括:強化學(xué)習(xí)概述及分類、強化學(xué)習(xí)的算法和實施方法、在Pytorch中實施深度規(guī)劃與實現(xiàn)。、“實施深層強化學(xué)習(xí)DQN”、理解并實施新的深層強化學(xué)習(xí)方法(Double-DQN、Dueling Network、Prioritized Experience Replay、A3C、A2C)。
本書的目標(biāo)
近年來,我們常常聽到強化學(xué)習(xí)和深度強化學(xué)習(xí)等詞語。但是,實際上真正實現(xiàn)強化學(xué)習(xí)的并不多。目前正處于第三次人工智能熱潮中,深度學(xué)習(xí)方面已經(jīng)出版了大量書籍。然而,大多數(shù)關(guān)于強化學(xué)習(xí)和深度強化學(xué)習(xí)的書籍都是相關(guān)研究人員的學(xué)術(shù)成果。學(xué)術(shù)性書籍強調(diào)理論,傾向于公式和證明,實現(xiàn)代碼往往很少。對于非研究人員來說,通過閱讀這類書籍來理解強化學(xué)習(xí)和深度強化學(xué)習(xí)存在著較大的障礙。
因此,本書面向的不是研究者而是普通大眾,旨在讓讀者在實踐中理解強化學(xué)習(xí)和深度強化學(xué)習(xí)。本書強調(diào)算法的具體實現(xiàn),通過給出大量代碼并對其進行解釋和說明,來幫助讀者更好地學(xué)習(xí)。書中所有的代碼都可以下載。在閱讀本書時請實現(xiàn)相關(guān)程序,通過完成實際代碼來學(xué)習(xí)。
強化學(xué)習(xí)和深度強化學(xué)習(xí)主要用于兩個目的—機器人等控制規(guī)則的構(gòu)建以及圍棋、將棋等對戰(zhàn)游戲的策略構(gòu)建。本書涉及控制規(guī)則的構(gòu)建,但沒有實現(xiàn)圍棋等對戰(zhàn)游戲。然而,本書所講述的基本內(nèi)容對那些想要為對戰(zhàn)游戲制定策略的人也是有用的。
讀者所需的先驗知識
本書以對強化學(xué)習(xí)和深度強化學(xué)習(xí)感興趣,但不了解其細節(jié)和實現(xiàn)方法的讀者為對象。閱讀本書需要以下三方面的知識:
1)能夠理解if語句、for語句。
2)能夠自己定義方法(函數(shù))。
3)會執(zhí)行向量和矩陣的乘法運算。
換句話說,本書試圖以更容易理解的方式進行講解,讀者具備一些基本的編程經(jīng)驗和基本的線性代數(shù)知識即可順利學(xué)習(xí)。本書使用Python作為編程語言來實現(xiàn)相關(guān)程序,即使對Python不熟悉的讀者也能輕松理解本書內(nèi)容。但是,由于篇幅的限制,本書沒有解釋Python的所有基本細節(jié),如果你是Python初學(xué)者,請參考網(wǎng)上的信息和Python的入門書籍。
本書的實現(xiàn)代碼和運行環(huán)境
可以從作者的GitHub或Mynavi出版社的出版支持頁面下載本書的實現(xiàn)代碼。
本書的運行環(huán)境如下所示。我們使用PyTorch作為深度學(xué)習(xí)的框架,采用的是在2018年4月底發(fā)布的0.4.0版本。第7章使用亞馬遜的云服務(wù),通過GPU服務(wù)器來進行計算。計算所需時間大約3小時,費用為500日元或更少,所以嘗試運行所需的費用并不高。
譯者序
前言
第1章 強化學(xué)習(xí)概述1
1.1 機器學(xué)習(xí)的分類(監(jiān)督學(xué)習(xí)、非監(jiān)督學(xué)習(xí)、強化學(xué)習(xí))1
1.2 強化學(xué)習(xí)、深度強化學(xué)習(xí)的歷史6
1.3 深度強化學(xué)習(xí)的應(yīng)用實例11
參考文獻14
第2章 在走迷宮任務(wù)中實現(xiàn)強化學(xué)習(xí)16
2.1 Try Jupyter的使用方法16
2.2 迷宮和智能體的實現(xiàn)23
2.3 策略迭代法的實現(xiàn)31
2.4 價值迭代法的術(shù)語整理41
2.5 Sarsa的實現(xiàn)46
2.6 實現(xiàn)Q學(xué)習(xí)52
參考文獻57
第3章 在倒立擺任務(wù)中實現(xiàn)強化學(xué)習(xí)59
3.1 在本地PC上準(zhǔn)備強化學(xué)習(xí)的實現(xiàn)和執(zhí)行環(huán)境59
3.2 倒立擺任務(wù)“CartPole”64
3.3 由多變量連續(xù)值表示的狀態(tài)的表格表示69
3.4 Q學(xué)習(xí)的實現(xiàn)72
參考文獻80
第4章 使用PyTorch實現(xiàn)深度學(xué)習(xí)81
4.1 神經(jīng)網(wǎng)絡(luò)和深度學(xué)習(xí)的歷史81
4.2 深度學(xué)習(xí)的計算方法89
4.3 使用PyTorch實現(xiàn)MNIST手寫數(shù)字分類任務(wù)94
參考文獻107
第5章 深度強化學(xué)習(xí)DQN的實現(xiàn)108
5.1 深度強化學(xué)習(xí)DQN(深度Q網(wǎng)絡(luò))的說明108
5.2 實現(xiàn)DQN的四個要點111
5.3 實現(xiàn)DQN(上) 113
5.4 實現(xiàn)DQN(下) 123
參考文獻127
第6章 實現(xiàn)深度強化學(xué)習(xí)的改進版128
6.1 深度強化學(xué)習(xí)算法發(fā)展圖128
6.2 DDQN的實現(xiàn)132
6.3 Dueling Network的實現(xiàn)141
6.4 優(yōu)先經(jīng)驗回放的實現(xiàn)145
6.5 A2C的實現(xiàn)157
參考文獻168
第7章 在AWS GPU環(huán)境中實現(xiàn)消磚塊游戲169
7.1 消磚塊游戲“Breakout”的描述169
7.2 準(zhǔn)備在AWS上使用GPU所需要的深度學(xué)習(xí)執(zhí)行環(huán)境174
7.3 學(xué)習(xí)Breakout的四個關(guān)鍵思想187
7.4 A2C的實現(xiàn)(上) 193
7.5 A2C的實現(xiàn)(下) 203
參考文獻212
后記214