1. 程式人生 > 資訊 >為了讓 AI 不斷打怪升級,DeepMind 打造了一個“元宇宙”

為了讓 AI 不斷打怪升級,DeepMind 打造了一個“元宇宙”

DeepMind 又冷不丁給了我們一個小驚喜。

我們都知道,強化學習苦於泛化能力差,經常只能針對單個任務來從頭開始學習。

像 DeepMind 之前開發的 AlphaZero,儘管可以玩轉圍棋、國際象棋和日本將棋,但對每種棋牌遊戲都只能從頭開始訓練。

泛化能力差也是 AI 一直被詬病為人工智障的一大原因。人類智慧厲害的一點就是,可以借鑑之前的經驗,迅速適應新環境,比如你不會因為是第一次吃川菜,就看著一口鴛鴦鍋不知所措,你吃過潮汕火鍋嘛,不都是涮一下的事情嘛。

但是,泛化能力也不是一蹴而就的,就像我們玩遊戲的時候,也是先做簡單任務,然後逐步升級到複雜任務。在遊戲《空洞騎士》中,一開始你只需要隨意走動揮刀砍怪就行,但在噩夢級難度的“苦痛之路”關卡中,沒有前面一點點積累的爛熟於心的技巧,只能玩個寂寞。

1 多工元宇宙

DeepMind 此次就採用了這種“課程學習”思路,讓智慧體在不斷擴充套件、升級的開放世界中學習。也就是說,AI 的新任務(訓練資料)是基於舊任務不斷生成的

在這個世界中,智慧體可以盡情鍛鍊自己,簡單的比如“靠近紫色立方體”,複雜一點的比如“靠近紫色立方體或將黃色球體放在紅色地板上”,甚至還可以和其他智慧體玩耍,比如捉迷藏 ——“找到對方,並且不要被對方找到”。

每個小遊戲存在於世界的一個小角落,千千萬萬個小角落拼接成了一個龐大的物理模擬世界,比如下圖中的幾何“地球”。

總體來說這個世界的任務由三個要素構成,即任務 = 遊戲 + 世界 + 玩家,並根據三個要素的不同關係,決定任務的複雜度。

複雜度的判斷有四個維度:競爭性,平衡性,可選項,探索難度

比如在“搶方塊”遊戲中,藍色智慧體需要把黃色方塊放到白色區域,紅色智慧體需要把黃色方塊放到藍色區域。這兩個目標是矛盾的,因此競爭性比較強;同時雙方條件對等,平衡性比較高;因為目標簡單,所以可選項少;這裡 DeepMind 把探索難度評為中上,可能是因為定位區域算是比較複雜的場景。

再例如,在“球球喜歡和方塊一起玩”遊戲中,藍色和紅色智慧體都有一個共同的目標,讓相同顏色的球體和方塊放在相近的位置。

這時候,競爭性自然很低;平衡性毋庸置疑是很高的;可選項相比上面的遊戲會高很多;至於探索難度,這裡沒有定位區域,智慧體隨便把球體和方塊放哪裡都行,難度就變小了。

基於這四個維度,DeepMind 打造了一個任務空間的、超大規模的“元宇宙”,幾何“地球”也只是這個元宇宙的一個小角落,限定於這個四維任務空間的一個點。DeepMind 將這個“元宇宙”命名為 Xland,它包含了數十億個任務。

來看看 XLand 的全貌,它由一系列遊戲組成,每個遊戲都可以在許多不同的模擬世界中進行,這些世界的拓撲和特徵平滑地變化。

2 終生學習

資料有了,那麼接下來就得找到合適的演算法。DeepMind 發現,目標註意網路 (GOAT) 可以學習更通用的策略。

具體來說,智慧體的輸入包括第一視角的 RGB 影象、本體感覺以及目標。經過初步處理後,生成中間輸出,傳遞給 GOAT 模組,該模組會根據智慧體的當前目標處理中間輸出的特定部分,並對目標進行邏輯分析。

所謂邏輯分析是指,對每個遊戲,可以通過一些方法,來構建另一個遊戲,並限制策略的價值函式的最優值上限或者下限。

到這裡,DeepMind 向我們提出了一個問題:對於每個智慧體,什麼樣的任務集合才是最好的呢?換句話說,在打怪升級中,什麼樣的關卡設定才會讓玩家能順利地升級為“真”高手,而不是一刀 9999?

