SORA技术报告

文档链接:https://openai.com/research/video-generation-models-as-world-simulators

文章目录

  • Video generation models as world simulators
    • Turning visual data into patches
    • Video compression network
    • Spacetime latent patches
    • Scaling transformers for video generation
    • Variable durations, resolutions, aspect ratios
      • Sampling flexibility
      • Improved framing and composition
    • Language understanding
    • Prompting with images and videos
    • Image generation capabilities
    • Emerging simulation capabilities
      • 3D consistency
      • Long-range coherence and object permanence
      • Interacting with the world
      • Simulating digital worlds
    • Discussion

Video generation models as world simulators

探索在视频数据上生成模型的大规模训练。具体而言,在可变持续时间,分辨率和宽高比的视频和图像上共同训练文本条件扩散模型;利用在视频和图片的隐空间的spacetime patches执行计算的Transformer架构。最大的模型Sora能够生成一分钟的高保真视频;结果表明,扩展视频生成模型是建立物理世界的通用模拟器的有前途的途径。

技术报告集中在以下两个方向:

  • 如何将所有类型的视觉数据转换为统一表示的方法,用于大规模训练生成模型
  • Sora能力和局限性的定性评估

许多先前的工作已经使用各种方法研究了视频数据的生成建模,包括递归网络、生成对抗性网络、自回归Transformers和扩散模型。这些工作基本关注狭义的视觉数据,关注较短的视频,或固定大小的视频。Sora是一个通用的视觉数据模型,它可以生成不同持续时间、宽高比和分辨率的视频和图像,最高可达一分钟的高清视频。

Turning visual data into patches

从大型语言模型中获得灵感,这些模型通过对互联网规模的数据进行训练来获得通用能力。LLM范式的成功在一定程度上得益于tokens的使用,这些tokrnd优雅地统一了文本的各种形式——代码、数学和各种自然语言。在这项工作考虑视觉数据的生成模型如何继承这些优势。LLMs有文本tokens,Sora有视觉patches。patches在先前已被证明是视觉数据模型的有效表示。本工作发现对于在各类视频、图片上训练生成模型,patches是一种高扩展、有效的表征。
在这里插入图片描述
在高维度上,首先将视频压缩到较低维度的潜在空间中,随后将视频表征分解为spacetime patches。

Video compression network

训练一个降低视觉数据维度的网络。该网络将原始视频作为输入,并输出在时间和空间上都被压缩的潜在表征。Sora与LDM相似,在潜在空间进行训练、生成视频;同时训练了一个对应的解码模型,将生成的隐向量映射回像素空间。

Spacetime latent patches

给定压缩输入视频,提取了一系列spacetime patches,此序列相当于transformer tokens。该方案也适用于图像,因为图像是带有单个帧的视频。基于patches的表示使Sora可以在可变分辨率,持续时间和纵横比的视频、图像上训练。推理时,可以通过在适当尺寸的网格中安排随机定位的patches来控制生成的视频的大小。

Scaling transformers for video generation

Sora是一个扩散模型,给定noisy patches或带有文本控制信息的patches,其通过预测原始clean patches的方式进行训练。重要的是,Sora是基于transformer的扩散模型。Transformer 在多个领域展示了卓越的扩展特性,包括语言建模、计算机视觉和图像生成。
在这里插入图片描述
这项工作发现扩散transformers也可以有效地缩放为视频模型。

Variable durations, resolutions, aspect ratios

之前的图像和视频生成方法通常会调整,裁剪或修剪视频的大小,例如256x256分辨率的4秒视频。本工作发现,相反,以其原始大小的数据进行训练会有更多优势。

Sampling flexibility

Sora 可以采样宽屏 1920x1080p 视频、垂直 1080x1920 视频以及介于两者之间的所有视频。 这使得 Sora 可以直接以其原生宽高比为不同设备创建内容;还使得能够在以全分辨率生成之前快速以较低尺寸制作原型内容

