AI從零開始學會玩《我的世界》,DeepMind AI通用化取得突破
通用智能需要解決多個領域的任務。人們認為強化學習算法具有這種潛力,但它一直受到為新任務調整所需資源和知識的阻礙。在 DeepMind 的一項新研究中,研究人員展示了基于世界模型的通用可擴展的算法 DreamerV3,它在具有固定超參數的廣泛領域中優于以前的方法。
DreamerV3 符合的領域包括連續和離散動作、視覺和低維輸入、2D 和 3D 世界、不同的數據量、獎勵頻率和獎勵等級。值得一提的是,DreamerV3 是第一個在沒有人類數據或主動教育的情況下從零開始在《我的世界》(Minecraft)中收集鉆石的算法。研究人員表示,這樣的通用算法可以使強化學習得到廣泛應用,并有望擴展到硬決策問題。
鉆石是《我的世界》游戲中最受歡迎的物品之一,它是游戲中最稀有的物品之一,可被用來制作游戲中絕大多數最強的工具、武器以及盔甲。因為只有在最深的巖石層中才能找到鉆石,所以產量很低。
DreamerV3 是第一個在我的世界中收集鉆石的算法,無需人工演示或手動制作課程。該視頻顯示了它收集的第一顆鉆石,發生在 30M 環境步數 / 17 天游戲時間之內。
如果你對于 AI 玩我的世界沒有什么概念,英偉達 AI 科學家 Jim Fan 表示,和 AlphaGo 下圍棋比,我的世界任務數量是無限的,環境變化是無限的,知識也是有隱藏信息的。
對于人類來說,在我的世界里探索和構建是有趣的事,圍棋則顯得有些復雜,對于 AI 來說,情況剛好相反。AlphaGo 在 6 年前擊敗了人類冠軍,但現在也沒有可以和我的世界人類高手媲美的算法出現。
早在 2019 年夏天,我的世界的開發公司就提出了「鉆石挑戰」,懸賞可以在游戲里找鉆石的 AI 算法,直到 NeurIPS 2019 上,在提交的 660 多份參賽作品中,沒有一個 AI 能勝任這項任務。
但 DreamerV3 的出現改變了這一現狀,鉆石是一項高度組合和長期的任務,需要復雜的探索和規劃,新算法能在沒有任何人工數據輔助的情況下收集鉆石。或許效率還有很大改進空間,但 AI 智能體現在可以從頭開始學習收集鉆石這一事實本身,是一個重要的里程碑。
DreamerV3 方法概述
論文《Mastering Diverse Domains through World Models》:
論文鏈接:https://arxiv.org/abs/2301.04104v1
DreamerV3 算法由三個神經網絡組成,分別是世界模型(world model)、critic 和 actor。這三個神經網絡在不共享梯度的情況下根據回放經驗同時訓練,下圖 3(a)展示了世界模型學習,圖(b)展示了 Actor Critic 學習。
為了取得跨域成功,這些組件需要適應不同的信號幅度,并在它們的目標中穩健地平衡項。這是具有挑戰性的,因為不僅針對同一領域內的相似任務,而且還要使用固定超參數跨不同領域進行學習。
DeepMind 首先解釋了用于預測未知數量級的簡單變換,然后介紹了世界模型、critic、actor 以及它們的穩健學習目標。結果發現,結合 KL 平衡和自由位可以使世界模型無需調整學習,并且在不夸大小回報(small return)的情況下,縮小大回報實現了固定的策略熵正則化器。
Symlog 預測
重建輸入以及預測獎勵和價值具有挑戰性,因為它們的規模可能因領域而異。使用平方損失預測大目標會導致發散,而絕對損失和 Huber 損失會使學習停滯。另一方面,基于運行統計數據的歸一化目標將非平穩性引入優化。因此,DeepMind 提出將 symlog 預測作為解決這一難題的簡單方法。
為此,具有輸入 x 和參數 θ 的神經網絡 f (x, θ) 學習預測其目標 y 的變換版本。為了讀出該網絡的預測 y^,DeepMind 使用了逆變換,如下公式(1)所示。
從下圖 4 中可以看到,使用對數(logarithm)作為變換無法預測具有負值的目標。
因此,DeepMind 從雙對稱對數族中選擇一個函數,命名為 symlog 并作為變換,同時將 symexp 函數作為逆函數。
symlog 函數壓縮大的正值和負值的大小。DreamerV3 在解碼器、獎勵預測器和 critic 中使用 symlog 預測,還使用 symlog 函數壓縮編碼器的輸入。
世界模型學習
世界模型通過自編碼學習感官輸入的緊湊表示,并通過預測未來的表示和潛在行為的獎勵來實現規劃。
如上圖 3 所示,DeepMind 將世界模型實現為循環狀態空間模型 (RSSM)。首先,編碼器將感官輸入 x_t 映射到隨機表示 z_t,然后具有循環狀態 h_t 的序列模型在給定過去動作 a_t?1 的情況下預測這些表示的序列。h_t 和 z_t 的串聯形成模型狀態,從中預測獎勵 r_t 和 episode 連續標志 c_t ∈ {0, 1} 并重建輸入以確保信息表示,具體如下公式(3)所示。
下圖 5 可視化了 world world 的長期視頻預測。編碼器和解碼器使用卷積神經網絡 (CNN) 進行視覺輸入,使用多層感知器 (MLP) 進行低維輸入。動態、獎勵和持續預測器也是 MLPs,這些表示從 softmax 分布的向量中采樣而來。DeepMind 在采樣步驟中使用了直通梯度。
Actor Critic 學習
Actor Critic 神經網絡完全從世界模型預測的抽象序列中學習行為。在環境交互期間,DeepMind 通過從 actor 網絡中采樣來選擇動作,無需進行前瞻性規劃。
actor 和 critic 在模型狀態下運行,進而可以從世界模型學得的馬爾可夫表示中獲益。actor 的目標是在每個模型狀態的折扣因子 γ = 0.997 時最大化預期回報
。為了考慮超出預測范圍 T = 16 的獎勵,critic 學習預測當前 actor 行為下每個狀態的回報。
?
從重放輸入的表示開始,動態預測器和 actor 產生一系列預期的模型狀態 s_1:T 、動作 a_1:T 、獎勵 r_1:T 和連續標志 c_1:T 。為了估計超出預測范圍的獎勵的回報,DeepMind 計算了自舉的 λ 回報,它整合了預期回報和價值。
實驗結果
DeepMind 進行了廣泛的實證研究,以評估 DreamerV3 在固定超參數下跨不同領域(超過 150 個任務)的通用性和可擴展性,并與已有文獻中 SOTA 方法進行比較。此外還將 DreamerV3 應用于具有挑戰性的視頻游戲《我的世界》。
對于 DreamerV3,DeepMind 直接報告隨機訓練策略的性能,并避免使用確定性策略進行單獨評估運行,從而簡化了設置。所有的 DreamerV3 智能體均在一個 Nvidia V100 GPU 上進行訓練。下表 1 為基準概覽。
為了評估 DreamerV3 的通用性,DeepMind 在七個領域進行了廣泛的實證評估,包括連續和離散動作、視覺和低維輸入、密集和稀疏獎勵、不同獎勵尺度、2D 和 3D 世界以及程序生成。下圖 1 中的結果發現,DreamerV3 在所有領域都實現了強大的性能,并在其中 4 個領域的表現優于所有以前的算法,同時在所有基準測試中使用了固定超參數。
更多技術細節和實驗結果請參閱原論文。