视觉领域的 AR 模型
这篇文章基于 Autoregressive Models in Vision: A Survey 这个库搜集了视觉领域 AR 模型的相关论文: github ChaofanTao/Autoregressive-Models-in-Vision-Survey
AR 模型过程
序列表示
要想训练一个视觉 AR 模型,我们首先需要能够把视觉数据表示成线性的离散元素。这些元素可能对应着像素信息、图像的 patches 又或者是图像的 latent codes.
AR 序列建模
得到了线性表示的视觉内容以后,我们需要训练模型依赖于前文已知的所有元素生成下一个元素的能力。也就是 Next-X prediction.
训练的目标是要最小化 negative log-likelihood loss(NLL loss). 也就是:
常见的视觉 AR 模型
文献分类
Pixel-based models
直接 rasterize 像素,形成序列。
但是这种方法很难生成高分辨率的图像:
- 随着序列长度的增加,计算成本是平方增长的。
- 图像的 pixel 之间有过多的冗余信息。
Token-based models
把图像或者视频信息压缩成一串离散的 tokens, 这样才能用于更加高效的高分辨率图像的处理。
在训练过程中,我们首先需要训练一个 Eocder-decoder 架构,学习离散的图像表达。
Encoder 首先把图像表示为潜在表示 \(z_e(x)\) ,而后 Quantizer 使用了 VQ (矢量量化)技术来把连续的视觉特征压缩成一系列的 latent codes.
通过 VQ 技术,实现了潜在特征空间的紧凑和离散表示,这对于减少高维图像生成任务的计算负担特别有利。这方面开创性的工作是 VQVAE.
在训练的时候,我们一方面希望让生成的图像尽可能地接近原始图像,另一方面,也希望码本本身更能表达我们的特征。因此,总损失函数由三部分组成:重建损失(Reconstruction Loss)、代码本损失(Codebook Loss) 和 承诺损失(Commitment Loss)。
其中:\(z_e(x)\) 是编码器(Encoder)输出的连续向量。\(e\) 是从代码本中选出的最接近 \(z_e(x)\) 的嵌入向量(Embedding)。\(\text{sg}[\cdot]\) 代表 Stop-gradient 操作(即在反向传播时不计算该部分的梯度)。
在 VQVAE 的基础上, VQVAE-2 引入了一个多惊讶的分层架构,增强了生成图像的质量和多样化能力。得益于 VQVAE-2 的多层潜在表示能力,VQVAE-2 得以同时捕抓图像局部的与整体的信息。
Scale-based Models
VAR 背后体现的是一种 Residual Quantization (RQ) 的思想。这种方法最高在 RQ-VAE 中被提出。通过把标准的 VQ 改成逐步量化残差信息的方法, RQ-VAE 成功提升了 VQ 的效果。
与 VQ-VAE 不同,VQ-VAE 需要更大的码本来随着量化特征图的分辨率降低而保持质量,RQ-VAE 使用固定大小的码本,并通过以从粗到细的方式逐步逼近残差来量化向量 z 。
- \(z\) 是需要量化的向量。
- \(C\) 是共享的码本。
- \(D\) 是量化深度。
- \(k_d\) 是在深度 \(d\) 处选择的码本索引。
- \(r_{d-1}\) 是深度 \(d-1\) 处的残差向量(对于 \(d=1\),\(r_0 = z\))。
RQ-VAE 可以紧凑地表示高分辨率图像,降低空间分辨率,同时保留基本信息。
RQ-VAE 的思路是,对于每一个 token, 我们可以逐步对其进行细化,使其更接近于连续表示。但是 RQ-VAE 并没有把整张图像看作是一种可以去逼近的连续表示。 VAR 所做的正是这件事,把计算残差从一个 token-wise 的事情,升格到了一件 image-wise 的事情。
a). 保留空间局部性,这有助于零样本泛化到新任务,而不需要特定于任务的训练; b).通过在每个令牌映射内启用并行令牌生成,可以提高令牌生成的效率,从而降低整体计算复杂性。
计算复杂度
对于 Pixel-based models:
\(\sum_{i=1}^{N^2} i^2=\frac{1}{6} N^2\left(N^2+1\right)\left(2N^2+1\right)\)
也就是 \(O_T(n^6)\)
Next-token Prediction 的方式可以给图像提供一个压缩率 \(k\) 。因此图像的序列长度变成了 \((N/k)^2\).
| Require Tokenizer | Compression Ratio | Complexity | Efficiency | |
|---|---|---|---|---|
| Next-Pixel Prediction | x | - | \(O_T(N^6)\) | ☆ |
| Next-Token Prediction | ✓ | k | \(O_T(N^6/k^6) + O_C(N^2)\) | ☆ ☆ |
| Next-Scale Prediction | ✓ | k | \(O_T(N^4/k^4) + O_C(N^2)\) | ☆ ☆ ☆ |
对比
| 类别 | 代表模型 | 关键特点 | 优势 | 挑战/局限 |
|---|---|---|---|---|
| 像素级模型 | PixelRNN (2016), PixelCNN (2016), PixelCNN++ (2017), PixelSNAIL (2018), Image Transformer (2018), ImageGPT (2020) | 将图像展平为1D像素序列,逐个像素自回归预测。 | 直接优化似然函数,能捕捉细粒度空间细节,生成质量高。 | 计算成本高(复杂度O(N^6)),序列长度随分辨率平方增长,难以生成高分辨率图像,容易产生模糊结果。 |
| 令牌级模型 | VQ-VAE (2017), VQ-VAE-2 (2019), VQ-GAN (2021), ViT-VQGAN, Efficient-VQGAN, LlamaGen, RQ-VAE, MoVQ, DQ-VAE, FSQ | 使用向量量化将图像压缩为离散令牌序列,进行下一令牌预测。 | 计算效率高(通过压缩比k降低复杂度),能处理高分辨率图像,可扩展性强,受益于NLP的缩放定律。 | 需要训练视觉分词器(Tokenizer),扁平化操作可能损失空间局部性,代码簿利用率和采样速度仍需优化。 |
| 尺度级模型 | VAR (2024), RQ-VAE (作为基础), STAR, VAR-CLIP | 使用多尺度分词器,将图像量化为多尺度令牌图,以“粗到细”的方式自回归生成整个令牌图(下一尺度预测)。 | 保留空间局部性,支持零样本泛化;块级因果掩码允许并行令牌生成,计算效率更高(复杂度O(N^4/k^4));展示了类似语言模型的缩放定律。 | 训练和协调多尺度较为复杂,资源密集;错误可能从低分辨率传播到高分辨率。 |
| 混合/其他 | VQ-Diffusion, Kaleido Diffusion, DART, Show-o, MAR, SAR, DisCo-Diff | 将自回归与其他生成模型(如扩散模型、MAE)结合,或探索连续表示、随机生成顺序等。 | 结合不同范式的优势,例如扩散模型的高质量与自回归的缩放能力;提供更灵活的生成顺序和表示。 | 框架可能更复杂,需要平衡不同组件的训练。 |
与其他生成模型之间的关系
VAE
GAN
容易出现模式崩溃,需要保证生成器与判别器之间的均衡。
Normalizing Flows
要求可逆变换。把一个 Gaussian Distribution 变换成一个图像分布。
扩散模型
MAE
Masked Autoencoder
和 AR 模型一样,都是从自然语言处理中提取的灵感。
MAE 是 BERT-style; AR 是 GPT-style
AR 模型的优势与缺点
优势
- Scaling Laws
- 部署效率:现有的大语言模型的技术可以直接使用
- 弥合语言与视觉的区别
- AR 模型训练时有稳定性
缺点
- 计算复杂度高: AR 模型不容易生成高分辨率的图像,因为扩散模型的时间复杂度是 \(O(TN^4)\), 而 AR 模型的时间复杂度则是 \(O(N^6/k^6)\)
- 量化损失: VQ-VAE Token 化引入信息损失,重构质量的 FID 下限约 1-2
- 模式坍塌: 条件生成中表现出模式寻找行为,无条件样本相比扩散模型缺乏多样性
- 曝光偏差: 训练时使用真实 Token(Teacher Forcing),推理时使用模型自身预测的 Token,导致误差累积
挑战与未来方向
当前挑战
计算复杂度与效率
视觉 AR 模型的核心限制是序列长度的二次复杂度:
| 组件 | 挑战 | 技术细节 |
|---|---|---|
| 自注意力 | O(N²) 内存/时间 | 对于 1024×1024 图像,8×8 Patch:16,384 Token → 2.68 亿注意力对 |
| 采样 | 顺序生成 | 无法并行生成 Token;需要 N 次前向传播 |
| 训练 | 教师强制不匹配 | 训练时接触真实 Token,推理时使用模型自身预测 |
新兴解决方案:
- 线性注意力: Performer、RWKV、RetNet 将复杂度降至 O(N),在长序列上实现 10-100 倍加速
- 分层多尺度生成: Seed-to-Scale 方法在各分辨率上分解生成,相比扁平生成节省约 50% 的计算
视觉质量与保真度
量化伪影:
- VQ-VAE 训练中的码本坍塌:通常只有 10-30% 的码本被利用
- VQGAN 使用感知损失和 GAN 判别器提升感知质量,但可能牺牲精确重建
- 最新改进: LFQ(无查找量化)、FSQ(有限标量量化)完全消除码本查找
模式坍塌与多样性:
- AR 模型在条件生成中表现出模式寻找行为
- 精度-召回权衡:AR 模型实现高精度(生成图像看起来真实)但召回率较低(未覆盖完整数据分布)
- 温度采样效应:较低温度(τ < 1.0)提升质量但降低多样性;τ > 1.0 引入伪影
评估挑战
指标限制:
- FID 对纹理统计有严重偏向;FID 相同的两个图像可能在语义内容上差异巨大
- CLIP-based 指标继承 CLIP 的偏见和失效模式(如忽视否定、空间关系)
新兴评估协议:
- T2I-CompBench: 评估属性绑定、对象关系和复杂组合的组合生成
- VQAScore, ImageReward: 在人类偏好数据上训练的习得指标;与人类判断相关性 0.3-0.5,而 FID 为 0.2
- 时序一致性: 视频 AR 模型缺乏 flickering 和物理违背的评估指标
未来研究方向
架构与训练创新
| 方向 | 技术方法 | 预期影响 |
|---|---|---|
| 稀疏注意力模式 | 局部窗口 + 全局 Token,轴向注意力 | O(N√N) 有效复杂度 |
| 混合专家 (MoE) | 条件计算的 MoE 架构 | 同等质量下 4 倍计算节省 |
| 连续 Token 空间 | 潜在空间上的流匹配,非量化表示 | 消除 VQ 瓶颈 |
| 测试时计算扩展 | 推理时的搜索/优化(束搜索、Best-of-N) | 无需增加参数即可提升质量 |
训练方法进展:
- 视觉 RLHF: 从人类反馈进行强化学习在视觉生成中探索不足;DPO(直接偏好优化)的初步尝试显示前景
- 自提升: AR 模型可以生成自己的训练数据;迭代自蒸馏循环
多模态集成
统一多模态 AR 模型:
- 语言、视觉和音频融合到单一 AR 架构中
- 交错生成: 以任意顺序生成文本和图像;技术挑战:模态特定的 Token 化和归一化
- 任意到任意模型: 统一接口:图像→文本、文本→图像、视频→音频等,都通过单一 Next-Token 预测
技术实现挑战:
- 不同模态需要不同的时间分辨率和感受野
- 模态感知注意力: 每个模态独立的 Q/K 投影,使用习得的跨模态注意力模式
- 自适应计算: 基于模态动态分配计算;视觉 Token 可能比语言使用更少的层
3D 和物理世界建模
原生 3D AR 模型:
- 点云 Token 化:Point-BERT、Point-MAE 展示在 3D 点序列上的 AR(典型 2048 点,扩展到 10 万+ 点具有挑战性)
- NeRF/混合表示:自回归生成 NeRF 参数;ViewCrafter、SceneScape 展示可行性
世界模型:
- Sora 展示规模能够实现涌现的物理推理,但可解释性和控制仍然有限
- 动作条件视频预测: 用于机器人的 AR 模型:预测动作的视觉后果
- 物理一致性: 显式物理先验 vs 习得的隐式物理;准确性与灵活性之间的权衡
效率与部署
目标:
| 目标 | 当前状态 | 目标 |
|---|---|---|
| 实时生成 | 秒级/帧 | 毫秒级/帧 |
| 高分辨率 | 256×256 - 512×512 | 4K+ |
| 边缘部署 | 云端为主 | 移动端/边缘端 |
路径:
- 模型压缩:剪枝、量化、知识蒸馏
- 硬件协同设计:为 AR 推理优化的专用加速器
- 级联生成:快速粗糙模型 + 慢速精炼模型
图像生成
无条件图像生成
逐像素生成
Recurrent 与 Parallel
PixelRNN:
PixelCNN: dilated convolutions 膨胀卷积
PixelCNN++: discretized logistic mixiture likelihood function
但是这些方法不适合处理长程依赖
Transformer-based
逐 Token 生成
Image Tokenizer 设计
基础工作 VQGAN
提升 ViT-VQGAN
与扩散模型结合 VQ-Diffusion
文生图
图像条件合成
Image Painting
Multi-view Generation
Image Editing
视频生成
视频生成是 AR 模型的重要应用方向,相比图像生成增加了时间维度,序列长度呈平方级增长,带来更大的计算挑战。
无条件视频生成
无条件视频生成直接从训练数据学习视频模式,无需特定输入条件。
| 模型 | 核心创新 | 技术细节 |
|---|---|---|
| MAGVIT | 首个 3D 视频 Tokenizer | 使用 3D 卷积对时空视频块进行 Token 化,支持高质量视频生成 |
| MAGVIT-v2 | 改进的 3D Tokenizer | 在重建质量和生成保真度上有显著提升 |
| OmniTokenizer | 统一 Tokenizer | 单一 Tokenizer 同时处理图像和视频,跨模态共享码本 |
| VideoGPT | 视频的 VQ-VAE | 将 VQ-VAE 架构适配到视频,使用 3D 卷积 |
| TATS | 时间感知注意力 | 引入时间感知注意力机制处理帧间关系 |
条件视频生成
条件视频生成使用额外输入(文本、图像或其他视频)引导生成过程。
文本到视频 (Text-to-Video)
| 模型 | 核心创新 | 技术细节 |
|---|---|---|
| CogVideo | 大规模 T2V 模型 | 94 亿参数;在 CogView 基础上增加时间层;使用 3D 注意力 |
| NÜWA | 统一多模态预训练 | 支持文本、图像和视频;使用 3D 邻近注意力提高效率 |
| NUWA-Infinity | 无限长度生成 | Patch 级自回归生成,可生成任意长度视频 |
| Phenaki | 可变长度文本生成视频 | 使用因果注意力掩码,根据文本提示生成不同长度视频 |
| VideoPoet | 大型语言模型用于视频 | 仅解码器 Transformer;处理多种视频生成任务(I2V、T2V、视频编辑);使用 MAGVIT Token 化 |
架构模式
- 3D 注意力: 跨高度、宽度和时间的时空注意力
- 分解注意力: 分离空间和时间注意力以提高效率
- 因果时间掩码: 确保时间自回归特性
具身智能 (Embodied AI)
具身智能应用将 AR 模型用于交互式环境、机器人技术和世界模型。
| 模型 | 核心创新 | 技术细节 |
|---|---|---|
| IRIS | 自回归想象 | 强化学习的世界模型;自回归预测未来潜在状态;支持在想象环境中规划 |
| GAIA-1 | 驾驶自回归世界模型 | 90 亿参数 Transformer;根据动作和文本预测未来视频帧;在真实驾驶数据上训练 |
| Genie | 生成式交互环境 | 110 亿参数;从图像生成可玩的 2D 平台游戏;无需动作标签学习动作可控世界模型 |
| GR-1/GR-2 | 机器人学习 | 预测机器人操作的未来视觉观测;提升样本效率,支持长期规划 |
3D 生成
动作生成 (Motion Generation)
人体动作生成创建真实的人体运动。
| 模型 | 核心创新 | 技术细节 |
|---|---|---|
| T2M-GPT | 文本到动作的 GPT | 使用 VQ-VAE 量化动作序列;应用 GPT 风格 Transformer 进行自回归生成;在文本到动作合成上达到 SOTA |
| AMD | 自回归动作扩散 | 结合自回归建模与扩散进行高质量动作生成 |
| HuMoR | 概率人体动作 | 使用条件 VAE 与自回归组件进行多样化动作生成 |
点云生成 (Point Cloud Generation)
| 模型 | 核心创新 | 技术细节 |
|---|---|---|
| Octree Transformer | 分层点生成 | 使用八叉树结构进行高效 3D 表示;在多分辨率上自回归生成 |
| ImAM | 图像条件点生成 | 从单张图像自回归生成 3D 点 |
| Argus3D | 多视图条件生成 | 聚合多视图信息进行 3D 重建 |
场景生成 (Scene Generation)
| 模型 | 核心创新 | 技术细节 |
|---|---|---|
| SceneScript | 结构化场景表示 | 将 3D 场景表示为结构化语言命令序列;自回归生成建筑元素(墙、门、窗);支持可编辑和可解释的场景生成 |
3D 医疗生成 (3D Medical Generation)
| 模型 | 核心创新 | 技术细节 |
|---|---|---|
| SynthAnatomy | 解剖结构合成 | 生成具有解剖学正确性的合成医学图像;对 3D 体积使用自回归建模 |
| BrainSynth | 脑部 MRI 合成 | 脑部 MRI 扫描的条件生成;保持解剖学一致性 |
| 3D-VQGAN | 3D 医学图像 Tokenizer | 将 VQGAN 扩展到 3D 医学体积;支持高效自回归生成 |
| AutoSeq | 序列医学图像生成 | 用于 3D 医学图像合成的自回归方法 |
挑战:
- 解剖学正确性:必须保持生物学合理性
- 高分辨率:医学扫描通常需要高空间分辨率
- 3D 体积处理:3D 卷积和注意力的计算挑战
多模态理解与生成
理解框架 (Understanding Framework)
专注于通过自回归或相关方法进行视觉理解的模型。
| 模型 | 核心创新 | 技术细节 |
|---|---|---|
| BEiT | 视觉的 BERT 预训练 | 使用离散视觉 Token 进行掩码图像建模;使用 dVAE Tokenizer;编码器-解码器架构 |
| BEiT-v2/v3 | 改进的视觉 Tokenizer | 使用 CLIP 视觉编码器获得更好的语义表示;多路 Transformer |
| LLaVA | 大型语言和视觉助手 | 将视觉编码器(CLIP)与 LLM 连接;简单投影层;多模态对话的指令微调 |
| AIM/AIMV2 | 自回归图像模型 | 在图像块上预训练自回归模型进行表示学习;在大规模上展示强大迁移能力 |
与生成模型的关键区别:
- 理解框架通常使用双向注意力(如 BERT)而非因果注意力
- 专注于表示学习而非生成
- 常使用掩码建模目标
统一框架 (Unified Framework)
在单一架构中统一理解和生成的模型。
| 模型 | 核心创新 | 技术细节 |
|---|---|---|
| OFA | One-for-all 架构 | 统一序列到序列框架;处理图像生成、描述、VQA 等;使用 BART 架构处理视觉 Token |
| SEED | 视觉 Tokenizer + LLM | 与 LLM 词汇表对齐的离散视觉 Token;实现无缝图像-文本生成和理解 |
| Emu2 | 自回归多模态模型 | 370 亿参数;自回归生成文本和图像;强大的上下文学习能力 |
| Chameleon | 早期融合基于 Token 的模型 | 将图像、文本和代码表示为统一 Token 流;340 亿参数;所有模态早期融合 |
| Transfusion | 连续和离散 Token | 处理离散(文本)和连续(图像)模态;单一 Transformer 使用模态特定注意力 |
| SHOW-o | 统一生成和理解 | 结合自回归生成与掩码建模;在因果和双向注意力之间切换 |
| Janus | 解耦视觉编码 | 理解和生成使用独立路径;统一自回归框架 |
| Emu3 | 原生多模态生成 | 用于文本、图像和视频的原生自回归模型;跨模态展示强大性能 |
关键技术方法:
- Token 统一: 将所有模态表示为 Token 序列
- 早期 vs 晚期融合:
- 早期融合(Chameleon):所有 Token 从一开始就一起处理
- 晚期融合(Flamingo):独立编码器配合交互层
- 注意力机制: 用于生成的因果注意力,用于理解的双向注意力
验证方法
验证方法:
尺寸: