1. 程式人生 > >Reinforcement Learning An Introduction~Reinforcement Learning

Reinforcement Learning An Introduction~Reinforcement Learning

第一章

介紹

當我們考慮學習的本質時,我們首先想到的可能是通過與環境互動學習。當一個嬰兒玩耍,揮動手臂或環顧四周時,它沒有明確的老師,但它確實與其環境有直接的感覺運動聯絡。通過這種聯絡可以產生大量關於因果關係的資訊,關於動作的後果,以及為實現目標應該做些什麼。在我們的生活中,這種互動無疑是關於我們的環境和我們自己的主要知識來源。無論我們是學習駕駛汽車還是進行對話,我們都敏銳地意識到我們的環境如何響應我們的行為,並且我們試圖通過我們的行為來影響所發生的事情。 從互動中學習是幾乎所有學習和智力理論的基礎理念。

       在本書中,我們探索了一種從互動中學習的計算方法。我們主要探討理想化的學習情境,並評估各種學習方法的有效性,而不是直接理解人或動物的學習方式。也就是說,我們採用人工智慧研究員或工程師的角度。我們通過數學分析或計算實驗評估設計,探索有效解決科學或經濟利益學習問題的機器設計方法。我們探索的方法,就叫做強化學習,是一種更側重於從互動中進行目標導向的學習,而不是其他機器學習方法。

1.1 強回學習

強化學習是學習做什麼--如何將情境對映到行動—以最大化數字獎勵訊號。學習者不會被告知要採取哪些行動,而是必須通過嘗試來發現哪些行動產生最大的回報。在最有趣味性和最具挑戰性的案例中,動作不僅可以影響直接獎勵,還可以影響下一個情況,並通過這種情況影響所有後續獎勵。這兩個特徵--試錯探索和延遲獎勵--是強化學習的兩個最重要的區別特徵。

強化學習,就像許多名稱以“ing”結尾的主題一樣,例如機器學習和登山,同時也是一個問題,是一類能夠很好地解決問題的解決方法,以及研究這個問題的領域及其解決方法。對以上三件事情使用單一名稱很方便,但同時必須保持三者在概念上分開。特別是,問題和解決方法之間的區別在強化學習中非常重要,沒有做出這種區分是許多混淆的根源。

我們使用來自動力系統理論的思想來形式化強化學習的問題,特別是作為對不完全已知的馬爾可夫決策過程的最優控制。這種形式化的細節必須等到第3章,但基本思想只是捕捉學習智慧體與其環境相互作用,以實現目標過程中所面臨的真正問題的最重要方面。學習智慧體必須能夠在某種程度上感知其環境狀態,並且必須能夠採取影響狀態的操作。智慧體還必須有與環境狀態相關的目標。馬爾可夫決策過程旨在以最簡單的形式包括--感知,動作和目標這三個方面,而不會輕視任何一個。 任何非常適合解決此類問題的方法我們認為是強化學習方法。

強化學習不同於有監督學習,後者是當前機器學習領域的大多數研究中所用到的學習方式。有監督的學習,是從知識淵博的外部指導者提供的一組訓練標記樣本中學習。每個樣本都是一個情況和規範的描述,規範也就是系統應該對該情況採取的正確行動的標籤,這通常用於識別情況所屬的類別。這種學習的目的是讓系統推斷或概括其反應,使其在訓練集中不存在的情況下正確行動。這是一種重要的學習方式,但僅憑它不足以從互動中學習。 在互動式問題中,獲得所需動作的樣本通常是不切實際的,因為這些動作必須既正確又代表了智慧體面對所有情況採取的動作。在未知的領域,人們期望學習的最有益,智慧體必須能夠從自己的經驗中學習。

