跳转至

Ideas around T2I2V models

导言

理解当下最流行的多模态模型(e.g., 生成text2image, text2video,理解image2text,video2text)

排行榜: Vbench

  • 当前主流的多模态生成模型(如图像生成和视频生成)主要采用Latent Stable Diffusion的方案框架。为了减少计算量,图像/视频等模态的数据(噪声)先经过VAE压缩得到Latent Vector,然后在文本信息的指导下进行去噪,最后生成符合预期的图像或视频。
  • 当前主流的多模态理解模型一般采用视觉编码器 + 模态对齐 + LLM的算法流程,充分复用已有视觉编码器的理解能力和LLM的基础能力。训练过程一般分为多个阶段,如先进行模态对齐的一阶段预训练,然后进行二阶段的参数微调。

2013 VAE

  • VAE(Variational Autoencoder,变分自编码器)是一种生成模型,结合了概率图模型和深度学习,主要用于学习数据的潜在表示并生成新数据。
  • VAE属于概率生成模型(Probabilistic Generative Model),神经网络仅是其中的一个组件,依照功能的不同又可分为编码器和解码器。
    • 编码器可将输入变量映射到与变分分布的参数相对应的潜空间(Latent Space),这样便可以产生多个遵循同一分布的不同样本。
    • 解码器的功能基本相反,是从潜空间映射回输入空间,以生成数据点。
  • 影响:变分自编码器(VAE)是一类常见的生成模型。纯VAE的生成效果不见得是最好的,但VAE还是经常会被用作大模型的子模块。

VAE

2014 对抗网络 GAN

  • generative adversarial network (GAN)是2014年提出的无监督训练方法1
  • 目的:给定一个训练集,学习生成与训练集具有相同统计数据的新数据。例如,在照片上训练的GAN可以生成新的照片,这些照片至少在人类观察者看来是真实的,具有许多真实的特征。
  • 网络结构:有两个网络,G(Generator)和D(Discriminator)功能分别是:3
    • G是一个生成图片的网络,它接收一个随机的噪声z,通过这个噪声生成图片,记做G(z)。
    • D是一个判别网络,判别一张图片是不是“真实的”。它的输入参数是x,x代表一张图片,输出D(x)代表x为真实图片的概率,如果为1,就代表100%是真实的图片,而输出为0,就代表不可能是真实的图片。
  • 核心思想:生成网络G的目标就是尽量生成真实的图片去欺骗判别网络D。而D的目标就是尽量把G生成的图片和真实的图片分别开来。这样,G和D构成了一个动态的“博弈过程”。 这意味着generator 没有被训练来最小化到特定图像的距离,而是欺骗了机器人。最理想的状态下,G可以生成足以“以假乱真”的图片G(z)。对于D来说,它难以判定G生成的图片究竟是不是真实的,因此D(G(z)) = 0.5
    • 换句话来说discriminator保存了generator网络训练出来的复杂loss函数2
  • 数学推导:基于概率论的两个网络的零和博弈(TODO)
  • 训练过程
    • 第一步训练D,D是希望V(G, D)越大越好,所以是加上梯度(ascending)。
    • 第二步训练G时,V(G, D)越小越好,所以是减去梯度(descending)。
    • 整个训练过程交替进行。
  • 推理过程:(猜测的)输入随机噪声,产生图片。
  • 拓展:DCGAN将CNN与GAN结合,把上述的G和D换成了两个卷积神经网络(CNN)
  • 缺点与局限性:Mode collapse(模式坍塌):generator 生成的图像都特别像。和训练的数据集太像了,导致几乎没有新亮点。
  • 原理图例

2015 简单图像分割 UNet

  • U-Net: Convolutional Networks for Biomedical Image Segmentation是最常用、最简单的一种分割模型了,它简单、高效、易懂、容易构建、可以从小数据集中训练。5
  • 目的:医疗影像语义分割任务
  • 网络结构:Unet网络非常的简单,前半部分就是特征提取,后半部分是上采样。在一些文献中把这种结构叫做编码器-解码器结构,由于网络的整体结构是一个大些的英文字母U,所以叫做U-net
    • Encoder:左半部分,由两个3x3的卷积层(RELU)再加上一个2x2的maxpooling层组成一个下采样的模块(后面代码可以看出);
    • Decoder:有半部分,由一个上采样的卷积层(去卷积层)+特征拼接concat+两个3x3的卷积层(ReLU)反复构成(代码中可以看出来);
  • 特点:对于图像语义较为简单、结构固定,并且数据量小的医疗图像,效果好
  • 原理图例

