今年2月,OpenAI推出了Sora,以其“世界模拟器”功能引发了全球的关注。他能够使得Sora能够像人类一样理解、学习和推理,模拟复杂世界事件。这种能力的提升让人们对AI的潜力和未来影响产生了深刻的思考和一定程度的担忧。很多人对Sora使用的什么技术而感到惊奇。开放传神(OpenCSG)将给大家带来深度的技术解析,关于Sora以及其背后的多模态大模型技术的前世今生。
通过本篇文章你能够了解到以下信息:
Sora是什么?
大语言模型是什么?他的优点和缺点?
多模态大模型是什么?有哪些经典的方法?
扩散模型是什么?他的优点,缺点。
Sora的可能采用的技术?
Sora是什么?
Sora是OpenAI推出的文生视频大模型,根据提供的文字,生成具有连贯性、复杂的、稳定的、清晰度高的、真实的、能理解语意且时间大概在60s左右的视频,当然这些词只能泛泛的概括Sora,这也是为什么将Sora称为世界模拟器。
从Open AI官方发布的视频我们可以捕捉到的信息是炸裂的,而且结合OpenAI自家的ChatGPT的能力,推理、学习、感知物理世界等,已经让Sora的能力甩开其他的文生视频大模型一大截,官方并没有给出太多的信息,以及开放权限试用。具体的技术也是基于相关的资料推测,开放传神继续揭秘大模型的秘密。
当我们谈论多模态大模型时,我们实际上是在谈论一种能够理解和处理多种类型信息的能力,这些信息可以包括文本、图像、音频、视频等。而Sora,作为OpenAI在这一领域的杰出代表,已经展现出了令人瞩目的实力。
从技术角度来看,Sora的强大之处在于其深度学习算法和大规模数据训练的完美结合。通过利用OpenAI强大的计算资源,Sora得以在海量数据中挖掘出有价值的信息,进而形成自己独特的理解和表达方式。这种理解和表达方式不仅让Sora能够生成连贯、复杂的视频内容,还让其能够准确地理解并响应人类的语义。下面,让我们首先深入多模态大模型技术的前世今生,探索Sora成名的背后基石。
大语言模型
基于transformer架构的大语言模型生成视频技术路线,这是视为生成视频领域中扩散模型之外的另外一种解法和出路,那么它是怎么个原理呢?
首先OpenCSG给大家先科普一个词:Token,Token是深度学习模型处理数据的基本单元。它是指一组符号或标识符,用于表示数据或信息中的一个特定元素。在视频和声音编码中,token可以理解为视频的“单词”和声音的“单词”,即将连续的媒体数据切分成离散的、可以被模型处理的小块。记住这个词,后面会用到。
大语言模型生成视频是通过理解视频内容的时间和空间关系来实现的。
大语言模型(Large Language Models)是一类使用深度学习技术训练的人工智能模型,它们专门设计用于处理和理解自然语言数据。这些模型通常基于神经网络架构,如Transformer,能够捕捉和学习语言的复杂结构和模式。大语言模型的特点和功能包括:
大语言模型对于大家来说并不陌生。大语言模型运用到视频上如下:
大语言模型让它以去做一些视频的任务或者是文本的一些任务,基于大语言模型的video point是这样运作的。视频和声音编码成离散的token,token在video point的例子中,通俗一点可以理解成视频的单词和声音的单词,模型训练和内容生成那么有了这些token词汇,就可以根据用户给的输入像学习文本token那样,模型就会开始生成内容,对于视频生成,这意味着模型需要创建连贯的帧序列,这些帧不仅在视觉上符合逻辑,还要在时间上保持连贯性。
在用大语言模型生成的视频的相比于扩散模型,又有一样的优缺点:
优点:
缺点:
OpenCSG揭秘多模态基础模型
视觉理解
ViT: An Image is Worth 16x16 Words: Transformers for Image Recognition at Scale
概述:将transformer引入视觉任务,并借助大规模数据的预训练,在几乎所有视觉下游任务上屠榜。
核心点:
影响:
CLIP: Learning Transferable Visual Models From Natural Language Supervision
概述:首次引入400M量级的图文对,利用对比学习对视觉和语言模型进行预训练,在30个下游任务上实现了媲美监督训练的zero-shot性能
核心点:
影响:将多模态大模型这个坑变得更大了。
SAM: Segment Anything
概述:首次引入11M images + 1B masks量级的数据集,在CV领域引入大模型的概念,实现了革命性的2D图像分割解决方案
核心点:
影响:引起了人们对视觉大模型的极大兴趣,进一步推动了多模态大模型的发展
生成模型
要讲Sora就一定要讲生成模型,而扩散模型则是当前最主流的一种生成模型。扩散这个词语来源于物理现象,将一滴墨水滴入到水中,这个墨水会扩散到水中的这个过程,且这个过程不可逆,但是我们可以学习这个过程,墨水扩散的过程,将其想象成电影倒叙播放的过程,一步一步他如何在变回之前的那一滴墨水一样,它是一个扩散的一个逆过程,这个过程放在图片中,出现一个新的词,叫做噪声。
扩散模型(Diffusion Models)的核心思想是通过模拟物质从高浓度区域向低浓度区域扩散的物理过程来生成数据,特别是在图像和视频生成领域。在AI中,这个过程被逆向应用,从而实现从随机噪声生成有意义的图像或视频。以下是扩散模型的几个关键步骤:
扩散模型的几个关键步骤就是一张图片及多张图片反复迭代多张以后的。图片是2D,只有宽度和高度,而视频是基于图片的基础上增加一个时间轴,学习这个扩散的逆过程,以前相当于以2D的一个逆过程,现在变成一个3D的过程。这也是为什么生成视频要比生成图片困难这么多?
扩散模型的优点:
扩散模型的缺点:
下面让我们来学习3个经典的扩散模型方法。
Diffusion:Denoising Diffusion Probabilistic Models, DDPM
动机:一个分布可以通过不断地添加噪声变成另一个分布
核心点:
影响:后续stable diffusion,DiT等工作的基础
缺点:DDPM始终会对同一个尺寸的数据进行操作,图像的尺寸极大地影响了DDPM的运行速度,用DDPM生成高分辨率图像需要耗费大量计算资源
DDPM直接在图像像素空间进行操作,而现有大多数生成模型选择在latent space中进行操作,也就是先用预训练好的自编码器(AE)将图像编码到latent space中,再使用DDPM进行加噪和去噪过程,生成压缩后的图像(latent space),最后使用预训练好的decoder进行解码,生成高分辨的图像
Stable Diffusion:High-Resolution Image Synthesis with Latent Diffusion Models
摘要:扩散模型的生成效果很好,但是,在像素空间上训练和推理扩散模型的计算开销都很大。为了在不降低质量与易用性的前提下用较少的计算资源训练扩散模型,我们在一个预训练过的自编码器的隐空间上使用扩散模型。相较以往的工作,在这种表示下训练扩散模型首次在减少计算复杂度和维持图像细节间达到几近最优的平衡点,极大地提升了视觉保真度。通过向模型架构中引入交叉注意力层,我们把扩散模型变成了强大而灵活的带约束图像生成器,它支持常见的约束,如文字、边界框,且能够以纯卷积方式实现高分辨率的图像合成。我们的隐扩散模型(latent diffusion model, LDM) 在使用比像素扩散模型少得多的计算资源的前提下,在各项图像合成任务上取得最优成果或顶尖成果。
模型框架:
约束机制:
根据论文中实验的设计,对于作用于全局的约束,如文本描述,使用交叉注意力较好;对于有空间信息的约束,如语义分割图片,则用拼接的方式较好。
摘要总结:论文提出了一种叫LDM的图像生成模型。
DIT:Scalable Diffusion Models with Transformers
动机:以往的diffusion以CNN为主,transformer是否可以用于diffusion架构?
核心点:模型架构设计为主
1. 图像输入:[224, 224, 3] --> AE --> [I, I, C] --> patchify --> [(I/p)^2, d]
2.条件控制:前两种和SD中的类似,第三种则是使用adapter LN替换transformer中标准的LN层,来回归缩放和平移系数,且使用全零初始化
影响:利用transformer将diffusion模型变成了可扩展的形式,成为后续更大规模文生图,文生视频的基础模型架构。
OpenCSG对多模态的理解
BLIP-2: Bootstrapping Language-Image Pre-training with Frozen Image Encoders and Large Language Models
动机:如何在降低模型训练成本的同时,获得很好的性能。
贡献:针对VLP模型训练导致计算代价过高的问题,提出了一种借助现成的冻结参数的预训练视觉模型和LLM的高效VLP方法。
核心点:设计 Querying Transformer (Q-Former) 可学习模块,用于提取对文本有用的视觉表征,并传递至LLM,减轻LLM学习视觉-文本对齐的负担。
mPLUG-Owl: Modularization Empowers Large Language Models with Multimodality
动机:大多数方法如BLIP2、LLaVA、Kosmos-1、MiniGPT4,都会冻住视觉编码器,而mPLUG-Owl则认为冻住视觉模块会限制模型关联视觉知识和文本知识的能力,而训练视觉模块可以得到更好的跨模态理解能力
贡献:
CogVLM: Visual Expert for Pretrained Language Models
背景:现有shallow alignment方法使用Q-Former或者linear层对齐视觉和语言特征,虽然收敛快,但是视觉性能较差且幻觉明显
动机:能否在保持LLM语言能力的同时,获得强大的视觉理解能力?
核心点:
DeepSeek-VL: Towards Real-World Vision-Language Understanding
数据构建:广泛覆盖现实世界的场景,包括 web截图,pdf,OCR,图表和基于知识的内容 (专家知识,教科书)
模型架构:使用两路image encoder,分别对低分辨率提取 high-level 特征和高分辨率提取 low-level 特征 [576, 2048]
训练策略:第一阶段使用VL预训练数据对projector进行预热,第二阶段对projector+LLM进行联合预训练,第三阶段SFT。
多模态的生成
Next-GPT:Any-to-Any Multimodal LLM
动机:现有MLLM大多受到输入侧多模态理解的限制,无法以多模态生成内容
核心点:
轻量级多模态模型
TinyLLaVA: A Framework of Small-scale Large Multimodal Models
动机:训练MLLM需要承担昂贵的计算资源和费用
核心点:更高质量数据+更好训练方法
缺点:
MobileVLM: Vision Language Model for Mobile Devices
动机:在实现资源受限的边缘设备高效视觉感知
模型架构:为边缘设备定制的LLM(MobileLLaMA)
设计了一个高效的投影器(称为“轻量级下采样投影器”,LDP),在减少推理预算的同时更好地对齐多模态特征。
训练策略:
Efficient Multimodal Learning from Data-centric Perspective
动机:弥合大小模型性能差距的另一个方向是数据优化
现有工作:利用现成的轻量级LLM主干(如Phi)和小视觉编码器,或者针对定制轻量级 MLLM 设计的模型架构
核心点:通过数据集压缩构建更多信息的训练数据
Pre-training:从LAION-2B中构建了一个高质量的预训练数据 Bunny-pretrain-LAION0-2M的核心集,利用CLIP embedding设计了一个three-step核心集选择方案
Fine-tuning:基于智源自己的DataOptim仓库,利用SVIT-mix-665K,将其中的ShareGPT-40K替换为wizardlmevolution -instruct- 70k,得到Bunny695K
Sora的可能采用的技术?
经过OpenCSG的介绍多模态大语言模型之后,有没有一种大彻大悟的感觉。你是否会和OpenAI的观点一致,把这两者技术结合在一起,那不是封神了!没错,Sora之所以这么厉害,可能是扩散模型和大语言模型的结合。
OpenAI结合了扩散模型和基于transformer架构的大语言模型的AI视频生成技术旨在通过结合这两种技术的优势,提高视频生成的质量和稳定性。Sora在处理可变持续时间、分辨率和宽高比的视频和图像上进行联合训练,利用时空补丁(space-time patches)进行操作,以及transformer架构来增强视频生成的能力。
最后OpenCSG来做一个总结,Sora相对于Pika(Stable Diffusion)可能的优势:
PS:OpenCSG已经帮您整理好了Sora的相关资料,关注微信公众号「传神社区」,回复「sora」关键字,一键领取关于Sora学习资料(来自OpenCSG的算法团队,成员清华、北大、港科大、中科院等大牛们的心血之作),养成大神必修手册。