DeepMind新論文:3D環境中教AI學人話,還要用形式語言指揮它們

李林 編譯自 Arxiv

量子位 出品 | 公眾號 QbitAI

最近,DeepMind發了兩篇論文,一篇是關於教AI學語言的Grounded Language Learning in a Simulated 3D World,另一篇,是關於用形式語言指揮AI智能體行動的Programmable Agents。

我們先說說AI學語言這件事。

想想我們每天的生活,AI幫我們做了越來越多的決定,小到看哪些新聞,大到該買什麼股票。甚至有時候,還會讓AI直接替我們採取行動。

不過,這也帶來了一個越來越緊迫的需求:用人話和AI溝通,指揮和引導它們。

也就是說,得讓AI真的懂人話

什麼是真的懂呢?簡單來說,就是讓agent能把語言和它的行為、所處的世界關聯起來。

DeepMind在論文摘要中用兩個詞來形容他們想讓agent學語言學到什麼程度:

  • grounded,也就是有基礎、接地氣,能把語言中的詞和agent在環境中直接遇到的物品、經歷的行為聯繫起來;

  • embodied,也就是能具體表達出來的。

但是,讓AI學會接地氣的語言很難。

DeepMind這篇論文描述了一個新方法:把agent放在一個虛擬3D環境中,如果它成功地正確執行了用人類語言寫成的指令,就給獎勵。

他們就是這樣,用強化學習和無監督學習相結合,對agent進行訓練,讓它學習理解人類語言。

上圖是DeepMind論文中所舉的例子:一開始agent處於位置1,收到「把綠色物體旁邊的紅色物體撿起來」的指令,於是它把兩個「房間」逛了一遍,去查看房間里的物體及其相對位置,找到了需要撿起來的物體。

這種探索、選擇的行為,並沒有預先編程,完全是藉助激勵機制學會的。

這樣的探索訓練有數十萬種變體,agent會遇到不同的房間布局、不同的物體擺放位置等等。

在訓練過程中,agent幾乎沒有先驗知識,只是通過將語言符號和它周圍物理環境中出現的感知表徵和行為序列關聯起來,來學習語言。

也正因為agent理解語言不依賴先前的經驗,如果研究人員把agent放到一個完全陌生的環境中,用它學過的語言向它發出新的指令,這個agent一樣能完成。

DeepMind的研究人員還發現,隨著語義知識的積累,agent學習新詞的速度越來越快。

他們認為,這種泛化和自我擴展語義知識的能力,說明他們現在所用的方法有潛力讓AI agent理解模糊的自然語言與複雜的實體世界之間的關聯。

關於具體的訓練過程和原理,請移步論文:

Grounded Language Learning in a Simulated 3D World

arxiv.org/pdf/1706.0655

作者:Karl Moritz Hermann, Felix Hill, Simon Green, Fumin Wang, Ryan Faulkner, Hubert Soyer, David Szepesvari, Wojtek Czarnecki, Max Jaderberg, Denis Teplyashin, Marcus Wainwright, Chris Apps, Demis Hassabis, Phil Blunsom

上文提到的訓練方法,是在一個3D虛擬環境中,讓agent執行人類語言寫成的指令。

在DeepMind另一批研究員同日發到Axriv的另一篇論文中,agent執行的是用簡單的形式語言寫成的指令,不過,這項研究讓agent遇到從未見過的物體,也能靈活應對。

這篇論文的題目是:Programmable Agents。經驗告訴我們,無論是新聞還是論文,標題越短事兒越大……當然,在AI研究領域,這個規則最近越來越受到懷疑。

我們先不管事兒大不大,來看看這篇論文想讓AI做什麼。

簡單來說,是讓agent執行用形式語言表達的描述性程序。

在這項研究中,研究人員所設定的環境是一張大桌子,中間有一支帶有6個關節的機械臂,周圍有固定數量的積木塊,出現在隨機位置。

他們所做的,是讓虛擬環境中的「機械臂」去夠特定顏色、形狀的積木,也就是把手(機械臂前端的白色部分),伸到目標積木塊的附近。

而前面提到的「形式語言描述性程序」,是這樣執行的:NEAR(HAND, AND(RED, CUBE)),表示把手伸到紅色立方體附近。

形式語言中指定的,是目標的顏色和形狀。在具體的程序中,桌面的大小、目標的數量也可能發生變化。

在上圖中,最左邊一幅的「伸向藍色球形」是訓練環節,其他三幅展示了agent經過這種訓練之後的泛化能力,包括目標性質的變化(左二:伸向紅色積木)、環境中物體數量的變化(右二:伸向綠色球體,注意這裡桌上多了好多積木)、以及新目標性質的出現(右一:伸向新的紅色積木)。

DeepMind的這組研究人員稱,他們訓練的agent學會了根據這種語言的指令在所處環境中找到目標之後,在測試中可以對這種能力進行泛化,執行新的程序,找到在訓練中從未提及的目標。他們的agent可以泛化到大範圍的zero-shot語義任務。

具體的訓練過程和原理,還是請移步論文:

Programmable Agents<br>arxiv.org/pdf/1706.0638<br>Misha Denil, Sergio Gómez Colmenarejo, Serkan Cabi, David Saxton, Nando de Freitas

【完】

一則通知

量子位正在組建自動駕駛技術群,面向研究自動駕駛相關領域的在校學生或一線工程師。李開復、王詠剛、王乃岩等大牛都在群里。歡迎大家加量子位微信(qbitbot),備註「自動駕駛」申請加入~

推薦閱讀:

A Neural Probabilistic Language Model
中文NLP vs 英文NLP在理論,數據處理上有什麼相同和不同, 尤其是中文 NLP有什麼獨特的地方?
自然語言處理起航篇之資訊理論基礎(上)
PaperWeekly 第53期 | 更別緻的詞向量模型:Simpler GloVe - Part 2

TAG:GoogleDeepMind | 自然语言处理 | 强化学习ReinforcementLearning |