2020 扩散基础 DDPM

  • DDPM: Denoising Diffusion Probabilistic Models 提出了扩散模型
  • 核心思想
    • GAN也是生成图,但是两者原理完全不同;
    • GAN模型通过使得生成器拟合真实图片;
    • DDPM是拟合整个从真实图片到随机高斯噪声的过程,再通过反向过程生成新的图片。4
  • 特点:由于是一步步扩散出来的,可以看到演变的中间图过程。
  • 训练过程:
  • 原理图例:
  • 拓展:使用ResNet效果差,一般换成U-Net

2021 CLIP

2022 Stable Diffusion

理解原理

diffusion-explainer

  • High-Resolution Image Synthesis with Latent Diffusion Models 是Stable Diffusion开源出来的方法。
  • 目的:在Diffusion模型的基础上,使用类似CLIP的text encoder来实现 text to image
  • 改进点:
    • 如何引入多头Attention,来使得U-Net中文本与图像结合?
    • Diffusion的过程移动到被压缩后的图片上(latent space), 使得速度加快很多
  • 原理图例:6
  • 详细:

2023 DiTs

  • 使用Transformers替换扩散模型中U-Net主干网络,发现不仅速度更快,在许多任务上效果也更好。
  • 影响:扩散模型架构中U-Net并非不可替代,并且很容易使用诸如Transformers的结构替代U-Net

DiTs

2023 SDXL

  • SDXL: Improving Latent Diffusion Models for High-Resolution Image Synthesis , 人如其名是SD的改进版
  • 内容:
    • 在原本的扩散模型后加Refiner模型(也是扩散模型), 参数量达到2.6B(10GB左右) 在Latent特征进行小噪声去除和细节质量提升。7
  • SDXL Stable Diffusion XL是Stable Diffusion的最新优化版本, 如果Stable Diffusion是图像生成领域的“YOLO”,那Stable Diffusion XL就是“YOLOv3”。
    • You Only Look Once (YOLO) 最流行的目标检测算法。
  • Huggingface: SDXL and SD Turbo

2402 SD3

  • 2024年2月发布了 Stable Diffusion 3,

技术要点:

  1. Self-Attention:文本信息注入的方式,DiT模型在最初引入文本时,通常使用Cross Attention的方法结合文本信息,如Pixart-α、hunyuan DiT等。Stable Diffusion 3通过Self-Attention引入文本信息。相比于Cross Attention,使用Self-Attention引入文本信息不仅节省了Cross Attention的参数量,还节省了Cross Attention的计算量。9
  2. 引入了RMS-Norm,在每一个attention运算之前,对Q和K进行了RMS-Norm归一化,用于增强模型训练的稳定性。
  3. 同时使用了更大的VQGAN,VQGAN压缩得到的特征维度从原来的4维提升到16维等。

MMDiT

关键核心是新的多模态扩散 Transformer(Multimodal Diffusion Transformer,MMDiT)架构。

  • MMDiT 架构结合了 DiT 和矩形流(RF)形式。它使用两个独立的变换器来处理文本和图像嵌入,并在注意力操作中结合两种模态的序列。这意味着对于文本和图像两种不同的输入模态,MMDiT 分别使用不同的权重参数来进行编码和处理,以此能够更好地捕捉每种模态的特征和信息。

MM-DiT

2404 EasyAnimate 12B

EasyAnimate是阿里云人工智能平台PAI自主研发的DiT-based视频生成框架。13

  1. 更新到v5.1版本,应用Qwen2 VL作为文本编码器,支持多语言预测,使用Flow作为采样方式,除去常见控制如Canny、Pose外,还支持轨迹控制,相机控制等。[ 2025.01.21 ]
  2. 使用奖励反向传播来训练Lora并优化视频,使其更好地符合人类偏好,详细信息请参见此处。EasyAnimateV5-7b现已发布。[ 2024.11.27 ]
  3. 更新到v5版本,最大支持1024x1024,49帧, 6s, 8fps视频生成,拓展模型规模到12B,应用MMDIT结构,支持不同输入的控制模型,支持中文与英文双语预测。[ 2024.11.08 ]
  4. 更新到v4版本,最大支持1024x1024,144帧, 6s, 24fps视频生成,支持文、图、视频生视频,单个模型可支持512到1280任意分辨率,支持中文与英文双语预测。[ 2024.08.15 ]
  5. 更新到v3版本,最大支持960x960,144帧,6s, 24fps视频生成,支持文与图生视频模型。[ 2024.07.01 ]
  6. 更新到v2版本,最大支持768x768,144帧,6s, 24fps视频生成。[ 2024.05.26 ]

