在聊 Sora 合成音频前,先说点题外话。
相信这几天,大家已经被 OpenAI Sora 视频各种刷屏了。各种“培训机构”也蠢蠢欲动,开始海报宣传卖课了,大意是:原价大几百,限时优惠只要几十块。先人一步掌握 Sora 各种专属提示词,专用技巧等等。
类似的话术不要太多,这类事情我以前就聊过(AI 浪潮下的一些浅思),现在一点也不想聊了。能接触到 AI 的读者,如果还没有基本的信息分辨力,被骗也只能怪自己了...
前几天写过一篇关于 Sora 的文章(AGI 里程碑:OpenAI Sora 从文字图像到视频),评论区有人问哪里可以使用,现在明确告诉大家,它还不可以使用:
目前 Sora 放出的信息只是产品演示,并未对外开放使用。所以这不是花钱多少的问题,而是普通人压根无法使用。
目前网上流传的视频都是由 OpenAI 或指定的少部分测试用户生成,据我所知,目前国内应该没有测试用户。距离真正上线还需要经过更多专业人士的测试,才会被真正应用到生产(少则几周,多则几个月,半年也是有可能的)。
国内自媒体乱象丛生,已经不能简单地用造谣来形容了。还需要当事人主动站出来在朋友圈辟谣,求大家帮忙举报(这些人研究前沿领域已经很烧脑了,还要为这些鸡毛蒜皮分神,只能说造谣党真是为了流量不择手段...)。
📌 谢赛宁是 Scalable Diffusion Models with Transformers[1] 论文的作者之一。想了解作者更多信息,可以去他的个人主页
https://www.sainingxie.com
。
以上都是题外话,主要是最近的垃圾文太多,实在有点看不下去了...,下面进入今天的主题。
Sora 工作原理
原文:Video generation models as world simulators[2]
这篇技术报告主要分为两个部分:
介绍了 OpenAI 如何将不同类型的视觉数据转化为统一的表示形式,以便于进行生成模型的大规模训练
提供了对 Sora 模型能力及其局限性的定性评估,但未详细介绍模型的具体实现细节
Sora 模型是一种扩散型 Transformer,与传统的 Transformer(包含编码器和解码器)在处理方式上类似,但其处理的并不是文本 Token,而是被称为 Patches 的视觉数据(来自网友解释:patch 其实就是图片拆成 NxN 的小方格生成的 embedding,比如一张 256x256 的图片,把它打碎成 256 张 16x16 的小图就叫做 patches)。Sora 的编码器能够将视频压缩到一个低维潜在空间,并将其分解成 Patches,也能够从这些 Patches 反向解码生成视频图像。
这些能力使模型不仅能够根据用户的提示生成视频,还能对现有的图像或视频进行多种形式的编辑处理,例如创造完美循环的视频、合成多个视频、为静态图像添加动画效果、以及扩展视频的时长等。
报告还强调,通过扩大视频生成模型的规模,OpenAI 将朝着创建能够模拟物理世界的通用工具迈出重要的一步。
有用户将 Sora 生成的两个视频进行合并,效果惊人。
也有用户同时使用 Sora、Pika、RunwayML 和 Stable Video 进行了相同 prompt 测试,最明显的就是时长差距了。
📌 补丁 & 扩散变换器补丁 (Patches)
在处理视频和图像数据时,"补丁"是将这些视觉数据分解成小块或小部分的一种方法。想象一下,就像你把一张大海报切成许多小方块,每个小方块捕捉到海报的一小部分图像。这些小方块(即补丁)可以独立处理和分析,使得计算机能更高效地理解和生成视觉内容。通过将视频压缩到一个低维度的潜在空间,然后把这个空间的表示分解成多个补丁,可以让模型更好地处理和生成高质量的视频和图像内容。这种方法允许模型处理不同分辨率、持续时间和宽高比的视觉数据,为视频和图像生成提供了更大的灵活性和能力。
扩散变换器 (Diffusion Transformers)
"扩散变换器"是一种结合了扩散模型和变换器架构的先进技术,用于生成高质量的视觉内容。扩散模型通过逐步从包含噪声的数据中恢复出干净的数据,来生成图像或视频。这个过程类似于从一幅模糊不清的图片逐渐恢复出清晰的图像。变换器是一种强大的模型架构,能够处理复杂的数据关系和模式,常见于语言处理和图像识别等任务中。
将扩散模型与变换器结合,创建了一种新型的"扩散变换器",它利用变换器处理数据间复杂关系的能力,以及扩散模型逐步精炼数据的策略,来生成或预测视频和图像中的"干净"补丁。这种结合使得扩散变换器在视频生成领域表现出色,随着训练的深入,能够生成越来越高质量的视频内容。
简而言之,"补丁"通过将视觉数据分解成更小、更易于处理的部分来改善视频和图像的处理与生成。而"扩散变换器"则利用扩散模型和变换器的结合,有效地生成高质量的视觉内容,尤其在视频生成方面展现出其强大的能力。这两个概念共同推动了视频和图像生成技术的发展,使其能够产生更加逼真和高质量的视觉作品。
虽然文章很长,并未涉及模型训练细节(只是包含了大量视频演示)。这里推荐 Jia-Bin Huang[3] 录制的一个视频 How does OpenAI's Sora work?[4],用短短的 4 分半钟解释了 Sora 的工作原理(注:视频中文字幕由网站自带翻译提供,并不准确,仅供参考)。
嵌入音频
Sora 生成的视频通常并不包含声音,再惊艳,也是个哑巴视频。但现在 ElevenLabs 为 Sora 生成的视频提供了合成音频。突然感觉事情一下子就圆满了许多...,打开下面的视频和声音,感受一下吧。
Sora 生成视频,ElevenLabs 提供音频合成
用户为 Sora 生成的视频提供音频合成
📌 ElevenLabsElevenLabs[5] 是一款被评为最佳的在线文本转语音(TTS)软件,允许用户免费创建高级 AI 语音,并能够在几分钟内使用角色 AI 声音生成器快速生成文本到语音旁白。该软件支持将文本转换为 mp3 格式,覆盖 29 种语言和超过 100 种声音选项。同时,它还属于一个专注于开发和部署先进语音 AI 技术的研究实验室,该实验室研究新的语音 AI 前沿,提供了一系列工具用于生成高质量的长篇合成语音、声音克隆和自动配音功能。
为生成的视频配音其实是一个复杂的现实问题。这里引用一下 @DrJimFan[6] 的观点,大意:不但需要准确地将视频对象与音频一一映射,还需要在潜在空间中模拟一些隐含的物理规律。以下是端到端变换器需要处理的事情,以正确模拟声波:
识别每个对象的类别、材料和空间位置
识别对象之间的高阶互动:一根棍子是击打木质、金属还是鼓面?以什么速度?
识别环境:餐厅?空间站?黄石国家公园?
从模型的内部记忆中检索对象和周围环境的典型声音模式。
运行“软”物理规则,拼凑并调整声音模式的参数,或者甚至即兴合成全新的声音。这有点像游戏引擎中的“程序化音频”。
如果场景繁忙,模型需要根据它们的空间位置叠加多个声音轨道。
而上述所有都不是显式模块!所有这些都将通过大量的(视频,音频)对进行梯度下降学习,这些对在大多数互联网视频中自然是时间对齐的。注意力层将在其权重中实现这些算法,以满足扩散目标。最大的问题:我们还没有这样高质量的 AI 音频引擎,但这里有一篇非常启发性的论文,叫做《像素之声》(The Sound of Pixels[7]),它发表于 5 年前。
像素之声
PixelPlayer 是一个由麻省理工学院计算机科学与人工智能实验室及大脑与认知科学系的研究团队开发的系统。该系统通过分析大量未标记的视频,能够学习识别视频中哪些区域在产生声音,并将声音分离成代表每个像素声音的组件。PixelPlayer 的核心在于利用视觉与音频之间的自然同步,无需人工监督即可共同解析声音和图像。系统训练时不需要关于视频中乐器的种类、位置或声音的先验知识,通过观察人们演奏乐器的视频进行自我学习。在测试阶段,系统能够处理显示人们演奏不同乐器的视频,并对单声道音频输入进行音视频源分离和定位,最终实现将声音信号分割成多个通道,每个通道对应一个乐器类别,并能为视频中的每个像素指定一个独立的音频波形。
以下是网站提供的例子演示,点击视频上的不同区域(对象:乐器或空气),会发出不同的声音。
Scalable Diffusion Models with Transformers: https://arxiv.org/abs/2212.09748
[2]Video generation models as world simulators: https://openai.com/research/video-generation-models-as-world-simulators
[3]Jia-Bin Huang: https://twitter.com/jbhuang0604
[4]How does OpenAI's Sora work?: https://youtu.be/fG3IE9dkyKY?si=BQQH4YdtuH5nKbYy
[5]ElevenLabs: https://elevenlabs.io
[6]@DrJimFan: https://twitter.com/DrJimFan
[7]The Sound of Pixels: http://sound-of-pixels.csail.mit.edu
网友评论