閱讀285 返回首頁    go 阿裏雲 go 技術社區[雲棲]


用自然語言教育人工智能:百度新算法發展出zero-shot學習能力

機器之心編譯


百度最新的研究使用監督學習和強化學習的組合開發了一個係統,該係統允許虛擬教師( virtual teacher)通過將語言與感知和行動連接起來而從頭教授虛擬 AI 智能體語言,這一過程就類似於父母教導他們的小孩。讀者可點擊閱讀原文下載此論文。


盡管有了極大的進步,人工智能在許多方麵仍舊有限。例如,在計算機遊戲中,如果 AI 智能體沒用遊戲規則預編程,在知道如何做出正確行為之前它需要進行百萬次的嚐試。人類能在非常短的時間內完成同樣的成就,因為我們善於使用語言將過去的知識遷移到新任務中。


在必須殺死龍才能獲勝的遊戲中,如果需要殺死龍才能獲勝,AI 智能體在理解自己必須要屠龍之前需要嚐試許多其他的行為(在牆上噴火、發出一片花等)。然而,如果 AI 智能體理解語言,人類就可以簡單地使用語言直接指令它「殺死龍贏得遊戲。」


以視覺為基礎的語言在我們如何歸納技能和將它們應用到新任務上扮演著重要的角色,而這對機器而言仍舊是一個重大挑戰。對於讓機器變得真正智能並且獲得類人的學習能力而言,開發複雜的語言係統是非常重要的。


作為實現這一目標的第一步,我們使用監督學習和強化學習的組合開發了一個係統,該係統允許虛擬教師(virtual teacher)通過將語言與感知和行動連接起來而從頭教授虛擬 AI 智能體語言,這一過程就類似於父母教導他們的小孩。


在訓練後,我們的模型結果表明 AI 智能體能以自然語言的方式正確地解讀教師的指令,並采取相應的行動。更重要的是,這些智能體發展出了我們所說的「zero-shot 學習能力」,這意味著智能體能理解未見過的句子。我們相信該項研究能進一步帶領我們朝訓練機器像人類一樣學習前進。


研究概述


該研究發生在一個 2D 迷宮似的環境 XWORLD 中,在這裏,我們的虛擬嬰兒智能體需要在自然語言命令的指導下在迷宮裏穿行,這個命令是由一個虛擬 teacher 發出的。開始,該智能體對語言一無所知:每個詞都對其沒有意義。不過,隨著該智能體不斷研究周圍環境,如果執行對了(或者錯了)命令,該 teacher 就會給出相應的獎懲。為了幫助智能體更快地學習,該 teacher 也會問些有關智能體所運動的周圍環境的簡單問題。該智能體需要正確回答問題。通過鼓勵對的行動/回答,懲罰錯誤的行動/回答,該 teacher 能在多次試錯時候 讓該智能體理解自然語言。


示範命令的一些例子:


  • 請導航至這個蘋果(Please navigate to the apple.)

  • 你能移動到蘋果和香蕉之間的格子嗎?(Can you move to the grid between the apple and the banana?)

  • 你能去那個紅蘋果那裏嗎?(Could you please go to the red apple?)


問答對的一些例子:


  • 問:北邊的物體是什麼?答:香蕉(Q:What is the object in the north? A:Banana.)

  • 問:香蕉在哪裏?答:北邊(Q:Where is the banana? A:North.)

  •  問:蘋果西邊的物體是什麼顏色的?答:黃色(Q:What is the color of the object in the west of the apple? A:Yellow.


結果


在最後,該智能體可以正確地解讀 teacher 的命令,並導航至正確的位置。更加重要的是,該智能體發展出了所謂的「zero-shot 學習能力」。這意味著即使是接受了從未執行過的新任務,如果該指令的句式的相似形式在之前已經見過足夠多了,那麼它仍然有能力正確地執行任務。換句話說,人工智能有能力理解由已知詞和已知語法組成的新句子。


比如說,一個學會用刀切蘋果的人通常知道怎樣用刀切一個火龍果。應用已有知識實現新的任務對於人類而言是輕而易舉的事,但對目前的端到端機器學習來說非常困難。盡管機器可能知道「火龍果」看起來是什麼樣子,但除非已經經過了相關數據集的訓練,它無法執行「用刀切那個火龍果」的任務。相比之下,我們的智能體可以成功地遷移它所知道的火龍果外觀與任務「用刀切 X」,而不需要直接去訓練「用刀切火龍果」。


在下圖中,我們的智能體成功地在導航測試中執行了命令,完成任務。


c466e0f1a30fab3c9687a42707f77a960aa34b5c


我們的下一步研究有兩個方麵:1、在當前 2D 環境中使用自然語言命令來教人工智能獲得更多能力;2、把這種能力應用到虛擬 3D 環境中。虛擬的 3D 環境有更多的挑戰,同時也與我們所生活的現實環境更加接近。我們的最終目標是用人類的自然語言訓練出一個在真實世界中可用的物理機器人。


論文:一個用於虛擬環境中的類人語言習得的深度組合框架

(A Deep Compositional Framework for Human-like Language Acquisition in Virtual Environment)


論文鏈接:https://arxiv.org/pdf/1703.09831.pdf

d175765231146c8877059abebbdac0443c6f52fb


摘要


我們在一個稱作 XWORLD 的迷宮般的 2D 環境之中完成了智能體學習導航的任務。在每一個 session 中,該智能體可感知一個原始像素幀序列、一個 teacher 發出的自然語言指令和一組獎勵(reward)。該智能體能以一種基礎的組合式的方式從頭學習 teacher 的語言,以至於完成訓練之後,它可以正確地執行 zero-shot 指令:1) 指令之中詞的組合以前從未出現,並且/或者 2) 指令包含從另一個任務而不是從導航學來的新的目標概念。我們端到端地訓練了該智能體的深度框架:它能同時學習環境的視覺表征、語言的句法和語義以及輸出行動的行動模塊(action module)。我們框架的 zero-shot 學習能力來自帶有參數約束的組合性(compositionality)和模塊性(modularity)。我們視覺化了框架的中間輸出,以證明該智能體真正可以理解如何解決問題。我們相信我們的成果能為如何在 3D 環境中訓練帶有相似能力的智能體提供初步的見解。 


原文鏈接:http://research.baidu.com/ai-agent-human-like-language-acquisition-virtual-environment/

本文來源於"中國人工智能學會",原文發表時間" 2017-03-31 "

最後更新:2017-05-23 14:02:21

  上一篇:go  《Java特種兵》1.7 麵對技術,我們糾結的那些事兒
  下一篇:go  Java IO: 並發IO