4、生成式模型基础:自回归模型、变分自编码器(VAE)、生成对抗网络(GAN)、扩散模型的基本原理及其在视频生成中的应用
视频预测的核心挑战在于学习高维像素空间中的条件概率分布——给定历史帧,预测未来帧的分布。生成式模型正是解决这一问题的数学框架。本章将系统梳理四类主流生成模型:自回归模型、变分自编码器(VAE)、生成对抗网络(GAN)和扩散模型,重点剖析它们的数学原理、训练目标、在视频生成中的适配方式,以及各自的局限与适用场景。理解这些基础模型,是后续学习世界模型架构(如Dreamer、VideoPoet、Sora等)的必备前提。
上图展示了四类模型在视频预测任务中的定位:自回归模型直接建模条件概率,VAE提供潜空间压缩,GAN通过对抗训练提升逼真度,扩散模型则通过逐步去噪生成高质量样本。实际系统中,这些模型往往组合使用——例如用VAE压缩视频帧,再用扩散模型在潜空间生成,最后用自回归模型处理时序依赖。
4.1 自回归模型:逐帧逐token的条件概率分解
核心原理
自回归模型将视频序列的联合概率分解为条件概率的乘积:
P(x_1, x_2, ..., x_T) = ∏_{t=1}^{T} P(x_t | x_1, x_2, ..., x_{t-1})
在视频生成中,每个时间步的帧被进一步分解为空间token(如像素块或VQ-VAE编码的离散码)。模型使用Transformer或卷积LSTM作为骨干网络,按顺序预测每个token。训练时采用最大似然估计,即最小化负对数似然损失。
判断方法与操作流程
- 适用场景:需要精确密度估计、可控制生成、或处理离散token序列(如视频字幕、动作序列)时。
- 关键参数:上下文窗口长度(决定记忆范围)、token化方式(像素级、patch级、语义级)、模型深度。
- 训练流程:① 将视频帧编码为token序列;② 按时间顺序输入Transformer;③ 使用因果掩码确保只依赖过去信息;④ 优化交叉熵损失。
案例拆解:VideoPoet的token化自回归生成
Google的VideoPoet采用自回归框架,但将视频和音频统一编码为离散token。其核心流程为:
- 使用预训练的VQ-VAE将视频帧压缩为离散码本索引(每个8×8 patch对应一个token)。
- 将token序列按时间顺序展开,输入到仅解码器的Transformer中。
- 训练时随机mask部分未来token,让模型学习预测被mask的内容。
- 推理时,模型逐token生成,每生成一个token就将其追加到输入序列末尾。
该方案的优势在于统一了文本、图像、视频和音频的生成范式,但生成速度受限于逐token解码——生成一个2秒的24fps视频(48帧,每帧256个token)需要12300次前向传播。
4.2 变分自编码器(VAE):潜空间中的压缩与重建
核心原理
VAE由编码器\( q_\phi(z|x) \)和解码器\( p_\theta(x|z) \)组成,通过最大化证据下界(ELBO)训练:
L = E_{q_\phi(z|x)}[log p_\theta(x|z)] - KL(q_\phi(z|x) || p(z))
第一项是重建损失,第二项是KL散度,将潜变量分布拉向先验(通常为标准正态分布)。在视频生成中,VAE通常不直接生成视频,而是作为压缩模块——将高维视频帧映射到低维潜空间,降低后续模型的计算负担。
判断方法与操作流程
| 维度 | 标准VAE | 视频VAE(如VideoGPT的VQ-VAE) |
|---|---|---|
| 输入 | 单张图像 | 连续视频帧 |
| 潜变量结构 | 独立高斯分布 | 时空离散码本 |
| 时序建模 | 无 | 3D卷积或时间注意力 |
| 主要用途 | 图像生成、异常检测 | 视频压缩、特征提取 |
实战场景:用VAE压缩视频帧加速扩散模型
在Stable Video Diffusion中,VAE将256×256×3的视频帧压缩为32×32×4的潜变量,压缩比达到48倍。具体操作:
- 使用3D VAE(时间维度也进行下采样)处理视频片段,得到潜变量张量。
- 在潜空间上训练扩散模型,而非直接在像素空间操作。
- 推理时,扩散模型生成潜变量序列,再通过VAE解码器重建视频帧。
这一方案将扩散模型的计算量降低了一个数量级,同时保持了生成质量。但需要注意,VAE的重建误差会直接影响最终视频质量——如果VAE重建模糊,扩散模型生成的视频也会模糊。
4.3 生成对抗网络(GAN):对抗训练驱动的逼真生成
核心原理
GAN由生成器G和判别器D组成,两者进行极小极大博弈:
min_G max_D E_{x~p_data}[log D(x)] + E_{z~p_z}[log(1 - D(G(z)))]
生成器试图生成以假乱真的视频帧,判别器则努力区分真实帧和生成帧。在视频生成中,判别器通常同时接收空间(单帧)和时间(多帧)信息,以检测时序不一致性。
判断方法与操作流程
- 适用场景:需要快速生成、且对多样性要求不高的任务(如视频风格迁移、超分辨率)。
- 训练技巧:使用谱归一化稳定训练、采用多尺度判别器捕捉不同时间粒度的特征、加入重建损失防止模式崩溃。
- 评估指标:FVD(Fréchet Video Distance)是衡量生成视频质量的常用指标,同时考虑帧质量和时序连贯性。
案例拆解:MoCoGAN的隐空间分解
MoCoGAN将视频生成分解为内容空间(静态特征,如物体类别)和运动空间(动态特征,如姿态变化)。其架构为:
- 从内容空间采样固定向量c,从运动空间采样时间序列向量m_1, m_2, ..., m_T。
- 将c和每个m_t拼接,输入生成器生成对应帧。
- 判别器分别判断单帧真实性(内容判别器)和帧间运动一致性(运动判别器)。
这种分解使得模型可以控制生成视频的内容和运动,但训练时容易出现判别器过强导致生成器梯度消失的问题。实践中需要精心调节两个判别器的学习率比例。
4.4 扩散模型:从噪声中逐步恢复视频
核心原理
扩散模型包含两个过程:前向过程逐步向数据添加高斯噪声,直到变成纯噪声;反向过程学习逐步去噪,从噪声中恢复数据。训练目标是预测噪声:
L = E_{t, x_0, ε} [ || ε - ε_θ(x_t, t) ||^2 ]
其中\( x_t = \sqrt{\bar{\alpha}_t} x_0 + \sqrt{1-\bar{\alpha}_t} ε \)。在视频生成中,扩散模型通常处理潜空间中的视频张量,并使用3D U-Net或Transformer作为去噪网络。
判断方法与操作流程
| 步骤 | 操作 | 关键参数 |
|---|---|---|
| 1. 数据准备 | 将视频裁剪为固定长度片段(如16帧) | 片段长度、分辨率 |
| 2. 潜空间编码 | 使用预训练VAE将像素空间映射到潜空间 | VAE压缩比 |
| 3. 前向加噪 | 按时间步t添加高斯噪声 | 噪声调度(线性、余弦) |
| 4. 反向去噪 | 训练网络预测噪声,逐步去噪 | 总步数(通常1000步) |
| 5. 采样生成 | 从随机噪声开始,迭代去噪T步 | 采样器(DDIM、DPM-Solver) |
实战场景:文本到视频生成的完整流程
以Sora的技术路线为例,其核心流程为:
- 使用视频压缩网络(类似VAE)将视频映射到时空潜空间。
- 在潜空间上训练扩散Transformer,以文本嵌入为条件。
- 推理时,从随机噪声开始,结合文本条件进行迭代去噪。
- 将生成的潜变量解码为像素级视频。
扩散模型的优势在于生成质量高、覆盖多模态条件,但采样速度慢(通常需要数十步迭代)。实际工程中常用DDIM将采样步数从1000减少到50步,或使用蒸馏技术进一步加速。