以下是EasyAnimate各版本更新的Markdown表格整理,综合公开资料与官方技术报告:

版本 发布时间 核心功能升级 技术特性 分辨率与帧率
v2 2024.05.26 文生视频 - 采用DiT基础架构
- 初步实现文本到视频生成
最大768×768@24fps (144帧/6秒)
v3 2024.07.01 新增图生视频功能
支持双图起止画面控制
- 引入Hybrid Motion Module
- 集成Slice VAE时间轴压缩技术
- 支持CLIP图像编码器
最大960×960@24fps (144帧/6秒)
v4 2024.08.15 支持视频生视频
动态分辨率适配
- 跨模态特征融合优化 最大1024×1024@24fps (144帧/6秒)
v5 2024.11.08 中英双语支持
多模态控制模型
- 采用MMDIT架构
- 模型参数扩展至12B
- 集成7种控制信号(OpenPose/Canny等)
1024×1024@8fps (49帧/6秒)
v5.1 2025.01.21 轨迹与相机控制
多语言预测优化
- Qwen2-VL作为文本编码器
- Flow采样方式改进
- 奖励反向传播训练机制
动态分辨率支持

关键技术演进路径

  1. 架构升级
    v2-v3实现从基础DiT到时空混合运动模块的跨越,通过奇数层全局注意力与偶数层时序注意力的交替堆叠,解决视频连贯性问题;v5引入MMDIT架构,为不同模态设计独立映射网络,实现多模态特征高效对齐。

  2. 生成能力突破
    通过Slice VAE技术实现时序压缩率1/4,使v4支持动态分辨率;v5的12B参数模型结合7种控制信号,可生成带精确构图引导的工业级视频。

  3. 交互方式创新
    v3首创双图起止画面控制,v5.1新增轨迹/相机控制,支持通过运动路径曲线和镜头参数调整视频运镜效果[用户提供信息]。

该框架现已在PAI平台实现一键式训练部署,最新版支持通过LoRA微调实现风格迁移。具体技术细节可参考官方技术报告GitHub仓库

通过图像引导视频生成的例子,来介绍Text Encoder作用的CrossAttention

V2 V3

基于MagViT的Slice VAE

  1. 已有工作:
    1. 在Stable Dif fusion使用VAE实现将每个视频帧编码为单独的潜在特征,从而将帧的空间维度显著缩小到宽度和高度的八分之一。但这种编码技术忽略了时间信息,将视频降级为静态图像表示。
    2. MagViT在时间轴上引入了一种前置时间填充方式,从而确保帧利用先前信息增强时间因果关系,同时不受后续帧的影响。但在极长视频序列的训练中面临挑战,
    3. 先前的研究(Blattmann)表明,将图像整合到视频训练流程中可以更有效地优化模型架构,从而改进其文本对齐并提高输出质量。
  2. 挑战:
    1. 基于图像的VAE无法在时间维度上进行压缩;
    2. 传统的视频 VAE(Variational Autoencoder)在将视频帧编码为潜变特征时,需要大量的计算资源,尤其是当视频的时间长度增加时,GPU 内存的需求会迅速增加。这限制了模型处理长视频的能力,因为在有限的内存中无法同时加载和处理所有帧。
  3. 改进思路:
    1. Slice VAE 采用了一种分批处理的方法,即在时间轴上对视频进行切片(slice)。通过这种方式,长视频被分割成多个较短的段落,每个段落可以独立编码和解码,从而显著减少了单次处理所需的内存。这使得模型能够在有限的内存资源下处理更长时间的视频。
    2. 切片策略不仅减少了内存使用,还允许在解码过程中跨批次共享特征,这有助于保持视频帧之间的一致性,并提高了解码后视频的质量。
    3. 此外,Slice VAE 能够适应不同的帧计数和分辨率,使得模型更加灵活,能够适应各种视频生成需求。

