Auto Byte

专注未来出行及智能汽车科技

微信扫一扫获取更多资讯

Science AI

关注人工智能与其他前沿技术、基础学科的交叉研究与融合发展

微信扫一扫获取更多资讯

​机器之心编辑部机器之心报道

有人从英伟达借了台DGX A100,让神经网络自己造了个GTA5自己玩

每个像素都是由神经网络生成的。

侠盗猎车手 5(GTA5)是一款经典的动作冒险游戏,深受玩家欢迎,多个研究团队曾为它推出补丁,以使其具有更加逼真的游戏质感。

在第三方不断为 GTA5 推出补丁的同时,许多玩家高呼:「GTA6 什么时候能出啊」。我们无法揣摩 R 星的思路,GTA6 目前尚未发布,不过有一款 AI 独立开发的「GTA5」,你可以试试。

它的名字叫做「GAN Theft Auto」,和真正的 Grand Theft Auto 略有差别。

玩家们在玩 GTA5 的时候,干得最多的事情就是在大地图上开车兜风,先来看下效果:

虽然...... 画质是糊了一些,但好在还是能玩的!

这个由 AI 自己开发的「GAN Theft Auto」是开发者使用 GameGAN 制作的。GameGAN 不同于以往用 AI 做游戏的例子,之前 DeepMind、OpenAI 等是在现有游戏框架中创造被用来「玩游戏」的对象,相当于是智能生成一个游戏对手。而 GameGAN 则被用来「创作」游戏,是对现有游戏代码的取代。它在训练过程中摄入大量游戏剧本和键盘动作,通过观察场景和玩家的操作动作,预测下一帧游戏画面,而不访问底层游戏逻辑或引擎。

Kinsley 表示:「游戏中每个像素都是在我玩的时候由神经网络生成的。神经网络就是整个游戏,其中不包含我们或 [RAGE] 引擎编写的规则。」

当然,训练 GAN 是一项非常消耗 GPU 的任务,英伟达借了 Kinsley 一台 DGX A100。DGX A100 售价 19.9 万美元,有 8 块基于安培架构的 A100 GPU,此外还有两颗 64 核 AMD 服务器 CPU。

有了这些算力做基础以后,Kinsley 和 Kukieła 同时运行 12 个 AI 模型。训练的数据集包括三部分:GTA V、Vroom、Cartpole。

他们创建了一个 GTA5 模组,通过一个 Python 脚本来收集数据。游戏模组接受来自 Python 脚本的转向命令、限制速度和其他选项设置,比如天气、交通等。Python 脚本分析出当前汽车位置和最近的道路节点,通过不同的路径尽可能覆盖所有可能的动作和汽车位置。

数据收集过程演示。

此外,他们基于 OpenmAI Gym 的 Box2D CarRacing 环境创建了全景视图数据集 Vroom。汽车被「指示」沿着道路行驶,还包括道路、转弯和 U 形道路的偏移变化以涵盖所有可能的情况:

两人还开发了一个超采样 AI 来清理神经网络的输出结果,让它看起来不那么像素风格。

正如视频中展示的那样,当汽车移动时,它下面的阴影和太阳在后挡风玻璃上的反射也会随之移动,远处的山也越来越近了。

美中不足的地方还有一些,神经网络无法完美复制 GTA5 的每个方面,还有一次 Kinsley 看到迎面而来的警车正要撞上他的车,随后这辆警车一分为二,画面有些离谱。

Kinsley 表示,这项工作仍在不断优化中,除了原始项目之外,他们还提供了一系列改进和修复:
  • 能够使用最新的 PyTorch 版本,目前是 1.8.1;

  • 使用非方形矩阵图像(示例中是 16:8);

  • 更大的生成器和鉴别器模型;

  • 能够使用 2 个以上的生成器;

  • 推理脚本(在 GameGAN 存储库中不存在);

  • 能够在推理中使用上采样模型;

  • 训练期间实时显示生成器输出。

就目前的效果来看,像素风问题已经大为改善了:


如果你也有实力试一试,可以参考这个项目地址:https://github.com/sentdex/GANTheftAuto/

关于 GameGAN

GameGAN 是一个利用生成对抗网络(Generative Adversarial Network,GAN)模仿计算机游戏引擎的神经网络模型,它由一个生成器和一个鉴别器组成,生成器尝试输入数据,而鉴别器将其与原版游戏数据源进行比较。如果它们不匹配,则生成的数据将被拒绝,之后生成器将调整其工作并重新提交新数据。这两个神经网络会相互竞争,并学习建立出全新内容。

GameGAN 论文地址:https://arxiv.org/pdf/2005.12126.pdf

去年,GameGAN 吸引了人们的广泛关注,其在对游戏规则一无所知的前提下,在观看了总计几百万帧、50000 集的《吃豆人》剧本后,自行领悟了游戏规则,进而可以设计出新的游戏关卡。

GameGAN 的论文在去年被计算机视觉顶会 CVPR 2020 收录。或许未来有一天,我们在游戏中打到的关卡,都是由 AI 随机生成的。

参考链接:
https://www.engadget.com/gan-theft-auto-192100564.html?src=rss_b2c
https://www.oschina.net/news/115995/gamegan-re-creates-pac-man-in-4-days
理论神经网络GTA5
相关数据
计算机视觉技术

计算机视觉(CV)是指机器感知环境的能力。这一技术类别中的经典任务有图像形成、图像处理、图像提取和图像的三维推理。目标识别和面部识别也是很重要的研究领域。

神经网络技术

(人工)神经网络是一种起源于 20 世纪 50 年代的监督式机器学习模型,那时候研究者构想了「感知器(perceptron)」的想法。这一领域的研究者通常被称为「联结主义者(Connectionist)」,因为这种模型模拟了人脑的功能。神经网络模型通常是通过反向传播算法应用梯度下降训练的。目前神经网络有两大主要类型,它们都是前馈神经网络:卷积神经网络(CNN)和循环神经网络(RNN),其中 RNN 又包含长短期记忆(LSTM)、门控循环单元(GRU)等等。深度学习是一种主要应用于神经网络帮助其取得更好结果的技术。尽管神经网络主要用于监督学习,但也有一些为无监督学习设计的变体,比如自动编码器和生成对抗网络(GAN)。

生成对抗网络技术

生成对抗网络是一种无监督学习方法,是一种通过用对抗网络来训练生成模型的架构。它由两个网络组成:用来拟合数据分布的生成网络G,和用来判断输入是否“真实”的判别网络D。在训练过程中,生成网络-G通过接受一个随机的噪声来尽量模仿训练集中的真实图片去“欺骗”D,而D则尽可能的分辨真实数据和生成网络的输出,从而形成两个网络的博弈过程。理想的情况下,博弈的结果会得到一个可以“以假乱真”的生成模型。

推荐文章
暂无评论
暂无评论~