OpenAl 视频生成模型 —— Sora技术报告解读

news2024/12/30 2:13:09

这里是陌小北,一个正在研究硅基生命的碳基生命。正在努力成为写代码的里面背诗最多的,背诗的里面最会写段子的,写段子的里面代码写得最好的…厨子。

写在前面

早上醒来,就看到OpenAl推出的视频模型Sora炸锅了,感觉所有人都不淡定了… 这种时候我一般是先不看,让子弹先飞一会儿的,正当我看会儿闲书修身养性的时候,技术报告又出来了,这下我也来神儿了,盘他盘他…

其实我老早就想研究一下当前的文生视频模型都有哪些技术,做个调研和总结了,今天就当个起点吧。因为2024年很可能迎来视频的“ChatGPT 时刻”,a16z发布了文章《为什么2023是AI视频的突破年,以及2024年的展望》,总结了2023年的AI视频产品以及相应的时间点。

再加上年初,谷歌推出了Lumiere模型,字节跳动和腾讯也分别公布了MagicVideo V2与VideoCrafter2,今天OpenAl的Sora一出,只能说硝烟已至,未来已来。

通过这份总结可以看出,大多数产品只能生成 3 到 4 秒钟的视频,并且存在视频质量参差不齐,人物风格难以统一等问题,但是今天Sora直接将时长打到60秒,并且支持多角度镜头,还有最重要的,Sora似乎已经涌现出了模拟能力,有了“世界模型”的雏形…

技术报告解读

首先贴上技术报告地址:https://openai.com/research/video-generation-models-as-world-simulators

报告标题是“Video generation models as world simulators” —— “作为世界模拟器的视频生成模型”,并且在报告开始就说了,视频生成模型是构建物理世界通用模拟器的一个值得研究的方向,悬念感拉满。

接下来是回顾之前视频领域的研究进展,主要包括 recurrent networks,generative adversarial networks(GAN),autoregressive transformers,diffusion models,这些方法通常应用与小范围的视觉数据、短视频或固定大小的视频。Sora是一个通用的视觉数据模型,它可以生成不同时长、长宽比和分辨率的视频和图像,而且最多可以输出长达一分钟的高清视频。

关于报告公示的具体细节,先泼个冷水,CloseAI 的报告不包含模型和训练的细节,报告重点阐述的有两点:第一,Sora将所有类型的视觉数据转换为统一表示形式(patches),从而用于大规模训练生成模型;第二,对 Sora 的能力和局限性进行定性评估。

技术点一:视觉数据转为 Patches

Patches是类似于LLM中token的概念。LLM过使用互联网上大规模的数据进行训练从而获得了通用能力,这也给了Sora灵感。

LLM中正是通过token这一新的范式,将文本的多种模态 (代码、数学和各种自然语言)统一了起来。所以视觉模型Sora参考了这一创新,OpenAI 发现 patches 是训练生成各种类型视频和图像的模型的可扩展且有效的表示。

如下图,首先将视频压缩到较低维的潜在空间,然后将表示分解为spacetime patches,从而将视频转换为 patches。

技术点二:视频压缩网络

OpenAI 训练了一个降低视觉数据维度的网络和相应的解码器模型。看起来还是类似于transformer 的编码器和解码器,编码器将原始视频作为输入,并输出在时间和空间上压缩的latent representation,解码器将生成的潜在表示映射回像素空间。Sora 在这个压缩的潜在空间中接受训练,而后生成视频。OpenAI 还训练了,将生成的潜在表示映射回像素空间。

技术点三:Spacetime Latent Patches

给定一个压缩的输入视频,OpenAI 提取一系列时空 patches,充当 Transformer 的 tokens。该方案也适用于图像,因为图像可视为单帧视频。OpenAI 基于 patches 的表示使 Sora 能够对不同分辨率、持续时间和长宽比的视频和图像进行训练。在推理时,OpenAI 可以通过在适当大小的网格中排列随机初始化的 patches 来控制生成视频的大小。

技术点四:用于视频生成的Scaling Transformer

Sora 是一个扩散 Transformer。关于为什么采用Transformer,报告中提到,Transformer 在各个领域都表现出了卓越的缩放特性,包括语言建模、计算机视觉、和图像生成。同时,OpenAI 发现扩散 Transformers在视频模型上同样有效。

Sora的具体实现方式是:通过给定的输出的noisy patches(噪声 patches,以及像是问题提示一类的训练信息),训练出模型,用来预测原始的“clean” patches。

下面,OpenAI 展示了训练过程中具有固定种子和输入的视频样本的比较。随着训练计算的增加,样本质量显着提高。

技术点五:语言理解

由于训练文本到视频生成系统需要大量带有相应文本字幕的视频。OpenAI将 DALLE 3 中的重字幕(re-captioning)技术应用于视频。具体来说,首先训练一个高度描述性的字幕生成器模型,然后使用它为训练集中所有视频生成文本字幕。研究团队发现,对高度描述性视频字幕进行训练可以提高文本保真度以及视频的整体质量。