DiT

  1. Motion Module运动模块:运动模块专门设计用于嵌入时间信息。通过在时间维度上集成注意力机制,该模型获得了时间轴上的先验知识,这对生成视频运动至关重要。
  2. U-VIT:在 DiT 的训练过程中使用长跳跃连接(long-skip connections)旨在提高模型训练的稳定性。

多阶段训练

首先训练视频VAE,然后使用三阶段粗到细训练策略将DiT模型适应于新的VAE。(使用大约1200万个图像和视频数据来训练视频VAE模型和DiT模型)

  • VAE
    • 根据MagViT策略训练出初始权重,然后分两个阶段训练切片VAE:
    • 首先,我们在200k步内使用Adam优化器,β=(0.5,0.9),批量大小=96,学习率为1e-4训练整个VAE。
    • 接下来,参考Stable Diffusion的程序,在100k步的第二阶段训练解码器,以更好地提高解码视频的保真度。
  • DiT训练思路:从较低分辨率到较高分辨率逐步训练的。
    • 最初,在引入新的视频VAE时,我们开始将DiT参数与该VAE对齐,此时仅使用图像数据。
    • 随后,我们使用大规模视频数据集和图像数据来预训练运动模块(Motion Module),从而引入DiT的视频生成能力。在此处,我们引入了数据集分桶策略用于以不同的视频分辨率进行训练。
    • 最后,我们使用高质量的视频数据来完善整个DiT模型,以增强其生成性能。

V5

数据规模:在大约10m SAM图片数据+26m 图片视频混合的预训练数据上进行了从0开始训练。11

对比EasyAnimateV4,EasyAnimateV5还突出了以下特点:

应用MMDIT,拓展模型规模到12B

参考Stable Diffusion 3和CogVideoX,在我们的模型中,我们将文本和视频嵌入连接起来以实现Self-Attention,从而更好地对齐视觉和语义信息。然而,这两种模态的特征空间之间存在显著差异,这可能导致它们的数值存在较大差异,这并不利于二者进行对齐。

为了解决这个问题,还是参考Stable Diffusion 3,我们采用MMDiT架构作为我们的基础模型,我们为每种模态实现了不同的to_k、to_q、to_v和前馈网络(FFN),并在一个Self-Attention中实现信息交互,以增强它们的对齐。

另外,为了提高模型的理解能力,我们将模型进行了放大,参考Flux,我们模型的总参数量扩展到了12B。

添加控制信号

使用控制信号替代了原本的mask信号,将控制信号使用VAE编码后作为Guidance与latent一起进入patch流程。该方案已经在CogVideoX-FUN的实践中证实有效。

我们在26m的预训练数据中进行了筛选,选择出大约443k高质量视频,同时使用不同的处理方式包含OpenPose、Scribble、Canny、Anime、MLSD、Hed和Depth进行控制条件的提取,作为condition控制信号进行训练。

工作原理图如下:

参考图添加Noise

在CogVideoX-FUN的实践中我们已经发现,在视频生成中,在视频中添加噪声对视频的生成结果有非常大的影响。参考CogVideoX和SVD,在非0的参考图向上添加Noise以破环原图,追求更大的运动幅度。

Pipeline结构如下:

提示词

另外,提示词对生成结果影响较大,请尽量描写动作以增加动态性。如果不知道怎么写正向提示词,可以使用smooth motion or in the wind来增加动态性。并且尽量避免在负向提示词中出现motion等表示动态的词汇。

基于Token长度的训练

EasyAnimateV5的训练分为多个阶段,除了图片Adapt VAE的阶段外,其它阶段均为视频训练,分别对应了不同的Token长度。

  1. 图片VAE的对齐: 我们使用了10M的SAM进行模型从0开始的文本图片对齐的训练,总共训练约120K步。在训练完成后,模型已经有能力根据提示词去生成对应的图片,并且图片中的目标基本符合提示词描述。

  2. 视频训练:

视频训练则根据不同Token长度,对视频进行缩放后进行训练。

视频训练分为多个阶段,每个阶段的Token长度分别是3328(对应256x256x49的视频),13312(对应512x512x49的视频),53248(对应1024x1024x49的视频)。

阶段 Token长度 对应视频分辨率 数据量 用途 Batch size 训练步数
3328 3328 256x256x49 26.6M 文生视频 1536 66.5k
13312 13312 512x512x49 17.9M 文生视频 768 30k
13312 13312 512x512x49 0.5M 图生视频 384 5k
53248 53248 1024x1024x49 0.5M 图生视频 196 5k

