天天看點

從超級瑪麗說起,談談如何為機器賦予好奇心

請試着回憶一下第一次玩超級瑪麗遊戲的體驗。藍天、白雲、磚頭砌成的道路,萌萌的馬裡奧小人穿着藍色衣服,戴着紅色帽子,一路向前。你控制着馬裡奧的前進方向,左、右、蹲、跳。

這個場景對于80後來說應該都不陌生,但是超級瑪麗的粉絲可不止80後。加州大學伯克利分校的計算機科學研究員Agrawal現在正在研究好奇心如何讓學習陌生的任務(例如打超級瑪麗)變得更有效。Agrawal将他的遊戲視訊釋出到了YouTube上,有趣的是,視訊玩家不是人類,而是計算機軟體。此款軟體搭載着成熟的機器學習算法,該算法由Agrawal和他在伯克利人工智能研究實驗室的夥伴一起開發。其目的聽起來很特别:為機器學習賦予好奇心。

Agrawal說道:“你可以把好奇心了解成一種内在驅動力。”這種驅動力又叫做“内在動機”,即做一件事出于好奇或者興趣的目的。例如,你打超級瑪麗是因為好奇馬裡奧下一步會去哪兒;你學習計算機是因為感興趣。

同時,人類行為也被“外在動機”驅動着,這種動機來源于環境。例如,你努力工作的外在動機是為了升職加薪;你學習英語的外在動機是為了找到好工作。計算機科學家利用一種類似的方法來訓練算法,此方法叫做增強學習:當軟體做對了任務,便會“得分”;做錯,則會得到懲罰。

但是這種恩威并施的方法有一定的局限性,人工智能研究者開始發現内在動機對于機器學習來說非常重要,它能讓機器更有效靈活地學習,讓計算機更像人類和動物,而不是機器。這種方法的靈感來源于心理學和神經生物學。

現在,這種機制已經在電子遊戲中得到了訓練,但是要讓AI變得有好奇心仍然面臨很多困難。我們總想着讓智能機器服務于自己,讓掃地機器人整理物品做清潔,讓汽車自動導航識别路況,讓救援機器人迅速識别傷者并救出。在所有這些案例中,我們一直在嘗試解決一個很難的問題:如何制造出一台能夠自己發現任務的機器?

得分”機制的問題

AlphaGo能擊敗李世石,很重要的一個原因是增強學習。要解釋清楚增強學習的細節比較困難,但是其道理很簡單:給予一種學習算法、機制(agent)、能用數學來定義的信号或者獎勵功能。把它放到環境中,當agent在環境中運作,增加回報價值的動作便得到加強。随着這種動作不斷重複,agent便慢慢學會了如何獲得最大回報。理想地說,這種機制将會讓agent在無需程式員或者工程師手動程式設計的前提下,達到某種理想的狀态,比如在圍棋比賽中擊敗李世石。

換句話說,這種回報機制能指導agent鎖定目标。目标描述得越清楚,agent運作得越良好。這就是為什麼它們通常都用舊視訊遊戲來測試,因為視訊遊戲基本都是基于這種可以得分的簡單外部獎勵機制。

但是,Agrawal表示:“在真實的世界中,得分并不存在。”現在,計算機科學家們想讓它們探索一種沒有可量化目标的環境。

另外,如果環境沒有及時給出外部回報,agent便不清楚自己的行為是對是錯。這樣,agent會感到迷茫。

除此之外,及時這種外部獎勵功能能讓agent展現出驚人的能力(比如擊敗李世石),它并不能在沒有外部轉換的情況下輕易轉換成任何一種context。即使可以轉換,也需要人工操作。

相比用外部回報來推動agent,我們更想讓AI具備自我驅動的能力。Agrawal說:“沒有誰能不斷告訴你做什麼能加分,做什麼會減分。”

讓好奇心來幫忙

加州大學伯克利分校Darrell實驗室的Deepak Pathak從未将“好奇”這種心理學上的詞寫進代碼裡,他表示:“所謂‘好奇’,無非就是一種能讓agent有效探索環境的模型。”

但在2016年,Pathak開始對增強學習的回報機制感興趣。雖然以增強學習技術驅動的深度學習軟體,最近在以簡單得分機制驅動的遊戲(比如Space Invaders和Breakout)中收獲了重大成果。但碰到稍微複雜一點的遊戲(比如超級瑪麗)中,AI就有點難以控制。

是以,Pathak and Agrawal開始為agent賦予 intrinsic curiosity module(ICM,内在好奇模式),這樣agent在沒得到及時回報的情況下,不至于“茫然失措”。不過,agent并沒有對超級瑪麗了解更深。事實上,它更像一個新生嬰兒,而不是一個新手玩家。

Agrawal和Pathak的靈感來源于兩位發展心理學家的Alison Gopnik和Laura Schulz的研究成果,他們分别在麻省理工大學和加州大學伯克利分校就職,研究顯示:嬰兒天生喜歡能讓他們感到驚訝的東西,而不是能帶來外部回報的東西。這種現象可以這樣解釋:嬰兒建立了一種了解世界的模型,然後進行“實驗”去了解更多不知道的東西。這種“試驗”可以是任何能夠産生讓他們感到不尋常或者無法預料的東西。

