GAN作為一種深度學(xué)習(xí)訓(xùn)練的“左右互博術(shù)”在造假界曾“聲名鵲起”。
前有“換臉術(shù)”,后有“假新聞”,技術(shù)作惡論也以GAN為源頭甚囂塵上。但事情總有兩面性,例如DeepMind曾經(jīng)改造了“史上最強(qiáng)”的BigGAN,讓新的算法去做圖像分類,刷新了ImageNet無(wú)監(jiān)督表征學(xué)習(xí)的紀(jì)錄。
而近日,英偉達(dá)研究院創(chuàng)建的強(qiáng)大新AI模型GameGAN也讓四十年前的《吃豆人》游戲再度重生。
用神經(jīng)網(wǎng)絡(luò)支撐的GAN技術(shù)創(chuàng)造出逼真的游戲,英偉達(dá)此項(xiàng)工作屬全球首個(gè)。
進(jìn)一步,GameGAN經(jīng)過(guò)5萬(wàn)個(gè)回合的游戲訓(xùn)練,能夠在無(wú)需基礎(chǔ)游戲引擎的情況下生成完整版的《吃豆人》游戲。
據(jù)悉,當(dāng)玩家試玩GAN生成得游戲時(shí),GameGAN會(huì)對(duì)游戲玩家的行為做出響應(yīng),從而實(shí)時(shí)生成新的游戲環(huán)境框架。在使用游戲不同等級(jí)或版本的游戲劇本進(jìn)行訓(xùn)練后,GameGAN甚至可以生成從未有過(guò)的游戲關(guān)卡。
一、首個(gè)模仿計(jì)算機(jī)游戲引擎的神經(jīng)網(wǎng)絡(luò)模型
GameGAN是首個(gè)利用生成式對(duì)抗網(wǎng)絡(luò)(GAN)模仿計(jì)算機(jī)游戲引擎的神經(jīng)網(wǎng)絡(luò)模型。其背后主要的模型思想是GAN:即由兩個(gè)相互對(duì)抗的神經(jīng)網(wǎng)絡(luò)組成,一個(gè)生成器(generator)和一個(gè)鑒別器(discriminator),生成器和鑒別器相互對(duì)抗,直至生成能夠以假亂真的內(nèi)容。
與現(xiàn)有工作不同的是,英偉達(dá)設(shè)計(jì)得GameGAN,里面包含一個(gè)內(nèi)存模塊,該模塊可以構(gòu)建環(huán)境的內(nèi)部地圖,允許智能體以高度的視覺(jué)一致性返回到以前訪問(wèn)過(guò)的位置。GameGAN還能夠?qū)D像中的靜態(tài)和動(dòng)態(tài)組件分開(kāi),使模型的行為更易于解釋,并和需要對(duì)動(dòng)態(tài)元素進(jìn)行顯式推理的下游任務(wù)建立相關(guān)性。
論文地址:https://cdn.arstechnica.net/wp-content/uploads/2020/05/Nvidia_GameGAN_Research.pdf
GameGAN由Fidler、Kim、NVIDIA研究員Jonah Philion、多倫多大學(xué)(University of Toronto)學(xué)生Yuyu Zhou和麻省理工學(xué)院(MIT)教授Antonio Torralba共同創(chuàng)作,相關(guān)研究論文被CVPR 2020收錄,并將于6月份在會(huì)議上介紹。
整個(gè)模型由三個(gè)主要模塊組成,包含動(dòng)態(tài)引擎、渲染引擎和內(nèi)存。其中,動(dòng)態(tài)引擎將行為、記憶、圖像作為輸入,并及時(shí)更新時(shí)間T的隱藏狀態(tài);內(nèi)存模塊負(fù)責(zé)整體地寫入和讀取;渲染引擎負(fù)責(zé)解碼圖像,可以學(xué)習(xí)解開(kāi)圖像中的靜態(tài)和動(dòng)態(tài)分量。
在問(wèn)題的整體考慮上,英偉達(dá)的研究員將其定義為2D圖像生成問(wèn)題,給定觀察到得圖像幀序列和智能體采取的相應(yīng)操作,然后進(jìn)行圖像模擬創(chuàng)造,效果類似于在真實(shí)動(dòng)態(tài)環(huán)境中渲染。
在具體的訓(xùn)練過(guò)程中,GameGan會(huì)觀察場(chǎng)景和玩家的鍵盤動(dòng)作從而進(jìn)行預(yù)測(cè),也就是直接從圖像和動(dòng)作場(chǎng)景中學(xué)習(xí),不需要訪問(wèn)底層游戲邏輯或引擎。
對(duì)于訓(xùn)練的細(xì)節(jié),包括:吃豆人的速度、移動(dòng)能力;四個(gè)鬼魂的運(yùn)動(dòng)方式;吃豆人吃下大力丸會(huì)怎樣;當(dāng)鬼魂碰到吃豆人時(shí),會(huì)發(fā)生什么。
對(duì)于數(shù)據(jù),英偉達(dá)團(tuán)隊(duì)在四天內(nèi)為GameGAN提供了50,000集(共幾百萬(wàn)幀)的《吃豆人》劇本。如此規(guī)模的數(shù)據(jù)集除了英偉達(dá)團(tuán)隊(duì),吃豆人的游戲開(kāi)發(fā)商萬(wàn)代南夢(mèng)宮也出了一份力。
對(duì)于硬件,英偉達(dá)的AI研究團(tuán)隊(duì)在50,000小時(shí)的“ 吃豆人”游戲中訓(xùn)練了四臺(tái)計(jì)算機(jī)場(chǎng),每臺(tái)計(jì)算機(jī)均配備了Quadro GV100工作站級(jí)GPU。
對(duì)于測(cè)試實(shí)驗(yàn),英偉達(dá)研究人員分別在《吃豆人》和VizDoom環(huán)境中對(duì)GameGAN等四種模型進(jìn)行定量和定性的綜合評(píng)估。
實(shí)驗(yàn)結(jié)果如上圖所示:Action-LSTM生成得幀缺少豆豆等細(xì)節(jié),World Model在保持時(shí)間一致性方面存在困難,有時(shí)會(huì)出現(xiàn)嚴(yán)重的不連續(xù),而GameGAN可以生成一致性模擬。
總的來(lái)說(shuō),經(jīng)過(guò)訓(xùn)練后的GameGAN模型能夠生成靜態(tài)環(huán)境元素,例如統(tǒng)一的迷宮形狀、豆子和強(qiáng)化道具,以及作為敵人的幽靈和吃豆人本身等移動(dòng)元素。
該模型也能夠?qū)W習(xí)簡(jiǎn)單和復(fù)雜的關(guān)鍵性游戲規(guī)則。例如,和原版游戲一樣,吃豆人無(wú)法穿過(guò)迷宮墻。他需要一邊四處移動(dòng),一邊吃豆。當(dāng)他吃到強(qiáng)化道具后,鬼魂會(huì)變成藍(lán)色并四處逃竄。當(dāng)吃豆人從一側(cè)離開(kāi)迷宮時(shí),他會(huì)被傳送到迷宮的另一側(cè)。一旦吃豆人碰到鬼魂,屏幕就會(huì)閃爍并結(jié)束游戲。
二、不僅僅適用于游戲
自主機(jī)器人通常也需要在模擬器中接受訓(xùn)練,模擬器中的AI可以在與現(xiàn)實(shí)世界中的目標(biāo)進(jìn)行交互之前,學(xué)習(xí)環(huán)境規(guī)則。對(duì)于開(kāi)發(fā)人員而言,創(chuàng)建模擬器是一個(gè)相當(dāng)耗時(shí)的過(guò)程。開(kāi)發(fā)人員必須編寫有關(guān)如何與目標(biāo)互動(dòng),以及及光在環(huán)境中如何表現(xiàn)等規(guī)則。
模擬器被廣泛用于開(kāi)發(fā)各種自主機(jī)器,例如學(xué)習(xí)如何抓握和移動(dòng)物體的倉(cāng)庫(kù)機(jī)器人、或是需要在人行道上運(yùn)輸食物或藥品的物流機(jī)器人等。
而GameGAN地出現(xiàn),為其帶來(lái)了一種可能性 —— 在未來(lái)的某一天,神經(jīng)網(wǎng)絡(luò)訓(xùn)練將能取代此類任務(wù)中編寫模擬器的工作。
比如你在汽車上安裝一個(gè)攝像頭。該攝像頭可以記錄道路環(huán)境或駕駛員的行為,例如轉(zhuǎn)動(dòng)方向盤或踩下油門等。這些數(shù)據(jù)可被用于訓(xùn)練一個(gè)深度學(xué)習(xí)模型,其能夠預(yù)測(cè)在現(xiàn)實(shí)世界中,人類駕駛員(或自動(dòng)駕駛汽車)在做出猛踩剎車等動(dòng)作時(shí)會(huì)發(fā)生什么后果。 雷鋒網(wǎng)雷鋒網(wǎng)(公眾號(hào):雷鋒網(wǎng))雷鋒網(wǎng)
NVIDIA多倫多研究實(shí)驗(yàn)室主任Sanja Fidler表示:“我們最終將訓(xùn)練出一個(gè)AI,其只需通過(guò)觀看視頻和觀察目標(biāo)在環(huán)境中所采取的行動(dòng),就能模仿駕駛規(guī)則或物理定律。GameGAN是朝這一目標(biāo)所邁出的第一步。”