Sora 技术参考文献
-- World Models
计划根据openai关于Sora介绍的参考文献,做一系列的技术介绍。
openai 关于Sora的介绍网址。 对于该文章的翻译和简介见文章
World Models
论文主要工作
文章探索构建流行的强化学习环境的生成性神经网络模型。文章提出的世界模型可以快速地以无监督的方式进行训练,以学习环境的压缩空间和时间表示。通过使用从世界模型中提取的特征作为代理的输入,作者训练一个非常紧凑和简单的策略来解决所需的任务。甚至可以完全在其自己的世界模型生成的幻觉梦境中训练代理模型,并将这个策略转移到实际环境中。
笔者总结
文章的主要思路是构建一个模拟器,根据当前时刻的环境,以及用户行为,预测下一个时刻的环境。这种模型可以作为世界模型。
作者的贡献在几个方面:
- 设计了视觉模型V+记忆模型M+控制器C的世界模型架构
- 提出可以在梦境中学习。即不需要外界输入的情况下,模型自我学习。
Sora也是通过视觉模型对图像进行降维。与本文不同的是Sora应该没有控制器,而且使用了Transformer 代替了RNN模型,提升了训练效率。目前没看到Sora是否使用了文章提到的梦境学习的方式。估计也不需要,毕竟有那么多视频可以供Sora学习。
模型
模型主要是三部分组成,包括:视觉模型V、记忆模型M、控制器C。模型整体架构如下。视觉模型负责将图像转换为低维度表示 ,降低计算量。记忆模型负责根据当前的视觉、历史记忆、以及用户当前的动作,预测下一刻的图像内容。控制器负责根据环境,做出相应的动作。
视觉模型V
视觉模型架构如下,使用VAE模型,进行编码解码的无监督训练。中间的是得到的向量表示。
记忆模型M
记忆模型如下图所示,记忆模型负责根据当前的视觉、历史记忆、以及用户当前的动作,预测下一刻的图像内容。即该RNN模型是个概率模型,
控制模型C
作者希望前两个模型更强,因此这里设置了一个简单的控制模型,仅使用了一层线性的神经网络。
模型合起来的总体架构如下所示:
模型的训练
模型的训练流程如下图所示。首先在游戏中进行随机的动作,采集到动作和画面视频的记录。然后使用画面训练VAE模型,即V模型。然后训练M模型。然后训练C模型。最后合起来进行整体的强化学习过程。
从梦境中学习
作者认为,人类可以从梦境中,自我创作环境,进行学习。因此一个好的世界模型应该也能进行这个操作。
作者选择了一个游戏进行实验。在游戏中,角色可以设计怪兽,并躲避怪兽的子弹。直到角色死亡。作者使用角色存活时间作为游戏的Reward。
作者的思路是这样的:在梦境中其实不需要真实的图片,只需要图片的隐式表示即可,不需要视觉模型V。因此梦境中的训练过程可以设计为,使用随机的,输入记忆模型M中。记忆模型可以预测下一个时刻的 ,并预测角色是否存活。这样就可以知道下一个时刻的输入,以及获得的reward。保证整个过程持续下去,即在梦境中进行训练。不需要外部的图像输入。
本文的模型在梦境中学习的过程如下:
游戏中随机选择场景和动作,获得训练数据。使用图像训练VAE模型,获得较好的图像隐式表示。训练记忆模型M,。这里不仅需要预测下一时刻的画面,还要判断游戏角色的状态(是否死亡)。训练控制器C。最后在真实环境中训练。