不同阶段通过合并训练目标和数据质量实现分辨率升级:

  1. 3328阶段:全量数据基础训练
  2. 13312阶段:高质量数据精调 + 图文对齐训练
  3. 53248阶段:最高质量数据超分训练

训练时我们采用高低分辨率结合训练,因此模型支持从512到1280任意分辨率的视频生成。

V5.1

对比EasyAnimateV5,EasyAnimateV5.1主要突出了以下特点:10

应用Qwen2 VL的文本编码器,支持多语言预测;

在MMDiT结构的基础上,将EasyAnimateV5的双text encoders替换成alibaba近期发布的Qwen2 VL;相比于CLIP与T5这样的传统编码模型,使用LLM作为Text Encoder慢慢在生成领域里流行起来,比如最近大火的HunyuanVideo模型。

尽管LLM的主力工作是生成,但对文本的编码与理解能力依然优秀,Qwen2 VL是多模态LLM中性能的佼佼者,对语义理解更加精准。而相比于Qwen2本身,Qwen2 VL由于和图像做过对齐,对图像内容的理解更为精确。

通过取出Qwen2 VL hidden_states的倒数第二个特征输入到MMDiT中,与视频Embedding一起做Self-Attention。在做Self-Attention前,由于大语言模型深层特征值一般较大(可以达到几万),为其做了一个RMSNorm进行数值的矫正再进行全链接,这样有利于网络的收敛。

奖励算法最终优化性能

请看RHLF一文

使用Flow-matching作为采样方式;

除了上述的架构变化之外,EasyAnimateV5.1还应用Flow-matching的方案来训练模型。在这种方法中,前向噪声过程被定义为在直线上连接数据和噪声分布的整流。Flow-matching采样过程更简单,在减少采样步骤数时表现良好。

其他

  1. 支持轨迹控制,相机控制等新控制方式;10
  2. 使用更多数据训练。

2407 InterlVL2 76B

这是理解模型,不是生成模型

Vision-Language Models (VLMs)

上海人工智能实验室(上海AI实验室)联合清华大学、香港中文大学、商汤科技等机构开源新一代书生·视觉大模型(InternVL)。性能和Qwen属于同一水平。

2408 Qwen2 VL 72B

这是理解模型,不是生成模型

  • 亮点:能处理各种分辨率和长宽比
  • 技术要点:
    • 引入了naive dynamic resolution技术,支持灵活处理不同分辨率的输入图像和视频
    • 创新性地提出了多模态旋转位置编码(M-RoPE),这有助于实现更高效的跨模态信息融合,从而增强了模型对于文本和视觉数据的理解能力
    • 构建了一个统一的图像和视频理解框架,其中图像被视作两个相同的帧来处理,以维持与视频处理逻辑的一致性
    • 并采用3D tubes替代传统的2D patches方法,进一步提升了对长时间序列视觉内容的理解深度

2408 CogVideoX 5B

2024年8月,智谱开源视频生成模型CogVideoX,先是2B模型,而后是5B模型,近期还开源了V1.5的模型:

技术特点:

  1. 自主研发了一套高效的三维变分自编码器结构(3D VAE)。降低了视频扩散生成模型的训练成本和难度。结合 3D RoPE 位置编码模块,该技术提升了在时间维度上对帧间关系的捕捉能力,从而建立了视频中的长期依赖关系。
  2. 拓展视频模型规模到5B,提升了模型的理解能力,使得模型能够处理超长且复杂的 prompt 指令。
  3. 模型与Stable Diffusion 3一致,将文本、时间、空间融合在一起,通过 Full Attention 机制优化模态间的交互效果。

多阶段训练

  • 低分辨率到高分辨率训练
  • 高质量数据微调

2412 HunyuanVideo 13B

HunyuanVideo 是一个隐空间模型,训练时它采用了 3D VAE 压缩时间维度和空间维度的特征。文本提示通过一个大语言模型编码后作为条件输入模型,引导模型通过对高斯噪声的多步去噪,输出一个视频的隐空间表示。最后,推理时通过 3D VAE 解码器将隐空间表示解码为视频。12

统一的图视频生成架构

