OpenAI Sora 技术报告: Video generation models as world simulators

Paper name

OpenAI Sora 技术报告:Video generation models as world simulators

Paper Reading Note

  • 官网:https://openai.com/sora
  • 技术报告:https://openai.com/research/video-generation-models-as-world-simulators

TL;DR

  • 2024 OpenAI 的视频生成工作 Sora。探索在视频数据上进行大规模生成模型的训练。具体来说,作者团队在多种持续时间(duration)、分辨率 (resolution) 和长宽比 (aspect ratio) 的视频和图像上训练文本条件扩散模型。利用了一个在视频和图像潜在编码的时空补丁 (spacetime patches) 上运行的 transformer 架构。所提出的 Sora 能够生成一分钟高保真度的视频。实验结果表明,扩展视频生成模型是建立通用物理世界模拟器的有前途的途径。

Introduction

  • 技术报告着重介绍两个方面(不包括模型和训练细节):
    • 将各种类型的视觉数据转换为统一表示的方法,以实现大规模生产模型的训练
    • 对 Sora 的能力和局限性进行定性评估

背景

  • 之前也有许多对视频数据进行建模的方法,比如 RNN/GAN/AR transformer/diffusion 等。这些工作通常专注于视觉数据的一小部分类别,较短的视频,或者固定大小的视频。Sora 是一个通用的视觉数据模型——它可以生成跨越不同持续时间、长宽比和分辨率的视频和图像,最高可达一分钟的高清视频。

本文方案

将视觉数据转换为补丁 (Turning visual data into patches)
  • LLM 范式的成功得益于优雅地统一了文本、代码、数学和各种自然语言多样化的文本 token。Sora 使用视觉补丁 (visual patches) 来对标文本 token
  • 补丁已被证明是视觉数据模型的有效表示。作者认为补丁是一种高度可扩展和有效的表示方法,适用于对各种类型的视频和图像进行生成模型训练。首先将视频压缩成低维潜在空间,然后将表示分解成时空补丁 (spacetime patches)
    在这里插入图片描述
视频压缩网络
  • 训练了一个网络,可以降低视觉数据的维度。这个网络以原始视频作为输入,并输出一个在时间和空间上都经过压缩的潜在表示。Sora 在经过这种压缩的潜在空间中进行训练,并生成视频。我们还训练了一个相应的解码器模型,将生成的潜在表示映射回像素空间。
重头戏:扩大规模(scaling)
  • Sora是一个扩散模型,对于给定输入的嘈杂补丁(以及类似文本提示的调节信息),它被训练来预测原始的“干净”补丁。重要的是,Sora 是一个扩散 transformer。transformer 在各种领域展现出了显著的可扩展性,包括语言建模、计算机视觉和图像生成。
    在这里插入图片描述
  • 从下图可以看出不错的可扩展性。下图展示了固定随机种子和输入的比较效果。随着训练计算量的增加,样本质量显著提高

在这里插入图片描述

可变的视频时长,分辨率,长宽比
  • 之前工作一般在固定的时长和分辨率上训练,比如 256px 的 4s 视频上,本文发现在原始尺寸上训练有很多好处
    • Sora 可以对宽屏 1920x1080p 视频、竖屏 1080x1920 视频以及两者之间的视频进行采样。这使得Sora可以直接针对不同设备的原生宽高比创建内容。这也使我们能够在较低分辨率下快速原型设计内容,然后再以全分辨率生成,而且都使用同一个模型。
      在这里插入图片描述
    • 从实验中发现,以原始宽高比训练视频可以改善构图和画面组成。在正方形裁剪训练的模型(左侧)有时会生成只有部分主体出现在画面中的视频。相比之下,来自Sora的视频(右侧)具有更好的构图。 在这里插入图片描述
自然语言理解
  • 训练文本到视频生成系统需要大量具有相应文本标题的视频。将 DALL·E3 中引入的重新字幕 (re-captioning) 技术应用到视频中。首先训练一个高度描述准确性的 caption 模型,然后使用它为我们的训练集中的所有视频生成文本 caption。我们发现,基于高度描述准确性的视频标题进行训练可以提高文本的准确性以及视频的整体质量。
  • 与DALL·E 3 类似,我们还利用 GPT 将用户简短提示转化为更详细的 caption,然后将其发送到视频模型。这使得 Sora 能够生成高质量的视频,准确地遵循用户提示。
提示支持图像和视频
  • 官网的所有结果都是基于文本提示得到的,同时也支持图像和视频进行提示。方便支持图像视频编辑任务:制作完美循环的视频,为静态图像添加动画,将视频向前或向后延长时间等
图像生成
  • Sora 也支持图像生成:通过在一个帧的时间范围内将高斯噪声的补丁排列在空间网格中来实现这一点。该模型可以生成不同尺寸的图像,分辨率高达2048x2048。
    在这里插入图片描述