Improved framing and composition

根据经验发现,对视频的原始纵横比进行训练可以改善构图和框架。将 Sora 与将所有训练视频裁剪为正方形(训练生成模型时的常见做法)的模型版本进行比较。 在方形数据上训练的模型有时会生成仅部分可见主体的视频。 相比之下,Sora的视频的取景效果有所改善。

Language understanding

训练文本到视频生成系统需要大量带有相应文本字幕的视频。 将 DALL·E 3 中引入的re-captioning技术应用于视频。首先训练一个高度描述性的字幕生成器模型,然后使用它为训练集中的所有视频生成文本字幕。 发现,对高度描述性视频字幕进行训练可以提高文本保真度以及视频的整体质量。

与 DALL·E 3 类似,还利用了 GPT 将简短的提示词转换为较长的详细字幕,然后发送到视频模型。 这使得 Sora 能够生成准确遵循提示词的高质量视频。

Prompting with images and videos

除文本外,Sora 也可以通过其他输入进行提示,例如预先存在的图像或视频。 此功能使 Sora 能够执行各种图像和视频编辑任务 - 创建完美的循环视频、动画静态图像、向前或向后扩展视频等。

  • Animating DALL·E images:能够以给定的视频和提示词作为输出生成视频
  • Extending generated videos:能够在时间上向前或向后扩展视频
  • Video-to-video editing:扩散模型实现了多种根据文本提示编辑图像和视频的方法
  • Connecting videos:在两个输入视频之间逐渐进行插值,从而在具有完全不同主题和场景构成的视频之间创建无缝过渡

Image generation capabilities

Sora 还能够生成图像,通过在时间范围为一帧的空间网格中排列高斯噪声块来实现这一点。该模型可以生成各种尺寸的图像,分辨率高达 2048x2048。
在这里插入图片描述
在这里插入图片描述

Emerging simulation capabilities

本工作发现,视频模型在大规模训练时表现出许多有趣的新兴功能。这些功能使 Sora 能够模拟现实世界中人、动物和环境的某些方面。在没有引入对 3D、物体等任何明确的归纳偏差情况下涌现了这些属性——它们纯粹是尺度现象。

3D consistency

Sora 可以生成带有动态摄像机运动的视频。随着摄像机的移动和旋转,人和场景元素在三维空间中一致移动。

Long-range coherence and object permanence

视频生成系统面临的一个重大挑战是在采样长视频时保持时间一致性。本工作发现 Sora 通常(尽管并非总是)能够有效地对短期和长期依赖关系进行建模。例如,Sora可以保留人、动物和物体,即使它们被遮挡或离开框架。同样,它可以在单个样本中生成同一角色的多个镜头,并在整个视频中保持其外观。

Interacting with the world

Sora有时可以用简单的方式模拟影响世界状况的动作。例如,画家可以在画布上留下新的笔触,并随着时间的推移而持续存在,或者一个人可以吃汉堡并留下咬痕。

Simulating digital worlds

Sora 还能够模拟人工过程——一个例子是视频游戏。 Sora 可以同时通过基本策略控制《我的世界》中的玩家,同时以高保真度渲染世界及其动态。这些能力可以通过用带“Minecraft”的caption提示 Sora 触发。

这些功能表明,视频模型的持续扩展是开发物理和数字世界以及生活在其中的物体、动物和人的高性能模拟器的一条有前途的道路。

Discussion

Sora目前作为模拟器显示出许多限制。例如,它没有准确模拟许多基本交互的物理,比如玻璃破碎。其他交互,比如吃东西,不总是会产生正确的物体状态变化。模型的其他常见故障模式还包括在长时间样本中出现的不一致性或物体的自发出现。

Sora目前具备的能力表明,继续扩展视频模型是通向开发能够模拟物理世界、数字世界以及其中的物体、动物和人类的有能力模拟器的一个有前景的路径。

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

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