与 DALLE 3 类似,研究团队还利用 GPT 将简短的用户 prompt 转换为较长的详细字幕,然后发送到视频模型。这使得 Sora 能够生成准确遵循用户 prompt 的高质量视频。

亮点一:可变的持续时间,分辨率,宽高比

以往,图像和视频生成方法通过需要调整大小、进行裁剪或者是将视频剪切到标准尺寸。Sora采用在原始大小的数据上进行训练,OpenAI 发现在原始大小的数据上进行训练,可以提供以下好处:

首先是采样的灵活性:Sora 可以采样宽屏视频 1920x1080p,垂直视频 1080x1920p 以及两者之间的视频。这使 Sora 可以直接以其天然纵横比为不同设备创建内容。Sora 还允许在生成全分辨率的内容之前,以较小的尺寸快速创建内容原型 —— 所有内容都使用相同的模型。

其次是改进帧和内容组成:研究者通过实证发现,使用视频的原始长宽比进行训练可以提升内容组成和帧的质量。(原文的例子我就不贴了,反正就是证明他们的方法好)

亮点二:可以以图像和视频作为提示

这里,报告中列举了通过DALL-E的图像制作动画视频、基于一段视频拓展新视频、SDEdit(根据文本 prompt 编辑视频的方法,能够在零样本条件下改变输入视频的风格和环境)、连接视频、生成图像(单帧视频)。

亮点三:涌现模拟能力

OpenAI 发现,视频模型在经过大规模训练后,涌现出模拟能力。这些能力使 Sora 能够模拟物理世界中的人、动物和环境的某些方面。这表明,视频模型的持续扩展是开发物理和数字世界模拟器的一条有前景的道路。

Sora表现出的涌现模拟具体能力如下:

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

(2)长序列连贯性和目标持久性。视频生成系统面临的一个重大挑战是在对长视频进行采样时保持时间一致性。OpenAI 发现,虽然 Sora 并不总是能有效地模拟短距离和长距离的依赖关系,但它在很多时候仍然能做到这一点。例如,即使人、动物和物体被遮挡或离开画面,Sora 模型也能保持它们的存在。同样,它还能在单个样本中生成同一角色的多个镜头,并在整个视频中保持其外观。

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

(4)模拟数字世界。Sora 还能模拟视频游戏。Sora 可以通过基本策略同时控制Minecraft中的玩家,同时高保真地呈现世界及其动态。只需在 Sora 的提示字幕中提及 「Minecraft」,就能零样本激发这些功能。

局限性讨论

Sora 目前还存在许多局限性。例如,它不能准确模拟许多基本交互的物理现象,如玻璃碎裂。也并不是总能产生正确的物体状态变化,官方主页列举了该模型的其他常见失效模式,例如长时间样本中出现的不一致性或物体的自发出现等。总结来讲,也就是难以准确模拟复杂场景的物理原理,并且可能无法理解因果关系。

写在最后

关于视频模型的研究总结,之后应该还会继续,2024的开年,很精彩…

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

WordPress站点成功升级后的介绍页地址是什么?

我们一般在WordPress站点后台 >> 仪表盘 >> 更新中成功升级WordPress的话,最后打开的就是升级之后的版本介绍页。比如boke112百科前两天升级到WordPress 6.4.2后显示的介绍页如下图所示: 该介绍除了介绍当前版本修复了多少个问题及修补了多少…

BUUCTF第十九、二十题解题思路

