专栏名称: 计算机视觉深度学习和自动驾驶
讨论计算机视觉、深度学习和自动驾驶的技术发展和挑战
目录
相关文章推荐
三联生活周刊  ·  为什么很难有百听不厌的神曲? ·  昨天  
新周刊  ·  麦当劳的点餐机,每一步都在算计你 ·  昨天  
新周刊  ·  减肥健康食谱,跟猪猪学 ·  2 天前  
新周刊  ·  25年了,我只想看他们的情欲戏 ·  2 天前  
新周刊  ·  广西公文包:喝时甜甜的,喝完癫癫的 ·  2 天前  
51好读  ›  专栏  ›  计算机视觉深度学习和自动驾驶

扩散模型就是实时的游戏引擎

计算机视觉深度学习和自动驾驶  · 公众号  ·  · 2024-09-02 00:08

正文

24年8月来自谷歌和以色列特拉维夫大学的论文“Diffusion Models Are Real-time Game Engines”。

GameNGen,是完全由神经模型驱动的游戏引擎,在长轨迹上高质量地与复杂环境进行实时交互。GameNGen 可以在单个 TPU 上以每秒超过 20 帧的速度交互式模拟经典游戏 DOOM,如图所示。


下一帧预测实现了 29.4 的 PSNR,与有损 JPEG 压缩相当。 人类评分者在区分游戏短片和仿真合成片段方面,仅比随机机会略胜一筹。 GameNGen 分两个阶段进行训练: (1) RL 智体学习玩游戏并记录训练过程,(2) 训练扩散模型,根据过去帧和动作的序列生成下一帧。 条件增强可在长轨迹上实现稳定的自回归生成。 如图是GameNGen和世界模型、GameGAN的比较:






电脑游戏是手工制作的软件系统,以以下游戏循环为中心: (1) 收集用户输入,(2) 更新游戏状态,(3) 将其渲染到屏幕像素。 这个以高帧率运行的游戏循环,为玩家创造了一个交互式虚拟世界的幻觉。 这种游戏循环通常在标准计算机上运行,虽然已经有许多尝试在定制硬件上运行游戏(仅举几个例子,例如,标志性游戏 DOOM 已在烤面包机和微波炉、跑步机、相机、iPod 和 Minecraft 游戏等厨房电器上运行),但在所有这些情况下,硬件仍然按原样模拟手动编写的游戏软件。 此外,虽然存在截然不同的游戏引擎,但游戏状态更新和渲染逻辑都由一组手动规则组成,这些规则是手动编程或配置的。

近年来,生成模型在以多模态输入(例如文本或图像)为条件生成图像和视频方面取得了重大进展。在这波浪潮的最前沿, 扩散模型 成为媒体(即非语言)生成的事实标准,其中包括 Dall-E(Ramesh,2022)、SD(Rombach,2022)和 Sora(Brooks,2024)等工作。乍一看,模拟视频游戏的交互式世界似乎与视频生成相似。然而,交互式世界模拟不仅仅是非常快速的视频生成。对仅在整个生成过程中可用的输入动作流进行条件化的要求,打破了现有扩散模型架构的一些假设。值得注意的是,它需要自回归地生成帧,这往往是不稳定的并导致采样发散。

几项重要的研究(Ha & Schmidhuber,2018;Kim,2020;Bruce,2024)使用神经模型模拟交互式视频游戏。然而,这些方法中的大多数在模拟游戏的复杂性、模拟速度、长期稳定性或视觉质量方面都受到限制。因此,很自然地会问一个问题: 实时运行的神经模型能否高质量地模拟复杂的游戏?

相关工作

交互式 3D 模拟 。模拟 2D 和 3D 环境的视觉和物理过程并允许对其进行交互式探索,是计算机图形学中一个得到广泛发展的领域 (Akenine-Mller et al., 2018)。 游戏引擎 (例如 Unreal 和 Unity)是处理场景几何表示并响应用户交互渲染图像流的软件。游戏引擎负责跟踪所有世界状态,例如玩家位置和移动、物体、角色动画和光照。它还跟踪游戏逻辑,例如通过完成游戏目标获得的积分。电影和电视制作使用光线追踪的变型方法(Shirley & Morley, 2008),这对于实时应用来说太慢且计算密集型。相比之下,游戏引擎必须保持非常高的帧速率(通常为 30-60 FPS),因此依赖于高度优化的多边形光栅化,通常由 GPU 加速。阴影、粒子和光照等物理效果通常使用高效的启发式方法来实现,而不是物理上精确的模拟。

