CogView: Mastering Text-to-Image Generation via Transformers
TL;DR 精炼摘要
CogView提出了一个40亿参数的Transformer结合VQ-VAE分词器用于文本到图像生成,解决了生成高质量、多样化图像的难题。通过稳定预训练和多任务微调,CogView在模糊MS COCO数据集上实现了领先的FID分数,超越GAN和DALL-E。
摘要
Text-to-Image generation in the general domain has long been an open problem, which requires both a powerful generative model and cross-modal understanding. We propose CogView, a 4-billion-parameter Transformer with VQ-VAE tokenizer to advance this problem. We also demonstrate the finetuning strategies for various downstream tasks, e.g. style learning, super-resolution, text-image ranking and fashion design, and methods to stabilize pretraining, e.g. eliminating NaN losses. CogView achieves the state-of-the-art FID on the blurred MS COCO dataset, outperforming previous GAN-based models and a recent similar work DALL-E.
思维导图
论文精读
中文精读
1. 论文基本信息 (Bibliographic Information)
- 标题 (Title): CogView: Mastering Text-to-Image Generation via Transformers (CogView:通过 Transformer 掌握文本到图像生成)
- 作者 (Authors): Ming Ding, Zhuoyi Yang, Wenyi Hong, Wendi Zheng, Chang Zhou, Da Yin, Junyang Lin, Xu Zou, Zhou Shao, Hongxia Yang, Jie Tang
- 隶属机构 (Affiliations): 清华大学 (Tsinghua University), 阿里巴巴达摩院 (DAMO Academy, Alibaba Group), 北京智源人工智能研究院 (BAAI)
- 发表期刊/会议 (Journal/Conference): 本文为预印本 (Preprint),发布于 arXiv。该平台是学术界分享最新研究成果的重要渠道。
- 发表年份 (Publication Year): 2021
- 摘要 (Abstract): 开放域的文本到图像生成一直是一个难题,它既需要强大的生成模型,也需要跨模态的理解能力。我们提出了 CogView,一个拥有 40 亿参数的 Transformer 模型,并结合 VQ-VAE 分词器来攻克这一问题。我们还展示了针对各种下游任务(如风格学习、超分辨率、文本-图像排序和时尚设计)的微调策略,以及稳定预训练的方法(如消除 NaN 损失)。在模糊化的 MS COCO 数据集上,CogView 取得了当前最佳的 FID 分数,超越了以往的 GAN 模型和最近的同类工作 DALL-E。
- 原文链接 (Source Link):
- 官方链接: https://arxiv.org/abs/2105.13290
- PDF 链接: http://arxiv.org/pdf/2105.13290v3
- 发布状态: 预印本 (Preprint)
2. 整体概括 (Executive Summary)
-
研究背景与动机 (Background & Motivation - Why):
- 核心问题: 论文旨在解决通用领域(General Domain)中的文本到图像生成 (Text-to-Image Generation) 任务。这是一个极具挑战性的开放性问题,要求模型不仅能理解文本描述的复杂语义,还要能生成符合描述、真实且高清的图像。
- 问题重要性与现有挑战 (Gap): 过去的方法主要依赖生成对抗网络 (GANs),但它们在处理像 MS COCO 这样复杂、多对象的场景时,生成效果远不理想。而另一类自回归模型 (Auto-regressive Models),虽然在像素级别展现了潜力,但由于图像像素数量巨大,导致计算成本高昂,难以扩展到高分辨率和大规模模型。
- 创新切入点: 受到
GPT在自然语言处理和VQ-VAE在图像离散表示上的成功启发,本文的思路是:将图像也“分词”成一系列离散的token,然后将文本token和图像token拼接在一起,使用一个超大规模的Transformer模型来学习从文本到图像的联合概率分布。这种方法统一了文本和图像的处理框架,从而可以利用Transformer强大的序列建模能力。
-
核心贡献/主要发现 (Main Contribution/Findings - What):
- 提出 CogView 模型: 提出了一个包含 40 亿参数的
Transformer模型CogView,专门用于文本到图像生成。它是当时首个开源的大规模文本到图像生成Transformer模型。 - 提出稳定训练的技术: 针对大规模模型在混合精度(FP16)训练中极易出现的
NaN(Not a Number)损失和不稳定性问题,提出了两种简单而有效的技术:精度瓶颈松弛 (Precision Bottleneck Relaxation, PB-Relax) 和 三明治层归一化 (Sandwich LayerNorm, Sandwich-LN)。 - 探索下游任务微调: 深入研究了如何对预训练的
CogView模型进行微调,以适应多种下游任务,包括风格学习、超分辨率、图像描述生成 (Image Captioning) 和时尚设计,极大地拓展了模型的应用潜力。 - 提出新的评估与排序方法: 提出了 标题损失 (Caption Loss, CapLoss) 这一新指标,用于更精细地衡量生成图像与文本的匹配度,并基于此实现了自重排 (Self-reranking) 机制,无需像
DALL-E那样依赖额外的CLIP模型来筛选最佳结果。 - 取得 SOTA 结果: 在 MS COCO 数据集的基准测试中,
CogView的 FID (Fréchet Inception Distance) 分数显著优于之前的GAN模型和同期的DALL-E模型。
- 提出 CogView 模型: 提出了一个包含 40 亿参数的
3. 预备知识与相关工作 (Prerequisite Knowledge & Related Work)
本部分为理解论文提供必要的前置知识,帮助初学者快速入门。
-
基础概念 (Foundational Concepts):
- 文本到图像生成 (Text-to-Image Generation): 这是一个多模态任务,目标是让计算机根据一段文字描述自动生成一张与之内容相符的图像。例如,输入“一只戴着帽子的猫在看书”,模型应能生成对应的画面。
- 生成对抗网络 (Generative Adversarial Networks, GANs): 一种经典的生成模型框架,由一个生成器 (Generator) 和一个判别器 (Discriminator) 组成。生成器负责创作“假”数据(如图像),判别器负责区分真实数据和生成器创作的假数据。两者在相互博弈中共同进步,最终生成器能创作出以假乱真的图像。论文中提到的
AttnGAN、DM-GAN等都是基于GAN的方法。 - 自回归模型 (Auto-regressive Models): 这类模型像写句子一样生成数据,即一个接一个地预测序列中的下一个元素。例如,
GPT模型在生成文本时,会根据已经生成的词语预测下一个最可能的词语。在图像领域,PixelCNN会逐个像素地生成图像,但计算量巨大。 - Transformer: 一种基于自注意力机制 (Self-Attention) 的深度学习模型,最初在自然语言处理领域取得巨大成功。它能够高效地捕捉序列中任意两个元素之间的长距离依赖关系,非常适合处理像文本或图像
token这样的序列数据。 - 向量量化变分自编码器 (Vector Quantized Variational AutoEncoders, VQ-VAE): 这是理解
CogView的关键技术。它包含两个阶段:- 第一阶段 (训练图像分词器): 训练一个编码器 (Encoder) 将输入图像压缩成一个低维的网格状特征图,然后通过“向量量化”步骤,将特征图中的每个向量替换成一个码本 (Codebook) 中最接近的“编码”,这些编码就是图像的离散
token。同时,一个解码器 (Decoder) 负责将这些token还原成图像。这个过程就像把一张连续的画转换成由有限种类的“乐高积木”拼成的图像。 - 第二阶段 (学习先验分布): 使用一个强大的生成模型(如
Transformer)来学习这些离散图像token的分布规律。
- 第一阶段 (训练图像分词器): 训练一个编码器 (Encoder) 将输入图像压缩成一个低维的网格状特征图,然后通过“向量量化”步骤,将特征图中的每个向量替换成一个码本 (Codebook) 中最接近的“编码”,这些编码就是图像的离散
-
前人工作 (Previous Works):
- GAN-based 方法: 如
AttnGAN、DM-GAN等,虽然在鸟类、花卉等特定领域数据集上效果不错,但在 MS COCO 这种包含复杂场景和多物体的通用数据集上表现不佳,生成的图像常常缺乏真实感和全局一致性。 - 像素级自回归方法: 如
PixelCNN、Image Transformer,理论上可以生成高质量图像,但由于图像的像素序列过长(一张 的彩色图像有 个子像素),导致计算成本极高,难以训练大规模模型和生成高分辨率图像。 - DALL-E: 与
CogView同期由 OpenAI 提出的工作,采用了非常相似的技术路线(VQ-VAE+Transformer),证明了这一方向的可行性。但DALL-E并未开源,且CogView声称在某些方面(如训练稳定性、微调应用、评估指标)有所超越。
- GAN-based 方法: 如
-
技术演进 (Technological Evolution): 文本到图像生成技术经历了从
GAN主导,到自回归模型探索,再到结合VQ-VAE离散化和大规模Transformer统一建模的演进。CogView和DALL-E正是这一演进路线上的代表性成果,它们将图像生成问题转化为了一个大规模的序列生成问题,从而能够借助Transformer架构的强大威力。 -
差异化分析 (Differentiation): 与当时最相似的工作
DALL-E相比,CogView的核心差异和创新点在于:- 训练稳定性:
DALL-E采用复杂的混合精度策略来解决训练不稳定的问题,而CogView提出了更通用、更简单的PB-Relax和Sandwich-LN方法,使得模型能在接近纯FP16的环境下稳定训练。 - 微调和应用拓展:
CogView论文花了大量篇幅展示如何通过微调将一个预训练模型用于超分辨率、风格迁移等多种任务,展示了模型的通用性和可扩展性。 - 结果筛选机制:
DALL-E依赖一个另外训练的CLIP模型从大量生成结果中筛选出最佳图像。而CogView通过微调自身得到一个图像描述模型,并利用CapLoss指标进行自重排,更加高效和自洽。
- 训练稳定性:
4. 方法论 (Methodology - Core Technology & Implementation Details)
本部分详细拆解 CogView 的技术方案。
-
方法原理 (Methodology Principles):
CogView的核心思想是将文本到图像的生成任务统一为单一的自回归序列生成任务。其理论基础源于对变分自编码器 (VAE) 联合概率 的证据下界 (ELBO) 的优化。通过一系列推导,优化目标被分解为三个部分:- 图像的重构损失(由
VQ-VAE的解码器优化)。 - 文本的负对数似然损失(由
Transformer优化)。 - 图像
token的负对数似然损失(由Transformer优化)。 最终,整个学习过程被拆分为两个独立的阶段:
-
阶段一: 训练一个
VQ-VAE作为图像分词器,负责将图像 转换为离散的token序列 。 -
阶段二: 训练一个
GPT风格的Transformer,学习文本token序列 和图像token序列 的联合分布p(z, t)。生成时,模型根据输入的文本 自回归地生成图像token,再由VQ-VAE的解码器将 还原为图像。
上图(Figure 3)直观地展示了 CogView的整体框架。文本和图像首先被各自的分词器转换为token序列,然后拼接在一起(由[ROI1]、[BOI1]等特殊分隔符隔开),输入到一个大型Transformer中进行自回归预测。
- 图像的重构损失(由
-
方法步骤与流程 (Steps & Procedures):
-
分词 (Tokenization):
- 文本分词器: 使用
SentencePiece工具(基于 BPE 算法)对大规模中文语料进行训练,得到一个包含 50,000 个token的词表。 - 图像分词器 (
VQ-VAE):-
结构: 一个编码器将 的图像压缩成 的特征图,一个解码器负责逆向过程。码本大小为 8192。
-
训练: 论文对比了四种训练策略(最近邻映射、Gumbel 采样、移动平均更新码本、固定码本),发现最终效果相差不大。这表明只要码本初始化得当,其学习过程并非成功的关键。最终模型采用了移动平均更新码本的方法。
上图(Figure 2)显示了不同 VQ-VAE训练策略的损失曲线,可以看出它们最终都收敛到了相似的水平。
-
- 文本分词器: 使用
-
自回归 Transformer 预训练:
- 模型架构: 一个 40 亿参数的单向
Transformer(GPT-style),包含 48 个层,隐藏层维度为 2560,40 个注意力头。 - 输入序列格式: 将文本和图像
token拼接成[ROI1] text_tokens [BASE] [BOI1] image_tokens [E0I1]的形式,总长度为 1088。 - 训练目标: 采用标准的从左到右语言模型 (Left-to-right Language Modeling) 任务,即预测序列中的下一个
token。论文特别强调,与DALL-E降低文本损失权重的做法相反,他们发现对文本部分进行建模对于学习跨模态关联至关重要。如果文本损失权重为零,模型将无法生成与文本相关的图像。
- 模型架构: 一个 40 亿参数的单向
-
训练稳定化技术 (Key Contribution): 在大规模(>2B)、低精度(FP16)训练中,数值范围极易超出
FP16的表示极限,导致梯度消失或爆炸,最终出现NaN损失。CogView提出了以下两种方法解决此问题:- 精度瓶颈松弛 (Precision Bottleneck Relaxation, PB-Relax):
- 针对
LayerNorm溢出: 在深层网络中,输出值可能变得非常大,导致LayerNorm计算方差时溢出。解决方法是在计算LayerNorm前,先将输入除以其最大值。 - 针对
Attention溢出: 注意力分数 的计算也可能溢出。解决方法是引入一个缩放因子 ,将计算过程修改为: 这样可以有效控制中间计算结果的数值范围。
- 针对
- 三明治层归一化 (Sandwich LayerNorm, Sandwich-LN):
-
动机: 传统的
Pre-LN结构虽然比Post-LN稳定,但在深层Transformer中,残差连接会不断累积放大数值,最终导致主干分支的值爆炸。 -
方法: 在每个残差分支的末端,再增加一个
LayerNorm,形成 的“三明治”结构。这个额外的LN确保了加回到主干分支的数值尺度是受控的。
上图(Figure 4)展示了三种 LayerNorm结构(a)及其实验效果(b)。可以看到,只有同时使用Sandwich-LN和PB-Relax,深度Transformer的训练才能稳定进行。
-
- 精度瓶颈松弛 (Precision Bottleneck Relaxation, PB-Relax):
-
-
数学公式与关键细节 (Mathematical Formulas & Key Details): 论文的核心理论推导从变分自编码器(VAE)的证据下界(ELBO)开始。对于包含图像 和文本 的数据集,其联合对数似然的 ELBO 为: 最大化这个下界等价于最小化以下损失:
- 符号解释:
-
: 图像数据。
-
: 文本数据。
-
: 图像的隐变量(在
VQ-VAE中是离散的token)。 -
: 编码器,将图像 映射到隐变量 的后验分布。
-
: 解码器,从隐变量 重构图像 。
-
: 先验分布,表示给定文本 时隐变量 的分布。
CogView的Transformer负责学习这个分布。 -
p(t): 文本的先验分布。 -
: KL 散度,衡量两个概率分布的差异。
VQ-VAE框架将 KL 散度项的优化转变为直接用一个强大的自回归模型(Transformer)来拟合先验 。因此,KL 散度项的最小化就变成了最小化图像token的负对数似然 。最终,Transformer的总损失是文本和图像token的负对数似然之和。
-
- 符号解释:
5. 实验设置 (Experimental Setup)
-
数据集 (Datasets):
- 训练集: 包含约 3000 万个高质量中文图文对的私有数据集。数据来源广泛,包括专业图片网站、Conceptual Captions(翻译为中文)、新闻图片、电商商品图和搜索引擎爬取结果。
- 评估集: MS COCO 数据集。这是一个广泛使用的图像描述基准,并未包含在
CogView的训练集中,以保证评估的公正性。实验从 MS COCO 中随机抽取 30,000 个标题进行测试。
-
评估指标 (Evaluation Metrics):
- FID (Fréchet Inception Distance):
- 概念定义: FID 是一种衡量生成图像质量和多样性的常用指标。它通过比较真实图像集和生成图像集在 Inception-v3 网络提取的特征空间中的分布相似度来打分。FID 分数越低,表示生成图像的分布与真实图像的分布越接近,即生成图像的质量越高、多样性越好。
- 数学公式:
- 符号解释:
x, g: 分别代表真实图像分布和生成图像分布。- : 真实图像和生成图像特征向量的均值。
- : 真实图像和生成图像特征向量的协方差矩阵。
- : 矩阵的迹。
- IS (Inception Score):
- 概念定义: IS 旨在同时评估生成图像的清晰度(单个图像能否被分类器高置信度地识别为某个物体)和多样性(生成的图像集合是否涵盖了多种不同的物体类别)。分数越高越好。但该论文指出,IS 对于评估文本-图像生成这种条件生成任务并不完全合适。
- 数学公式:
- 符号解释:
- : 生成图像的集合。
- : 从生成图像集合中采样一张图像 。
- : Inception 模型对图像 的预测类别概率分布。
p(y): 所有生成图像的平均预测类别概率分布。- : KL 散度。
- CapLoss (Caption Loss):
- 概念定义: 这是
CogView提出的新指标,用于衡量生成图像与输入文本的匹配程度。具体做法是,将预训练的CogView微调成一个图像描述(Image Captioning)模型,然后输入一张生成的图像,计算模型生成原始文本提示的负对数似然损失。损失越低,说明这张图像越能准确地对应原始文本。 - 数学公式:
- 符号解释:
- : 生成的图像。
- : 原始的文本提示
token序列, 为其长度。 - : 文本序列中的第 个
token。 - : 给定图像 和前面所有文本
token的条件下,模型预测下一个token是 的概率。
- 概念定义: 这是
- FID (Fréchet Inception Distance):
-
对比基线 (Baselines):
- GAN-based Models:
AttnGAN,DM-GAN,DF-GAN,这些是当时主流的基于 GAN 的文本到图像生成方法。 - Transformer-based Model:
DALL-E,OpenAI 提出的同类工作,是当时最直接的竞争对手。
- GAN-based Models:
6. 实验结果与分析 (Results & Analysis)
-
核心结果分析 (Core Results Analysis):
-
机器评估: 以下是论文中 Table 1 的转录结果,展示了在 MS COCO 数据集上的主要评估指标。
FID-k表示对图像施加半径为 的高斯模糊后的 FID 分数。Model FID-0 FID-1 FID-2 FID-4 FID-8 IS CapLoss AttnGAN 35.2 44.0 72.0 108.0 100.0 23.3 3.01 DM-GAN 26.5 39.0 73.0 119.0 112.3 32.2 2.87 DF-GAN 26.5 33.8 55.9 91.0 97.0 18.7 3.09 DALL-E 27.5 28.0 45.5 83.5 85.0 17.9 — CogView 27.1 19.4 13.9 19.4 23.6 18.2 2.43 - 分析: 从表格中可以明显看出,
CogView在所有模糊化 FID(FID-1到FID-8)指标上都取得了压倒性优势,远低于DALL-E和所有GAN模型。这表明CogView生成图像的整体结构和内容分布与真实图像非常接近。CapLoss指标也是最低的,证明其生成图像与文本的匹配度最高。
- 分析: 从表格中可以明显看出,
-
人类评估:
该图像是一个图表,展示了训练图像编码器时不同方法的 损失随迭代次数变化的曲线。所有方法最终收敛到相似的损失水平,说明优化效果接近。- 分析: Figure 10 的人类评估结果显示,
CogView生成的图像在人类偏好中(被选为最佳的比例为 37.02%)远超所有GAN模型,并且接近“复原真值”(即真实图像经过VQ-VAE编解码后的图像)的水平(59.53%)。这表明CogView的生成质量已经达到了一个非常高的水准。经过超分辨率微调后,其清晰度甚至超越了复原真值。
- 分析: Figure 10 的人类评估结果显示,
-
-
消融实验/参数分析 (Ablation Studies / Parameter Analysis):
-
重排机制对比 (Self-reranking vs. CLIP):
该图像是插图,展示了一人在雪地上滑雪的场景,背景为蓝天。图像反映了运动和寒冷环境下的户外活动氛围,未涉及具体论文内容。- 分析: Figure 9 对比了使用
CLIP和CogView自身的CapLoss(self-reranking)进行图像筛选的效果。结果显示,self-reranking在降低 FID 分数方面表现更优,并且随着候选图像数量的增加,FID 持续稳定下降。这证明了CapLoss作为排序指标的有效性,以及self-reranking策略的优越性。
- 分析: Figure 9 对比了使用
-
微调任务展示:
该图像是人物肖像照片,展示了两位男子坐在桌前,面带微笑,正在使用笔记本电脑。图像风格真实,可能用于说明人机交互或合作场景。-
分析: Figure 7 展示了模型经过风格学习微调后的效果。输入“东方明珠”,模型可以生成中国画、油画、素描等多种指定风格的图像,证明了模型强大的知识迁移能力。
该图像是一张厨房的照片,展示了带有木质橱柜、嵌入式烤箱和开放式白色储物架的现代厨房空间。图像细节清晰,体现了明亮而温馨的室内环境。 -
分析: Figure 5 展示了超分辨率微调的效果。模型不仅能锐化图像,还能在低分辨率图像的基础上“脑补”出合理的细节(如老虎张开的嘴),这是一种更高层次的超分辨率能力。
-
-
7. 总结与思考 (Conclusion & Personal Thoughts)
-
结论总结 (Conclusion Summary):
CogView成功地将VQ-VAE和大规模Transformer结合,在通用领域的文本到图像生成任务上取得了突破性进展。论文不仅提出了一个性能强大的 40 亿参数模型,更重要的是,它系统性地解决了大规模跨模态预训练中的稳定性难题(PB-Relax和Sandwich-LN),并探索了一套完整的微调和应用生态(超分辨率、风格学习、自重排等)。CogView的开源及其方法的普适性,对后续的多模态大模型研究产生了深远影响。 -
局限性与未来工作 (Limitations & Future Work):
- 生成速度慢: 作为自回归模型,
CogView需要逐个token地生成图像,这个过程非常耗时,限制了其实时应用的可能。 - 图像模糊问题:
VQ-VAE的有损压缩特性导致生成的图像天然带有一些模糊感,虽然可以通过超分辨率微调来缓解,但根源问题依然存在。未来的工作可以探索更高质量的图像分词器或非自回归的生成范式。 - 伦理问题: 论文承认,强大的可控图像生成技术可能被用于制造虚假信息(如 Deepfake)。同时,生成模型可能存在数据偏见,例如在生成人脸时表现出性别或种族的不均衡。
- 生成速度慢: 作为自回归模型,
-
个人启发与批判 (Personal Insights & Critique):
- 启发:
- 问题转化的力量:
CogView将复杂的图像生成问题巧妙地转化为Transformer擅长的序列生成问题,是跨领域方法迁移的典范。 - 工程与科学并重: 论文不仅有理论上的创新,还花了大量精力解决实际训练中的工程难题(如训练稳定性),这些经验对于训练任何超大规模模型都极具参考价值。
Sandwich-LN是一个非常优雅且实用的改进。 - 模型的生态价值:
CogView没有止步于一个单一任务的模型,而是通过微调展示了其作为“预训练基础模型”的巨大潜力,这种“预训练-微调”的范式已经成为当前大模型时代的主流。
- 问题转化的力量:
- 批判:
- 评估的局限性: 论文主要在“模糊化”的 MS COCO 上进行评估并宣称超越
DALL-E,这可能是一种讨巧的做法。因为VQ-VAE本身会产生模糊图像,在模糊数据集上进行评估自然会更有利。在未模糊的FID-0指标上,其优势并不明显。 - 数据集的语言壁垒: 模型主要使用中文数据训练,这可能会影响其对英文语境下文化特定概念的理解和生成能力。
- 公平性解决方案过于简单: 论文附录中提到通过“词语替换”来解决数据偏见问题,这是一种相对表层的方法,无法从根本上解决模型从海量数据中学到的深层社会偏见。
- 评估的局限性: 论文主要在“模糊化”的 MS COCO 上进行评估并宣称超越
- 启发:
相似论文推荐
基于向量语义检索推荐的相关论文。