HunyuanVideo 采用了 Transformer 和 Full Attention 的设计用于视频生成。具体来说,我们使用了一个“双流到单流”的混合模型设计用于视频生成。在双流阶段,视频和文本 token 通过并行的 Transformer Block 独立处理,使得每个模态可以学习适合自己的调制机制而不会相互干扰。在单流阶段,我们将视频和文本 token 连接起来并将它们输入到后续的 Transformer Block 中进行有效的多模态信息融合。这种设计捕捉了视觉和语义信息之间的复杂交互,增强了整体模型性能。

Flow Matching

Flow Matching框架来训练我们的图像和视频生成模型。Flow Matching通过对概率密度函数进行一系列变量变换,将复杂的概率分布转化为简单的概率分布,并通过逆变换生成新的数据样本。

MLLM 文本编码器

过去的视频生成模型通常使用预训练的 CLIP 和 T5-XXL 作为文本编码器,其中 CLIP 使用 Transformer Encoder,T5 使用 Encoder-Decoder 结构。HunyuanVideo 使用了一个预训练的 Multimodal Large Language Model (MLLM) 作为文本编码器,它具有以下优势:

  • 与 T5 相比,MLLM 基于图文数据指令微调后在特征空间中具有更好的图像-文本对齐能力,这减轻了扩散模型中的图文对齐的难度;
  • 与 CLIP 相比,MLLM 在图像的细节描述和复杂推理方面表现出更强的能力;
  • MLLM 可以通过遵循系统指令实现零样本生成,帮助文本特征更多地关注关键信息。

由于 MLLM 是基于 Causal Attention 的,而 T5-XXL 使用了 Bidirectional Attention 为扩散模型提供更好的文本引导。因此,我们引入了一个额外的 token 优化器来增强文本特征。

3D VAE

我们的 VAE 采用了 CausalConv3D 作为 HunyuanVideo 的编码器和解码器,用于压缩视频的时间维度和空间维度,其中时间维度压缩 4 倍,空间维度压缩 8 倍,压缩为 16 channels。这样可以显著减少后续 Transformer 模型的 token 数量,使我们能够在原始分辨率和帧率下训练视频生成模型。

Prompt 改写

为了解决用户输入文本提示的多样性和不一致性的困难,我们微调了 Hunyuan-Large model 模型作为我们的 prompt 改写模型,将用户输入的提示词改写为更适合模型偏好的写法。

我们提供了两个改写模式:正常模式和导演模式。两种模式的提示词见这里。正常模式旨在增强视频生成模型对用户意图的理解,从而更准确地解释提供的指令。导演模式增强了诸如构图、光照和摄像机移动等方面的描述,倾向于生成视觉质量更高的视频。注意,这种增强有时可能会导致一些语义细节的丢失。

Prompt 改写模型可以直接使用 Hunyuan-Large 部署和推理. 我们开源了 prompt 改写模型的权重,见这里.

2502 Step-Video-T2V 30B

4大技术特点:

  1. 第一,当前最大参数30 billion开源视频生成模型,可直接生成最长204帧、540P分辨率的视频,确保生成的视频内容具有极高的一致性和信息密度。
  2. 第二,针对视频生成任务设计并训练了高压缩比的Video-VAE,在保证视频重构质量的前提下,能够将视频在空间维度压缩16×16倍,时间维度压缩8倍。
    1. 当下市面上多数VAE模型压缩比为8x8x4,在相同视频帧数下,Video-VAE能额外压缩8倍,故而训练和生成效率都提升64倍。
  3. 第三,针对DiT模型的超参设置、模型结构和训练效率,Step-Video-T2V了进行深入的系统优化,确保训练过程的高效性和稳定性。
  4. 第四,详细介绍了预训练和后训练在内的完整训练策略,包括各阶段的训练任务、学习目标以及数据构建和筛选方式。
  5. 此外,Step-Video-T2V在训练最后阶段引入Video-DPO(视频偏好优化)——这是一种针对视频生成的RL优化算法,能进一步提升视频生成质量,强化生成视频的合理性和稳定性。

训练系统相关细节请看AI Training System 一文。

计算压缩比

根据论文中提到的时空下采样因子通道数变化,压缩比1:96的计算过程如下:


假设原始视频分辨率为\(T \times H \times W\)(时间×高度×宽度),每个像素有3个RGB通道。
总数据量为:
$$ \text{原始数据量} = T \times H \times W \times 3 $$