涌现出的仿真能力
  • 在大规模训练时,视频模型表现出许多有趣的新兴能力。这些能力使 Sora 能够模拟物理世界中人、动物和环境的一些方面。这些特性是在没有任何明确的归纳偏差(如3D、物体等)的情况下出现的,它们纯粹是 scaling 后的现象。
    • 3D 一致性。Sora 能够生成具有动态摄像机运动的视频。随着摄像机的移动和旋转,人物和场景元素在三维空间中保持一致地移动。
    • 长距离一致性和对象永恒性。视频生成系统面临的重要挑战之一是在采样长视频时保持时间上的一致性。我们发现,Sora通常能够有效地建模短期和长期依赖关系,尽管并非总是如此。例如,我们的模型可以在人、动物和物体被遮挡或离开画面时仍然保持它们的存在。同样,它可以在单个样本中生成同一角色的多个镜头,并在整个视频中保持它们的外观。
    • 与世界互动。索拉有时可以模拟会以简单的方式影响世界状态的行为。例如,画家可以在画布上留下新的笔触,这些笔触会随着时间的推移而保留下来,或者一个人可以吃掉一个汉堡并留下咬痕。
    • 模拟数字世界。Sora还能够模拟人工过程 - 一个例子是视频游戏。Sora可以同时使用基本策略控制Minecraft中的玩家,同时以高保真度渲染世界及其动态。这些能力可以通过提示Sora提及“Minecraft”来 zero-shot 地引出。
模型局限点
  • 当前模型局限点:
    • 它可能在准确模拟复杂场景的物理过程方面遇到困难,并且可能无法理解特定的因果关系实例。例如,一个人可能会咬一口饼干,但之后饼干上可能没有咬痕。
    • 该模型还可能混淆提示的空间细节,例如,左右混淆,并且可能在描述随时间发生的事件的细节方面遇到困难,比如跟随特定的摄像机轨迹。

Thoughts

  • 直接加大模型计算量能有这种对世界进行建模的能力涌现很神奇
  • 时间一致性等的实现方式博客中没有提到,不知道是专门做了优化还是 scaling 之后就自动涌现的能力
  • openai 的技术报告和 meta 等对比起来太 “close” 了,可以继续看下以下工作来获取更多的技术细节
    • transformer + diffusion
      • DiT
      • FiT
    • 支持任意分辨率输入
      • NaViT
  • 看 官网 效果,小脸应该还是有点问题,不过整体效果已经很强了
    在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/400973.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

高维数据的中介效应【中介分析】《R包:HIMA》

允许基于高级中介筛选和惩罚回归技术来估计和测试高维中介效应 Hima包浏览 高维中介示意图 图1. 在暴露和结果之间有高维中介的情况 本包的作用 在确定独立筛选和极小极大凹惩罚技术的基础上,采用联合显著性检验方法对调解效果进行检验。使用蒙特卡罗模拟研究来展…

鸿蒙应用/元服务开发实战-Serverless云存储没法创建处理方式

新账户,Serverless云存储没法创建 ,没法进行下一步。 解决方式 请按照这个方式修改一下就能正常创建了,浏览器中打开控制台输入 window.top.cfpConfig.cloudStorageSwitch‘off’ 后再创建桶

二叉树基础知识总结

目录 二叉树基础知识 概念 : 根节点的五个形态 : 特殊的二叉树 满二叉树 : 完全二叉树 : 二叉搜索树 : 平衡二叉搜索树 : 二叉树的性质 : 二叉树的存储结构 二叉树的顺序存储结构 二叉树的链式存储结构 二叉树的遍历方式 : 基础概念 前中后遍历 层序遍历 :…

堆的结构实现与应用

目录 前言: 1.认识堆 a.如何认识堆? b.大根堆与小根堆 c.堆应用的简单认识 2.堆的结构与要实现的功能 3.向上调整算法 4.向下调整算法 5.向堆插入数据并建堆 6.堆的大小 7.堆的判空 8.取堆顶数据 9.删除堆顶数据 10.向上调整时间复杂度 11.向下调整时…

(十二)【Jmeter】线程(Threads(Users))之tearDown 线程组

简述 操作路径如下: 作用:在正式测试结束后执行清理操作,如关闭连接、释放资源等。配置:设置清理操作的采样器、执行顺序等参数。使用场景:确保在测试结束后应用程序恢复到正常状态,避免资源泄漏或对其他测试的影响。优点:提供清理操作,确保测试环境的整洁和可重复性…

【前端】夯实基础 css/html/js 50个练手项目(持续更新)

文章目录 前言Day 1 expanding-cardsDay 2 progress-steps 前言 发现一个没有用前端框架的练手项目,很适合我这种纯后端开发夯实基础,内含50个mini project,学习一下,做做笔记。 项目地址:https://github.com/bradtr…

