摘要:眾所周知,強化學(xué)習(xí)的工作原理就是最大化策略預(yù)期回報。當(dāng)智能體能輕而易舉地從環(huán)境中收集到密集回報時,算法很好用,效果也很好;但當(dāng)環(huán)境中的回報非常稀疏時,模型往往會訓(xùn)練失敗。再加上我們不可能為每個任務(wù)設(shè)計密集回報函數(shù),在這些情況下,讓智能體以有針對性的方式探索環(huán)境是必要的。近日,OpenAI提出了一種回報設(shè)置方法RND,在雅達(dá)利游戲《蒙特祖瑪?shù)膹?fù)仇》里獲得了state-of-art的表現(xiàn).
為什么是《蒙特祖瑪?shù)膹?fù)仇》?
強化學(xué)習(xí)是機器學(xué)習(xí)的一個子領(lǐng)域,它強調(diào)讓“智能體”學(xué)會如何基于環(huán)境而行動,以取得最大化的預(yù)期回報。為了模擬現(xiàn)實,游戲是現(xiàn)在訓(xùn)練強化學(xué)習(xí)智能體的常用環(huán)境,因為它不僅能提供可交互的環(huán)境、直接的獎勵信號和游戲目標(biāo),還能模擬包括物理、社交等在內(nèi)的現(xiàn)實場景。因此強化學(xué)習(xí)成果大多都以“XXX在XX游戲中達(dá)到了超人水平”結(jié)尾。
2013年,DeepMind提出DQN算法,被譽為強化學(xué)習(xí)的“開山鼻祖”。在那篇論文中,算法成功玩轉(zhuǎn)多款雅達(dá)利游戲,表現(xiàn)超出人類玩家平均水平。但其中有一個例外,就是《蒙特祖瑪?shù)膹?fù)仇》,這是唯一一款人類玩家平均得分4700,而DQN望塵莫及的游戲。
從那之后,《蒙特祖瑪?shù)膹?fù)仇》就成了強化學(xué)習(xí)算法的試金石,也被人視為探索進(jìn)步的代名詞。
上圖是近幾年來使用不同算法的智能體在《蒙特祖瑪?shù)膹?fù)仇》中的得分,粉色虛線為人類平均得分。可以看到,在2016年,通過結(jié)合DQN和基于計數(shù)的探索回報,學(xué)界在這個游戲上取得了重大突破:智能體成功探索了15個房間,最高得分高達(dá)6600,平均得分也達(dá)到了3700。從那時起,研究人員們提出了不少高分算法,但它們的性能提升主要依賴人為示范,或是參考其他演示機器人。
顯然,這并不完全是人類的學(xué)習(xí)方式。人類探索世界有時是無目的的,有時是模仿他人,但更多時候是出于好奇心。既然手動為環(huán)境設(shè)置密集回報不現(xiàn)實,那么智能體能不能不依賴人,自發(fā)地去進(jìn)行不可預(yù)測的探索呢?
用好奇心驅(qū)動學(xué)習(xí)
在開發(fā)RND之前,OpenAI的研究人員和加州大學(xué)伯克利分校的學(xué)者進(jìn)行了合作,他們測試了在沒有環(huán)境特定回報的情況下,智能體的學(xué)習(xí)情況。因為從理論上來說,好奇心提供了一種更簡單的方法來教授智能體如何與各種環(huán)境進(jìn)行交互,它不需要人為的回報設(shè)計。
根據(jù)當(dāng)時的論文,他們在包括Atari游戲在內(nèi)的54個標(biāo)準(zhǔn)基準(zhǔn)測試環(huán)境中進(jìn)行了大規(guī)模實驗,實驗結(jié)果出人意料:在某些環(huán)境中,智能體實現(xiàn)了游戲目標(biāo),即使游戲目標(biāo)并沒有通過外在回報傳達(dá)給它,而且內(nèi)在好奇心驅(qū)動的智能體和手動設(shè)置外在獎勵的表現(xiàn)高度一致。
下面是當(dāng)時的一些實驗案例:
Pong(乒乓球):研究人員訓(xùn)練了一個能同時控制兩個球拍的智能體,經(jīng)過訓(xùn)練,它學(xué)會了讓球在球拍之間保持長時間反彈。之后,這個智能體被放進(jìn)對抗游戲中和另一個AI比賽,它雖然沒有輸贏意識,只是想拉長比賽時間,但表現(xiàn)非常好。
Bowling(保齡球):比起有最大化外在獎勵目標(biāo)的智能體,好奇心智能體在這個游戲中的表現(xiàn)更好,對此,一個推測是當(dāng)玩家擊倒最后一個球瓶時,游戲得分會閃爍一下,這干擾了智能體的預(yù)測。
Mario:在這個游戲里,研究人員設(shè)置的內(nèi)在回報是通關(guān),每到一個新房間,智能體就會獲得獎勵,因為新房間的詳細(xì)信息是無法預(yù)測的。在這種簡單設(shè)置下,智能體連通11關(guān),找到了秘密房間,甚至還擊殺了boss。
在常規(guī)強化學(xué)習(xí)設(shè)置中,對于每個離散的時間步,智能體會先向環(huán)境發(fā)送一個action,然后由環(huán)境返回下一個observation、當(dāng)前action得到的回報和結(jié)束指示。為了讓智能體探索未知領(lǐng)域,OpenAI要求環(huán)境只返回observation,不再提供回報信息,這就使智能體只能從自己的經(jīng)驗中學(xué)習(xí)怎么預(yù)測下一步的環(huán)境狀態(tài),并用預(yù)測誤差作為內(nèi)在獎勵。
這就是“好奇心”的實現(xiàn)方式。舉個簡單的例子,同樣一個智能體,如果使用常規(guī)設(shè)置,它就只會關(guān)注游戲得分,只要分?jǐn)?shù)能上升,它就學(xué)著去做;而如果用的是好奇心,它就會積極地和新對象佳偶,并發(fā)現(xiàn)其中有益的東西。比起預(yù)測其他環(huán)境因素,這種對象間的互動更難預(yù)測。
Noisy-TV問題
就像做作業(yè)的小學(xué)生容易被窗外飛過的花蝴蝶所吸引,好奇心也給智能體帶來了“注意力不夠集中”的問題——Noisy-TV。下面是一個例子:同一個智能體穿行在兩個不同的迷宮中,其中一個是正常的迷宮,另一個是有一面“電視墻”、上面正在播放視頻的迷宮:
正常迷宮
“電視墻”迷宮
在正常迷宮中,智能體一直在保持前進(jìn),而在“電視墻”迷宮中,智能體一看到視頻就“走不動路”了。對于像《蒙特祖瑪?shù)膹?fù)仇》這樣的大型復(fù)雜環(huán)境,這是好奇心智能體需要注意的一個重要問題。而對此,OpenAI提出了一種解決方法,就是讓智能體通過噪聲控制器控制環(huán)境,該控制器有一定概率讓智能體重復(fù)之前的最后一個動作,防止從舊房間到新房間的過渡變得不可預(yù)測。
集大成者:RND
從本質(zhì)上看,Noisy-TV問題就是好奇心智能體對下一狀態(tài)的預(yù)測會固有的受當(dāng)前環(huán)境噪聲影響,之前提到了,好奇心智能體的內(nèi)在回報是預(yù)測誤差,誤差越小,回報越大。我們先來看看導(dǎo)致預(yù)測誤差過大的幾個因素:
因素1:當(dāng)預(yù)測模型無法把之前的經(jīng)驗推廣到當(dāng)前時,預(yù)測誤差會很高——當(dāng)前學(xué)到的經(jīng)驗是新的。
因素2:如果預(yù)測目標(biāo)是隨機的,預(yù)測誤差也會很高。
因素3:如果缺少預(yù)測所需的信息,或者目標(biāo)函數(shù)太復(fù)雜而預(yù)測種類太受限,預(yù)測誤差也會很高。
在這三個中,因素1對智能體是有用的,因為它量化了經(jīng)驗的新穎性。而因素2和3是導(dǎo)致Noisy-TV問題的元兇,為了避免這兩種情況,OpenAI提出了一種新的exploration回報RND:給定下一環(huán)境狀態(tài),它能預(yù)測這個固定的、隨機初始化的神經(jīng)網(wǎng)絡(luò)(預(yù)測模型)的輸出,如下圖所示。
這背后的思路是預(yù)測模型在類似訓(xùn)練過的狀態(tài)中誤差較低。對于從沒見過的環(huán)境狀態(tài),智能體對神經(jīng)網(wǎng)絡(luò)的輸出預(yù)測會更不準(zhǔn)確(因素1),這促進(jìn)了探索。合成預(yù)測設(shè)計確保了預(yù)測目標(biāo)的確定性和類別的適配,能有效防止Noisy-TV問題。
連接exploration回報和外部回報的OpenAI之前提出的近端策略優(yōu)化(PPO)的變體,具體這里我們不再展開。下圖是智能體在玩《蒙特祖瑪?shù)膹?fù)仇》時獲得的內(nèi)在回報的可視化:
未來發(fā)展
最后,研究人員表示對于設(shè)計性能更好的算法來說,Noisy-TV問題的易感性等重要因素還是非常重要。他們發(fā)現(xiàn)簡單算法中看似很小的細(xì)節(jié),可能直接影響著智能體是不能走出第一個房間還是通過第一關(guān)。為了增加訓(xùn)練穩(wěn)定性,他們避免了特征的飽和,并將內(nèi)在獎勵帶到了可預(yù)測的范圍。每次發(fā)現(xiàn)并修復(fù)錯誤,RND的性能都會有顯著提高。
他們建議未來研究人員可以在這幾方面繼續(xù)探索:
分析不同探索方法的好處,并找到結(jié)合它們的新方法。
在沒有回報的情況下,在多種不同環(huán)境中訓(xùn)練好奇心智能體,使他們朝著目標(biāo)靠近。
測試好奇心智能體的“大局觀”意識和長遠(yuǎn)視角。
-
機器學(xué)習(xí)
+關(guān)注
關(guān)注
66文章
8418瀏覽量
132634 -
智能體
+關(guān)注
關(guān)注
1文章
150瀏覽量
10579 -
強化學(xué)習(xí)
+關(guān)注
關(guān)注
4文章
266瀏覽量
11254
原文標(biāo)題:OpenAI新作:基于預(yù)測回報的強化學(xué)習(xí)
文章出處:【微信號:jqr_AI,微信公眾號:論智】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
評論