VAE通过时空下采样因子(如\(8 \times 8 \times 8\))压缩视频:
- 时间维度:压缩为\(T/8\)
- 空间维度:压缩为\(H/8 \times W/8\)
- 通道数:从3通道映射到16通道。

潜在表示的数据量为:
$$ \text{潜在数据量} = \frac{T}{8} \times \frac{H}{8} \times \frac{W}{8} \times 16 $$


压缩比为原始数据量与潜在数据量的比值:
$$ \text{压缩比} = \frac{T \times H \times W \times 3}{\frac{T}{8} \times \frac{H}{8} \times \frac{W}{8} \times 16} = \frac{3}{16} \times 8 \times 8 \times 8 = 96 $$

1:96,表示潜在空间数据量是原始数据的\(1/96\)


压缩比公式:
$$ \text{压缩比} = \left( \text{时间因子} \times \text{高度因子} \times \text{宽度因子} \right) \times \frac{\text{原始通道数}}{\text{潜在通道数}} $$
当使用\(8 \times 8 \times 8\)下采样时,结果为\(96:1\)

VideoVAE(没懂公式)

基础:文本到视频扩散-Transformer模型的效率依赖于潜在空间压缩能力。由于注意力计算成本与token数量的平方成正比,通过高效压缩减少时空冗余至关重要——既能加速训练/推理,又符合扩散过程对紧凑表示的天然偏好。

Video-VAE在编码器后期和解码器初期引入双路径架构,通过统一时空压缩实现8×16×16下采样:

  1. ​因果3D卷积模块:
    1. 编码器前期包含3个阶段,每阶段含两个Causal Res3DBlock和下采样层,后接融合卷积与注意力的MidBlock。
    2. 采用时间因果3D卷积(公式1):当前帧仅依赖历史帧,实现因果性建模,支持图像与视频联合训练。
  2. ​双路径潜在融合:
    1. ​Conv路径:结合因果3D卷积与像素重排(公式2),保留高频细节。
    2. ​Shortcut路径:通过分组通道平均(公式3)保留低频结构。
    3. 输出融合:残差求和(公式4)平衡两类信息,解决传统VAE模糊问题。

多阶段训练

  1. textto-image (T2I) pre-training,
    1. 我们有意避免直接进行文本到视频(T2V)预训练,
    2. 因为早期实验表明:当在40亿参数模型上尝试从头开始T2V预训练时,模型对新概念的学习能力显著下降且收敛速度大幅减缓。
    3. 通过先进行T2I预训练,模型可以建立对视觉概念的扎实理解,为后续处理视频时序动态奠定基础。
  2. text-to-video/image (T2VI) pre-training,模型进入T2VI联合训练阶段,同步进行文本到图像和文本到视频训练。该步骤进一步分为两个子阶段:
    1. 低分辨率预训练(192x320,192P):在此阶段使用低分辨率视频,使模型专注于运动模式的学习而非细节特征。我们观察到模型在此阶段主要获取运动知识。
    2. 高分辨率预训练(544x992,540P):提升视频分辨率后继续训练,促使模型学习更精细的视觉细节。实验显示此阶段模型学习重点转向细节捕捉。
    3. 基于以上发现,我们在步骤二的第1子阶段分配更多计算资源,以强化运动特征的获取能力。
  3. text-to-video (T2V) fine-tuning,
    1. 由于预训练视频数据在领域和质量的多样性,直接使用预训练模型生成视频时可能引入伪影和风格不一致的问题。
    2. 为缓解此类问题,通过T2V微调步骤进一步完善训练流程。在此阶段,我们使用少量文本-视频配对数据,并移除文本到图像(T2I)任务,使模型专注于文本到视频生成的适配优化。
  4. direct preference optimization (DPO) training.

supervisied fine-tuning

发现:

  • 对基于不同监督微调(SFT)数据集微调的模型进行权重平均(Model Averaging),可显著提升生成视频的质量与稳定性,其效果优于指数移动平均(EMA)方法。
  • 即使对同一数据源微调的多个检查点进行平均,也能增强稳定性并减少生成失真。
  • 此外,我们选择梯度范数达到峰值后阶段的模型检查点(即梯度范数与损失均下降的阶段),以确保生成结果的稳定性提升。

训练数据集构建