神经 3D 模拟 。近年来,用于重建 3D 表示的神经方法取得了重大进展。NeRF(Mildenhall,2020)使用深度神经网络参数化辐射场,该网络针对给定场景进行专门优化,该网络来自从各种相机姿势拍摄的一组图像。经过训练后,可以使用体渲染方法对场景的新视角进行采样。高斯slatting(Kerbl,2023)方法建立在 NeRF 的基础上,但使用 3D 高斯和经过调整的光栅化方法来表示场景,从而缩短了训练和渲染时间。虽然这些方法展示了令人印象深刻的重建结果和实时交互性,但它们通常仅限于静态场景。

视频扩散模型 。扩散模型在文本-到-图像生成方面取得了最先进的成果(Saharia,2022;Rombach,2022;Ramesh,2022;Podell,2023),这项工作也已应用于文本-到-视频生成任务(Ho,2022;Blattmann,2023b;a;Gupta,2023;Girdhar,2023;Bar-Tal,2024)。尽管在真实性、文本依附性和时间一致性方面取得了令人瞩目的进步,但视频扩散模型对于实时应用来说仍然太慢了。

游戏模拟和世界模型 。有几项研究尝试训练带有动作输入的游戏模拟模型。(Yang 2023) 构建了一个包含现实世界和模拟视频的多样化数据集,并训练了一个扩散模型,根据前一个视频片段和动作的文本描述来预测连续视频。(Menapace 2021) 和 (Bruce 2024) 专注于从视频中无监督地学习动作。(Menapace 2024) 将文本提示转换为游戏状态,然后使用 NeRF 将其转换为 3D 表示。(Ha & Schmidhuber 2018) 训练变分自动编码器 (Kingma & Welling,2014) 将游戏帧编码为潜向量,然后使用 RNN 模拟 VizDoom 游戏环境,根据随机策略(即随机选择动作)对随机部署进行训练。然后通过“幻觉”环境中玩游戏来学习控制器策略。(Hafner 2020) 证明,RL 智体可以完全根据潜空间中学习的世界模型生成的情节进行训练。(Kim 2020) 使用 LSTM 架构对世界状态进行建模,并结合卷积解码器生成输出帧,并在对抗性目标下进行联合训练。虽然这种方法似乎可以为像 PacMan 这样的简单游戏产生合理的结果,但它难以模拟 VizDoom 的复杂环境并产生模糊的样本。(Alonso 2024)训练一个扩散世界模型,根据观察历史预测下一个观察结果,并在 Atari 游戏上迭代训练世界模型和 RL 模型。


本文专注于可交互式玩游戏的实时模拟,并展示了对长距离轨迹的鲁棒性。利用 RL 智体探索游戏环境并创建观察和交互的展示,以训练交互式游戏模型。另一项工作探索学习环境的预测模型并将其用于训练 RL 智体。

交互环境 E 由潜状态空间 S、潜空间的部分投影空间 O、部分投影函数 V (S → O)、一组动作 A 以及转移概率函数 p(s|a,s′) 组成。给定一个输入交互环境 E 和一个初始状态 s0 ∈ S, 交互式世界模拟 是一个模拟分布函数 q(on|o

以下用教师强制目标训练生成模型。给定一个模拟分布函数 q,环境 E 可以通过自回归采样观察来模拟。

GameNGen是一种生成式扩散模型,它学习模拟游戏。第一阶段室通过智体游戏收集数据,第二阶段对生成式模型的训练。为了收集此模型的训练数据,在教师强制目标下,首先训练一个单独的模型来与环境交互。这两个模型(智体和生成模型)按顺序进行训练。智体在训练期间的全部动作和观察语料库 Tagent 都会得到维护,并在第二阶段成为生成模型的训练数据集。参见下图。


要训练一个生成扩散模型,该模型以智体在上一阶段收集的轨迹 Tagent(动作和观察)为条件。 重新利用预训练的文本-到-图像扩散模型 Stable Diffusion v1.4(Rombach,2022)。 根据轨迹 T ∼ Tagent 来调节模型 fθ,即根据一系列先前的动作 a

具体来说,为了以动作为条件,只需从每个动作(例如一个特定按键)到一单token中学习一个嵌入 Aemb,并将文本中的交叉注意替换到这个编码的动作序列中。为了以观察(即先前的帧)为条件,用自动编码器 φ 将它们编码到潜空间中,并将它们在潜通道维度中连接到噪声潜空间。







请到「今天看啥」查看全文


推荐文章
三联生活周刊  ·  为什么很难有百听不厌的神曲?
昨天
新周刊  ·  减肥健康食谱,跟猪猪学
2 天前
新周刊  ·  25年了,我只想看他们的情欲戏
2 天前
网易梦幻西游手游  ·  炼妖炉 | 12红灵符忘川参上!
7 年前
互联网分析沙龙  ·  如何克服阶段性迷茫?
7 年前