無(wú)限上頭!擴(kuò)散模型竟然也是實(shí)時(shí)游戲引擎!谷歌團(tuán)隊(duì)首推神經(jīng)模型驅(qū)動(dòng)的游戲引擎,馬斯克:特斯拉也做類(lèi)似的事!JimFan:數(shù)據(jù)是關(guān)鍵
原創(chuàng) 精選編輯 | 言征、伊風(fēng)
出品 | 51CTO技術(shù)棧(微信號(hào):blog51cto)
你沒(méi)有聽(tīng)錯(cuò)!
一提到游戲引擎,你肯定會(huì)聯(lián)想到虛幻5(不自主地再提一次《黑神話:悟空》),Unity,Cocos,但你會(huì)想到用來(lái)生成圖像的擴(kuò)散模型也被認(rèn)為是一種游戲引擎嗎?
圖片
昨晚,谷歌DeepMind發(fā)布了一款GameNGen的神經(jīng)模型,給出的生成效果,讓人們驚呼:世界模型要來(lái)了!
據(jù)介紹,GameNGen,是首個(gè)完全由神經(jīng)模型驅(qū)動(dòng)的游戲引擎,它能夠在長(zhǎng)軌跡中以高質(zhì)量實(shí)現(xiàn)與復(fù)雜環(huán)境的實(shí)時(shí)交互。
厲害之處在于,僅僅在單個(gè)TPU上,GameNGen就能以每秒超過(guò)20幀的速度對(duì)經(jīng)典游戲《毀滅戰(zhàn)士》(DOOM)進(jìn)行交互式模擬。畫(huà)面沉浸感十足!
下一幀預(yù)測(cè)實(shí)現(xiàn)了29.4的峰值信噪比(PSNR),與有損JPEG壓縮相當(dāng)。在區(qū)分游戲短片段與模擬短片段時(shí),人類(lèi)評(píng)分者的表現(xiàn)僅略?xún)?yōu)于隨機(jī)猜測(cè)。
馬斯克聽(tīng)說(shuō)后,也來(lái)迅速?lài)^,果斷表示支持:特斯拉也可以利用real world video來(lái)做類(lèi)似的事情。
圖片
一個(gè)名為“PRIMEX ”賬號(hào)生成所有帖子都是AI制作的,并由Gork提供支持。緊接著就回復(fù)道:
Tesla FSD已經(jīng)在現(xiàn)實(shí)世界的模擬中運(yùn)行,而且比Doom更準(zhǔn)確,幀率更高。
圖片
甚至有網(wǎng)友直接幫馬斯克的Grok出主意:Grok要是可以模擬暗黑破壞神并創(chuàng)造無(wú)限世界時(shí),這就很瘋狂了。
圖片
一、這款神經(jīng)模型驅(qū)動(dòng)的游戲引擎谷歌如何做到的?
來(lái)看看DeepMind團(tuán)隊(duì)是怎樣精心設(shè)計(jì)的。
首先是無(wú)法大規(guī)模進(jìn)行人類(lèi)數(shù)據(jù)收集的難題,這是他們遇到的第一個(gè)挑戰(zhàn)。最后他們訓(xùn)練了可以自動(dòng)打游戲的Agent(RL Agent),讓這個(gè)Agent去打游戲,并保存其訓(xùn)練過(guò)程中的動(dòng)作和觀察結(jié)果,這樣用來(lái)訓(xùn)練模型的數(shù)據(jù)解決了。
其次,如何保持前后幀之間的視覺(jué)穩(wěn)定性問(wèn)題?這一點(diǎn)就不得不提他們做了一個(gè)精心的挑選,他們沒(méi)有用最新的Stable Diffusion 版本,而是選擇v1.4,并進(jìn)行了技術(shù)處理,使其基于一系列之前的動(dòng)作和觀察結(jié)果(幀)進(jìn)行條件生成。
此外,為了減輕推理過(guò)程中的自回歸漂移,研究者還發(fā)現(xiàn)了一個(gè)有效的方法:在訓(xùn)練期間向編碼幀添加高斯噪聲,從而破壞上下文幀,可以讓網(wǎng)絡(luò)能夠糾正之前幀中采樣的信息,這對(duì)于長(zhǎng)時(shí)間保持視覺(jué)穩(wěn)定性至關(guān)重要。
最后,解決圖像偽影問(wèn)題。他們最后采用了潛在解碼器微調(diào)的方法。Stable Diffusion v1.4的預(yù)訓(xùn)練自編碼器將8x8像素塊壓縮為4個(gè)潛在通道,但在預(yù)測(cè)游戲幀時(shí)會(huì)產(chǎn)生明顯的偽影問(wèn)題,影響了小細(xì)節(jié),特別是底部欄的HUD問(wèn)題。
為此,研究團(tuán)隊(duì)使用與目標(biāo)幀像素計(jì)算得出的均方誤差(MSE)損失來(lái)訓(xùn)練潛在自編碼器的解碼器,這樣既利用了預(yù)訓(xùn)練知識(shí),同時(shí)也提高了圖像質(zhì)量。
概括來(lái)說(shuō),GameNGen訓(xùn)練比較簡(jiǎn)單,分為兩個(gè)步驟:(1)一個(gè)強(qiáng)化學(xué)習(xí)(RL)代理學(xué)習(xí)玩游戲,并記錄訓(xùn)練過(guò)程;(2)訓(xùn)練一個(gè)擴(kuò)散模型來(lái)生成下一幀,該模型基于過(guò)去幀序列和動(dòng)作進(jìn)行條件生成。條件增強(qiáng)功能可實(shí)現(xiàn)長(zhǎng)軌跡上的穩(wěn)定自回歸生成。
二、游戲圈內(nèi)人士看上頭了
一位圈內(nèi)人士看罷Demo后,認(rèn)為這個(gè)技術(shù)太厲害了,不管是在幀之間的“因”、“果”、“順序”方面都大大超出了預(yù)期,并盛贊了開(kāi)放模型的意義,甚至對(duì)于云壟斷的谷歌而言也不可或缺。
回到GameNGen,并認(rèn)為有兩處值得注意:
- 他們通過(guò)玩Doom毀滅戰(zhàn)士的Agent獲得了無(wú)限的訓(xùn)練數(shù)據(jù),這一點(diǎn)非常有意義;
- 他們?cè)谠磶刑砑恿烁咚乖肼暡ⅹ?jiǎng)勵(lì)A(yù)gent“糾正”連續(xù)幀,并說(shuō)這對(duì)于從模型中獲得長(zhǎng)期穩(wěn)定的“渲染”至關(guān)重要。這一點(diǎn)很有趣——模型需要進(jìn)行錯(cuò)誤修正/引導(dǎo)它以保持穩(wěn)定。
當(dāng)然,他也提到了對(duì)于大模型作為渲染引擎的難題:
“這個(gè)模型是否容易進(jìn)行微調(diào)以實(shí)現(xiàn)“照片真實(shí)感”/光線追蹤重塑——我非常好奇”,畢竟懂得如何微調(diào)大模型的人很少,如果視為某種Doom的基礎(chǔ)模型,從這個(gè)模型中獲得“更漂亮”的渲染得有多難。
當(dāng)然,也有游戲開(kāi)發(fā)人員,這個(gè)新模型的演示存在不少問(wèn)題,比如模型雖然能夠記住玩家轉(zhuǎn)身后灰色的墻,這當(dāng)然很棒,但墻完全改變了位置和方向就有點(diǎn)不合理了。有人反駁:這也會(huì)現(xiàn)在盜夢(mèng)空間題材類(lèi)的游戲中,因?yàn)橥婕业娜蝿?wù)就是強(qiáng)迫模型生成它,同時(shí)又不會(huì)在游戲的“夢(mèng)境”中Over,并表示“我會(huì)玩這個(gè)游戲玩到零血”。
三、Jim Fan的評(píng)價(jià):什么是真正有用的神經(jīng)模型?數(shù)據(jù)是關(guān)鍵
圖片
“黑客們喜歡在各種稀奇古怪的地方運(yùn)行《DOOM》已經(jīng)成為一種傳統(tǒng):恒溫器、“智能”烤面包機(jī),甚至自動(dòng)取款機(jī)。現(xiàn)在,他們僅用擴(kuò)散模型就能運(yùn)行《DOOM》。每一個(gè)像素都是生成的。之前我說(shuō)過(guò)“Sora是一個(gè)數(shù)據(jù)驅(qū)動(dòng)的物理引擎”,其實(shí)不完全對(duì),因?yàn)镾ora無(wú)法與之互動(dòng)。你只能設(shè)置初始條件(一個(gè)文本或初始幀),然后被動(dòng)地觀看模擬過(guò)程。
上圖:網(wǎng)友在游戲《我的世界》中運(yùn)用《DOOM》
GameNGen 是一個(gè)真正的神經(jīng)世界模型。它將過(guò)去的幀(狀態(tài))和用戶(hù)的動(dòng)作(鍵盤(pán)/鼠標(biāo))作為輸入,并輸出下一幀。它在《DOOM》中的表現(xiàn)是我見(jiàn)過(guò)的最令人印象深刻的。
然而,這也帶來(lái)了重大缺陷。讓我們深入探討一下:
1. GameNGen 在單個(gè)游戲上極度過(guò)擬合,它通過(guò)訓(xùn)練 9 億幀(?。。?shí)現(xiàn)了這一點(diǎn)。這個(gè)數(shù)字極其龐大,幾乎是訓(xùn)練 Stable Diffusion v1 數(shù)據(jù)集的 40%。在這種情況下,它很可能記住了《DOOM》在各種場(chǎng)景下的渲染方式。畢竟,《DOOM》本身的內(nèi)容并不多。
2. GameNGen 更像是一個(gè)被吹捧的 NeRF,而不是一個(gè)視頻生成模型。NeRF 利用從不同視角拍攝的場(chǎng)景圖像,重建該場(chǎng)景的 3D 表示。NeRF 的基礎(chǔ)版本沒(méi)有泛化能力,也就是說(shuō),它無(wú)法“想象”出新場(chǎng)景。GameNGen 不像Sora:設(shè)計(jì)上,它無(wú)法合成新游戲或交互機(jī)制。
3. 這篇論文的難點(diǎn)不在于擴(kuò)散模型,而在于數(shù)據(jù)集。作者首先訓(xùn)練了強(qiáng)化學(xué)習(xí)(RL)代理在不同技能水平下玩游戲,并收集了 9 億對(duì)(幀,動(dòng)作)用于訓(xùn)練。大多數(shù)在線視頻數(shù)據(jù)集并不包含動(dòng)作信息,這意味著這種方法無(wú)法外推。數(shù)據(jù)始終是動(dòng)作驅(qū)動(dòng)的世界模型的瓶頸。
4. 我認(rèn)為游戲世界模型有兩個(gè)實(shí)際用例:(1)編寫(xiě)提示詞來(lái)創(chuàng)建可玩的世界,這些世界通常需要游戲工作室多年才能制作完成;(2)使用世界模型來(lái)訓(xùn)練更好的具身 AI。兩個(gè)用例都無(wú)法實(shí)現(xiàn)。用例(2)不可行,因?yàn)橛?GameNGen 訓(xùn)練代理并沒(méi)有比直接使用《DOOM》模擬器更有優(yōu)勢(shì)。如果神經(jīng)世界模型可以模擬傳統(tǒng)手工制作圖形引擎無(wú)法實(shí)現(xiàn)的場(chǎng)景,那會(huì)更有趣。
什么是真正有用的神經(jīng)世界模型? @elonmusk 在回復(fù)中說(shuō)過(guò)“特斯拉可以用真實(shí)世界視頻做類(lèi)似的事情”。這并不令人意外:Autopilot 團(tuán)隊(duì)可能擁有數(shù)萬(wàn)億對(duì)(攝像頭畫(huà)面,方向盤(pán)動(dòng)作)。再一次,數(shù)據(jù)是關(guān)鍵!有如此豐富的真實(shí)世界數(shù)據(jù),完全有可能學(xué)習(xí)一個(gè)涵蓋各種邊緣案例的通用駕駛模擬器,并用它來(lái)部署和驗(yàn)證新的 FSD 構(gòu)建,而不需要實(shí)際的汽車(chē)。
GameNGen 仍然是一個(gè)非常出色的概念驗(yàn)證。至少我們現(xiàn)在知道,9 億幀是將高分辨率《DOOM》壓縮到神經(jīng)網(wǎng)絡(luò)中的上限?!?/p>
可以看出,GameNGen 讓我們看來(lái)了一個(gè)新的游戲生成方式,數(shù)據(jù)不夠就讓AI智能體幫產(chǎn)生數(shù)據(jù),效果不夠就挑選合適的方案來(lái)提升?!笆裁词钦嬲杏玫纳窠?jīng)世界模型”,這一點(diǎn)很有提醒意義。也許很快我們就能看到以擴(kuò)散模型為游戲引擎的爆款游戲問(wèn)世了!
參考鏈接:https://arxiv.org/abs/2408.14837