近年来,多模态系统的构建越来越受到重视,这些系统能够在多个领域学习概念。在之前的文章中,讨论了CLIP系统。本文将探讨计算机视觉领域近年来可能的最大突破之一:DALL-E,这个名字来源于艺术家萨尔瓦多·达利和皮克斯的《机器人总动员》。
DALL-E是一个神经网络,能够成功地将文本转换为自然语言中可表达的广泛概念的相应图像。已经见证了GPT-3的实现和成功,这是自然语言处理(NLP)领域的一个重大突破。DALL-E采用了类似的方法,几乎可以称之为图像版的GPT-3。
DALL-E拥有120亿参数,经过训练可以从文本描述中生成图像。与CLIP类似,它也使用文本-图像对来构建其数据集。已经看到GPT-3是一个拥有1750亿参数的网络,能够执行各种文本生成任务。DALL-E现在已经展示了将这些知识扩展到视觉任务处理的能力。
简而言之,可以向DALL-E模型传递任何文本,无论是现实的还是虚构的,它都会为生成图像。稍后将看一些例子。DALL-E确实在它产生的图像中提供了很多定制化。
截至目前,DALL-E背后的实际工作尚未公布,即OpenAI团队尚未发布背后的研究论文和代码。但将带了解目前所知道的信息。此外,Phil Wang(aka Lucidrains)已经开发了一个DALL-E的复制品,可以在这里查看!
受到GPT-3的启发,DALL-E也是一个基于变换器的语言模型。变换器模型近年来一直是所有NLP领域最先进的网络,并且现在在视觉任务中也得到了广泛的应用。已经看到在CLIP网络中使用了视觉变换器。
需要注意的一点是,DALL-E是一个仅解码器的变换器,这意味着所有图像和文本都作为单个标记流直接传递到解码器。
知道DALL-E的架构使用的方法与VQVAE类似。让了解它的工作原理!
上面的图像展示了VQVAE的工作方式,可以看到一只狗的图像被输入到编码器中。这个编码器创建了一个“潜在空间”,这只是一个压缩图像数据的空间,其中相似的数据点更接近。
现在VQVAE有一批向量,可以称之为词汇表以简化说明。编码器必须输出一个存在于词汇表中的来自其潜在空间的向量。这意味着为编码器提供了一组选择。这个向量被输入到解码器中,解码器重建了狗的图像。
因此,DALL-E使用了一个预训练的VAE,意味着编码器、解码器和词汇表是一起训练的。让通过一个例子来看看DALL-E的实际应用:
给定一个文本提示,DALL-E能够生成图像。与其他文本到图像合成网络相比,DALL-E不仅可以从头开始生成图像,还可以重新生成现有图像的任何矩形区域。
OpenAI团队提到,该网络生成512个图像作为输出。他们最新的网络CLIP被用作重新排名算法,以选择给定示例中最好的32个。这意味着CLIP使用其相似性搜索能力来选择最好的图像-文本对。在之前的博客文章中已经看到了CLIP在这方面的表现有多好。
DALL-E展示了它能够做到的很多事情。让分析一下!
可以看到DALL-E能够创建可能或不可能出现在现实生活中的多边形形状的物体。DALL-E在创建正确物体方面没有失误,但对于某些形状的成功率较低,如下所示。可以看到一些红色午餐盒是六边形的,尽管文本请求的是五边形盒子。
计数是DALL-E目前面临的一个主要问题。DALL-E能够生成多个物体,但无法可靠地数到两个以上。虽然DALL-E在物体属性和数量上提供了一定程度的可控性,成功率可能取决于标题的措辞。如果文本请求的名词有多种含义,例如“眼镜”、“筹码”和“杯子”,它有时会根据使用的复数形式绘制两种解释。
DALL-E对光线、阴影和环境的变化具有鲁棒性,这取决于一天中的时间或季节。这使得它具备了一些3D渲染引擎的能力。一个主要的区别是,虽然3D引擎需要输入完全详细,但DALL-E可以根据提供的标题填补这些空白。事实上,DALL-E在风格方面非常出色!
DALL-E的其他一些能力包括:
可视化内部和外部能力,即它能够生成蘑菇的横截面,例如。它还能够绘制多种不同物体的细粒度外部细节,如下所示。这些细节只有在近距离观察物体时才会显现出来。
组合不相关的元素,即DALL-E能够描述真实和虚构的物体。它有能力从一个不相关的想法中汲取灵感,同时尊重被设计物体的形式,理想情况下产生一个看起来实用功能的物体。看来,当文本包含“形状”、“形式”和“风格”等短语时,它就有能力做到这一点。
地理和时间知识,即有时能够渲染某些地点的相似之处,并理解简单的地理事实,如国家旗帜、美食和当地野生动物。请记住,这些地点大多不存在!
它还学会了几十年来设计和技术的基本刻板趋势。