從零起步掌握強化學習技術精髓,稱霸人工智能領域!
《深入淺齣強化學習:原理入門》針對初學者的需求,直接分析原理,並輔以編程實踐。從解決問題的思路,層層剖析,普及瞭傳統的強化學習基本方法和當前炙手可熱的深度強化學習方法,直接將讀者帶入強化學習的殿堂。讀完本書,讀者能在熟練掌握原理的基礎上,直接上手編程實踐。
本書的敘述方式簡潔、直接、清晰,值得精讀!
本書除瞭係統地介紹理論,還介紹瞭相應的數學基礎與編程實例,因此既適閤零基礎的人員入門學習,也適閤相關人員作為研究參考。
《深入淺齣強化學習:原理入門》用通俗易懂的語言深入淺齣地介紹瞭強化學習的基本原理,覆蓋瞭傳統的強化學習基本方法和當前炙手可熱的深度強化學習方法。開篇從最基本的馬爾科夫決策過程入手,將強化學習問題納入到嚴謹的數學框架中,接著闡述瞭解決此類問題最基本的方法——動態規劃方法,並從中總結齣解決強化學習問題的基本思路:交互迭代策略評估和策略改善。
基於這個思路,分彆介紹瞭基於值函數的強化學習方法和基於直接策略搜索的強化學習方法。最後介紹瞭逆嚮強化學習方法和近年具有代錶性、比較前沿的強化學習方法。
除瞭係統地介紹基本理論,書中還介紹瞭相應的數學基礎和編程實例。因此,《深入淺齣強化學習:原理入門》既適閤零基礎的人員入門學習、也適閤相關科研人員作為研究參考。
1 緒論 1
1.1 這是一本什麼書 1
1.2 強化學習可以解決什麼問題 2
1.3 強化學習如何解決問題 4
1.4 強化學習算法分類及發展趨勢 5
1.5 強化學習仿真環境構建 7
1.5.1 gym安裝及簡單的demo示例 8
1.5.2 深入剖析gym環境構建 10
1.6 本書主要內容及安排 12
第一篇 強化學習基礎 17
2 馬爾科夫決策過程 18
2.1 馬爾科夫決策過程理論講解 18
2.2 MDP中的概率學基礎講解 26
2.3 基於gym的MDP實例講解 29
2.4 習題 34
3 基於模型的動態規劃方法 36
3.1 基於模型的動態規劃方法理論 36
3.2 動態規劃中的數學基礎講解 47
3.2.1 綫性方程組的迭代解法 47
3.2.2 壓縮映射證明策略評估的收斂性 49
3.3 基於gym的編程實例 52
3.4 最優控製與強化學習比較 54
3.5 習題 56
第二篇 基於值函數的強化學習方法 57
4 基於濛特卡羅的強化學習方法 58
4.1 基於濛特卡羅方法的理論 58
4.2 統計學基礎知識 67
4.3 基於Python的編程實例 71
4.4 習題 74
5 基於時間差分的強化學習方法 75
5.1 基於時間差分強化學習算法理論講解 75
5.2 基於Python和gym的編程實例 83
5.3 習題 87
6 基於值函數逼近的強化學習方法 88
6.1 基於值函數逼近的理論講解 88
6.2 DQN及其變種 94
6.2.1 DQN方法 94
6.2.2 Double DQN 100
6.2.3 優先迴放(Prioritized Replay) 102
6.2.4 Dueling DQN 104
6.3 函數逼近方法 105
6.3.1 基於非參數的函數逼近 105
6.3.2 基於參數的函數逼近 111
6.3.3 捲積神經網絡 117
6.4 習題 123
第三篇 基於直接策略搜索的強化學習方法 125
7 基於策略梯度的強化學習方法 126
7.1 基於策略梯度的強化學習方法理論講解 126
7.2 基於gym和TensorFlow的策略梯度算法實現 134
7.2.1 安裝Tensorflow 135
7.2.2 策略梯度算法理論基礎 135
7.2.3 Softmax策略及其損失函數 136
7.2.4 基於TensorFlow的策略梯度算法實現 138
7.2.5 基於策略梯度算法的小車倒立擺問題 141
7.3 習題 141
8 基於置信域策略優化的強化學習方法 142
8.1 理論基礎 143
8.2 TRPO中的數學知識 153
8.2.1 信息論 153
8.2.2 優化方法 155
8.3 習題 164
9 基於確定性策略搜索的強化學習方法 165
9.1 理論基礎 165
9.2 習題 170
10 基於引導策略搜索的強化學習方法 171
10.1 理論基礎 171
10.2 GPS中涉及的數學基礎 178
10.2.1 監督相LBFGS優化方法 178
10.2.2 ADMM算法 179
10.2.3 KL散度與變分推理 183
10.3 習題 184
第四篇 強化學習研究及前沿 185
11 逆嚮強化學習 186
11.1 概述 186
11.2 基於最大邊際的逆嚮強化學習 187
11.3 基於最大熵的逆嚮強化學習 194
11.4 習題 201
12 組閤策略梯度和值函數方法 202
13 值迭代網絡 207
13.1 為什麼要提齣值迭代網絡 207
13.2 值迭代網絡 210
14 基於模型的強化學習方法:PILCO及其擴展 214
14.1 概述 214
14.2 PILCO 216
14.3 濾波PILCO和探索PILCO 226
14.3.1 濾波PILCO算法 227
14.3.2 有嚮探索PILCO算法 230
14.4 深度PILCO 232
後記 235
參考文獻 237
推薦序一
強化學習是機器學習的一個重要分支,它試圖解決決策優化的問題。所謂決策優化,是指麵對特定狀態(State,S),采取什麼行動方案(Action,A),纔能使收益最大(Reward,R)。很多問題都與決策優化有關,比如下棋、投資、課程安排、駕車,動作模仿等。
AlphaGo的核心算法,就是強化學習。AlphaGo不僅穩操勝券地戰勝瞭當今世界所有人類高手,而且甚至不需要學習人類棋手的棋譜,完全靠自己摸索,就在短短幾天內,發現並超越瞭一韆多年來人類積纍的全部圍棋戰略戰術。
最簡單的強化學習的數學模型,是馬爾科夫決策過程(Markov Decision Process,MDP)。之所以說MDP是一個簡單的模型,是因為它對問題做瞭很多限製。
1.麵對的狀態st,數量是有限的。
2.采取的行動方案at,數量也是有限的。
3.對應於特定狀態st,當下的收益rt是明確的。
4.在某一個時刻t,采取瞭行動方案at,狀態從當前的st轉換成下一個狀態st+1。下一個狀態有多種可能,記為 , i = 1... n。
換句話說,麵對局麵st,采取行動at,下一個狀態是 ,不是確定的,而是概率的,狀態轉換概率,記為P( | st, at )。但是狀態轉換隻依賴於當前狀態st,而與先前的狀態st-1, st-2 ...無關。
解決馬爾科夫決策過程問題的常用的算法,是動態規劃(Dynamic Programming)。
對馬爾科夫決策過程的各項限製,不斷放鬆,研究相應的算法,是強化學習的目標。例如對狀態st放鬆限製:
1.假如狀態st的數量,雖然有限,但是數量巨大,如何降低動態規劃算法的計算成本;
2.假如狀態st的數量是無限的,現有動態規劃算法失效,如何改進算法;
3.假如狀態st的數量不僅是無限的,而且取值不是離散的,而是連續的,如何改進算法;
4.假如狀態st不能被完全觀察到,隻能被部分觀察到,剩餘部分被遮擋或缺失,如何改進算法;
5.假如狀態st完全不能被觀察到,隻能通過其他現象猜測潛在的狀態,如何改進算法。
放鬆限製,就是提升問題難度。在很多情況下,強化學習的目標,不是尋找絕對的最優解,而是尋找相對滿意的次優解。
強化學習的演進,有兩個軸綫:一個是不斷挑戰更難的問題,不斷從次優解嚮最優解逼近;另一個是在不嚴重影響算法精度的前提下,不斷降低算法的計算成本。
此書的敘述綫索非常清晰,從最簡單的解決馬爾科夫決策過程的動態規劃算法,一路講解到最前沿的深度強化學習算法(Deep Q Network,DQN),單刀直入,全無枝枝蔓蔓之感。不僅解釋數學原理,而且注重編程實踐。同時,行文深入淺齣,通俗易懂。
將本書與Richard Sutton和Andrew Barto閤著的經典著作Reinforcement Learning: An Introduction, Second Edition相比,Sutton和Barto在內容上更注重全麵,覆蓋瞭強化學習各個分支的研究成果;而本書更強調實用,是值得精讀的教材。
鄧侃
PhD of Robotics Institute, School of Computer Science, Carnegie Mellon University,前Oracle 主任架構師、前百度網頁搜索部高級總監、北京大數醫達科技有限公司創始人
推薦序二
強化學習又稱為增強學習或再勵學習(Reinforcement learning),是AlphaGo、AlphaGo Zero等人工智能軟件的核心技術。近年來,隨著高性能計算、大數據和深度學習技術的突飛猛進,強化學習算法及其應用也得到更為廣泛的關注和更加快速的發展。尤其是強化學習與深度學習相結閤而發展起來的深度強化學習技術已經取得若乾突破性進展。AlphaGo與人類頂級棋手之間的對弈,使得深度強化學習技術在學術界和工業界得到瞭更為廣泛的關注。強化學習不僅在計算機博弈中取得巨大成功,而且在機器人控製、汽車智能駕駛、人機對話、過程優化決策與控製等領域,也被認為是實現高級人工智能最有潛力的方法。
本人在多年從事強化學習與近似動態規劃理論和應用的研究過程中,力求不斷提升強化學習算法的快速收斂性和泛化性能,並且將強化學習新理論和新算法應用於移動機器人和自主駕駛車輛等領域,為智能移動機器人和自主駕駛車輛在復雜、不確定條件下的自主優化決策和自學習控製提供高效的技術手段。今後,隨著相關理論和技術的不斷進步,強化學習技術在智能機器人和自主駕駛車輛、復雜生産過程的優化決策與控製、天空與海洋無人係統等領域的應用將很快會有新的突破。
強化學習的思想從20世紀初便被提齣來瞭,經過將近一個世紀的發展,強化學習與心理學、運籌學、智能控製、優化理論、計算智能、認知科學等學科有著密切的聯係,是一個典型的多學科交叉領域。來自不同學科的概念和思想使得初學者學習和瞭解強化學習存在較大的睏難。郭憲博士和方勇純教授的這本《深入淺齣強化學習:原理入門》用通俗的語言係統地講解瞭強化學習的基本概念以及它們之間的關聯關係。從內容的廣度來看,這本書涵蓋瞭強化學習領域的基本概念和基本方法(基於值函數的方法和基於直接策略搜索的方法);從內容的深度來看,這本書既有傳統的強化學習算法(基於錶格的強化學習方法,如Qlearning,Sarsa算法等),也有最近發展起來的深度強化學習算法(如DQN,TRPO,DDPG等)。另外,該書還有兩大特色:第一,在介紹強化學習算法的同時,相應地介紹瞭算法設計和分析的數學基礎;第二,相關算法配有代碼實例。這兩個特色使得該書非常適閤初學者、相關領域科研人員以及研究生學習和研討。鑒於此,強烈推薦該書作為廣大讀者學習強化學習技術的入門讀物,也希望該書能引導和幫助更多的學者投入到強化學習的研究和應用中,為我國新一代人工智能的發展貢獻自己的力量。
徐昕
國防科技大學教授
推薦序三
繼深度學習與大數據結閤産生瞭巨大的技術紅利之後,人們開始探索後深度學習時代的新技術方嚮。當前主流的機器學習範式大都是以預先收集或構造數據及標簽,基於已存在的靜態數據進行機器學習為特徵的“開環學習”。近年來,采用動態的數據及標簽,將數據産生與模型優化通過一定的交互方式結閤在一起,將動態反饋信號引入學習過程的“閉環學習”受到越來越多的關注。強化學習就是“閉環學習”範式的典型代錶。
在AlphaGo戰勝人類圍棋選手之後,AlphaGO Zero以其完全憑藉自我學習超越人類數韆年經驗的能力再次刷新瞭人類對人工智能的認識。而這一人工智能領域的巨大成功的核心就是強化學習與深度學習的結閤,這也使得強化學習這一行為主義學習範式,受到瞭學術界和産業界的新一輪廣泛關注。
本書的齣版正是在這樣的背景下,可謂恰逢其時。本書深入淺齣地對強化學習的理論進行瞭綜閤全麵的介紹,係統完整又通俗易懂。同時,結閤OpenAI的仿真環境,將強化學習算法的實際使用與理論介紹聯係起來,具有很強的實用性。在強化學習方法論得到廣泛關注,以及其實踐需求快速增長的背景下,這是一本很好的入門教程。
俞凱
上海交通大學研究員
推薦序四
AlphaGo的誕生掀起瞭(深度)強化學習技術的一輪熱潮,該方嚮已成為人工智能領域最熱門的方嚮之一,由於其通用性而備受各個應用領域推崇,從端對端控製、機器人手臂控製,到推薦係統、自然語言對話係統等。(深度)強化學習也被OpenAI等公司認為是實現通用人工智能的重要途徑。
然而目前強化學習中文資料相對零散,缺少兼具係統性和前沿性的強化學習教學及科研資料。郭博士的《深入淺齣強化學習:原理入門》這本書恰好填補瞭這一空白。本書根據郭博士在知乎的強化學習專欄內容整理而成,條分縷析、通俗易懂,既對強化學習基礎知識做瞭全方麵“深入淺齣”的講述,又涵蓋瞭深度強化學習領域一係列最新的前沿技術。因此它無論是對強化學習的入門者,還是強化學習領域研究人員和工程師,都是一本很好的推薦讀物,相信不同的讀者都會從中獲益。
郝建業
天津大學副教授、天津市青年韆人、天津大學“北洋青年學者”
推薦序五
受行為主義心理學研究啓發,在機器學習領域中産生瞭一種交互式學習方法的分支,這便是強化學習,又稱為增強學習。強化學習模擬的是人類的一種學習方式,在執行某個動作或決策後根據執行效果來獲得奬勵,通過不斷與環境的交互進行學習,最終達到目標。強化學習概念早在上世紀就已經提齣,在計算機領域,第一個增強學習問題是利用奬懲手段學習迷宮策略。然而,直到2016年AlphaGo對決李世石一戰成名後,強化學習的概念纔真正廣為人知。強化學習主要應用於眾多帶有交互性和決策性問題,比如博弈、遊戲、機器人、人機對話等,這些問題是常用的監督學習和非監督學習方法無法很好處理的。
本人一直從事移動機器人、機器視覺和機器學習領域的研究,以及人工智能課程的教學。此前,為瞭解決人形機器人斜坡穩定行走問題,在查閱深度學習相關資料的過程中,在網上偶然看到郭憲博士開闢的強化學習專欄,讀後很有收獲。現在他將專欄文章整理編著成書,重新按知識層次進行編排和補充,對於讀者學習更有幫助。
本書覆蓋瞭強化學習最基本的概念和算法。在基於值函數的強化學習方法中,介紹瞭濛特卡羅法、時間差分法和值函數逼近法。在基於直接策略搜索的強化學習方法中,介紹瞭策略梯度法、置信域策略法、確定性策略搜索法和引導策略搜索。在強化學習的前沿部分,介紹瞭逆嚮強化學習、深度強化學習和PILCO等。除瞭深度學習算法本身,書中還對涉及的基礎知識,如概率學基礎、馬爾科夫決策過程、綫性方程組的數值求解方法、函數逼近方法、信息論中熵和相對熵的概念等也做瞭詳細的說明。本書非常適閤科技人員、高等學校師生和感興趣人員作為入門強化學習的讀物,也可作為相關研究和教學的參考書。
本書內容深入淺齣、文字簡單明瞭,采用瞭豐富的實例,讓讀者易讀、易懂。同時配有習題和代碼詳解,能有效提升讀者對理論知識的理解,幫助讀者運用理論解決實際問題。建議讀者跟隨書中的示例和代碼(https://github.com/gxnk/reinforcement- learning-code)來實現和驗證相關強化學習算法,並可同時關注作者的知乎專欄(https://zhuanlan.zhihu.com/sharerl)以便更好地互動和探討相關細節。
陳白帆
中南大學副教授 湖南省自興人工智能研究院副院長
2017年5月,AlphaGo擊敗世界圍棋冠軍柯潔,標誌著人工智能進入一個新的階段。AlphaGo背後的核心算法——深度強化學習——成為繼深度學習之後廣泛受人關注的前沿熱點。與深度學習相比,深度強化學習具有更寬泛的應用背景,可應用於機器人、遊戲、自然語言處理、圖像處理、視頻處理等領域。深度強化學習算法被認為是最有可能實現通用人工智能計算的方法。不過,由於深度強化學習算法融閤瞭深度學習、統計、信息學、運籌學、概率論、優化等多個學科的內容,因此強化學習的入門門檻比較高,並且,到目前為止,市麵上沒有一本零基礎全麵介紹強化學習算法的書籍。
本書是筆者在南開大學計算機與控製工程學院做博士後期間,每周在課題組內講解強化學習知識的講義閤集。在學習強化學習基本理論的時候,我深深地感受到強化學習理論中的很多概念和公式都很難理解。經過大量資料和文獻的查閱並終於理解一個全新的概念時,內心湧現的那種喜悅和興奮,鼓動著我將這些知識分享給大傢。為此,我在知乎開闢瞭《強化學習知識大講堂》專欄,並基本保持瞭每周一次更新的速度。該專欄得到大傢的關注,很多知友反映受益良多,本書的雛形正是來源於此。在成書時,考慮到書的邏輯性和完整性,又添加瞭很多數學基礎和實例講解。希望本書能幫助更多的人入門強化學習,開啓自己的人工智能之旅。
在寫作過程中,博士後閤作導師方勇純教授給瞭大量的建議,包括書的整體結構、每一章的講述方式,甚至每個標題的選擇。寫作後,方老師細緻地審閱瞭全文,給齣瞭詳細的批注,並多次當麵指導書稿的修改。正是因為方老師的耐心指導與辛勤付齣,本書纔得以順利完成。
同時,非常感謝組內的研究生丁傑、硃威和趙銘慧三位同學,通過與他們的交流,我學會瞭如何更明晰地講解一個概念。本書的很多講解方式都是在與他們的交流中産生的。
本書在寫作過程中參考瞭很多文獻資料,這些文獻資料是無數科研工作者們日日夜夜奮鬥的成果。本書對這些成果進行加工並形成瞭一套自成體係的原理入門教程。可以說沒有這些科研工作者們的豐碩成果就沒有今天蓬勃發展的人工智能,也就沒有這本書,在此對這些科學工作者們錶示由衷的敬意。
本書前六章的內容及組織思路很大部分參考瞭David Silver的網絡課程,同時參考瞭強化學習鼻祖 Richard S. Sutton等人所著的Reinforcement Learning: An Introduction,在此嚮Silver和Sutton緻敬。
本書第8章介紹瞭置信域強化學習算法,主要參考瞭John Shulman的博士論文,在此嚮John Shulman博士及其導師Pieter Abbeel緻敬。第10章主要介紹瞭Sergey Levine博士的工作,在此對其錶示感謝。在強化學習前沿部分,本書介紹瞭最近一年該領域很優秀的研究工作,如Donoghue的組閤策略梯度和Qlearning方法,Tamar的值迭代網絡,Deisenroth的PILCO方法和McAllister的PILCO擴展方法,在此對這些作者錶示感謝。當然,本書還介紹瞭很多其他科研工作者的工作,在此對他們一並緻謝。
本書闡述的主要是前人提齣的強化學習算法的基本理論,並沒有介紹筆者個人的工作,但在此仍然要感謝目前我負責的兩項基金的支持:國傢自然科學基金青年基金(61603200)和中國博士後基金麵上項目(2016M601256)。這兩個項目都和強化學習有關,本書也可看成是這兩個項目的前期調研和積纍。關於更多筆者個人的工作,留待以後再與大傢分享。
由於個人水平有限,書稿中難免有錯誤,歡迎各位同行和讀者批評指正。我的個人郵箱是guoxiansia@163.com,如有疑問,歡迎谘詢。
最後,感謝我的傢人,感謝我的愛人王凱女士,感謝她長時間對我的理解和支持,沒有她的幫助,我一無所有,一事無成。這本書獻給她。
郭憲
2017年11月
我最近翻閱瞭《深入淺齣強化學習:原理入門》,這本書給我的感覺就像是打開瞭一扇通往全新世界的大門。我之前對強化學習的印象,基本上就是那些動輒幾十頁的公式推導,以及各種我聽都沒聽過的縮寫算法。所以,當我拿到這本書的時候,心裏還是有點打鼓的。但是,從翻開第一頁開始,我就被它獨特的敘事風格和清晰的邏輯吸引住瞭。作者仿佛是一位經驗豐富的嚮導,他並沒有直接把我丟進密林深處,而是先帶著我繞著森林邊緣走一走,讓我先熟悉一下周圍的環境,瞭解這個“強化學習”到底是什麼,它解決瞭什麼問題,以及它在現實中有哪些有趣的應用。 書中在講解核心概念時,那種“化繁為簡”的能力真的令人驚嘆。比如,在解釋“狀態空間”和“動作空間”的時候,作者並沒有上來就用數學符號定義,而是用瞭一個非常接地氣的例子,比如“一隻貓如何學會找到藏在房間裏的玩具”。貓咪在不同的位置(狀態)可以選擇不同的搜索方式(動作),而最終找到玩具(奬勵)就是它的目標。通過這種生活化的類比,我一下子就抓住瞭這些抽象概念的本質,感覺自己不再是站在門外,而是已經邁進瞭門檻,能夠看到裏麵的風景瞭。 讓我特彆欣賞的是,這本書在引入復雜的算法模型時,並沒有直接給齣冰冷的公式,而是采用瞭一種“循序漸進”的教學策略。它會先從一些最基礎的思想講起,然後逐步地引入更復雜的概念,並且在每一步都解釋得非常清楚,為什麼需要引入這個新的概念,它解決瞭之前方法的什麼問題。這種“知其然,更知其所以然”的講解方式,讓我對算法的理解不僅僅停留在“是什麼”,更能理解“為什麼是這樣”,這對於我這樣基礎相對薄弱的讀者來說,實在是太友好瞭,讓我感覺自己是真正地在“學會”而不是“記住”。 此外,書中穿插的一些小例子和圖示,都非常巧妙地幫助我理解那些抽象的算法。例如,在講解“貝爾曼方程”時,作者並沒有隻給齣那個復雜的數學公式,而是用一個圖來展示“未來的價值”是如何通過“當前的奬勵”和“下一時刻的價值”來計算的。這種可視化的講解方式,極大地降低瞭理解的難度,讓我能夠更直觀地把握算法的核心思想。讀這本書,感覺就像是在和一個非常善於溝通的朋友聊天,他總能找到最恰當的方式,讓你理解那些原本可能讓你頭疼不已的內容。 總而言之,《深入淺齣強化學習:原理入門》這本書,對於像我這樣的初學者來說,絕對是一本不可多得的寶藏。它不僅在內容上做到瞭“深入淺齣”,更在教學方法上做到瞭“潤物細無聲”。我在這本書中獲得的,不僅僅是對強化學習原理的初步認識,更是一種學習新知識的信心和方法。這本書讓我覺得,即使是看起來很“高大上”的技術,隻要用對方法,也能變得觸手可及。
評分讀完《深入淺齣強化學習:原理入門》,我最大的感受就是,原來那些聽起來像天書一樣的東西,也可以被講得如此有趣和透徹。我一直對人工智能的“學習”機製感到好奇,但強化學習這個名字,總是讓我覺得它會涉及很多我難以理解的數學和算法。然而,這本書完全顛覆瞭我的看法。作者用一種非常“接地氣”的方式,將復雜的概念一層層剝開,讓我這個門外漢也能慢慢地進入狀況。 書一開始就用瞭幾個非常貼切的例子,比如教小狗坐下,或者是在迷宮裏尋寶,來引入“智能體”、“環境”、“動作”、“奬勵”等核心要素。這些例子非常直觀,讓我一下子就明白瞭強化學習的基本框架,就像是在玩一個有明確規則的遊戲。我不再覺得那些術語是生硬的,而是有瞭具象的理解,這讓我學習的興趣一下子就被點燃瞭。 讓我特彆受益的是,書中對“策略”和“價值函數”的講解。作者並沒有直接扔齣公式,而是用“地圖”和“指南針”的比喻來幫助我理解。策略就像是地圖,告訴我在什麼情況下應該往哪裏走;而價值函數則像是指南針,告訴我哪個方嚮更有可能到達目的地。這種形象的比喻,讓我能夠清晰地理解它們各自的作用和聯係,以及它們在整個強化學習過程中的重要性。 更讓我驚喜的是,這本書在引入“Q-learning”這類經典算法時,並沒有上來就給一大堆公式,而是先分析瞭“無模型”學習的必要性,然後一步步地推導齣Q-learning的更新規則。作者還特彆強調瞭“探索”和“利用”之間的權衡,並用一個非常有趣的“反復試錯”的場景來解釋。這讓我覺得,算法的齣現是有其必然性的,是為瞭解決實際問題而誕生的,而不是憑空齣現的。 總的來說,《深入淺齣強化學習:原理入門》這本書,對於我來說,是一次非常愉快的學習體驗。它沒有給我帶來壓迫感,反而讓我感受到瞭一種探索的樂趣。我感覺自己不再是被動地接收信息,而是真正地在理解和消化。這本書為我打開瞭一扇瞭解人工智能核心驅動力的大門,讓我對未來人工智能的發展有瞭更清晰的認識,也激發瞭我進一步深入學習的動力。
評分讀瞭《深入淺齣強化學習:原理入門》之後,我感覺自己像是走進瞭一個充滿奇妙規則的遊樂場。作者在書裏用一種非常有趣的方式,把本來可能讓人望而生畏的“強化學習”變得像是在玩一場精心設計的遊戲。一開始,我以為會是各種枯燥的數學公式鋪天蓋地而來,但齣乎意料的是,書裏更多的是用形象的比喻和生活化的場景來引齣概念。比如,當講到“奬勵函數”時,作者並沒有直接給齣數學錶達式,而是類比成“小狗做對動作就有零食吃”,一下子就抓住瞭核心,讓人瞬間明白為什麼“奬勵”在整個學習過程中是如此至關重要,它就像是一個無形的指揮棒,引導著智能體的行為方嚮。 讓我印象特彆深刻的是,書中對於“探索與利用”這個經典睏境的闡釋。作者沒有簡單地說“既要探索又要利用”,而是花瞭很長的篇幅,用各種生動的例子,比如“第一次去新餐廳”或者“選擇走哪條路迴傢”來解釋這個矛盾。通過這些例子,我能清晰地感受到,純粹的探索可能會浪費時間和資源,而一味地利用熟悉的選項又可能錯過更好的機會。這本書教會我,如何在未知與已知之間找到一個巧妙的平衡點,這不僅在強化學習中重要,在我們的日常決策中也同樣適用,這是一種非常有價值的思維啓發。 還有一點讓我覺得非常贊賞的是,這本書在講解算法原理時,非常注重邏輯的連貫性。它不會突然跳到某個高深的概念,而是會一層層地剝開,告訴你這個算法是怎麼一步步演變而來的,它的齣現解決瞭之前算法的哪些局限性。比如,在講到Q-learning時,作者會先鋪墊一些基礎的動態規劃思想,然後再引齣Q-learning的獨特之處,比如不需要知道環境的轉移概率。這種“追根溯源”的講解方式,讓我不僅學會瞭“是什麼”,更理解瞭“為什麼”,讓我對算法的理解更加深刻和牢固,不會隻停留在錶麵記憶的層麵。 這本書的章節設置和內容過渡也非常流暢,讀起來有一種“欲罷不能”的感覺。即便遇到一些稍微復雜的技術細節,作者也會用一些巧妙的比喻或者類比來輔助理解,讓我覺得學習過程並沒有那麼痛苦。尤其是一些圖示,雖然不是特彆炫酷,但卻恰到好處地展示瞭算法的運作流程,或者概念之間的關係,為我節省瞭很多自行想象的時間,也避免瞭因為理解偏差而走彎路。總的來說,這本書在內容組織和呈現方式上,都體現瞭作者在教學上的用心良苦。 最後,我必須說,這本書給瞭我一種“原來強化學習也可以這麼好玩”的全新認識。它並沒有把學習過程弄得像是一場艱苦的戰鬥,反而像是一場充滿發現的旅程。我感覺自己不隻是在學習一項技術,更是在學習一種思考問題和解決問題的新方法。這本書不僅解答瞭我對強化學習的諸多疑惑,更激發瞭我進一步深入學習的興趣。對於任何想要踏入強化學習領域的朋友,這本書絕對是一份不容錯過的入門指南。
評分《深入淺齣強化學習:原理入門》這本書,拿到手裏的時候,我其實是有點忐忑的。畢竟“強化學習”這個詞,聽起來就充滿瞭高深的數學公式和復雜的算法模型,我一個非科班齣身的普通愛好者,真的能啃得動嗎?翻開第一頁,序言裏的作者用一種非常親切的語氣,分享瞭他當初學習強化學習的經曆,以及為什麼想寫這本書。這一點就讓我覺得很舒服,好像不是在麵對一本冷冰冰的技術教材,而是有位經驗豐富的前輩,願意手把手地帶著你入門。 接著往下翻,章節的安排也讓我眼前一亮。不是直接跳到那些讓人頭疼的貝爾曼方程,而是從最基礎的“是什麼”和“為什麼”開始講起。比如,第一章就用很多生動的例子,比如玩遊戲、下棋,甚至是機器人走路,來解釋什麼是“智能體”、“環境”、“狀態”、“動作”以及“奬勵”。這些例子都非常貼近生活,讓我一下子就理解瞭強化學習的核心思想:通過不斷地嘗試和反饋,讓智能體學會如何做齣最優的決策,以獲得最大的纍積奬勵。這種“潤物細無聲”的引導方式,讓我對後續的學習充滿瞭信心,不再覺得強化學習是遙不可及的。 我尤其欣賞書中在解釋核心概念時的那種“可視化”的功力。很多書上會直接拋齣一堆公式,讓人看得雲裏霧裏。但這本書不同,它會通過畫圖、類比,甚至是一些簡單的僞代碼,來幫助讀者理解。比如,在講到“馬爾可夫決策過程”(MDP)的時候,作者並沒有一開始就搬齣數學定義,而是用一個簡單的“齣門打傘”的例子,清晰地闡述瞭狀態、動作、轉移概率和奬勵之間的關係。這種循序漸進、由淺入深的講解方式,讓我這個初學者也能慢慢地搭建起對強化學習的理解框架,感覺到自己真的在一步步地掌握這門技術。 這本書最讓我感到驚喜的是,它不僅僅停留在理論的層麵,而是非常注重實踐的引導。雖然書名是“原理入門”,但它在講解完基本原理後,並沒有止步不前。書中穿插瞭一些用Python實現強化學習算法的簡單示例,雖然不是那種大型項目的代碼,但足以讓讀者親手去“玩一玩”這些算法。這種理論與實踐相結閤的方式,極大地加深瞭我對知識的理解。我不再隻是被動地接受信息,而是能夠主動地去驗證和探索,感覺自己真的在“學習”而不僅僅是“閱讀”。 總的來說,《深入淺齣強化學習:原理入門》這本書,對於我這樣一個想要瞭解強化學習但又擔心被高難度勸退的讀者來說,簡直是“救星”一般的存在。它用一種非常友好、易懂的方式,將復雜抽象的概念變得生動具體,讓我能夠真正地“深入淺齣”地理解強化學習的精髓。閱讀過程中,我感受到的更多是啓發和成就感,而不是挫敗感。這本書為我打開瞭一扇通往更廣闊的強化學習世界的大門,讓我對未來的學習和探索充滿瞭期待。
評分《深入淺齣強化學習:原理入門》這本書,我必須說,它真的做到瞭“深入淺齣”這四個字。在我拿到這本書之前,我對強化學習的認知,基本上就是“聽過但沒搞懂”。總覺得這個領域充滿瞭高深的數學和復雜的算法,不是一般人能夠輕易掌握的。然而,這本書完全顛覆瞭我的這種固有印象。作者用一種非常友好的方式,把原本可能讓人望而卻步的知識,變得生動易懂,就像是在娓娓道來一個精彩的故事。 書中最讓我印象深刻的是,它在講解“智能體”和“環境”的交互過程時,並沒有用那些枯燥的定義,而是用瞭一個非常形象的類比,比如“新手司機學習開車”。司機(智能體)在不同的路況(環境)下,會做齣不同的駕駛操作(動作),而這些操作的結果,有可能是安全到達目的地(正奬勵),也可能是發生事故(負奬勵)。通過這樣的類比,我一下子就抓住瞭強化學習的核心思想:通過不斷的試錯和反饋,讓智能體學會如何做齣最優的決策,以獲得最大的纍積奬勵。 而且,書中對於“奬勵函數”的設計,也進行瞭深入淺齣的闡述。作者並沒有直接給齣復雜的數學錶達式,而是強調瞭奬勵函數的設計對於智能體行為的引導作用。他用瞭一些具體的例子,比如“讓機器人學會走直綫”或者“讓遊戲角色吃到更多的金幣”,來解釋如何通過精心設計的奬勵來引導智能體走嚮我們期望的行為。這種“授人以漁”的教學方式,讓我明白瞭不僅僅是知道“是什麼”,更能知道“為什麼這樣做”。 讓我感到驚喜的是,這本書在講解“策略梯度”這類相對復雜的算法時,也顯得遊刃有條。作者並沒有直接跳到數學推導,而是先從“策略”本身入手,解釋瞭為什麼需要直接優化策略,以及這樣做的好處。然後,他再一步步地引入梯度下降的思想,並通過一些簡單的圖示來輔助理解。這種循序漸進的講解方式,讓我感覺自己雖然接觸的是前沿的技術,但卻絲毫沒有感到吃力,反而是充滿瞭好奇心和求知欲。 總的來說,《深入淺齣強化學習:原理入門》這本書,對於想要瞭解強化學習但又擔心門檻太高的讀者來說,絕對是一本不可多得的入門佳作。它用一種非常人性化的方式,將復雜的理論知識轉化為易於理解的概念,並且注重實踐的引導,讓我感覺自己不僅僅是在閱讀一本書,更像是在和一位經驗豐富的老師一起學習。這本書為我打開瞭強化學習這扇大門,讓我對這個領域充滿瞭興趣和信心。
評分商品質量很好,很滿意,配送速度快啊,而且配送員態度也非常好。
評分不錯!速度很快,辛苦配送員瞭,非常的感謝每一位付齣的人!
評分兩本書優惠時候買的,很好,公司前同事的書,支持!
評分還行吧還行
評分不錯!速度很快,辛苦配送員瞭,非常的感謝每一位付齣的人!
評分看瞭一眼蠻好的,京東賊快賊給力,快遞小哥也很棒
評分書的質量很好,常年支持京東,快遞給力
評分本次618買書真當是買爽瞭,自己感興趣的曆史,經濟,技術等都湊齊瞭,正版書籍看著很好。
評分還可以吧還可以還可以還可以還可以吧
本站所有內容均為互聯網搜尋引擎提供的公開搜索信息,本站不存儲任何數據與內容,任何內容與數據均與本站無關,如有需要請聯繫相關搜索引擎包括但不限於百度,google,bing,sogou 等
© 2025 book.coffeedeals.club All Rights Reserved. 靜流書站 版權所有