DeepMind 給出的答案是,每個新任務都基於舊任務生成,“不會太難,也不會太容易”。其實,這恰好是讓人類學習時感到“爽”的興奮點。

在訓練開始時,太難或太容易的任務可能會鼓勵早期學習,但會導致訓練後期的學習飽和或停滯。

實際上,我們不要求智慧體在一個任務上非常優秀,而是鼓勵其終身學習,即不斷去適應新任務。

而所謂太難、太容易其實是比較模糊的描述。我們需要的是一個量化方法,在新任務和舊任務之間做彈性連線。

怎麼不讓智慧體在新任務中因為不適應而“暴死”呢?進化學習就提供了很好的靈活性。總體來說,新任務和舊任務是同時進行的,並且每個任務有多個智慧體參與“競爭”。在舊任務上適應得好的智慧體,會被選拔到新任務上繼續學習。

在新任務中,舊任務的優秀智慧體的權重、瞬時任務分佈、超引數都會被複制,參與新一輪“競爭”。

並且,除了舊任務中的優秀智慧體,還有很多新人蔘與,這就引進了隨機性、創新性、靈活性,不用擔心“暴死”問題。

當然,在每個任務中不會只有一種優秀智慧體。因為任務也是不斷在生成的、動態變化的,一個任務可以訓練出有不同長處的智慧體,並往不同的方向演化(隨著智慧體的相對效能和魯棒性進行)。

最終,每個智慧體都會形成不同的擅長任務的集合,像極了春秋戰國時期的“百家爭鳴”。說打怪升級顯得格局小了,這簡直是在模擬地球嘛。

DeepMind 表示,“這種組合學習系統的迭代特性是,不優化有界效能指標,而是優化迭代定義的通用能力範圍,這使得智慧體可以開放式地學習,僅受環境空間和智慧體的神經網路表達能力的限制。”

3 智慧初現

最終,在這個複雜“元宇宙”中升級、進化、分流的智慧體形成了什麼優秀物種呢?

DeepMind 說道,智慧體有很明顯的零樣本學習能力,比如使用工具、打圍、數數、合作 & 競爭等等。

來看幾個具體的例子。

首先是,智慧體學會了臨場應變。它的目標有三個:

1、將黑色金字塔放到黃色球體旁邊;

2、將紫色球體放到黃色金字塔旁邊;

3、將黑色金字塔放到橙色地板上。

AI 一開始找到了一個黑色金字塔,想著把它拿到橙色地板上(目標 3),但在搬運過程中瞄見了一個黃色球體,瞬間改變主意,“我可以實現目標 1 啦”,將黑色金字塔放到了黃色球體旁邊。

第二個例子是,不會跳高,怎麼拿到高臺上的紫色金字塔?

在這個任務中,智慧體需要想辦法突破障礙,取到高臺上的紫色金字塔,高臺周邊並沒有類似階梯、斜坡一樣的路徑。

因為不會調高,所以智慧體急的“掀桌子”,把周邊的幾塊豎起來的板子都弄倒了。然後,巧的是,一塊黑色石板倒在高臺邊上,“咦,等等,這不就是我要的階梯嗎?”

這個過程是否體現了智慧體的智慧,還無法肯定,可能只是一時的幸運罷了。關鍵還是,要看統計資料。

經過 5 代訓練,智慧體在 XLand 的 4,000 個獨立世界中玩大約 700,000 個獨立遊戲,涉及 340 萬個獨立任務的結果,最後一代的每個智慧體都經歷了 2000 億次訓練步驟。

目前,智慧體已經能夠順利參與幾乎每個評估任務,除了少數即使是人類也無法完成的任務。

DeepMind 的這項研究,或許一定程度上體現了“密集學習”的重要性。也就是說,不僅是資料量要大,任務量也要大。這也使得智慧體在泛化能力上有很好的表現,比如資料顯示,只需對一些新的複雜任務進行 30 分鐘的集中訓練,智慧體就可以快速適應,而從頭開始用強化學習訓練的智慧體根本無法學習這些任務。

在往後,我們也期待這個“元宇宙”變得更加複雜和生機勃勃,AI 經過不斷演化,不斷給我們帶來驚喜(細思極恐)的體驗。