本文来源公众号“算法进阶”,仅用于学术分享,侵权删,干货满满。
原文链接:Transformer+Diffusion? Transfusion!
近日,Meta 和 Waymo 发布了最新论文《Transfusion: Predict the Next Token and Diffuse Images with One Multi-Modal Model》,该论文将流行的 Transformer 模型与 Diffusion 模型相结合,用于多模态训练和预测。
与 Meta 之前的工作一样,Transfusion 模型基于 Llama 架构和早期融合,该架构同时采用文本标记序列和图像标记序列,并使用单个 Transformer 模型生成预测。但与之前的技术不同,Transfusion 模型对图像标记的处理方式不同:
-
图像标记序列由预先训练的变分自动编码器部分生成。
-
Transformer 对图像序列的注意力是双向的,而不是因果的。
带有预训练任务的 Transfusion 模型架构。
文本预训练是下一个单词预测任务。
图像预训练是去噪扩散任务。图片来源:
https://www.arxiv.org/pdf/2408.11039
自回归模型
如今,大型语言模型 (LLM) 主要基于 Transformer 架构,该架构于 2017 年在《Attention is All You Need》论文中提出。Transformer 架构包含两部分:编码器和解码器。
像 BERT 这样的掩码语言模型使用经过随机双向掩码标记预测任务(以及下一个句子预测)预训练的编码器部分。对于像最新的 LLM 这样的自回归模型,解码器部分通常在下一个标记预测任务上进行训练,其中 LM 损失最小化:
在上面的等式中,theta 是模型参数集,y_i 是长度为 n 的序列中索引 i 处的标记。y<i 是 y_i 之前的所有标记。
Diffusion 模型
Diffusion 模型是计算机视觉(尤其是医学图像分析)中常用于图像生成/去噪等目的的一系列深度学习模型。最著名的 Diffusion 模型之一是 DDPM,它来自 2020 年发表的 Denoising 扩散概率模型论文。该模型是一个参数化的马尔可夫链,包含后向和前向转换,如下所示。
什么是马尔可夫链?这是一个统计过程,其中当前步骤仅依赖于前一步,而反向则相反。通过假设马尔可夫过程,模型可以从干净的图像开始,在前向过程中迭代添加高斯噪声(上图中的右 -> 左),并在反向过程中使用基于 Unet 的架构迭代“学习”噪声(上图中的左 -> 右)。这就是为什么我们有时可以将扩散模型视为生成模型(从左到右使用时),有时将其视为去噪模型(从右到左使用时)。DDPM 损失如下所示,其中 theta 是模型参数集,epsilon 是已知噪声,epsilon_theta 是深度学习模型(通常是 UNet)估计的噪声:
潜在空间中的 Diffusion 模型
在 CVPR’22 论文中,扩散(diffusion)的概念被进一步扩展到潜在空间,其中首先使用预训练的变分自动编码器 (VAE) 的编码器部分将图像“压缩”到潜在空间。然后,在潜在空间上执行扩散和逆过程,并使用 VAE 的解码器部分将其映射回像素空间。这可以大大提高学习速度和效率,因为大多数计算都是在低维空间中执行的。
基于 VAE 的图像 Transfusion
Transfusion 模型的核心部分是将输入图像的扩散和变换器进行融合。首先,将图像分成 8*8 的块序列;每个块被传入预先训练的 VAE 编码器以“压缩”为 8 元素的潜在向量表示。然后,将噪声添加到潜在表示中,并通过线性层/U-Net 编码器进一步处理以生成“嘈杂的”x_t。第三,Transformer 模型处理嘈杂的潜在表示序列。最后,输出由另一个线性/U-Net 解码器进行反向处理,然后使用 VAE 解码器生成“真实的”x_0 图像。
在实际实现中,图像的开头(BOI)标记和图像的结尾(EOI)标记在连接文本标记之前被填充到图像表示序列的两侧。图像训练的自注意力是双向注意力,而文本标记的自注意力是因果的。在训练阶段,图像序列的损失是 DDPM 损失,而其余文本标记使用 LM 损失。
那么为什么要费心呢?为什么我们需要如此复杂的程序来处理图像补丁标记?本文解释说,文本和图像的标记空间是不同的。虽然文本标记是离散的,但图像标记/补丁自然是连续的。在以前的技术中,图像标记需要先“离散化”才能融合到 Transformer 模型中,而直接集成 Diffusion 模型可以解决这个问题。
与最先进的技术进行比较
本文比较的主要多模态模型是 Meta 于今年早些时候提出的 Chameleon 模型。在这里,我们比较了 Chameleon-7B 和 Transfusion-7B 在架构和训练集大小方面的差异。
论文列出了与 Llama2 预训练套件准确率、COCO 零样本 Frechet Inception Distance (FID) 和 GenEval 基准的性能比较。我们可以看到,在与图像相关的基准(COCO 和 Gen)上,Transfusion 的表现比 Chameleon 好得多,而与 Chameleon 相比,在参数量相同的情况下,损失的幅度很小。
写在最后的想法
虽然论文的想法非常有趣,但 Transfusion 中的 “Diffusion” 部分几乎算不上真正的Diffusion,因为 Markov 过程中只有两个时间戳。此外,预训练的 VAE 使模型不再严格是端到端的。此外,VAE + Linear/UNet + Transformer Encoder + Linear/UNet + VAE 的设计看起来如此复杂,这让观众不禁要问,有没有更优雅的方式来实现这个想法?
THE END !
文章结束,感谢阅读。您的点赞,收藏,评论是我继续更新的动力。大家有推荐的公众号可以评论区留言,共同学习,一起进步。
标签:Diffusion,Transformer,进阶,标记,Transfusion,模型,图像 From: https://blog.csdn.net/csdn_xmj/article/details/145059925