在Pathak和Agrawal的機器學習版本中,AI首先是超級瑪麗的樣子,然後預測遊戲的進展,這種機制便是現在的深度學習的機制。但是Pathak 和Agrawal的ICM在此基礎上做出了改變:給予一種内部回報信号,這種信号代表着這種預測模型的錯誤程度。錯誤率越高,agent越驚訝,内部回報功能價值便越高。

這種信号讓agent對自己尚未了解的東西非常好奇,是以驅動着agent去探索遊戲中無法預測的領域。随着agent學習得越來越深入,預測模型的錯誤率會越來越低,ICM帶來的回報就越來越低,那麼agent就會探索更新、更讓其驚訝的領域,來獲得更大回報。“這樣一來,機器的探索速度會越來越快。”Pathak如是說。

這種回報模式可以讓AI迅速從“無知”模式中走出來。剛開始時,agent對基本動作非常好奇:右鍵讓馬裡奧往右邊走,然後停下來;擊右鍵多次,馬裡奧持續走;上鍵讓它跳起來又落下去;下鍵沒有任何作用。這樣一來,agent便會學會有用的動作,迅速掌握遊戲的方法。

比如,點選下鍵沒有任何作用,那麼agent便會迅速預測出“點選下鍵”這個動作的效果,這樣它便會消除對此的好奇。但是,點選上鍵能産生各種預測不到的效果:有時直走,有時短跳,有時長跳,如果跳到障礙物上,它還下不來。agent的預測模式不斷嘗試,不斷試錯,并把結果一一記住,得到ICM的回報信号,這樣一來,agent便會不斷嘗試這個動作的試驗。

Agrawal解釋道:“agent學習如何探索世界(比如跳躍或殺敵),如果不小心死了也不會得到懲罰。但是它一直在避免死亡,因為不死就會讓它更有探索世界的興趣。是以這個過程中,它是自我強化,而不是從外界中得到強化。”

避免“好奇陷阱

從上世紀九十年代初開始,人工好奇(Artificial curiosity)就是AI的分支之一。為機器賦予好奇心的方法之一就是:讓機器探索環境中的未知領域。乍一看,這種方法似乎在捕捉好奇心體驗,實際上,它會讓agent困在一種狀态中,這種狀态能滿足機器與生俱來的動機,但會阻止機器去探索未知的東西。

比如,如果電視突然白屏,agent便會迅速進入“探索新奇”模式,因為白屏是它無法預料的,這樣agent的内在回報功能便會讓它開始不斷關注這種狀況。然後,它便被困住了。就像我們難以預測落葉會飛往哪一個方向,agent也很難電視預測何時才會白屏,是以,預測時将會産生很高的錯誤率,讓agent變得非常好奇。

Agrawal和Pathak必須提出一種方法,讓agent變得好奇,但不至于太過好奇。預測像素——也即使用深度學習和計算機視覺來建立智能體在同一時間與完整空間内的視野——使得潛在幹擾的過濾過程變得困難。計算方面的花費也很貴。

是以,伯克利的研究人員對其馬裡奧玩家智能體進行了設計,将其視覺輸入從原始像素轉換成一種經過抽象的現實。這種抽象隻包含有可能影響智能體(或受智能體影響)的環境特性。從本質上說,如果該智能體不能與某物進行互動,那麼它一開始就不會被感覺到。

伯克利研究人員讓馬裡奧agent的視覺輸入中添加了一些幹擾,這些幹擾與現實環境息息相關,能夠影響agent的判斷能力。如果環境中存在很多噪音或幹擾,這類驅動方法往往會導緻 agent被無關幹擾物吸引。

Agrawal 和 Pathak 不得不想出一個辦法來讓智能體的好奇心保持在一個合适的程度。預測像素,也就是使用深度學習和計算機視覺來建立智能體在同一時間與完整空間内的視野,這樣潛在幹擾的過濾過程将會變得困難,計算方面的花費也很貴。是以,伯克利的研究人員對其馬裡奧玩家智能體進行了設計,将其視覺輸入從原始像素轉換成一種經過抽象的現實。這種抽象隻包含有可能影響智能體(或受智能體影響)的環境特性。從本質上說,如果該智能體不能與某物進行互動,那麼它一開始就不會被感覺到。這種方法不僅簡化了智能體的學習過程,也巧妙地避開了獵奇陷阱。

現在,如果内在激勵和人工好奇心能讓智能體找出人類所未知的能夠實作自動化的任務,那麼它将成為任何人工智能都想具備的能力。目前的問題是,如何控制好好奇心的程度?現在,Agrawal和Pathak給出的答案就能當作參考。但長路漫漫,最後發展如何,我們還将拭目以待。

以上為譯文

本文由北郵@愛可可-愛生活 老師推薦,阿裡雲雲栖社群組織翻譯。

文章原标題《Clever Machines Learn How to Be Curious》,作者:John Pavlus,譯者:Misty。

文章為簡譯,更為詳細的内容,請檢視原文。

本文由使用者為個人學習及研究之目的自行翻譯發表,如發現侵犯原作者的版權,請與社群聯系處理[email protected]

繼續閱讀