強化學習也與機器學習研究人員所稱的無監督學習不同,後者通常是發現隱藏在未標記資料集合中的結構。監督學習和無監督學習這兩個術語似乎對機器學習正規化進行了詳盡的分類,但事實卻並非如此。 雖然人們可能會認為強化學習是一種無監督學習,因為它不依賴於正確動作的樣本,強化學習試圖最大化獎勵訊號而不是試圖找到隱藏的結構。 在智慧體的經驗中,揭示結構在強化學習中的作用是毋庸置疑的,但是它本身並沒有解決最大化獎勵訊號的強化學習問題。 因此,我們認為強化學習是第三種機器學習正規化,同時還有監督學習和無監督學習,也許還有其他正規化。

       強化學習中出現的挑戰之一,是探索和開發之間的權衡,而不是其他型別學習。為了獲得更多的獎勵,強化學習智慧體傾向於它過去嘗試過的動作以及能夠有效地產生獎勵的動作。但是要發現這樣的動作,它必須嘗試以前沒有選擇的動作。智慧體必須利用它已經經歷的東西來獲得獎勵,但它也必須進行探索,以便在將來做出更好的動作選擇。困境在於,任何探索和開發都不能完全在沒有失敗的情況下進行。智慧體必須嘗試各種操作,並逐漸支援那些看起來最好的操作。在隨機任務中,必須多次嘗試每個動作,以獲得對其預期獎勵的可靠估計。幾十年來,數學家一直在深入研究探索-開發困境,但仍未得到解決。 就目前而言,我們只是注意到,平衡探索和利用的整個問題甚至不會出現在有監督和無監督的學習中,至少是以最純粹的形式出現。

    強化學習的另一個關鍵特徵是,它明確地考慮了目標導向的智慧體與不確定環境互動的這整個問題。這與許多考慮子問題的方法形成對比,這些方法沒有解決它們如何適合更大的化身。我們已經提到很多有關機器學習的研究都關注有監督學習而沒有明確說明這種能力最終如何有用。雖然其他研究人員已經制定了具有總體目標的規劃理論,但沒有考慮規劃在實時決策中的作用,也沒有考慮規劃所需的預測模型來自何處的問題。儘管這些方法已經產生了許多有用的結果,但是它們對孤立子問題的關注是一個重要的限制。

    強化學習採取相反的策略,從一個完整的,互動的,尋求目標的智慧體開始。所有強化學習智慧體都有明確的目標,可以感知環境的各個方面,從而選擇影響其環境的動作。此外,通常從一開始就假設代理人必須在其面臨的環境存在很大不確定性的情況下運作。當強化學習涉及規劃時,它必須解決規劃和實時行動選擇之間的相互作用,以及如何獲取和改進環境模型的問題。當強化學習涉及監督學習時,它會出於特定的原因這樣做,以確定哪些能力是關鍵的,哪些不是。為了學習研究以取得進步,必須分離和研究重要的子問題--即使完整智慧體的所有細節都無法填補,但它們應該是在完整的,互動的,尋求目標的智慧體中發揮明確作用的子問題。

    我們所說的一個完整的,互動的,追求目標的智慧體,並不總是意味著什麼完整的有機體或機器人。這些都是明顯的例子,但是一個完整的,互動的目標尋求代理也可以是更大的行為系統的一個組成部分。在這種情況下,代理直接與較大系統的其餘部分互動,並間接與較大系統的環境互動。一個簡單的例子是監視機器人電池充電水平並向機器人控制架構傳送命令的智慧體。該智慧體的環境是機器人的其餘部分以及機器人的環境。人們必須超越最明顯的智慧體及其環境的例子來理解強化學習框架的普遍性。

    現代強化學習最令人興奮的方面之一是其實質性以及與其它工程和科學學科的富有成效的互動。強化學習是人工智慧和機器學習中數十年趨勢的一部分,旨在與統計學,優化法和其他數學學科更好地整合。例如,一些強化學習方法用引數化逼近器學習的能力解決了在運籌學和控制理論中的經典的維度問題。更有特色的是,強化學習與心理學和神經科學也有很強的相互作用,雙方都有很大的好處。在所有形式的機器學習中,強化學習最接近人類和其他動物所做的學習,而強化學習的許多核心演算法最初都受到生物學習系統的啟發。強化學習通過學習動物的心理模型,更好地匹配一些經驗資料,以及通過大腦部分獎勵系統的有影響力的模型,也得到了一些回報。本書正文介紹了與工程學和人工智慧相關的強化學習的思想,並在第14章和第15章中總結了與心理學和神經科學的聯絡。

    最後,回到簡單的一般原則,強化學習也是人工智慧更大趨勢的一部分。自20世紀60年代後期以來,許多人工智慧研究人員認為沒有一般的原則可供發現,而智慧則歸因於擁有大量特殊用途的技巧,程式和啟發式。有時候說,如果我們能夠將相關的事實充分地提供給一臺機器,比如一百萬或十億,那麼它就會變得聰明起來。基於一般原則(如搜尋或學習)的方法被描述為“弱方法”,而基於特定知識的方法被稱為“強方法” 這種觀點今天仍然很普遍,但並不佔優勢。 從我們的觀點來看,這只是為時過早:因為在尋找一般原則時沒有經過太多的努力來得出這個結論。現代人工智慧現在包括許多研究,尋找學習的一般原則,搜尋和決策,以及嘗試整合大量的領域知識。目前尚不清楚鐘擺會擺動多遠,但強化學習研究肯定是讓人工智慧更簡單,更少的一般原則的迴歸的一部分