相关文章

【C++】字符类型和字符数组-string

STL-容器 - string 字符串必须具备结尾字符\0 #include<iostream> #include<string> using namespace std; //STL-容器 - string char ch[101];//字符串必须具备结尾字符\0 int main() {int n; cin >> n;for (int i 0; i < n; i) {cin >> ch[i];}…

iptables和五链四表相关规则说明

文章目录 1. iptables的作用2. iptables和netfilter的联系和区别3. 四表五链说明3.1 四表3.2 五链3.3 表与链之间的包含关系 4. iptables规则的常用命令和使用方法4.1 iptables规则组成4.2 规则数据管理 5. 常用的iptables场景5.1 禁止外部主机ping内部主机5.2 禁止某些端口访问…

Linux——动态库

Linux——动态库 gcc 指令生成动态库动态库的使用动态库与静态库区别直接装到系统中软连接LD_LIBRARY_PATH直接修改动态库的配置文件 上一次我们了解了静态库&#xff0c;这次我们来了解动态库&#xff0c;如果还有没看过上一篇静态库的小伙伴&#xff0c;可以点击这里&#xf…

【深度学习笔记】3_6 代码实现softmax-regression

注&#xff1a;本文为《动手学深度学习》开源内容&#xff0c;仅为个人学习记录&#xff0c;无抄袭搬运意图 3.6 softmax回归的从零开始实现 这一节我们来动手实现softmax回归。首先导入本节实现所需的包或模块。 import torch import torchvision import numpy as np import…

LeetCode206: 反转链表.

题目描述 给你单链表的头节点 head &#xff0c;请你反转链表&#xff0c;并返回反转后的链表。 示例 解题方法 假设链表为 1→2→3→∅&#xff0c;我们想要把它改成∅←1←2←3。在遍历链表时&#xff0c;将当前节点的 next指针改为指向前一个节点。由于节点没有引用其前一…

详细讲解缓冲区

目录 理解回车和换行&#xff08;\r&&\n&#xff09; 那如何实现单独的回车和换行呢&#xff1f; 缓冲区 证明有缓冲区的存在 ​编辑 怎么刷新缓冲区&#xff08;显示器缓冲区&#xff09;&#xff1f; fflush函数​编辑 缓冲区出现的意义 I/O流 模拟倒计时小程…

Nodejs 第四十章(prisma)

什么是 prisma? Prisma 是一个现代化的数据库工具套件&#xff0c;用于简化和改进应用程序与数据库之间的交互。它提供了一个类型安全的查询构建器和一个强大的 ORM&#xff08;对象关系映射&#xff09;层&#xff0c;使开发人员能够以声明性的方式操作数据库。 Prisma 支持…

EasyRecovery破解版补丁免费钥匙下载

说起数据恢复软件&#xff0c;相信没有小伙伴不知道EasyRecovery这个软件吧&#xff0c;该软件具有快捷、高效、便捷的特点&#xff0c;且提供的功能也非常全面&#xff0c;不仅可以恢复各样被删除的文件、视频、图片等&#xff0c;还可以支持SD卡数据恢复&#xff0c;TF卡等各…

深入浅出CChart 每日一课——快乐高四第六十一课 飞梯十二重,CChart三维曲线图绘制

同学们好&#xff0c;今天继续介绍CChart本身的功能。接下来这几节课呢&#xff0c;笨笨老师准备对CChart的三维视图和场图功能进行详细一些的介绍。本节课首先介绍三维曲线图。 CChart软件库的开发&#xff0c;首先是从二维曲线图开始的&#xff0c;这一部分经过长时间的打磨…

SpringBoot3+Vue3 基础知识(持续更新中~)

bean 把方法的返回结果注入到ioc中 1: 2: 3: 组合注解封装 实战篇&#xff1a; 解析token&#xff1a; 统一携带token&#xff1a; 驼峰命名与下划线命名转换&#xff1a; NotEmpty!!! mybatis&#xff1a; PageHelper设置后&#xff0c;会将pageNum,和pageSize自己拼接…

