2022 年 4 月初,OpenAI 的开创性模型 DALL-E 2 登场,为图象天生和处理领域树立了新的标杆。只需输出简短的文字 prompt,DALL-E 2 就可以天生全新的图象,这些图象以语义上十分合理的方式将不同且不相干的对象组合起来,就像通过输出 prompt「a bowl of soup that is a portal to another dimension as digital art」,便天生了下面的图象。
DALL-E 2 甚至可以窜改现有图象,创建处保有其显著特征的图象变体,并在两个输出图象之间进行插值。DALL-E 2 令人印象深刻的结果让许多人想知道,这样一个强大的模型究竟是如何工作的。在本文中,我们将深入了解 DALL-E 2 如何创造出众多令人惊艳的图象。将提供大量背景信息,并且解释级别将涵盖范围,因此本文适合具有多个机器进修经验级别的读者。总体来说,DALL-E 2 的亮点如下:1. 首先,DALL-E 2 展示了深度进修中聚集模型(Diffusion Model)的强大功能,因为 DALL-E 2 中的先验和图象天生子模型都是基于聚集的。虽然在过去几年才开始流行,但聚集模型已经证明了自身价值,一些关注深度进修研究的人也期望在未来看到更多进展。2. 其次,展示了利用自然语言作为训练深度进修 SOTA 模型的手段的必要性和力量。这一点并非源于 DALL-E 2,但重要的是认识到, DALL-E 2 的力量是源于可在互联网上获得大规模匹配的自然语言 / 图象数据。利用这些数据消除了手动标注数据集的高成本和相干瓶颈,但这类数据嘈杂、未经处理的性质也反映了深度进修模型必须具备面对真实数据的鲁棒性。3. 最后,DALL-E 2 重申了 Transformer 的地位,鉴于它们具有令人印象深刻的并行性,因此对于在网络规模数据集上训练的模型来说是至高无上的。DALL-E 2 的工作原理:鸟瞰图在深入了解 DALL-E 2 的工作原理之前,让我们先大致了解一下 DALL-E 2 如何天生图象。虽然 DALL-E 2 可以执行各种任务,包括上面提到的图象处理和插值,但我们将在本文中专注于图象天生任务。
在最高级别,DALL-E 2 的工作非常简单:1. 首先,将文本 prompt 输出到经过训练以将 prompt 映照到表征空间的文本编码器中;2. 接下来,称为先验的模型将文本编码映照到相应的图象编码,该图象编码捕获文本编码中包含的 prompt 的语义信息;3. 最后,图象解码模型随机天生图象,该图象是该语义信息的视觉表现。从鸟瞰的角度来看,这就是它的全部了。当然,还有很多有趣的实现细节,我们将在下面讨论。详细介绍现在是时候分别深入了解上述每个步骤了。让我们先来看看 DALL-E 2 如何学会链接相干的文本和视觉概念。第 1 步:链接文本和视觉语义输出「泰迪熊在时代广场骑滑板」后,DALL-E 2 输出如下图象:
DALL-E 2 怎么知道像「泰迪熊」这样的文本概念,应该在视觉空间中如何体现?DALL-E 2 中的文本语义与其视觉表征之间的联系是由另一个名为 CLIP 的 OpenAI 模型进修的。CLIP 接受了数亿张图象及其相干题目的训练,以了解给定文本片段与图象的关联程度。也就是说,CLIP 不是试图预测给定图象的题目,而是进修任何给定题目与图象的相干程度。这种对比而非预测的目标使 CLIP 能够进修同一抽象目标的文本和视觉表示之间的联系。整个 DALL-E 2 模型取决于 CLIP 从自然语言中进修语义的能力,所以让我们看看如何训练 CLIP 以了解其内部工作原理。CLIP 训练训练 CLIP 的基本原则非常简单:1. 首先,所有图象及其相干题目都通过它们各自的编码器,将所有对象映照到一个 m 维空间。2. 然后,计算每个(图象,文本)对的余弦相似度。3. 训练目标是同时最大化 N 个正确编码图象 / 题目对之间的余弦相似度,并最小化 N 2 – N 个不正确编码图象 / 题目对之间的余弦相似度。该训练进程可视化如下:
CLIP 对 DALL-E 2 很重要,因为它最终决定了自然语言片段与视觉概念的语义相干程度,这对于 text-conditional 图象天生至关重要。第 2 步:从视觉语义天生图象训练后,CLIP 模型被冻结,DALL-E 2 进入下一个任务——进修反转 CLIP 刚刚进修的图象编码映照。CLIP 进修了一个表征空间,在该空间中,很容易确定文本和视觉编码的相干性,但我们的兴趣在于图象天生。因此,我们必须进修如何利用表征空间来完成这项任务。特别是,OpenAI 利用其先前模型 GLIDE (https://arxiv.org/abs/2112.10741) 的窜改版本来执行此图象天生。GLIDE 模型进修反转图象编码进程,以便随机解码 CLIP 图象嵌入。
如上图所示,应该注意的是,目标不是构建一个自动编码器并在给定嵌入的情况下准确地重建图象,而是天生一个在给定嵌入的情况下保持原始图象显著特征的图象。为了执行这个图象天生,GLIDE 利用了一个聚集模型。聚集模型是什么?聚集模型是一项受热力学启发的发明,近年来已显著普及。聚集模型通过反转逐渐的噪声进程来进修天生数据。如下图所示,噪声进程被视为一个参数化的马尔可夫链,它逐渐向图象添加噪声以破坏图象,最终(渐近地)产生纯高斯噪声。聚集模型进修沿着这条链向后导航,在一系列时间步长上逐渐消除噪声以逆转这一进程。
如果然后将聚集模型在训练后「一分为二」,则可以利用它通过随机采样高斯噪声来天生图象,然后对其进行去噪以天生逼真的图象。有些人可能会认识到,这种技术很容易让人联想到利用自编码器天生数据,而聚集模型和自动编码器实际上是相干的。GLIDE 训练虽然 GLIDE 不是第一个聚集模型,但它的重要贡献在于窜改了它们以允许天生文本条件图象。特别是,人们会注意到聚集模型从随机采样的高斯噪声开始。起初,还不清楚如何调整此进程以天生特定图象。如果在人脸数据集上训练聚集模型,它将可靠地天生逼真的人脸图象;但是如果有人想要天生一张具有特定特征的脸,比如棕色的眼睛或金色的头发怎么办?GLIDE 通过利用额外的文本信息增强训练来扩展聚集模型的核心概念,最终天生 text-conditional 图象。我们来看看 GLIDE 的训练进程:
以下是利用 GLIDE 天生的图象的一些示例。作者指出,在照片写实和字幕相似性方面,GLIDE 的性能优于 DALL-E。
GLIDE 天生的图象示例DALL-E 2 利用窜改后的 GLIDE 模型以两种方式利用投影的 CLIP 文本嵌入。第一种是将它们添加到 GLIDE 现有的时间步嵌入中,第二种是通过创建四个额外的上下文 token,它们连接到 GLIDE 文本编码器的输出序列。GLIDE 对 DALL-E 2 很重要,因为它允许作者通过在表示空间中调整图象编码,轻松地将 GLIDE 的文本条件照片级逼真图象天生功能移植到 DALL-E 2 。因此,DALL-E 2 窜改后的 GLIDE 进修天生以 CLIP 图象编码为条件的语义一致的图象。还需要注意的是,反向聚集进程是随机的,因此通过窜改后的 GLIDE 模型多次输出相同的图象编码向量很容易产生变化。第 3 步:从文本语义映照到相应的视觉语义虽然窜改后的 GLIDE 模型成功地天生了反映图象编码捕获的语义的图象,但我们如何实际去寻找这些编码表征?换句话说,我们如何将 prompt 中的文本条件信息注入图象天生进程?回想一下,除了我们的图象编码器,CLIP 还进修了一个文本编码器。DALL-E 2 利用另一个模型,作者称之为先验模型,以便从图象题目的文本编码映照到其相应图象的图象编码。DALL-E 2 作者对先验的自回归模型和聚集模型进行了实验,但最终发现它们产生的性能相当。鉴于聚集模型的计算效率更高,因此它被选为 DALL-E 2 的先验模型。
从文本编码到其相应图象编码的先验映照事先训练DALL-E 2 中的聚集先验由一个仅有解码器的 Transformer 组成。它利用因果注意力 mask 在有序序列上运行:1. tokenized 的文本 / 题目。2. 这些 token 的 CLIP 文本编码。3. 聚集时间步长的编码。4. 噪声图象通过 CLIP 图象编码器。5. 最终编码,其来自 Transformer 的输出用于预测无噪声 CLIP 图象编码。将它们放在一起至此,我们拥有了 DALL-E 2 的所有功能组件,只需将它们链接在一起即可天生文本条件图象:1. 首先,CLIP 文本编码器将图象描述映照到表征空间。2. 然后聚集先验从 CLIP 文本编码映照到相应的 CLIP 图象编码。3. 最后,窜改后的 GLIDE 天生模型通过反向聚集从表征空间映照到图象空间,天生许多可能的图象之一,这些图象在输出说明中传达语义信息。
DALL-E 2 图象天生进程的高级概述参考内容1. Deep Unsupervised Learning using Nonequilibrium Thermodynamics (https://arxiv.org/abs/1503.03585)2. Generative Modeling by Estimating Gradients of the Data Distribution (https://arxiv.org/abs/1907.05600)3. Hierarchical Text-Conditional Image Generation with CLIP Latents (https://arxiv.org/pdf/2204.06125.pdf)4. Diffusion Models Beat GANs on Image Synthesis (https://arxiv.org/abs/2105.05233)5. Denoising Diffusion Probabilistic Models (https://arxiv.org/pdf/2006.11239.pdf)6. Learning Transferable Visual Models From Natural Language Supervision (https://arxiv.org/pdf/2103.00020.pdf)7. GLIDE: Towards Photorealistic Image Generation and Editing with Text-Guided Diffusion Models (https://arxiv.org/pdf/2112.10741.pdf)原文链接:https://www.assemblyai.com/blog/how-dall-e-2-actually-works/
原创文章,作者:机器之心,如若转载,请注明出处:https://www.iaiol.com/news/33506