Sora 技术参考文献 - (3)World Models

101 阅读4分钟

Sora 技术参考文献

-- World Models

计划根据openai关于Sora介绍的参考文献,做一系列的技术介绍。

openai 关于Sora的介绍网址。 对于该文章的翻译和简介见文章

World Models

论文arxiv

论文主要工作

文章探索构建流行的强化学习环境的生成性神经网络模型。文章提出的世界模型可以快速地以无监督的方式进行训练,以学习环境的压缩空间和时间表示。通过使用从世界模型中提取的特征作为代理的输入,作者训练一个非常紧凑和简单的策略来解决所需的任务。甚至可以完全在其自己的世界模型生成的幻觉梦境中训练代理模型,并将这个策略转移到实际环境中。

笔者总结

文章的主要思路是构建一个模拟器,根据当前时刻的环境,以及用户行为,预测下一个时刻的环境。这种模型可以作为世界模型。

作者的贡献在几个方面:

  • 设计了视觉模型V+记忆模型M+控制器C的世界模型架构
  • 提出可以在梦境中学习。即不需要外界输入的情况下,模型自我学习。

Sora也是通过视觉模型对图像进行降维。与本文不同的是Sora应该没有控制器,而且使用了Transformer 代替了RNN模型,提升了训练效率。目前没看到Sora是否使用了文章提到的梦境学习的方式。估计也不需要,毕竟有那么多视频可以供Sora学习。

模型

模型主要是三部分组成,包括:视觉模型V、记忆模型M、控制器C。模型整体架构如下。视觉模型负责将图像转换为低维度表示 ztz_t,降低计算量。记忆模型负责根据当前的视觉ztz_t、历史记忆hth_{t}、以及用户当前的动作ata_t,预测下一刻的图像内容zt+1z_{t+1}。控制器负责根据环境,做出相应的动作ata_t

image.png

视觉模型V

视觉模型架构如下,使用VAE模型,进行编码解码的无监督训练。中间的zz是得到的向量表示。

image.png

记忆模型M

记忆模型如下图所示,记忆模型负责根据当前的视觉ztz_t、历史记忆hth_{t}、以及用户当前的动作ata_t,预测下一刻的图像内容zt+1z_{t+1}。即该RNN模型是个概率模型, P(zt+1at,zt,ht)P(z_{t+1}|a_t, z_t, h_t)

image.png

控制模型C

作者希望前两个模型更强,因此这里设置了一个简单的控制模型,仅使用了一层线性的神经网络。

image.png

模型合起来的总体架构如下所示:

image.png

模型的训练

模型的训练流程如下图所示。首先在游戏中进行随机的动作,采集到动作和画面视频的记录。然后使用画面训练VAE模型,即V模型。然后训练M模型。然后训练C模型。最后合起来进行整体的强化学习过程。 image.png

从梦境中学习

作者认为,人类可以从梦境中,自我创作环境,进行学习。因此一个好的世界模型应该也能进行这个操作。

作者选择了一个游戏进行实验。在游戏中,角色可以设计怪兽,并躲避怪兽的子弹。直到角色死亡。作者使用角色存活时间作为游戏的Reward。 image.png

作者的思路是这样的:在梦境中其实不需要真实的图片,只需要图片的隐式表示ztz_t即可,不需要视觉模型V。因此梦境中的训练过程可以设计为,使用随机的ztz_t,输入记忆模型M中。记忆模型可以预测下一个时刻的 zt+1z_{t+1},并预测角色是否存活。这样就可以知道下一个时刻的输入,以及获得的reward。保证整个过程持续下去,即在梦境中进行训练。不需要外部的图像输入。

本文的模型在梦境中学习的过程如下:

image.png

游戏中随机选择场景和动作,获得训练数据。使用图像训练VAE模型,获得较好的图像隐式表示。训练记忆模型M,P(zt+1,dt+1at,zt,ht)P(z_{t+1}, d_{t+1}|a_t, z_t, h_t)。这里不仅需要预测下一时刻的画面,还要判断游戏角色的状态(是否死亡)。训练控制器C。最后在真实环境中训练。