ubuntu22.04@Jetson Orin Nano之OpenCV安装

ubuntu22.04Jetson Orin Nano之OpenCV安装 1. 源由2. 分析3. 证实3.1 jtop安装3.2 jtop指令3.3 GPU支持情况 4. 安装OpenCV4.1 修改内容4.2 Python2环境【不需要】4.3 ubuntu22.04环境4.4 国内/本地环境问题4.5 cudnn版本问题 5. 总结6. 参考资料 1. 源由 昨天用Jetson跑demo程…

Spring Session:入门案例

Spring Session provides an API and implementations for managing a user’s session information. Spring Session提供了一种用于管理用户session信息管理的API。 Spring Session特点 传统的Servlet应用中&#xff0c;Session是存储在服务端的&#xff0c;即&#xff1a;Ses…

聚道云软件连接器:高科技企业财务自动化,提升效率准确性!

客户介绍&#xff1a; 某互联信息技术有限公司是一家专业从事信息技术服务的高科技企业&#xff0c;在业内享有较高的知名度和影响力。近年来&#xff0c;公司业务快速发展&#xff0c;对信息化建设提出了更高的要求。 客户痛点&#xff1a; 在传统情况下&#xff0c;该公司的…

【探索Linux】—— 强大的命令行工具 P.23(线程池 —— 简单模拟)

阅读导航 引言一、线程池简单介绍二、Linux下线程池代码⭕Makefile文件⭕ . h 头文件✅Task.hpp✅thread.hpp✅threadPool.hpp ⭕ . cpp 文件✅testMain.cpp 三、线程池的优点温馨提示 引言 在Linux下&#xff0c;线程池是一种常见的并发编程模型&#xff0c;它能够有效地管理…

大模型综述总结--第一部分

1 目录 本文是学习https://github.com/le-wei/LLMSurvey/blob/main/assets/LLM_Survey_Chinese.pdf的总结&#xff0c;仅供学习&#xff0c;侵权联系就删 目录如下图 本次只总结一部分&#xff0c;刚学习有错请指出&#xff0c;VX关注晓理紫&#xff0c;关注后续。 2、概述…

字符函数和字符串函数(C语言进阶)(一)

前言 C语言中对字符和字符串的处理是很频繁的&#xff0c;但是c语言本身是没有字符串类型的&#xff0c;字符串通常放在常量字符串中或着字符数组中。 字符串常量适用于哪些对它不做修改的字符串函数。 1、函数介绍 1.1 strlen strlen&#xff1a;计算字符串长度 看一个代码&…

“AI教父”李一舟翻车,中国AI培训路在何方

近日&#xff0c;AIGC领域掀起了一场不小的风波&#xff0c;知名AI博主李一舟在各大平台推出的AI课程突然下架&#xff0c;其账号遭到禁止关注的情况。 这一事件不仅引发了广泛关注和热议&#xff0c;更让许多真正想学习AIGC的用户感到迷茫和困惑&#xff1a;在众多的AIGC课程中…

ONLYOFFICE 桌面编辑器现已更新至v8.0啦

希望你开心&#xff0c;希望你健康&#xff0c;希望你幸福&#xff0c;希望你点赞&#xff01; 最后的最后&#xff0c;关注喵&#xff0c;关注喵&#xff0c;关注喵&#xff0c;佬佬会看到更多有趣的博客哦&#xff01;&#xff01;&#xff01; 喵喵喵&#xff0c;你对我真的…

一个div最简方法画太极图

一个div最简方法画太极图 直接上代码&#xff0c;一目了然 html <div class"太极图"/>css .太极图 {position: relative;width: 400px;height: 400px;background: linear-gradient(to right,white 50%,black 50%);border-radius: 50%;box-shadow:0 0 12px …
最新文章