集合可视化:rainbow box与欧拉图

论文:A new diagram for amino acids: User study comparing rainbow boxes to Venn/Euler diagram 最近偶然看到了这篇论文,觉得很有意思,针对的任务是集合数据的可视化。 我们用示例来说明,比如图二的欧拉图,展示的…

爬取链家二手房房价数据存入mongodb并进行分析

实验目的 1.使用python将爬虫数据存入mongodb; 2.使用python读取mongodb数据并进行可视化分析。 实验原理 MongoDB是文档数据库,采用BSON的结构来存储数据。在文档中可嵌套其他文档类型,使得MongoDB具有很强的数据描述能力。本节案例使用的…

【深度学习】微调Qwen1.8B

1.前言 使用地址数据微调Qwen1.8B。Qwen提供了预构建的Docker镜像,在使用时获取镜像只需安装驱动、下载模型文件即可启动Demo、部署OpenAI API以及进行微调。 github地址:GitHub - QwenLM/Qwen: The official repo of Qwen (通义千问) chat & pretr…

计算机设计大赛 深度学习卫星遥感图像检测与识别 -opencv python 目标检测

文章目录 0 前言1 课题背景2 实现效果3 Yolov5算法4 数据处理和训练5 最后 0 前言 🔥 优质竞赛项目系列,今天要分享的是 🚩 **深度学习卫星遥感图像检测与识别 ** 该项目较为新颖,适合作为竞赛课题方向,学长非常推荐…

ELK Stack 日志平台搭建

前言 最近在折腾 ELK 日志平台,它是 Elastic 公司推出的一整套日志收集、分析和展示的解决方案。 专门实操了一波,这玩意看起来简单,但是里面的流程步骤还是很多的,而且遇到了很多坑。在此记录和总结下。 本文亮点:…

PEARL: 一个轻量的计算短文本相似度的表示模型

| 💻 [code] | 💾 [data] | 🤗 PEARL-small | 🤗 PEARL-base | 论文 如何计算短文本相似度是一个重要的任务,它发生在各种场景中: 字符串匹配(string matching)。我们计算两个字符…

Stable Diffusion 模型下载:A-Zovya RPG Artist Tools(RPG 大师工具箱)

本文收录于《AI绘画从入门到精通》专栏,专栏总目录:点这里。 文章目录 模型介绍生成案例案例一案例二案例三案例四案例五案例六案例七案例八 下载地址 模型介绍 A-Zovya RPG Artist Tools 模型是一个针对 RPG 训练的一个模型,可以生成一些 R…

win32 汇编读文件

做了2个小程序,没有读成功;文件打开了; .386.model flat, stdcalloption casemap :noneinclude windows.inc include user32.inc includelib user32.lib include kernel32.inc includelib kernel32.lib include Comdlg32.inc includelib …

Js如何判断两个数组是否相等?

本文目录 1、通过数组自带方法比较2、通过循环判断3、toString()4、join()5、JSON.stringify() 日常开发,时不时会遇到需要判定2个数组是否相等的情况,需要实现考虑的场景有: 先判断长度,长度不等必然不等元素位置其他情况考虑 1…

【Java EE初阶二十一】http的简单理解(二)

2. 深入学习http 2.5 关于referer Referer 描述了当前页面是从哪个页面跳转来的,如果是直接在地址栏输入 url(或者点击收藏夹中的按钮) 都是没有 Referer。如下图所示: HTTP 最大的问题在于"明文传输”,明文传输就容易被第三方获取并篡改. …

使用Templ进行Go模板化

使用Templ在Go项目中高效生成动态内容的指南 动态内容生成是Web开发的一个基本方面。无论您是在构建网站、Web应用程序还是API,根据数据和模板生成动态内容的能力都至关重要。在Go编程世界中,一个名为“Templ”的强大工具简化了这一过程。在这份全面的指…

QT day2 2.21

1.使用手动连接,将登录框中的取消按钮使用qt4版本的连接到自定义的槽函数中,在自定义的槽函数中调用关闭函数 代码: #include "mywidget.h" #include "ui_mywidget.h"MyWidget::MyWidget(QWidget *parent): QWidget(pa…

c#创建安装windows服务

背景:最近在做设备数据对接采集时,遇到一些设备不是标准的Service-Client接口,导致采集的数据不够准确;比如设备如果中途开关机后,加工的数量就会从0开始重新计数,因此需要实时监控设备的数据,进行叠加处理;考略到工厂设备比较多,实时监听接口的数据为每秒3次,因此将…

Stable diffusion UI 介绍-文生图

1.提示词: 你希望图中有什么东西 2.负面提示词:你不希望图中有什么东西 选用了什么模型 使用参数 1.采样器 sampling method 使用什么算法进行采样 2.采样迭代步数 sampling steps 生成图像迭代的步数,越多越好,但是生成速度越大越…