目录 第十九题rome 第二十题rsa 第十九题rome 解压、查壳。 无壳,用32位IDA打开,检索字符串,找到一个字符串“You are correct!”,与flag相关,对其交叉引用找到函数,查看伪代码。 int func() {int resul…

二叉树前序中序后序遍历(非递归)

大家好,又和大家见面啦!今天我们一起去看一下二叉树的前序中序后序的遍历,相信这个对大家来说是信手拈来,但是,今天我们并不是使用常见的递归方式来解题,我们采用迭代方式解答。我们先看第一道前序遍历 1…

LabVIEW开发DUP实时监控系统

LabVIEW开发DUP实时监控系统 该项目采用虚拟仪器设计理念,以LabVIEW作为核心技术平台,开发了一套磁控溅射过程的实时监控系统。实现过程中关键参数的全面数据采集与处理,建立完整的历史数据库,以支持涂层技术的改进和系统向模糊控…

英文论文(sci)解读复现【NO.20】TPH-YOLOv5++:增强捕获无人机的目标检测跨层不对称变压器的场景

此前出了目标检测算法改进专栏,但是对于应用于什么场景,需要什么改进方法对应与自己的应用场景有效果,并且多少改进点能发什么水平的文章,为解决大家的困惑,此系列文章旨在给大家解读发表高水平学术期刊中的 SCI论文&a…

输入捕获模式PWM输入模式(PWMI)

一、概念介绍 输出比较: 比较电路输入的CNT、CCR大小关系 ,在通道引脚输出高低电平 二、频率知识、测量方法补充 N/fc得到标准频率的时长,也就是待测频率的周期 测频法代码实现:修改对射式红外传感器计次(上升沿计…

【Linux】管道文件 打包压缩 文本编辑器nano 进度条

目录 什么是管道文件? 打包和压缩 文本编辑器 nano的安装 nano的使用 退出nano编辑,ctrlx 普通用户无法sudo,该怎么解决 Linux小程序-进度条 预备知识 1.回车换行 2.缓冲区 准备工作 代码实现 1.processBar.h代码编写 2.main.c代…

优秀的电机驱动MCU:MM32SPIN360C

DC-DC电源布局注意点: 电源模块布局布线可提前下载芯片的datasheet(数据表),按照推荐的布局和布线进行设计。 1) 芯片电源接近原则: 对于为芯片提供电压的开关电源,应确保它尽量靠近芯片放置。这样可以避…

一周学会Django5 Python Web开发-项目配置settings.py文件-资源文件配置

锋哥原创的Python Web开发 Django5视频教程: 2024版 Django5 Python web开发 视频教程(无废话版) 玩命更新中~_哔哩哔哩_bilibili2024版 Django5 Python web开发 视频教程(无废话版) 玩命更新中~共计17条视频,包括:2024版 Django5 Python we…

开关电源电路主要元器件基础知识详解

在学习电子电路过程中,电源我们无法绕开的一个重要部分,很多时候,故障就出现在电源部分,特别是开关电源。开关电源电路主要是由熔断器、热敏电阻器、互感滤波器、桥式整流电路、滤波电容器、开关振荡集成电路、开关变压器、光耦合…

使用 RAG 创建 LLM 应用程序

如果您考虑为您的文件或网站制作一个能够回应您的个性化机器人,那么您来对地方了。我可以帮助您使用Langchain和RAG策略来创建这样一个机器人。 了解ChatGPT的局限性和LLMs ChatGPT和其他大型语言模型(LLMs)经过广泛训练,以理解…

七天入门大模型 :大模型量化及低成本部署最佳实践

七天入门大模型已完成了5篇,喜欢记得收藏、关注、点赞。 七天入门大模型 :LLM大模型基础知识最全汇总七天入门大模型 :提示词工程 Prompt Engineering,最全的总结来了!七天入门大模型 :LLM和多模态模型高效…

OpenAI发布Sora,另一个层次的黑科技

每周跟踪AI热点新闻动向和震撼发展 想要探索生成式人工智能的前沿进展吗?订阅我们的简报,深入解析最新的技术突破、实际应用案例和未来的趋势。与全球数同行一同,从行业内部的深度分析和实用指南中受益。不要错过这个机会,成为AI领…

清除Django的管理员admin站点中“Recent Actions“最近活动面板上的所有信息

清除Django的管理员admin站点中"Recent Actions"最近活动面板上的所有信息 本文主要介绍了如何清除Django的管理员admin站点中"Recent Actions"最近活动面板上的所有信息 操作步骤如下 进入Django项目目录中运行代python manage.py shell进入Django shell…

贪心第一天,别太贪了

今天是贪心第一天,做376. 摆动序列时脑子都要干烧了,贪心的题还是很有意思的,对于理论知识,我觉得做题的时候就想这两个问题吧: 如何找到局部最优解呢?用这个局部最优解模拟示例后能通过吗? 455…

Transformer面试十问

1 Scaled Dot-Product Attention中为什么要除以 d k \sqrt{d_k} dk​ ​? 1. 从纯数学上考虑:对于输入均值为0,方差为1的分布,点乘后结果其方差为dk,所以需要缩放一下。下图为原论文注释。 2. 从神经网络上考虑:防止在计算点积…

【Linux】程序地址空间 -- 详解 Linux 2.6 内核进程调度队列 -- 了解

一、程序地址空间回顾 在学习 C/C 时,我们知道内存会被分为几个区域:栈区、堆区、全局/静态区、代码区、字符常量区等。但这仅仅是在语言层面上的理解,是远远不够的。 如下空间布局图,请问这是物理内存吗? 不是&…

C语言scanf函数详解..

1.前言 前面说过了printf函数 他是将二进制表示的整数、浮点数、字符、字符串根据转换规范转换成字符或者字符串 并且打印到了控制台上 那么既然有了输出函数 那么肯定也有输入函数咯 的确如此 他就是scanf函数 他是将字符或者字符串根据转换规范转换成二进制表示的整数、浮点…

Conda管理Python不同版本教程

Conda管理Python不同版本教程 目录 0.前提 1.conda常用命令 2.conda管理python库 不太推荐 pyenv管理Python不同版本教程(本人另一篇博客,姊妹篇) 0.前提 ①anaconda、miniconda在win上推荐前者,在linux上推荐后者&#xff0…

随机过程及应用学习笔记(一)概率论(概要)

概率是随机的基础,在【概率论(概要)】这个部分中仅记录学习随机过程及应用的基本定义和结果。 前言 首先,概率论研究的基础是概率空间。概率空间由一个样本空间和一个概率测度组成,样本空间包含了所有可能的结果&…