擴散模型是實時遊戲引擎

    From Marovi
    Revision as of 03:05, 9 September 2024 by Felipefelixarias (talk | contribs)
    Other languages:

    作者: Dani Valevski(谷歌研究)、Yaniv Leviathan(谷歌研究)、Moab Arar(特拉維夫大學)、Shlomi Fruchter(谷歌 DeepMind)

    ArXiv連結: https://arxiv.org/abs/2408.14837

    項目網站: https://gamengen.github.io

    摘要

    我們介紹了GameNGen,這是第一個完全由神經模型驅動的遊戲引擎,能夠在長軌跡上與複雜環境進行高質量的實時交互。GameNGen 可以在單個 TPU 上以每秒超過 20 幀的速度交互模擬經典遊戲 DOOM。下一幀預測的 PSNR 為 29.4,與有損 JPEG 壓縮相當。在區分遊戲短片和模擬片段方面,人類評分員的表現僅略好於隨機概率。GameNGen 的訓練分為兩個階段:(1) 一個強化學習代理學習玩遊戲,並記錄訓練過程;(2) 訓練一個擴散模型,以過去的幀和動作序列為條件生成下一幀。條件增強技術可在長軌跡上實現穩定的自動回歸生成。

    圖 1:一名玩家正在 GameNGen 上以 20 FPS 的速度遊玩 DOOM。

    請參見 https://gamengen.github.io 獲取演示視頻。

    1 介紹

    計算機遊戲是圍繞以下「遊戲循環」手動製作的軟件系統:(1) 收集用戶輸入,(2) 更新遊戲狀態,(3) 將其渲染為屏幕像素。這個遊戲循環以很高的幀率運行,為玩家營造出一個交互式虛擬世界的假象。這種遊戲循環通常在標準計算機上運行,儘管也有許多在定製硬件上運行遊戲的驚人嘗試(例如,標誌性遊戲《毀滅戰士》曾在烤麵包機、微波爐、跑步機、照相機、iPod 上運行,甚至在 Minecraft 遊戲中運行——僅舉幾例,請參見 https://www.reddit.com/r/itrunsdoom/),但在所有这些情况下,硬件仍然是直接模拟手动编写的游戏软件。此外,尽管游戏引擎千差万别,但所有引擎中的游戏状态更新和渲染逻辑都是由一套手动编程或配置的规则组成的。

    近年來,生成模型在根據文本或圖像等多模態輸入生成圖像和視頻方面取得了重大進展。在這一浪潮的前沿,擴散模型成為非語言媒體生成的事實標準,如 Dall-E(Ramesh 等人,2022)、Stable Diffusion(Rombach 等人,2022)和 Sora(Brooks 等人,2024)。乍一看,模擬視頻遊戲的交互世界似乎與視頻生成類似。然而,"交互式"世界模擬不僅僅是快速生成視頻。因為生成過程中需要以輸入動作流為條件,而輸入動作流只能在生成時獲取,這打破了現有擴散模型架構的一些假設。尤其是,它要求自回歸地生成幀,這往往是不穩定的,並導致採樣發散(見 3.2.1 節)。

    有幾項重要研究(Ha & Schmidhuber,2018;Kim 等人,2020;Bruce 等人,2024)(見第6節)使用神經模型來模擬交互式視頻遊戲。然而,這些方法大多在模擬遊戲的複雜性、仿真速度、長時間的穩定性或視覺質量等方面存在局限性(見圖2)。因此,自然而然地會問:

    一個實時運行的神經模型是否能夠以高質量模擬複雜的遊戲?

    在這項工作中,我們證明答案是肯定的。具體來說,我們展示了一款複雜的視頻遊戲——標誌性遊戲《DOOM》,可以在神經網絡(開放式 Stable Diffusion v1.4 的增強版(Rombach 等人,2022))上實時運行,同時獲得與原始遊戲相當的視覺質量。儘管這不是精確仿真,該神經模型能夠執行複雜的遊戲狀態更新,例如統計生命值和彈藥、攻擊敵人、破壞物體、開門,以及在長軌跡上持續保持遊戲狀態。

    GameNGen 回答了在通往遊戲引擎新範式的道路上一個重要的問題,即遊戲可以自動生成,就像近年來神經模型生成圖像和視頻一樣。仍然存在關鍵問題,例如如何訓練這些神經遊戲引擎,以及如何有效地創建遊戲,包括如何最佳地利用人類輸入。儘管如此,我們對這種新範式的可能性感到非常興奮。

    圖 2:GameNGen 與之前最先進的 DOOM 仿真的比較

    2 互動世界仿真

    一個交互環境由一個潛在狀態空間、一個潛在空間的部分投影空間、一個部分投影函數、一組動作,以及一個轉移概率函數,使得

    例如,在遊戲 DOOM 中, 是程序的動態內存內容, 是渲染的屏幕像素, 是遊戲的渲染邏輯, 是按鍵和鼠標移動的集合,而 是基於玩家輸入的程序邏輯(包括任何潛在的非確定性)。

    給定輸入交互環境 和初始狀態 ,一個「交互世界模擬」是一個「模擬分佈函數」 。給定觀測值之間的距離度量 ,一個「策略」,即給定過去動作和觀測的代理動作分佈 ,初始狀態分佈 和回合長度分佈 ,交互世界模擬的目標是最小化 ,其中 ,以及 是在執行代理策略 時從環境和模擬中抽取的觀測值。重要的是,這些樣本的條件動作總是通過代理與環境 交互獲得,而條件觀測既可以從 獲得(「教師強迫目標」),也可以從模擬中獲得(「自回歸目標」)。

    我們總是使用教師強迫目標來訓練我們的生成模型。給定一個模擬分佈函數 ,可以通過自回歸地採樣觀測值來模擬環境

    3 GameNGen

    GameNGen(發音為「遊戲引擎」)是一個生成擴散模型,它能夠在第2節的設置下學習模擬遊戲。為了收集該模型的訓練數據,我們首先使用教師強制目標訓練一個獨立的模型與環境進行交互。這兩個模型(代理和生成模型)依次進行訓練。在訓練過程中,代理的全部行為和觀察語料 被保留下來,並在第二階段成為生成模型的訓練數據集。見圖 3

    圖3:GameNGen方法概覽。為了簡潔起見,省略了v預測的詳細信息。

    3.1 通過代理進行數據收集

    我們的最終目標是讓人類玩家與我們的仿真進行互動。為此,第2節中的策略即為「人類遊戲策略」。由於我們無法直接大規模地從中取樣,因此我們首先通過教一個自動代理來玩遊戲,以此來近似人類遊戲。與典型的強化學習設置不同,該設置旨在最大化遊戲得分,我們的目標是生成與人類遊戲類似的訓練數據,或者至少在各種場景下包含足夠多的多樣化示例,以最大化訓練數據的效率。為此,我們設計了一個簡單的獎勵函數,這是我們的方法中唯一與環境相關的部分(見附錄A.3)。

    我們在整個訓練過程中記錄了代理的訓練軌跡,其中涵蓋了不同技能水平的遊戲。這組記錄的軌跡構成了我們的數據集,用於訓練生成模型(見第3.2節)。

    3.2 訓練生成擴散模型

    現在,我們訓練一個生成擴散模型,該模型以在前一階段收集的代理軌跡(行動和觀察)作為條件。

    我們重新利用預訓練的文本到圖像擴散模型 Stable Diffusion v1.4(Rombach 等人,2022)。我們將模型 置於軌跡 的條件下,即在之前的動作 和觀察(幀) 的序列條件下,並移除所有文本條件。具體來說,為了以動作為條件,我們僅需學習將每個動作(例如按下特定按鍵)嵌入為單個標記的 ,並將文本的交叉注意力替換為該編碼動作序列。為了對觀察(即之前的幀)進行條件化,我們使用自動編碼器 將它們編碼到潛在空間中,並在潛在通道維度中將它們串聯到噪聲潛在空間中(見圖 3)。我們還嘗試通過交叉注意力對這些過去的觀察進行條件化,但沒有觀察到有意義的改進。

    我們通過速度參數化訓練模型,使得擴散損失最小化(Salimans & Ho, 2022b):

    (1)

    其中 Failed to parse (syntax error): {\displaystyle T = {\{ o_{i \leq n},a_{i \leq n}\}} \sim \mathcal{T}_{代理}},而 是模型 的 v預測輸出。噪聲調度 是線性的,與 Rombach 等(2022)類似。

    3.2.1 使用噪聲增強緩解自回歸漂移

    如圖4所示,教師強制訓練和自動回歸採樣之間的領域偏移會導致誤差積累和採樣質量的快速下降。為了避免由於模型的自動回歸應用而導致的這種偏差,我們在訓練時向編碼幀中添加不同程度的高斯噪聲來擾動背景幀,並將噪聲水平作為輸入提供給模型,仿效 Ho 等人(2021)的方法。為此,我們對噪聲水平 進行均勻採樣,直至最大值,然後對其進行離散化,並為每個區間學習一個嵌入(見圖3)。這使得網絡能夠糾正前幾幀中的採樣信息,對於長期保持幀質量至關重要。在推理過程中,可以控制添加的噪聲水平以最大化質量,儘管我們發現,即使不添加噪聲,結果也顯著改善。我們將在5.2.2部分分析這種方法的影響。

    center|thumb|900x900px|圖 4:自回歸漂移。頂部:我們展示了一個簡單軌跡的每第 10 幀,共 50 幀,其中玩家沒有移動。在 20-30 步後,質量迅速下降。底部:帶有噪聲增強的相同軌跡沒有出現質量下降。

    3.2.2 潛在變量解碼器微調

    Stable Diffusion v1.4 的預訓練自動編碼器將 8x8 像素塊壓縮為 4 個潛通道,在預測遊戲幀時會導致有意義的偽影,影響小細節,尤其是底欄 HUD(「抬頭顯示」)。為了在提高圖像質量的同時利用預訓練的知識,我們僅使用針對目標幀像素計算的 MSE 損失來訓練潛在自動編碼器的解碼器。使用 LPIPS(Zhang 等人(2018))等感知損失可能會進一步提高質量,我們將其留待未來工作中研究。重要的是,請注意這個微調過程完全獨立於 U-Net 微調過程,而且自回歸生成不受其影響(我們僅對潛變量自回歸地進行條件設置,而非像素)。附錄 A.2 展示了對自動編碼器進行微調和不進行微調的生成示例。

    3.3 推理

    3.3.1 設置

    我們使用DDIM採樣(Song等人,2022)。我們僅對過去觀測條件採用了無分類器指導(Ho & Salimans,2022)。我們發現對過去動作條件的指導無法提高質量。我們使用的權重相對較小(1.5),因為較大的權重會產生偽影,而我們的自動回歸採樣則會放大這些偽影。

    我們還嘗試了同時生成 4 個樣本並合併結果,希望能防止罕見的極端預測被採納,並減少誤差累積。我們嘗試了對樣本進行平均和選擇最接近中位數的樣本。平均效果略遜於單幀,而選擇最接近中位數的樣本效果僅略有提升。由於這兩種方法都會將硬件需求提高到 4 個張量處理單元(TPU),因此我們決定不使用這些方法,但注意到這可能是未來研究的一個有趣領域。

    3.3.2 去噪器採樣步驟

    在推理過程中,我們需要運行 U-Net 去噪器(進行若干步)和自動編碼器。在我們的硬件配置(TPU-v5)下,一次去噪步驟和自動編碼器的評估各需 10 毫秒。如果我們以單步去噪器運行模型,設置中的最小總延遲為每幀 20 毫秒,即每秒 50 幀。通常情況下,生成擴散模型(如 Stable Diffusion)通過單次去噪步驟無法產生高質量結果,而是需要數十個採樣步驟才能生成高質量圖像。令人驚訝的是,我們發現只需 4 個 DDIM 採樣步驟,就能穩健地模擬 DOOM(Song 等人,2020)。實際上,我們觀察到使用 4 步採樣與使用 20 步或更多步採樣相比,模擬質量沒有下降(見附錄 A.4)。

    僅使用 4 個去噪步驟導致 U-Net 總耗時為 40 毫秒(包括自動編碼器的推理總耗時為 50 毫秒),即每秒 20 幀。我們推測,在我們的案例中,較少步驟對質量影響可忽略不計,是由於以下因素的結合:(1) 受限的圖像空間,以及 (2) 前一幀的強條件作用。

    由於我們在使用單步採樣時確實觀察到了質量下降,因此我們在單步設置中進行了類似於(Yin 等人,2024;Wang 等人,2023)的模型蒸餾實驗。蒸餾確實有很大幫助(使我們達到了上述的 50 FPS),但仍會對仿真質量造成一定影響,因此我們選擇在我們的方法中使用不帶蒸餾的 4 步版本(見附錄 A.4)。這是一個值得進一步研究的有趣領域。

    我們注意到,類似於 NVidia 的經典 SLI 交替幀渲染(AFR)技術,通過在額外硬件上並行生成多個幀,可以顯著提高圖像生成速率。然而,與 AFR 類似,實際的仿真速率不會提高,輸入延遲也不會減少。

    4 實驗設置

    4.1 代理訓練

    代理模型使用 PPO(Schulman 等人,2017)進行訓練,採用簡單的 CNN 作為特徵網絡,基於 Mnih 等人(2015)的方法。在 CPU 上使用 Stable Baselines 3 基礎架構(Raffin 等人,2021)進行訓練。代理接收縮小後的幀圖像和遊戲地圖,每個解像度為 160x120。代理還可以訪問其最近執行的 32 次動作。特徵網絡為每幅圖像計算出大小為 512 的表示。PPO 的 actor 和 critic 是基於圖像特徵網絡輸出和過去動作序列連接的兩層 MLP 頭。我們使用 Vizdoom 環境(Wydmuch 等人,2019)訓練代理來玩遊戲。我們並行運行了 8 個遊戲,每個遊戲的回放緩衝區大小為 512,折扣因子為 ,熵係數為 。在每次迭代中,我們使用批量大小為 64 的數據進行 10 個時代的訓練,學習率為 1e-4。我們總共執行了 1000 萬個環境步驟。

    4.2 生成模型訓練

    我們使用 Stable Diffusion 1.4 的預訓練檢查點訓練所有仿真模型,解凍所有 U-Net 參數。我們使用的批量大小為 128,恆定學習率為 2e-5,採用無權重衰減的 Adafactor 優化器(Shazeer & Stern,2018),以及梯度剪切為 1.0。我們將擴散損失參數化更改為 v預測(Salimans & Ho 2022a)。我們以 0.1 的概率去掉上下文幀條件,以便在推理過程中使用 CFG。我們使用 128 台 TPU-v5e 設備進行數據並行化訓練。除非另有說明,本文中的所有結果均為 700,000 步訓練後的結果。對於噪聲增強(第3.2.1節),我們使用的最大噪聲水平為 0.7,並設有 10 個嵌入桶。在優化潛在解碼器時,我們使用的批次大小為 2,048;其他訓練參數與去噪器的參數相同。在訓練數據方面,除非另有說明,我們使用了代理在強化學習訓練期間的所有軌跡以及訓練期間的評估數據。總體而言,我們生成了 9 億幀用於訓練。所有圖像幀(在訓練、推理和條件期間)的解像度均為 320x240,並填充為 320x256。我們使用的上下文長度為 64(即向模型提供其自身的最後 64 次預測以及最後 64 次操作)。

    5 結果

    5.1 仿真質量

    總體而言,從圖像質量來看,我們的方法在長軌跡上實現了與原始遊戲相當的仿真質量。對於短軌跡,人類評估者在區分仿真片段和實際遊戲片段時,僅比隨機猜測略勝一籌。

    圖像質量。 我們使用第2節中描述的教師強迫設置來測量LPIPS(Zhang 等人,2018)和PSNR。在該設置中,我們對初始狀態進行採樣,並根據地面實況的過去觀察軌跡預測單幀。在對5個不同級別的2048條隨機軌跡進行評估時,我們的模型實現了的PSNR值和的LPIPS值。PSNR值與質量設置為20-30的有損JPEG壓縮相似(Petric & Milinkovic,2018)。圖5展示了模型預測和相應地面實況樣本的示例。

    圖 5:模型預測與地面實況對比。僅顯示過去觀測上下文的最後 4 幀。

    視頻質量 我們使用第2節中描述的自回歸設置,按照真實軌跡所定義的動作序列對幀進行迭代採樣,同時將模型自身的過往預測作為條件。自回歸採樣時,預測軌跡和真實軌跡常常在幾步後發生偏離,這主要是由於不同軌跡的幀間積累了少量不同的運動速度。因此,如圖6所示,每幀的PSNR和LPIPS值分別逐漸降低和增加。預測的軌跡在內容和圖像質量方面仍與實際遊戲相似,但每幀指標在捕捉這一點的能力上有限(自動回歸生成的軌跡樣本見附錄A.1)。

    圖 6:自回歸評估。64步自回歸過程中的PSNR指標。
    圖 6:自回歸評估。64 個自回歸步驟的 LPIPS 指標

    因此,我們對512個隨機保留的軌跡計算FVD(Unterthiner等人,2019),測量預測軌跡分佈與真實值軌跡分佈之間的距離,仿真的長度為16幀(0.8秒)和32幀(1.6秒)。對於16幀,我們的模型獲得的FVD為。對於32幀,我們的模型獲得的FVD為

    人類評估。 作為評估仿真質量的另一項標準,我們向 10 名評測員提供了 130 個隨機短片段(長度為 1.6 秒和 3.2 秒),並排展示我們的仿真和真實遊戲。評測員的任務是識別真實遊戲(見附錄A.6中的圖14)。評測員在 1.6 秒和 3.2 秒的片段中,選擇真實遊戲而非仿真的比例分別為 58% 和 60%。

    5.2 消融實驗

    為了評估我們方法中不同組件的重要性,我們從評估數據集中採樣軌跡,並計算真實值與預測幀之間的 LPIPS 和 PSNR 指標。

    5.2.1 上下文長度

    我們通過訓練使用的模型來評估改變條件上下文中過去觀測值數量的影響(請注意,我們的方法使用)。這影響了歷史幀和動作的數量。我們在解碼器保持凍結的情況下訓練模型200,000步,並在5個級別的測試集軌跡上進行評估。結果見表1。正如預期的那樣,我們發現生成質量隨着上下文長度的增加而提高。有趣的是,我們觀察到,儘管最初(例如在1到2幀之間)提升較大,但很快就接近一個漸近線,進一步增加上下文長度只能帶來微小的質量提升。這有些令人驚訝,因為即使在我們使用的最大上下文長度下,模型也只能訪問略多於3秒的歷史。值得注意的是,我們觀察到大部分遊戲狀態會持續更長時間(見第7節)。雖然條件上下文長度是一個重要的限制,但表1提示我們可能需要改變模型的架構,以有效支持更長的上下文,並更好地選擇過去的幀作為條件,這將是我們未來的工作。

    表 1:歷史幀數量。我們在來自 5 個級別的 8912 個測試集示例中分析了用作上下文的歷史幀數量。更多的幀通常會改善 PSNR 和 LPIPS 指標。

    歷史上下文長度 PSNR LPIPS
    64
    32
    16
    8
    4
    2
    1

    5.2.2 噪聲增強

    為了消除噪聲增強的影響,我們訓練了一個不添加噪聲的模型。我們對標準噪聲增強模型和不添加噪聲的模型(經過 200,000 步訓練後)進行自回歸評估,並計算在隨機保留的 512 條軌跡上預測幀與真實幀之間的 PSNR 和 LPIPS 指標。我們在圖 7 中報告了每個自回歸步驟的平均指標值,最多可達 64 幀。

    在沒有噪聲增強的情況下,與真實值相比,LPIPS 距離迅速增加,而 PSNR 下降,這表明仿真結果與真實值的偏差加大。

    圖 7:噪聲增強的影響。圖中顯示了每個自回歸步驟的 LPIPS 平均值(越低越好)。未使用噪聲增強時,質量在 10-20 幀後迅速下降,而噪聲增強可以防止這種情況。
    圖 7:噪聲增強的影響。圖中顯示了每個自回歸步驟的 PSNR 平均值(越高越好)。不使用噪聲增強時,質量在 10-20 幀後迅速下降。噪聲增強可以防止這種情況。

    5.2.3 代理執行

    我們將代理生成的數據訓練與使用隨機策略生成的數據訓練進行比較。對於隨機策略,我們根據與觀測結果無關的均勻分類分佈對動作進行採樣。我們通過對兩個模型及其解碼器進行

    總體而言,我們觀察到在隨機軌跡上訓練模型的效果出奇地好,但受到隨機策略探索能力的限制。在比較單幀生成時,代理的效果稍好,PSNR 為 25.06,而隨機策略為 24.42。在比較 3 秒自回歸生成後的幀時,差距增大到 19.02 對 16.84。在手動操作模型時,我們發現某些區域對兩者都很容易,而某些區域對兩者都很困難,而在某些區域,代理的表現要好得多。基於此,我們根據它們與遊戲起始位置的距離手動將 456 個例子分為三組:易、中等和難。我們觀察到,在簡單和困難集上,代理的表現僅略優於隨機,而在中等集上,正如預期的那樣,代理的表現要好得多(見表 2)。請參見附錄 A.5 中的圖 13,了解人類單次遊戲的得分情況。

    表 2:不同難度級別的表現。 我們比較了使用代理生成數據和隨機生成數據訓練的模型在簡單、中等和困難數據集上的表現。簡單和中等數據集各有 112 個樣本,困難數據集有 232 個樣本。在 3 秒後的單幀上計算每個軌跡的指標。

    難度級別 數據生成策略 PSNR LPIPS
    簡單 代理
    隨機
    中等 代理
    隨機
    困難 代理
    隨機

    6 相關工作

    交互式三維仿真

    模擬二維和三維環境的視覺和物理過程,並允許對其進行交互式探索,是計算機圖形學中一個廣泛發展的領域(Akenine-Möller等人,2018)。像虛幻和Unity這樣的遊戲引擎是可以處理場景幾何表示並根據用戶交互渲染圖像流的軟件。遊戲引擎負責跟蹤所有世界狀態,例如玩家的位置和移動、物體、角色動畫和光照。它還負責跟蹤遊戲邏輯,例如完成遊戲目標所獲得的分數。電影和電視製作使用的光線追蹤變體(Shirley和Morley,2008),對於實時應用來說過於緩慢且計算密集。相比之下,遊戲引擎必須保持非常高的幀率(通常為30-60 FPS),因此依賴於高度優化的多邊形光柵化,並且通常由GPU加速。諸如陰影、粒子和光照等物理效果通常使用高效的啟發式方法來實現,而不是進行精確的物理仿真。

    神經三維仿真

    重建三維表示的神經方法在過去幾年中取得了重大進展。NeRFs(Mildenhall 等人,2020)使用深度神經網絡對輻射場進行參數化,該網絡針對從不同相機姿態拍攝的一組圖像的特定場景進行了專門優化。訓練完成後,可通過體積渲染方法對場景的新視角進行採樣。Gaussian Splatting(Kerbl 等人,2023)方法建立在 NeRFs 的基礎上,但使用三維高斯和改進的光柵化方法來表示場景,從而實現更快的訓練和渲染速度。儘管這些方法展示了令人印象深刻的重建結果和實時交互性,但通常僅限於靜態場景。

    視頻擴散模型

    擴散模型在文本到圖像生成中取得了最先進的成果(Saharia 等人,2022;Rombach 等人,2022;Ramesh 等人,2022;Podell 等人,2023),這一研究領域也被應用於文本到視頻生成任務(Ho 等人,2022;Blattmann 等人,2023ba;Gupta 等人,2023;Girdhar 等人,2023;Bar-Tal 等人,2024)。儘管在逼真性、文本依從性和時間一致性方面取得了顯著進展,但視頻擴散模型對於實時應用來說仍然過於緩慢。我們的工作擴展了這一研究,並使其適用於基於過去觀察和動作歷史的自回歸條件下的實時生成。

    遊戲模擬與世界模型

    有幾項研究試圖利用動作輸入來訓練遊戲仿真模型。Yang 等人(2023)建立了一個包含真實世界和模擬視頻的多樣化數據集,並訓練了一個擴散模型,根據前一個視頻片段和動作的文字描述來預測後續視頻。Menapace 等人(2021)和 Bruce 等人(2024)專注於從視頻中無監督地學習動作。Menapace 等人(2024)將文本提示轉換為遊戲狀態,然後使用 NeRF 將其轉換為三維表示。與這些研究不同,我們專注於「交互式可玩實時仿真」,並展示了長時間跨度軌跡的魯棒性。我們利用強化學習代理探索遊戲環境,並創建觀察和交互的軌跡以訓練我們的交互式遊戲模型。另一項研究探索了學習環境的預測模型,並將其用於訓練強化學習代理。Ha 和 Schmidhuber(2018)訓練了變分自動編碼器(Kingma & Welling,2014),將遊戲幀編碼為潛在向量,然後使用 RNN 模擬 VizDoom 遊戲環境,從隨機策略(即隨機選擇動作)的隨機軌跡中進行訓練。然後通過在「虛構」環境中進行遊戲來學習控制器策略。Hafner 等人(2020)證明,強化學習代理可以完全在由潛在空間中的學習世界模型生成的情節上進行訓練。與我們的工作也接近的是 Kim 等人(2020),他們使用 LSTM 架構來建模世界狀態,同時結合卷積解碼器生成輸出幀,並在對抗性目標下聯合訓練。雖然這種方法對《吃豆人》等簡單遊戲似乎給出了合理的結果,但在模擬 VizDoom 的複雜環境時會產生模糊樣本。相比之下,GameNGen 能夠生成與原始遊戲相當的樣本;見圖 2。最後,與我們的工作同步進行的還有 Alonso 等人(2024)訓練的擴散世界模型,該模型可根據觀察歷史預測下一步觀察,並在雅達利遊戲上迭代訓練世界模型和強化學習模型。

    DOOM

    DOOM 於 1993 年發佈,掀起了遊戲行業的一場革命。它引入了開創性的 3D 圖形技術,成為第一人稱射擊類遊戲的基石,影響了無數其他遊戲。許多研究工作都對 DOOM 進行了研究。它提供了開放源碼的實現和足夠低的原生解像度,適合小型模型的模擬,同時也足夠複雜,可以作為一個具有挑戰性的測試案例。最後,作者在這款遊戲上花費了無數的青春時光,因此在這項工作中使用它是一個顯而易見的選擇。

    7 討論

    總結。 我們介紹了GameNGen,並證明在神經模型上可以實現每秒20幀的高質量實時遊戲。我們還提供了將計算機遊戲等交互式軟件轉換為神經模型的方法。

    局限性。 GameNGen 存在內存有限的情況。該模型只能訪問稍超過3秒的歷史記錄,因此許多遊戲邏輯能夠在更長的時間跨度內被保存,這一點令人驚訝。雖然部分遊戲狀態是通過屏幕像素(如彈藥和健康統計、可用武器等)來持久化的,但模型可能學習了強大的啟發式方法,從而能夠進行有意義的概括。例如,從渲染視圖中,模型可以學習推斷玩家的位置,而從彈藥和健康統計中,模型可能推斷玩家是否已經穿過某個區域並擊敗了那裏的敵人。儘管如此,很容易出現上下文長度不足的情況。在現有架構下繼續增加上下文大小只能帶來微小的好處(第5.2.1節),模型的上下文長度偏短仍然是一個重要限制。第二個重要限制是代理的行為與人類玩家的行為之間仍然存在差異。例如,即使在訓練結束後,我們的代理仍然無法探索遊戲中的所有地點和互動,從而導致在這些情況下出現錯誤行為。

    未來工作 我們在經典遊戲《DOOM》上演示了GameNGen。在其他遊戲或更廣泛的交互式軟件系統上進行測試會非常有趣。我們注意到,除了強化學習代理的獎勵函數外,我們的技術沒有任何內容是《DOOM》特有的。我們計劃在未來的工作中解決這個問題。雖然GameNGen能夠準確地維護遊戲狀態,但如上文所述,它並不完美。可能需要一個更複雜的架構來緩解這些問題。GameNGen目前只能利用有限的內存。嘗試進一步有效地擴展內存對於更複雜的遊戲或軟件來說至關重要。GameNGen在TPUv5上的運行速度為20或50 FPS,比原始遊戲《DOOM》當時在一些作者的80386機器上的運行速度還要快!在消費者硬件上嘗試進一步的優化技術以提高幀率將是很有趣的。

    邁向互動視頻遊戲的新範式 如今,視頻遊戲是由人類編程的。而GameNGen則是新範式的一部分概念驗證,在這一新範式中,遊戲被視為神經模型的權重,而不是代碼行。GameNGen展示了一種架構和模型權重,使神經模型能夠有效地在現有硬件上互動運行複雜的遊戲(如 DOOM)。雖然仍有許多重要問題,但我們希望這種範式能帶來顯著益處。例如,在這種新範式下,視頻遊戲的開發過程可能成本更低且更易於獲取,可以通過文字描述或示例圖像來開發和編輯遊戲。這個願景的一小部分,即對現有遊戲進行修改或創造新的行為,也許在短期內就能實現。例如,我們也許可以將一組幀轉換成一個新的可玩關卡,或根據示例圖像創建一個新角色,而無需編寫代碼。這種新範式的其他優點還包括對幀率和內存佔用的強有力保證。我們尚未在這些方向上進行實驗,並且還需要做更多的工作,但我們很高興嘗試!希望有朝一日,這一小步能為改善人們的視頻遊戲體驗做出重大貢獻,甚至更廣泛地說,改善人們與互動軟件系統的日常交互體驗。

    致謝

    我們衷心感謝 Eyal Segalis、Eyal Molad、Matan Kalman、Nataniel Ruiz、Amir Hertz、Matan Cohen、Yossi Matias、Yael Pritch、Danny Lumen、Valerie Nygaard、Theta Labs 和 Google Research 團隊以及我們的家人,感謝他們提供的深刻反饋、創意、建議和支持。

    貢獻

    • Dani Valevski: 開發了大部分代碼庫,調整了整個系統的參數和細節,增加了自動編碼器微調、代理訓練和蒸餾功能。
    • 亞尼夫·列維坦: 提出了項目、方法和架構,開發了初始實現,是實現和撰寫的主要貢獻者。
    • Moab Arar: 領導了自回歸穩定化與噪聲增強,進行了許多消融實驗,並創建了人類遊戲數據的數據集。
    • Shlomi Fruchter: 提出了項目、方法和架構。負責項目領導、使用 DOOM 的初始實現、主要手稿的撰寫、評估指標、隨機策略數據管道。

    如需聯繫,請發送郵件至 shlomif@google.comleviathan@google.com

    參考文獻

    • Akenine-Möller et al. (2018) Tomas Akenine-Möller, Eric Haines, and Naty Hoffman. Real-Time Rendering, Fourth Edition. A. K. Peters, Ltd., USA, 4th edition, 2018. ISBN 0134997832.
    • Alonso et al. (2024) Eloi Alonso, Adam Jelley, Vincent Micheli, Anssi Kanervisto, Amos Storkey, Tim Pearce, and François Fleuret. Diffusion for world modeling: Visual details matter in Atari, 2024.
    • Bar-Tal et al. (2024) Omer Bar-Tal, Hila Chefer, Omer Tov, Charles Herrmann, Roni Paiss, Shiran Zada, Ariel Ephrat, Junhwa Hur, Guanghui Liu, Amit Raj, Yuanzhen Li, Michael Rubinstein, Tomer Michaeli, Oliver Wang, Deqing Sun, Tali Dekel, and Inbar Mosseri. Lumiere: A space-time diffusion model for video generation, 2024. URL: [1](https://arxiv.org/abs/2401.12945).
    • Blattmann et al. (2023a) Andreas Blattmann, Tim Dockhorn, Sumith Kulal, Daniel Mendelevitch, Maciej Kilian, Dominik Lorenz, Yam Levi, Zion English, Vikram Voleti, Adam Letts, Varun Jampani, and Robin Rombach. Stable video diffusion: Scaling latent video diffusion models to large datasets, 2023a. URL: [2](https://arxiv.org/abs/2311.15127).
    • Blattmann et al. (2023b) Andreas Blattmann, Robin Rombach, Huan Ling, Tim Dockhorn, Seung Wook Kim, Sanja Fidler, and Karsten Kreis. Align your latents: High-resolution video synthesis with latent diffusion models, 2023b. URL: [3](https://arxiv.org/abs/2304.08818).
    • Bruce et al. (2024) Jake Bruce, Michael Dennis, Ashley Edwards, Jack Parker-Holder, Yuge Shi, Edward Hughes, Matthew Lai, Aditi Mavalankar, Richie Steigerwald, Chris Apps, Yusuf Aytar, Sarah Bechtle, Feryal Behbahani, Stephanie Chan, Nicolas Heess, Lucy Gonzalez, Simon Osindero, Sherjil Ozair, Scott Reed, Jingwei Zhang, Konrad Zolna, Jeff Clune, Nando de Freitas, Satinder Singh, and Tim Rocktäschel. Genie: Generative interactive environments, 2024. URL: [5](https://arxiv.org/abs/2402.15391).
    • Girdhar et al. (2023) Rohit Girdhar, Mannat Singh, Andrew Brown, Quentin Duval, Samaneh Azadi, Sai Saketh Rambhatla, Akbar Shah, Xi Yin, Devi Parikh, and Ishan Misra. Emu video: Factorizing text-to-video generation by explicit image conditioning, 2023. URL: [6](https://arxiv.org/abs/2311.10709).
    • Gupta et al. (2023) Agrim Gupta, Lijun Yu, Kihyuk Sohn, Xiuye Gu, Meera Hahn, Li Fei-Fei, Irfan Essa, Lu Jiang, and José Lezama. Photorealistic video generation with diffusion models, 2023. URL: [7](https://arxiv.org/abs/2312.06662).
    • Ha & Schmidhuber (2018) David Ha and Jürgen Schmidhuber. World models, 2018.
    • Hafner et al. (2020) Danijar Hafner, Timothy Lillicrap, Jimmy Ba, and Mohammad Norouzi. Dream to control: Learning behaviors by latent imagination, 2020. URL: [8](https://arxiv.org/abs/1912.01603).
    • Ho et al. (2021) Jonathan Ho, Chitwan Saharia, William Chan, David J Fleet, Mohammad Norouzi, and Tim Salimans. Cascaded diffusion models for high fidelity image generation. arXiv preprint arXiv:2106.15282, 2021.
    • Ho et al. (2022) Jonathan Ho, William Chan, Chitwan Saharia, Jay Whang, Ruiqi Gao, Alexey A. Gritsenko, Diederik P. Kingma, Ben Poole, Mohammad Norouzi, David J. Fleet, and Tim Salimans. Imagen video: High definition video generation with diffusion models. ArXiv, abs/2210.02303, 2022. URL: [10](https://api.semanticscholar.org/CorpusID:252715883).
    • Kim et al. (2020) Seung Wook Kim, Yuhao Zhou, Jonah Philion, Antonio Torralba, and Sanja Fidler. Learning to Simulate Dynamic Environments with GameGAN. In IEEE Conference on Computer Vision and Pattern Recognition (CVPR), Jun. 2020.
    • Kingma & Welling (2014) Diederik P. Kingma and Max Welling. Auto-Encoding Variational Bayes. In 2nd International Conference on Learning Representations, ICLR 2014, Banff, AB, Canada, April 14-16, 2014, Conference Track Proceedings, 2014.
    • Menapace et al. (2021) Willi Menapace, Stéphane Lathuilière, Sergey Tulyakov, Aliaksandr Siarohin, and Elisa Ricci. Playable video generation, 2021. URL: [12](https://arxiv.org/abs/2101.12195).
    • Menapace et al. (2024) Willi Menapace, Aliaksandr Siarohin, Stéphane Lathuilière, Panos Achlioptas, Vladislav Golyanik, Sergey Tulyakov, and Elisa Ricci. Promptable game models: Text-guided game simulation via masked diffusion models. ACM Transactions on Graphics, 43(2):1–16, January 2024. doi: [10.1145/3635705](http://dx.doi.org/10.1145/3635705).
    • Mildenhall et al. (2020) Ben Mildenhall, Pratul P. Srinivasan, Matthew Tancik, Jonathan T. Barron, Ravi Ramamoorthi, and Ren Ng. Nerf: Representing scenes as neural radiance fields for view synthesis. In ECCV, 2020.
    • Mnih et al. (2015) Volodymyr Mnih, Koray Kavukcuoglu, David Silver, Andrei A. Rusu, Joel Veness, Marc G. Bellemare, Alex Graves, Martin A. Riedmiller, Andreas Kirkeby Fidjeland, Georg Ostrovski, Stig Petersen, Charlie Beattie, Amir Sadik, Ioannis Antonoglou, Helen King, Dharshan Kumaran, Daan Wierstra, Shane Legg, and Demis Hassabis. Human-level control through deep reinforcement learning. Nature, 518:529–533, 2015. URL: [13](https://api.semanticscholar.org/CorpusID:205242740).
    • Podell et al. (2023) Dustin Podell, Zion English, Kyle Lacey, Andreas Blattmann, Tim Dockhorn, Jonas Müller, Joe Penna, and Robin Rombach. Sdxl: Improving latent diffusion models for high-resolution image synthesis. arXiv preprint arXiv:2307.01952, 2023.
    • Raffin et al. (2021) Antonin Raffin, Ashley Hill, Adam Gleave, Anssi Kanervisto, Maximilian Ernestus, and Noah Dormann. Stable-baselines3: Reliable reinforcement learning implementations. Journal of Machine Learning Research, 22(268):1–8, 2021. URL: [15](http://jmlr.org/papers/v22/20-1364.html).
    • Ramesh et al. (2022) Aditya Ramesh, Prafulla Dhariwal, Alex Nichol, Casey Chu, and Mark Chen. Hierarchical text-conditional image generation with clip latents. arXiv preprint arXiv:2204.06125, 2022.
    • Rombach et al. (2022) Robin Rombach, Andreas Blattmann, Dominik Lorenz, Patrick Esser, and Björn Ommer. High-resolution image synthesis with latent diffusion models. In Proceedings of the IEEE/CVF conference on computer vision and pattern recognition, pp. 10684–10695, 2022.
    • Saharia et al. (2022) Chitwan Saharia, William Chan, Saurabh Saxena, Lala Li, Jay Whang, Emily L Denton, Kamyar Ghasemipour, Raphael Gontijo Lopes, Burcu Karagol Ayan, Tim Salimans, et al. Photorealistic text-to-image diffusion models with deep language understanding. Advances in Neural Information Processing Systems, 35:36479–36494, 2022.
    • Salimans & Ho (2022a) Tim Salimans and Jonathan Ho. Progressive distillation for fast sampling of diffusion models. In The Tenth International Conference on Learning Representations, ICLR 2022, Virtual Event, April 25-29, 2022. OpenReview.net, 2022a. URL: [16](https://openreview.net/forum?id=TIdIXIpzhoI).
    • Schulman et al. (2017) John Schulman, Filip Wolski, Prafulla Dhariwal, Alec Radford, and Oleg Klimov. Proximal policy optimization algorithms. CoRR, abs/1707.06347, 2017. URL: [18](http://arxiv.org/abs/1707.06347).
    • Shazeer & Stern (2018) Noam Shazeer and Mitchell Stern. Adafactor: Adaptive learning rates with sublinear memory cost. CoRR, abs/1804.04235, 2018. URL: [19](http://arxiv.org/abs/1804.04235).
    • Unterthiner et al. (2019) Thomas Unterthiner, Sjoerd van Steenkiste, Karol Kurach, Raphaël Marinier, Marcin Michalski, and Sylvain Gelly. FVD: A new metric for video generation. In Deep Generative Models for Highly Structured Data, ICLR 2019 Workshop, New Orleans, Louisiana, United States, May 6, 2019, 2019.
    • Wang et al. (2023) Zhengyi Wang, Cheng Lu, Yikai Wang, Fan Bao, Chongxuan Li, Hang Su, and Jun Zhu. Prolificdreamer: High-fidelity and diverse text-to-3d generation with variational score distillation. arXiv preprint arXiv:2305.16213, 2023.
    • Wydmuch et al. (2019) Marek Wydmuch, Michał Kempka, and Wojciech Jaśkowski. ViZDoom Competitions: Playing Doom from Pixels. IEEE Transactions on Games, 11(3):248–259, 2019. doi: [10.1109/TG.2018.2877047](http://dx.doi.org/10.1109/TG.2018.2877047).
    • Yang et al. (2023) Mengjiao Yang, Yilun Du, Kamyar Ghasemipour, Jonathan Tompson, Dale Schuurmans, and Pieter Abbeel. Learning interactive real-world simulators. arXiv preprint arXiv:2310.06114, 2023.
    • Yin et al. (2024) Tianwei Yin, Michaël Gharbi, Richard Zhang, Eli Shechtman, Frédo Durand, William T Freeman, and Taesung Park. One-step diffusion with distribution matching distillation. In CVPR, 2024.
    • Zhang et al. (2018) Richard Zhang, Phillip Isola, Alexei A. Efros, Eli Shechtman, and Oliver Wang. The unreasonable effectiveness of deep features as a perceptual metric. In CVPR, 2018.

    Appendix A Appendix

    A.1 Samples

    Figs. [8](https://arxiv.org/html/2408.14837v1#A1.F8), [9](https://arxiv.org/html/2408.14837v1#A1.F9), [10](https://arxiv.org/html/2408.14837v1#A1.F10), [11](https://arxiv.org/html/2408.14837v1#A1.F11) provide selected samples from GameNGen.

    Auto-regressive evaluation of the simulation model: Sample #1. Top row: Context frames. Middle row: Ground truth frames. Bottom row: Model predictions.