強化學習的基礎缺陷
http://blog.itpub.net/31509949/viewspace-2158001/
在這篇文章中,我們將討論AI 的核心領域之一的侷限性。在這個過程中,我們將遇到一個有趣的故事,一套將先前的知識和指導納入強化學習的方法,以及一個根本的結論。
你現在正在閱讀的第一部分將解釋RL(強化學習)是什麼以及為什麼它從根本上是有一些缺陷的。它將包含一些可以被AI從業者忽略的解釋,但是一定要堅持討論最近的非純粹RL工作,我們認為這些解釋代表了對純RL的基本缺陷的修復。首先,讓我們先從一個有趣的故事開始吧。
棋盤遊戲的故事
想象一下:你的朋友邀請你玩一個你從未玩過的棋盤遊戲。事實上,在你的生活中,你從未玩過棋盤遊戲,也沒有玩過任何型別的遊戲。你的朋友告訴你有效的動作是什麼,但不會告訴你它們是什麼意思,也不會告訴你比賽的得分方式。所以,沒有更多的問題、解釋就已經開始玩了。可能在前期的過程中,你會一直在遊戲中輸,但是經過幾周的連續比賽和數千場比賽,你甚至可以勉強獲勝。
看起來好像有點傻,對嗎?你為什麼不問這個遊戲的目標是什麼以及應該怎麼玩?然而,上面這段描述了大多數強化學習方法在今天仍然有效。
強化學習(RL)是AI中的基本子域之一。在RL框架中,代理與環境互動以瞭解在任何給定環境狀態下需要採取哪些操作以最大化其長期獎勵。在棋盤遊戲的故事中,這意味著讓您與棋盤互動,慢慢您才能夠了解您應該在每個棋盤遊戲配置中採取什麼動作以最大化您的最終得分。
在RL的典型模型中,代理僅在知道可能的行為的情況下開始,它對世界一無所知,並期望透過與環境互動並在每次採取行動後獲得獎勵來學習技能。缺乏先驗知識意味著代理人需要“從頭開始”學習。讓我們將這種從頭開始學習的方法稱為純粹的RL。純粹的RL特別用於處理backgammon和圍棋等遊戲,以及機器人等其他地方的各種問題。
在棋盤遊戲故事中,“一集”將是一個完整的遊戲。在這個例子中,許多RL問題,只有最後一個狀態的獎勵是非零的。
AlphaGo 0和AlphaZero——純RL模式學習圍棋、國際象棋比人類完成的效果要好。
RL的研究最近透過深度學習重新煥發活力,但基本模型並未發生太大變化,畢竟,這種從頭開始學習的方法可以追溯到RL作為研究領域的創造,並被編碼在其最基本的方程中。
所以這裡有一個基本問題:如果純粹的RL具有如此直觀的感覺,那麼基於純RL設計AI模型有多合理?如果設想人類透過純粹的RL學習新的棋盤遊戲是如此荒謬,我們難道不應該懷疑它是否是AI代理人應該學習的有缺陷的框架?既沒有先前經驗也沒有更高階別的指導,僅根據其獎勵訊號就開始學習新技能是否真的有意義?
從經典用於形式化RL的方程中完全沒有先前經驗和高階指令,並且隱式或顯式地改變這些方程可能對我們用於訓練所有RL應用的AI演算法的演算法有很大的影響(遠遠超出棋盤遊戲,從機器人到資源分配。換句話說,這是一個大問題,回答它甚至需要兩篇文章:
-
在第一部分(本文)中,我們將首先展示純粹的RL的主要成就並不像它們看起來那麼令人印象深刻。然後,我們將進一步展示在純粹的RL下可能無法實現更復雜的成就,因為它對AI代理施加了許多限制。
-
在第二部分中,我們將概述AI中可以解決這些侷限性的不同方法。最後,我們將根據這些方法對基於令人興奮的工作進行調查,並總結一下這項工作對RL和AI整體未來的意義。
純粹的RL實際上是否有意義?
許多人的直接反應如下:
當然,使用純粹的RL仍然是有意義的。AI代理人不是人類,不必像我們一樣學習,純粹的RL現已被證明可以解決各種複雜的問題。
作者不同意這個看法。根據定義,人工智慧研究涉及到使機器能夠做人類和動物目前能夠做的事情的雄心。因此,我們還常會把它與人類的智力進行比較。至於純粹的RL已被用來解決的問題。
這對許多人來說可能是一個驚喜,因為解決這些問題一直是人工智慧最廣為人知的成就的源泉。雖然這些確實是很大的成就,但我仍然聲稱所涉及的問題並不像它們看起來那麼複雜。在討論為什麼會這樣之前,讓我們列舉一下這些成就,並指出為什麼它們絕對值得稱讚:
-
DQN-- DeepMind的研究專案,透過展示將深度學習與純粹的RL和一些新的創新相結合,能夠解決比以往更復雜的問題,僅僅在短短5年前就對RL研究的興趣大大增加。
可以毫不誇張地說,DQN是一手恢復研究人員對RL的興趣的模型。雖然它只包含了一些相對簡單的創新,但這些創新對於使'Deep RL’變得實用非常重要。
因為它不再從人類那裡學到成功,所以AlphaGo Zero被許多人認為比AlphaGo更能改變遊戲規則。然後是AlphaZero,這是一個更通用的版本,不僅可以解決Go,還可以解決Chess和Shogi等遊戲,這是第一次使用單一演算法來破解國際象棋和圍棋,並且沒有專門針對深藍和原版AlphaGo等遊戲進行定製。由於上述所有原因,AlphaGo Zero和AlphaZero無疑是具有紀念意義且令人興奮的成就。
OpenAI的Dota機器人——深度RL驅動的人工智慧代理,可以在流行且複雜的競爭多人遊戲Dota 2中擊敗人類。OpenAI 2017年在有限的1對1版本的遊戲中擊敗職業玩家的成就令人印象深刻,但與他們相比,最近的一項壯舉是在一場更加複雜的5對5遊戲中擊敗了一支人類球員。它也是AlphaGo Zero的繼承者,因為它不需要任何人類知識,純粹透過自我遊戲進行訓練。 OpenAI自己很好地解釋了他們的成就:
毫無疑問,在這種以團隊合作為基礎的高度複雜的遊戲中取得好成績遠遠超過擊敗Atari遊戲和Go的先前成就。更重要的是,這是在沒有任何重大演算法進步的情況下完成的。這一成就歸功於真正驚人的計算量和使用已經建立的純RL演算法以及深度學習。在人工智慧社群中,有一個共同的印象,這是一項令人印象深刻的成就,也是RL一系列重要里程碑的下一步:
是的,純粹的RL已經取得了很多成就。但現在讓我們仔細看看為什麼這些成就可能不像看起來那麼令人印象深刻。
論RL近期成功的複雜性
讓我們從DQN開始吧。
-
儘管DQN在像Breakout這樣的遊戲中很出色,但它仍然無法解決像Montezuma的Revenge這樣相對簡單的遊戲。
-
即使對於DQN可以非常好的遊戲,與人類相比,它還是需要的大量時間和經驗來學習。
AlphaGo Zero和AlphaZero也有同樣的限制。你看,Go在最簡單的AI問題類別的背景下很難。也就是說,在每個屬性的問題類別中,使學習任務變得容易:它是確定性的、離散的、靜態的、完全可觀察的、完全已知的、單一代理的、情節的、便宜且易於模擬的......對Go來說,只有一件事是挑戰:它的巨大分支因素。
因此,Go可能是最難的問題,但它仍然是一個容易出問題的地方。由於上述所有原因,大多數研究人員認識到現實世界比像Go這樣的簡單遊戲要複雜得多。雖然令人印象深刻,AlphaGo的所有變體仍然與深藍基本類似:它是一個昂貴的系統,經過多年設計,投入數百萬美元,純粹是為了玩抽象棋盤遊戲的任務,而不是別的。
到Dota,是的,這是一個比Go複雜得多的遊戲,缺少許多讓Go變得簡單的屬性。它不是離散的,靜態的,完全可觀察的,單一的代理或偶發的,它是一種極具挑戰性的問題。但它仍然是一個易於模擬的遊戲,透過一個漂亮的API控制,可以完全消除需求感知或電機控制,所以最終會很簡單,相比於學習解決現實世界中的問題的真正複雜性,它仍然像AlphaGo一樣,需要大量投資和許多工程師使用大量時間和經驗來獲得演算法來解決問題。
因此,儘管取得了巨大的成就,但對於所有人來說,還是有一些強烈的警告要注意。僅僅因為RL已經走了這麼遠就認為純RL是好的是不正確的。所有這一切,必須考慮純粹的RL是否只是第一個取得巨大的成績,但不一定最好的方式。
純粹的 RL 的根本缺陷 - 從零開始
可能有更好的方式讓AI代理人學習翫Go或Dota嗎?名稱“AlphaGo Zero”是指模型學會了“從頭開始”。但讓我們回想一下棋盤遊戲的故事,試圖在沒有解釋的情況下“從零開始”學習棋盤遊戲,這是很荒謬的,對吧,那麼為什麼要努力實現AI呢?
事實上,如果你想要學習的棋盤遊戲是Go,你將如何開始學習呢?你會閱讀規則,學習一些高階策略,回想起你過去玩過的類似遊戲的方式,得到一些建議......對嗎?事實上,至少部分是因為AlphaGo Zero和OpenAI的Dota機器人從零開始限制學習,它與人類學習相比並不真正令人印象深刻:它們依賴於看到更多數量級的遊戲。
公平地說,純粹的RL技術可以合法地用於“狹窄”的任務,如Dota或星際爭霸。然而,隨著深度學習的成功,人工智慧研究團體現在正在努力解決日益複雜的任務,這些任務必須處理現實世界中無限的複雜性(例如自動駕駛)問題。這是針對這些不那麼狹隘的任務(即AI需要解決的大多數問題),以及AI作為一個整體的長期未來,超出純粹的RL可能是必要的。
我們應該堅持純粹的RL嗎?
這個問題的一個答案可能是:
是的,純粹的RL是解決Go或Dota等問題的正確方法。雖然在棋盤遊戲中沒有任何意義,但一般來說,從頭開始學習東西確實很有意義。而且,除了人類的靈感之外,從頭開始是有意義的,因此代理沒有先入之見,可能會比我們更好(就與AlphaGo Zero一樣)。
讓我們回到人類學習的問題,從頭開始學習。人們是否開始學習一項複雜的新技能,除了他們作為該技能的一部分可能採取的行動之外,沒有任何資訊。
也許對於一些非常基本和普遍的問題(例如年幼的嬰兒處理的問題),從頭開始做純RL是有道理的,因為這些問題是如此廣泛,所以很難做任何其他事情。但對於AI中的絕大多數問題,從頭開始並沒有明顯的好處。事實上,從頭開始是許多廣泛認可的當前AI和RL限制的主要原因:
-
當前的AI需要大量資料(即樣本效率低下 - 在大多數情況下,需要大量資料才能使用最先進的AI方法。這對於純RL技術尤為重要,回想一下AlphaGo Zero需要數百萬Go的遊戲得到的ELO得分為0,大多數人都會立即管理。根據定義,從頭開始學習可能是最不具有樣本效率的方法)。
-
當前的AI是不透明的。在大多數情況下,我們對AI演算法學習的內容及其工作方式只有高層次的直覺。對於大多數AI問題,我們希望演算法是可預測和可解釋的,只有低水平的獎勵訊號和環境模型(AlphaGo Zero如何工作)才能從頭開始學習任何想要的東西,這是一種可學習的最不可解釋和可預測的學習方法。
-
當前的AI很窄,在大多數情況下,我們構建的AI模型只能執行一個非常狹窄的任務,並且很容易被破壞。從頭開始學習每一項技能都限制了學習任何東西的能力。
-
目前的AI很脆弱,在大多數情況下,我們的AI模型只能透過大量資料很好地推廣到不可見的輸入,甚至還可以輕鬆地打破。
因此,我們傾向於知道我們希望AI代理學習什麼。如果AI代理是一個人,我們可以解釋任務,並可能提供一些提示。但AI代理人不是人,我們可能會為AI代理人這樣做嗎?
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/29829936/viewspace-2168558/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 強化學習(一)模型基礎強化學習模型
- 強化學習-學習筆記1 | 基礎概念強化學習筆記
- 非得從零開始學習?扒一扒強化學習的致命缺陷強化學習
- 強化學習理論-第1課-基礎概念強化學習
- 強化學習(十七) 基於模型的強化學習與Dyna演算法框架強化學習模型演算法框架
- 基於策略搜尋的強化學習方法強化學習
- 視覺化學習:WebGL的基礎使用視覺化Web
- 強化學習詳解:理論基礎與核心演算法解析強化學習演算法
- 強化學習強化學習
- 強化學習-學習筆記13 | 多智慧體強化學習強化學習筆記智慧體
- 【強化學習】強化學習術語表(A-Z)強化學習
- 深度強化學習day01初探強化學習強化學習
- 【強化學習篇】--強化學習案例詳解一強化學習
- 探索人工智慧與強化學習:從基礎原理到應用前景人工智慧強化學習
- 【強化學習】強化學習的基本概念與程式碼實現強化學習
- 強化學習10——迭代學習強化學習
- matplotlib 強化學習強化學習
- 機器學習基礎——規則化(Regularization)機器學習
- 【強化學習篇】--強化學習從初識到應用強化學習
- kettle基礎概念的學習
- 免殺學習-基礎學習
- 基於動態規劃的強化學習演算法動態規劃強化學習演算法
- AAAI 2019 | 基於分層強化學習的關係抽取AI強化學習
- Linux基礎學習——檔案基礎Linux
- 無模型的強化學習方法模型強化學習
- kafka基礎學習Kafka
- Zookeeper 基礎學習
- 深度學習基礎深度學習
- Pandas基礎學習
- Docker 基礎學習Docker
- Flume基礎學習
- 【Vue學習】基礎Vue
- jQuery基礎學習jQuery
- 學習linux基礎Linux
- python基礎學習Python
- Redis 基礎學習Redis
- Scala基礎學習
- Linux基礎學習Linux