這臺對世界好奇的機器,竟然還玩起了超級馬里奧?
十年前我們就能讓機器人完成那些可以被完美建模的任務了,那些機器人完美地運轉在工廠的車間里,完成一個特定的操作。但真正的人工智能需要在一個無法被建模的情境中,走出去,學會獨自探索需要完成什么任務。這就是「好奇心」,是通向強人工智能的必經之路。
你也許不記得自己第一次玩超級馬里奧兄弟時的感受了,但是讓我們試著回想這個8-bit的游戲世界閃亮登場:淡藍色的天空,有紋路的石頭地面,一個矮胖的、紅色著裝的小人靜靜站在那里。他面朝右邊:你將他朝右推動。走幾步之后便會有一排磚頭在頭頂盤旋,上面盤旋著一堆「憤怒的蘑菇」。游戲手柄的另一個按鍵能夠讓那個小人兒跳起來,他的四個像素大的拳頭指向天空。然后呢?或許是把「向右」和「跳躍」動作結合起來。好了,驚喜不驚喜:他會用自己的頭部撞擊懸浮在空中的磚塊,磚塊會像裝了彈簧一樣迅速向上彎曲并且彈回,把小人兒彈向正在靠近的蘑菇的身上,將其迅速壓平。馬里奧輕輕地從被征服的蘑菇身上跳開。然后出現一個帶有問號的棕色的對話框,似乎在問,「現在呢?」
對于20世紀80年代長大的人來說,這個場景特別熟悉,但你可以在PulkitAgrawal的YouTube頻道上看到更年輕的玩家。加利福尼亞大學伯克利分校的計算機科學研究員Agrawal正在研究天生的好奇心如何讓學習完成一個不熟悉的任務的過程更有效率就像你第一次玩超級馬里奧兄弟一樣。重點是,Agrawal的視頻中的新手玩家不是人類,甚至是沒有生命的。它就像馬里奧一樣,僅僅是一個軟件。但是這個軟件配備了Agrawal和他在伯克利人工智能研究實驗室(BAIR)的其他同事DeepakPathak,AlexeiA.Efros和TrevorDarrell一起開發的實驗性機器學習算法。這個算法有一個讓人驚嘆的目標:讓機器具有好奇心。
Agrawal說,「你可以把好奇心想象成是智能體內部自動生成的一種獎勵,有了好奇心之后它們可以更進一步的探索這個世界」。這個內部生成的獎勵信號在認知心理學中被稱為「內在激勵」。這種感覺你或許在讀我寫的游戲描述時有間接的體會就是一種想要看看視野之外有什么的欲望,或者想要走出你的能力范圍,去看一下到底會發生什么這就是內在激勵。
人類也會響應源于外界環境的外在激勵。這類例子包括你從工作中獲得的薪水、你必須在特定時點完成的需求等。計算機科學家利用一種類似的,被稱為「強化學習」的方法來訓練他們的算法:軟件程序在按照被期望的方式執行任務的時候會得到「分數」,然而在以不被期望的方式執行的時候會受到懲罰。
但是這種胡蘿卜加大棒的方法對機器學習而言是有局限性的,并且人工智能研究者開始將內在激勵視為能夠高效靈活學習的軟件智能體的一項重要組成部分,也就是說,它們不太像脆弱的機器,而是更像人類和動物一樣。在人工智能中使用內在激勵的方法受啟發于心理學和神經生物學幾以及那些有數十年歷史的原始人工智能研究,現在重新變得有用了起來。(「機器學習領域里無新鮮事。」OpenAI研究員ReinHouthooft如是說。)
這種智能體現在已經可以被訓練用于視頻游戲中,但是開發「具有好奇心」的人工智能的吸引力超越任何現有工作。伯克利人工智能實驗室的聯合主管Darrell說,「你列舉一個你最喜歡的應用領域,我會給出一個例子」。「在家里,我們希望自動化地清理房間、收拾東西。在物流領域,我們希望貨物能被自動化地搬運、完成各種操作。我們希望汽車能夠在復雜的環境中自動駕駛,我們希望救援機器人能夠在建筑里搜救需要幫助的人。在所有這些例子中,我們都在嘗試解決這個非常棘手的問題:你如何創造一臺能夠自己想明白要完成什么的任務機器?」
「打分」問題
強化學習是讓Google的AlphaGo軟件得以在圍棋中戰勝人類玩家的利器。在此之前,圍棋作為一款古老的直覺游戲,向來被認為是機器無法企及的。如何在特定的領域成功使用強化學習的細節是很復雜的,但是通用的思想是簡單的:給算法或者「智能體」一個獎勵函數,一個用數學方法定義的信號來追尋并最大化。然后把它自由地置于一個環境中,可以是任何的虛擬世界或者現實世界。隨著智能體在環境中運行,能夠增加獎勵函數的值的動作會被強化。只要有足夠多的重復如果說計算機在某一件事上百分百勝過人類,KUKA機器人示教器維修,那就是重復智能體就會學會這個動作的模式或者策略,以最大化它的激勵函數。理想情況下,這些策略會導致智能體達到期望的最終狀態(例如在圍棋游戲中獲勝),在這個過程中程序員或者工程師不必在智能體進化的每一步都手動編碼。
換句話說,一個獎勵函數就是能夠讓配備了強化學習算法的智能體能夠鎖定目標的指導系統。目標定義得越是清晰,智能體就運行得越好這就是為什么目前很多智能體都是在較老的視頻游戲上做測試的原因,因為這些游戲都有基于分數的明確獎勵制度。(游戲的塊狀的、二維的圖像也是研究者選擇它們的理由:因為游戲相對比較容易模仿,研究者可以快速地運行并測試他們的實驗。)
加州伯克利的計算機科學家PulkitAgrawal
Agrawal說,「然而現實世界中并沒有分數」。計算機科學家希望讓他們創造的智能體去探索一個不是預加載了可量化對象的世界。
此外,如果環境沒有快速并且有規則地提供顯式的激勵,那么智能體「就沒有一個用來判斷它是否做得正確的準則」,Houthooft說。就像熱引導的導彈不能鎖定目標一樣,「它沒有任何自己通過環境引導自己的方法,所以只能亂飛」。
最后,即使是煞費苦心定義的激勵函數能夠指導智能體表現出不同凡響的智能行為就像AlphaGo打敗頂級人類玩家一樣這種激勵函數也不可能在未經大量修訂的情況下遷移到任何其他情境中。并且,這種修改必須是人工完成的,確切地說這就是機器學習首先應該幫助人類完成的事。
除了像導彈一樣能夠可靠地命中目標的偽人工智能體之外,我們真正想要從人工智能獲得的更像是一種內部引導能力。「你是可以自己給自己創造激勵的對吧?」Agrawal說,「并不存在一個天天指導你做這件事要『加1』或者『減1』的神」。
好奇心作為協同引導力
DeepakPathak從未嘗試過給「好奇心」這么虛無縹緲的概念建模。「『好奇心』一詞指的是『引導一個智能體在存在噪聲的環境中有效地探索的模型』」。隸屬于伯克利Darrell的實驗室研究員Pathak如是說。
但是在2106年,Pathak著迷于強化學習中的稀疏獎勵問題。含有強化學習技術的深度學習軟件最近在玩分數驅動的雅達利游戲(比如太空入侵者和打磚塊)中獲得了顯著的進步。但是在像超級馬里奧兄弟一樣的稍微復雜的游戲就超出人工智能的能力范圍了。因為在這些復雜的場景需要在時間和空間上朝著一個遙遠的目標前進,而且沒有一個明確的獎勵,更不用說學習并成功地執行游戲中的組合動作(例如在奔跑中同時跳躍)。