通过一系列逐步提高阈值的过滤器:

  • 为步骤二的T2VI预训练创建了六个预训练子集。
  • 并最终通过人工筛选构建监督微调(SFT)数据集。

图中展示了每个阶段应用的关键过滤器:灰色条表示被过滤的数据,彩色条为保留数据。

蒸馏Turbo(没懂公式)

  • 问题:传统扩散模型通过50-100步迭代求解ODE(Ordinary Differential Equation,常微分方程),逐步将随机噪声转化为视频帧(如Step-Video-T2V需50步生成204帧),导致生成1分钟视频需数十分钟计算。
  • 关键:减少迭代(函数评估次数Number of Function Evaluations,NFE)对提升推理效率至关重要。
  • 改进:通过自蒸馏(self-distillation)结合修正流目标(rectified flows)和专用推理策略,大规模训练的Video DiT模型可将NFE降至仅8步且性能几乎无损。具体实现如下:

  • 修正流蒸馏框架

基模型(Base Model)通过修正流(rectified flow)训练,蒸馏目标则是训练2-修正流模型(Liu等,2022),以在推理时构造更直接的ODE路径。如Lee等(2024)所述,2-修正流的损失函数为:
[ L(\theta, t) := \frac{1}{t^2} \mathbb{E}\left[ |v - u_\theta(x_t, t)|_2^2 \right] = \frac{1}{t^2} \mathbb{E}\left[ |x - \mathbb{E}[x|x_t]|_2^2 \right] + \tilde{L}(\theta, t) \tag{10} ]
由于所有训练样本均由1-修正流基模型生成,不可约损失(第一项)较小,而可约误差(第二项)可通过加权困难时间步高效优化。具体而言,2-修正流的训练损失在时间区间\(t \in [0,1]\)两端较大、中间较小。

  • 数据与训练策略

使用SFT数据提示的精选分布生成约95,000个样本(50 NFE),并通过设计的正/负提示构建蒸馏数据集。修改时间步采样策略为U型分布
[ p_t(u) \propto \exp(a u) + \exp(-a u) \quad (u \in [0,1], a=5) ]
较大的\(a\)值适应视频模型对时间偏移的更高需求。推理时观察到,随着训练推进,模型需要更大的采样时间偏移和更低的分类器无关引导(CFG)规模。通过结合线性衰减的CFG调度(式11),我们的模型能以10倍更少步骤达到同等生成质量。图6展示了Turbo模型以10 NFE生成的204帧样本。


2502 Wan-Video

  • 亮点:闭源版本重新成为vbench榜首模型
  • 当前论文暂时没出来
  • 来自阿里云

高效VAE

  • wan-vae实现了参数量小情况下的,输出效率最高,图像质量也数一数二。
  • PSNR全称为Peak Signal to Noise Ratio,即峰值信噪比,经常用于计算两幅图像的可视化误差,最小值为0,越大代表两张图片差异越小。

DiT

  • Flow Matching
  • 特殊:(待研究)
    • time embeddings: an MLP with a Linear layer and a SiLU layer to process
    • 单独训练权重?predict six modulation parameters individually. This MLP is shared across all transformer blocks, with each block learning a distinct set of biases

参考文献

https://arxiv.org/pdf/2405.18991

https://blog.csdn.net/weixin_48534929/article/details/139430996

https://blog.csdn.net/weixin_44791964/article/details/139223972?spm=1001.2014.3001.5502

https://blog.csdn.net/weixin_44791964/article/details/140025591?spm=1001.2014.3001.5502


  1. GAN wiki 

  2. 一篇文章弄懂GAN网络 

  3. GAN学习指南:从原理入门到制作生成Demo 

  4. AIGC爆火的背后——扩散模型DDPM浅析 

  5. 图像分割必备知识点 | Unet详解 理论+ 代码 

  6. The Illustrated Stable Diffusion 

  7. 深入浅出完整解析Stable Diffusion XL(SDXL)核心基础知识 

  8. Sora真能理解什么是吃意大利面吗?【差评君】 

  9. https://blog.csdn.net/weixin_44791964/article/details/145310822 

  10. https://blog.csdn.net/weixin_44791964/article/details/145310822 

  11. https://blog.csdn.net/weixin_44791964/article/details/143660061 

  12. https://github.com/Tencent/HunyuanVideo/blob/main/README_zh.md 

  13. https://www.51cto.com/aigc/1015.html 

评论