OpenAI发布了他们最新(也许是世界第一的)AI绘画模型DALLE-3的论文!
原论文传送门:
https://cdn.openai.com/papers/dall-e-3.pdf
这篇论文的核心是研究如何通过改进图像描述来提高文本到图像模型的性能。
考虑到全文上万字,城主向希望简单了解的读者提供一份2000字左右的概要内容。之后附上论文的天空之城中文版供有兴趣的同学阅读。
现有的文本到图像模型在处理详细的图像描述时常常遇到困难,经常忽略或混淆提示的含义。OpenAI认为这个问题源于训练数据集中图像描述的噪声和不准确性。为了解决这个问题,OpenAI训练了一个专门的图像描述生成器,并用它重新生成训练数据集的描述。然后,OpenAI训练了几个文本到图像模型,并发现在这些合成描述上进行训练可以可靠地提高模型的性能。最后,OpenAI利用这些发现构建了DALL-E 3,这是一个新的文本到图像生成系统,并对其在提示跟踪、一致性和美学方面的性能进行了评估,发现其与竞争对手相比有着优秀的表现。OpenAI公开了这些评估的样本和代码,以便未来的研究可以继续优化文本到图像系统的这个重要方面。
在大规模数据集中,人类通常只关注图像主题的简单描述,忽略了背景细节或图像中描绘的常识关系。常被忽略的重要细节可能包括:物体的存在,如厨房的水槽或人行道上的停车标志;物体在场景中的位置和数量;场景中物体的颜色和大小等常识细节;图像中显示的文本。为了解决这些问题,OpenAI提出了使用合成生成的标题的理论,并在后续部分讨论了OpenAI开发的测试这一理论的程序。
首先,OpenAI建立了一个图像标题生成器,它与传统的预测文本的语言模型非常相似。然后,OpenAI使用预训练的CLIP图像嵌入函数F(i)来增强语言模型目标。接着,OpenAI使用上述公式在(t, i)文本和图像对的数据集上联合预训练标题生成器和CLIP以及语言建模目标。然后,OpenAI对标题生成器进行微调,以改进图像生成数据集中的标题。OpenAI首先构建了一个只描述图像主题的标题的小数据集,然后继续在这个数据集上训练标题生成器。OpenAI将这个过程重复了一次,创建了一个描述图像内容的长、高度描述性的标题的数据集。这些标题不仅描述了图像的主题,还描述了其周围环境、背景、图像中的文本、样式、颜色等。最后,OpenAI将图像标题生成器的微调应用到文本到图像数据集中的每个图像上,生成了一组用于后续实验的合成标题。
研究发现,像文本到图像扩散模型这样的可能性模型有过度适应数据集分布规律的倾向。为了克服这个问题,研究者选择将合成标题与真实标题进行混合。在数据采样时,随机选择真实标题或合成标题。研究者还分析了不同混合比例的性能影响。
在评估方法中,研究者使用相同的图像数据集训练了相同的T5-conditioned图像扩散模型。训练完成后,使用评估数据集的标题生成了每个模型的50,000张图像,并使用CLIP-S评估指标评估了这些生成的图像。
研究结果显示,使用合成标题训练的模型在使用真实标题评估时,CLIP得分性能略好于基线模型,而在使用描述性合成标题评估时,性能明显更好。这表明,在训练文本到图像模型时,使用合成标题没有任何不利影响。
在评估标题混合比例时,研究者使用不同的混合比例训练了四个图像生成模型。结果显示,合成标题的更高混合比例总是能提高模型的CLIP得分。
然而,使用高比例的合成标题训练模型会导致模型自然适应由标题生成器发出的长、高度描述性的标题的分布。因此,为了最大限度地提取模型的潜力,我们需要使用高度描述性的标题对模型进行独家采样。
DALL-E 3是DALL-E 2的升级版,其训练模型中95%是合成标题,5%是真实标题。在各种与提示跟随相关的评估中,DALL-E 3的性能超过了DALL-E 2和Stable Diffusion XL。在CLIP评分中,DALL-E 3的表现优于其他两个模型。在drawbench标题的评估中,DALL-E 3也表现出色,尤其是在使用"上采样"标题时,其性能优势更为明显。此外,DALL-E 3在T2I-CompBench评估套件的子集上的表现也是最好的,这个基准测试了模型对组合提示的处理能力。在人类评估中,DALL-E 3生成的图像在提示跟随、风格和一致性等方面都优于其他模型,得到了人类评估者的青睐。
尽管DALL-E 3在跟随提示方面取得了显著进步,但在对象放置和空间意识方面仍存在困难。例如,使用"在左边"、"在下面"、"在后面"等词语是不可靠的。此外,DALL-E 3在生成文本时也存在问题,例如,生成的文字可能会缺失或多出字符。OpenAI怀疑这可能与使用的T5文本编码器有关。在未来的工作中,OpenAI希望探索在字符级语言模型上进行条件化以改善这种行为。
此外,OpenAI还发现合成字幕容易产生关于图像重要细节的幻觉。例如,给定一幅植物的图画,字幕器经常会幻想出植物的属和种,并将其放入字幕中,即使这些细节在图像中的文本形式中是可用的。OpenAI在描述鸟的图片时也观察到了类似的行为:物种被幻想出来或根本没有提及。
这对OpenAI的文本到图像模型有下游影响:DALL-E 3在为上述特定术语生成图像时是不可靠的。OpenAI相信,对字幕器的进一步改进应该能够进一步改进OpenAI的文本到图像模型。
=以下是论文的中文完整版=
James Betker∗† jbetker@openai.com
Gabriel Goh∗† ggoh@openai.com
Li Jing∗† lijing@openai.com
Tim Brooks† Jianfeng Wang‡ Linjie Li‡ Long Ouyang† Juntang Zhuang† Joyce Lee† Yufei Guo†
Wesam Manassra† Prafulla Dhariwal† Casey Chu† Yunxin Jiao†
Aditya Ramesh∗† aramesh@openai.com
(∗Equal contribution †OpenAI ‡Microsoft)
我们证明,通过在高度描述性的生成图像标题上进行训练,文本到图像模型的提示跟随能力可以得到显著提高。现有的文本到图像模型在跟随详细的图像描述时常常遇到困难,经常忽略单词或混淆提示的含义。我们假设这个问题源于训练数据集中嘈杂和不准确的图像标题。我们通过训练一个定制的图像标题生成器并用它重新标注训练数据集来解决这个问题。然后,我们训练了几个文本到图像模型,发现在这些合成标题上进行训练可以可靠地提高提示跟随能力。最后,我们利用这些发现构建了DALL-E 3:一个新的文本到图像生成系统,并在一个旨在衡量提示跟随、连贯性和美学的评估中对其性能进行了基准测试,发现它与竞争者相比有着优势。我们发布了这些评估的样本和代码,以便未来的研究可以继续优化文本到图像系统的这个重要方面。
最近在生成模型方面的进步使得文本到图像生成模型的性能得到了显著的提高。特别是,采用基于采样的方法如自回归生成模型[27,2,1,20,30]或使用扩散过程[25,6,11,12,19,22],使我们能够将图像生成问题分解为小的、离散的步骤,这对于神经网络来说更易于学习。
同时,研究人员已经找到了如何通过堆叠自注意力层[15,3,4]来构建图像生成器的方法。将图像生成与卷积的隐式空间偏差解耦,使得文本到图像模型能够通过研究良好的变换器的缩放属性来可靠地改进。
结合足够大的数据集,这些方法使得我们能够训练出大型的文本到图像模型,这些模型能够生成的图像质量正在迅速接近人类可以产生的照片和艺术品的质量。
在这个领域的一个突出挑战是图像生成系统的可控性,这些系统经常忽视给定标题中的单词、单词顺序或含义。我们将这些挑战称为“提示跟随”。
这个问题在几项工作中都被指出:Rassin等人(2022)指出,DALL-E 2并没有强制每个单词只有一个含义的约束。Saharia等人(2022)提出通过对预训练语言模型进行条件化来改进它,并引入了一个名为Drawbench的评估,该评估揭示了常见的提示跟随问题。Yu等人(2022b)同时引入了他们自己的基准,Parti Prompts,并展示了扩大自回归图像生成器的规模是改进提示跟随的另一种方式。
在这项工作中,我们提出了一种新的解决提示跟随问题的方法:改进标题。我们假设,现有文本到图像模型的一个基本问题是他们所训练的数据集中文本和图像配对的质量较差,这个问题在其他一些工作中也被指出,如Jia等人(2021)。我们建议通过为我们的数据集中的图像生成改进的标题来解决这个问题。我们首先学习一个健壮的图像标题生成器,它可以生成详细、准确的图像描述。然后,我们将这个标题生成器应用到我们的数据集中,生成更详细的标题。最后,我们在我们改进的数据集上训练文本到图像模型。
在合成数据上进行训练并不是一个新概念。例如,Yu等人(2022b)提到他们在训练他们的扩大自回归图像生成器时应用了这种技术。我们的贡献在于构建了一个新颖的、描述性的图像标题生成系统,并测量了在训练生成模型时使用合成标题的影响。我们还为一套衡量提示跟随的评估建立了一个可复制的基线性能配置文件。
这篇论文主要关注的是通过在高度描述性的生成标题上进行训练,DALL-E 3的提示跟随能力的改进。它并没有涵盖DALL-E 3模型的训练或实现细节。我们在第2节提供了我们训练图像标题生成器的策略的高级概述,在第3节评估了在原始标题和生成标题上训练的文本到图像模型,在第4节评估了DALL-E 3,在第5节讨论了限制和风险。
在一个奇幻的环境中,一只高度详细的毛茸茸的人形臭鼬,眼睛犀利,自信地在中景中摆姿势,身穿动物皮毛夹克。艺术家精湛地用数字艺术渲染了这个角色,捕捉到了毛皮和衣物纹理的复杂细节。
这是一本图像小说的插图。在满月的照耀下,城市街道繁忙,人行道上的行人享受着夜生活。在街角的摊位上,一位火红头发的年轻女子,身穿标志性的天鹅绒斗篷,正在与暴躁的老摊贩讨价还价。这个暴躁的摊贩是一个高大、精明的男人,穿着一套锐利的西装,留着一把引人注目的胡子,正在他的蒸汽朋克电话上热烈地交谈。
图1 - 从DALL-E 3中选出的风景样本。
古老的页面上充满了奇幻兽、怪物和植物的素描和文字,散落在一本旧旧的、风化的日记本上。淡淡的深绿色墨水讲述着魔法冒险的故事,而高分辨率的图画详细描绘了每个生物的复杂特征。阳光从附近的窗户透过,照亮了页面,展现出它们经历时间洗礼的魅力。
一张充满活力的1960年代风格的海报,描绘了星际移民的场景,一艘复古的火箭从地球发射,向着一个遥远的、色彩斑斓的星球飞去。大胆的字体宣布"加入银河冒险!",下面的小字读着"探索新世界,建设更美好的未来。"背景是一个旋转的星系和星座。
一个淘气的雪貂,脸上带着顽皮的笑容,挤进一个大玻璃罐子,罐子里满是五颜六色的糖果。罐子放在一个舒适的厨房的木桌上,温暖的阳光从附近的窗户透过。
一个凶猛的花园侏儒战士,身穿由叶子和树皮制成的盔甲,挥舞着一把小剑和盾牌。他勇敢地站在一个开满花的花园中的岩石上,周围是五彩斑斓的花朵和高大的植物。他的脸上画着坚定的表情,准备捍卫他的花园王国。
在星光照耀的天空下,一片冰冷的景色,一座壮丽的冰瀑从悬崖上流下。在场景的中心,一团火焰燃烧得旺盛,它的火焰似乎被冻结在原地,给周围的冰雪投下闪烁的光芒。
一个旋转的、多彩的门户从一个咖啡海洋的深处出现,丰富的液体波纹向外扩散。门户吞噬了一个咖啡杯,这个杯子成为了通往奇幻维度的门户。周围的数字艺术景观反映了门户的颜色,创造了一个充满无限可能的诱人场景。
图2 - 从DALL-E 3中选出的肖像和正方形样本。
我们的文本到图像模型是在一个由大量配对(t, i)组成的数据集上训练的,其中i是图像,t是描述该图像的文本4。在大规模数据集中,t通常来自于专注于描述图像主题并忽略背景细节或图像中描绘的常识关系的人类作者。通常被忽略的重要细节可能包括:
像厨房中的水槽或人行道上的停车标志这样的物体的存在以及对这些物体的描述。
场景中物体的位置和数量。
常识性的细节,如场景中物体的颜色和大小。
图像中显示的文本。
更糟糕的是,互联网上找到的标题往往简单地错误;描述与图像只是间接相关的细节。例如,常常可以在用于生成图像标题的alt-text中找到广告或模因。
我们推测,所有这些不足都可以通过使用合成生成的标题来解决。在后续的部分中,我们将讨论我们开发的测试这个理论的程序。
图像标注器与传统的预测文本的语言模型非常相似。因此,我们首先提供一个关于语言模型的简短描述。首先,使用一个分词器将文本字符串分解为离散的标记。一旦以这种方式分解,我们的语料库的文本部分就可以表示为一个序列,t= [t1, t2, . . . , t n]。然后,我们可以通过最大化以下似然函数来构建一个语言模型:
其中Θ是需要优化的标注器的参数。要将这个语言模型变成一个标注器,你只需要根据图像进行条件化。这里的挑战是,图像由许多千个像素值组成。在我们当前的神经网络中,对所有这些信息进行条件化是非常低效的,所以我们需要一个压缩的表示空间。方便的是,CLIP[17]就提供了这样的东西。因此,给定一个预训练的CLIP图像嵌入函数F(i),我们将语言模型目标进行如下增强:
我们遵循Yu等人(2022a)的方法,在我们的(t, i)文本和图像对的数据集上,使用上述公式,联合预训练我们的标注器,CLIP和语言建模目标。结果的模型确实是一个好的标注器,但是展现出我们在第2节中描述的同样的问题,比如不愿意描述细节。
注4:在本文档中,配对的文本通常被称为"标题caption"
图像
Alt-Text:
现在在victorian plumbing.co.uk,| 他完成了...差不多!| 23(19/30)1200
短合成标题(SSC):
白色现代浴缸坐在木地板上。| 一个熨斗在棉被上。| 一罐大黄酒坐在鹅卵石背景上。
描述性合成标题(DSC):
这个豪华的浴室特点是一个现代的独立浴缸,以清新的白色完成。浴缸坐在一个木质的重点墙上,墙上有玻璃般的面板,营造出一种宁静和放松的氛围。三个吊灯悬挂在浴缸上方,增添了一丝精致感。一个大窗户配有木质面板,提供自然光,而一个盆栽植物增添了一抹绿色。这个独立的浴缸在这个现代浴室中显得突出,就像一件声明性的作品。
一个棉被铺在熨衣板上,上面放着一个熨斗。棉被有一个拼布设计,用淡色的布条和花卉图案。熨斗打开,尖端放在其中一条条纹上。棉被似乎正在被压平,因为熨斗的蒸汽在表面可见。棉被有一种复古的感觉,颜色是黄色,蓝色和白色,给人一种古董的外观。
大黄块在玻璃罐中,等待被腌制。大黄的颜色从鲜红色到淡绿色,形成了美丽的对比。罐子坐在砾石背景上,给图像带来了一种乡村的感觉。
图3 - 从互联网上抓取的选定图像的alt-text,短合成标题(SSC)和描述性合成标题(DSC)的示例。
2.1.1微调标题生成器
为了改进我们的图像生成数据集中的标题,我们希望使我们的标题生成器偏向于生成对学习文本到图像模型有用的图像描述。在我们的第一次尝试中,我们构建了一个只描述图像主题的标题的小数据集。然后我们继续在这个数据集上训练我们的标题生成器。这个过程产生的θ更新导致了一个偏向于描述图像主题的模型。我们将这种微调生成的标题称为"短合成标题"。我们再次重复这个过程,创建一个长的,高度描述性的标题的数据集,描述我们的微调数据集中每个图像的内容。这些标题不仅描述了图像的主题,还描述了它的周围环境,背景,图像中的文字,风格,颜色等。我们再次在这个数据集上微调我们的基础标题生成器。我们将这个标题生成器生成的标题称为"描述性合成标题"。
图3显示了真实标题,短合成标题和描述性合成标题的示例。
一旦建立,我们将我们的图像标题生成器微调应用到我们的文本到图像数据集中的每一张图像上,生成一组合成标题,我们将用于后续的实验。
有了我们重新标注的数据集,我们开始评估在合成文本上训练模型的影响。我们特别想回答两个问题:
使用每种类型的合成标题的性能影响。
合成标题和真实标题的最佳混合比例。
像我们的文本到图像扩散模型这样的可能性模型有一个臭名昭著的倾向,那就是过度适应数据集中的分布规律。例如,一个在文本上训练的文本到图像模型,如果文本总是以一个空格字符开始,那么如果你试图用不以空格开始的提示进行推理,它就不会正常工作。
当涉及到在合成标题上训练时,我们需要考虑这个问题。我们的标题生成器模型可能有许多难以检测的模态行为,但如果我们在这些标题上训练我们的文本到图像模型,这些行为将成为我们的文本到图像模型的偏见。这可能发生在字母大小写,标题中的标点符号出现的位置(例如,它总是以一个句号结束吗?),标题的长度,或者风格倾向,如所有的标题都以"a"或"an"开头。
克服这个问题的最好方法是将我们的输入规范化到一个更接近人类可能使用的风格和格式的文本分布。当使用真实标题时,你可以免费得到这个,因为这些标题实际上是从人类写的文本的分布中抽取的。为了在使用合成标题的模型训练中引入一些这样的规范化,我们选择将合成标题和真实标题混合。
混合在数据采样时发生,我们随机选择真实标题或合成标题,有固定的百分比的机会。我们将在下一节分析不同混合比例的性能影响。
为了评估,我们在相同的图像数据集上训练了相同的T5条件图像扩散模型。模型的详细信息在A中描述。所有的模型都被训练到500,000个训练步骤,批量大小为2048,对应于1B个训练图像总数。
一旦训练完成,我们使用评估数据集中的标题生成了每个模型的50,000张图像。然后我们使用Hessel等人(2022)提出的CLIP-S评估指标评估这些生成的图像。我们选择CLIP分数作为度量标准,因为它与文本图像相似性有强烈的相关性,这是我们追求的。简单回顾一下,这个度量标准的计算方法如下:
首先,我们使用公开的CLIP ViT-B/32[ 17]图像编码器产生一个图像嵌入zi,然后我们使用文本编码器为图像标题创建一个文本嵌入zt。我们最后计算CLIP分数作为余弦距离C:
然后,这个距离在所有50,000个文本/图像对的距离中取平均,并乘以100。我们在训练过程中的多个模型检查点上进行这个评估,每次都使用模型学习权重的指数加权平均值进行评估
图4 - 在不同标题类型上训练的文本到图像模型的CLIP得分。左边是我们评估数据集上的真实标题的评估结果。右边使用的是同一数据集的描述性合成标题。
在计算CLIP得分时,选择哪个标题进行上述计算是重要的。在我们的测试中,我们要么使用真实标题,要么使用描述性合成标题。每次评估中使用的标题都有注明。
我们首先分析在不同类型的标题上训练的模型之间的性能差异。对于这个评估,我们训练了三个模型:
一个只在真实标题上训练的文本到图像模型。
一个在95%的简短合成标题上训练的文本到图像模型。
一个在95%的描述性合成标题上训练的文本到图像模型。
我们进行了两次这样的评估:一次是使用从真实标题计算出的zt,另一次是使用从描述性合成标题计算出的zt。我们没有对简短合成标题进行这样的操作,因为在这次评估中,它们与真实标题非常相似。
结果(如图4所示)表明,两个在合成标题上训练的模型在使用真实标题进行评估时的CLIP得分性能略好于基线模型,并且在使用描述性合成标题进行评估时的性能明显更好。这表明,在训练文本到图像模型时,使用合成标题没有任何不利之处。
值得注意的是,合成标题的评估曲线的方差要小得多。这支持了我们的理论,即重新标注可以被看作是一种平均操作。在合成标题上评估的图像生成模型也在所有训练过的模型中获得了更高的净CLIP得分,这支持了合成标题与其对应的图像有更好的绑定的观点。
为了评估标题混合比例,我们使用不同混合比例的描述性合成标题训练了四个图像生成模型。我们选择了65%、80%、90%和95%的合成标题混合。在实验进行到一半时,评估显示65%的混合比例在所有评估中都远远落后于其他混合比例,所以我们放弃了它。
图5 - 在不同混合比例的描述性合成标题和真实标题上训练的文本到图像模型的CLIP得分。使用真实标题进行评估。
图5的结果显示,更高比例的合成标题总是能提高模型的CLIP得分。
上述实验表明,我们可以通过在非常高比例的合成标题上训练来最大化我们模型的性能。然而,这样做会导致模型自然地适应我们的标题生成器发出的长、高度描述性的标题的分布。
众所周知,生成模型在其训练分布之外的样本上产生的结果往往较差。因此,为了从我们的模型中提取最大的潜力,我们需要使用高度描述性的标题来独家采样。幸运的是,这是一个可以通过最近在大型语言模型上的突破来解决的问题。像GPT-4[14]这样的模型在需要想象力的任务上表现得非常好,比如讲故事和写诗。有理由相信,它们也可能擅长在图像描述中提出合理的细节。
事实上,给定一个像附录C中的提示,我们发现GPT-4会很愿意将任何标题"上采样"为一个高度描述性的标题。为了演示这种方法可能的用途,我们在drawbench数据集[24]的标题上执行了这个过程,并在表7中可视化了结果。
如图7所示,利用LLM来"上采样"标题不仅可以添加缺失的细节,还可以消除复杂关系的歧义,这对于一个(相对较小的)图像生成模型来说是很难学习的。最终的结果是,模型通常会正确地渲染出它原本可能会错误的图像。
一只鸟吓到了稻草人。| 用一个披萨大小的25美分硬币支付一个四分之一大小的披萨。| 一艘由桨、帆或引擎驱动在水上行驶的小船。
一只大而活泼的鸟,翅膀展开宽广,从天空俯冲下来,当它接近一个在阳光照耀的田野中的风化稻草人时,发出尖锐的叫声。稻草人,穿着破旧的衣服和草帽,似乎在颤抖,就像它在害怕接近的鸟一样恍若活过来。
一个人站在披萨柜台前,手里拿着一个披萨大小的巨大25美分硬币。收银员,眼睛瞪得大大的,惊讶地递过一个微小的,四分之一大小的披萨作为回报。背景中有各种披萨配料和其他顾客,他们都对这笔不寻常的交易感到同样惊讶。
一艘小船,由桨、帆或引擎驱动在水上行驶,优雅地漂浮在宁静的湖面上。太阳在水面上投下温暖的光芒,反射出天空的鲜艳色彩,鸟儿在头顶飞翔。
图6 - 使用"上采样"的Drawbench字幕创建DALL-E 3样本的效果。原始Drawbench字幕在上方,上采样字幕在下方。每个字幕的最佳图像为4张。
为了在大规模上测试我们的合成字幕,我们训练了DALL-E 3,一种新的最先进的文本到图像生成器。为了训练这个模型,我们使用了95%的合成字幕和5%的真实字幕。该模型本身是我们在上述消融中使用的模型的放大版本,还有其他几项改进。
(注5 DALL-E 3比DALL-E 2有许多改进,其中许多在本文档中没有涵盖,也没有因为时间和计算原因进行消融。本文档中讨论的评估指标不应被理解为仅仅通过在合成字幕上进行训练而产生的性能比较。)
表1 - 关于提示跟随的各种评估中的文本到图像模型的比较
1使用DALL-E 2生产版本在2023年9月20日生成的图像。
2使用了精炼模块的稳定扩散XL v1.0。
3这里的分数是有"正确"字幕的图像的百分比,由GPT-V判断。
我们将DALL-E 3与DALL-E 2和带有精炼模块的稳定扩散XL 1.0进行比较。我们希望评估DALL-E 3在与提示跟随相关的任务上的表现。我们在下面描述了各个任务。
4.1.1 CLIP得分
我们首先使用公开的ViT-B/32模型计算CLIP得分,如第3.2节所述。对于这个比较,我们使用从MSCOCO 2014评估数据集[10]中抽取的4,096个字幕来生成我们的图像6。在这个评估中,我们对模型进行推理,使用短的,真实的字幕。我们的模型在这个评估中胜过了DALL-E 2和稳定扩散XL。
4.1.2 Drawbench
我们接下来在Drawbench[24]的字幕上进行评估。对于这个测试,我们使用一个基于GPT-4的指令调整的,视觉感知的LLM,称为GPT-V,来评估我们的模型与其他模型的性能。对于Drawbench中的每个提示,我们用每个模型生成四张图像。然后我们用图像和文本提示我们的视觉感知LLM,使用附录D中找到的提示。这导致了一个结论("正确"/"错误")和对那个结论的解释。
由于我们之前观察到,当我们的模型给出了一个语言模型的推断字幕时,它的表现更好,所以我们使用GPT-4来"上采样"Drawbench的字幕,使用第3.5节描述的过程。我们使用这些"上采样"的字幕在所有模型中采样图像时,再次进行上述的自动评估。当我们要求视觉感知的LLM判断输出时,我们使用原始的,真实的Drawbench提示。
在所有的Drawbench评估中,我们的模型都击败了DALL-E 2和稳定扩散XL。当我们使用"上采样"的字幕时,差距显著扩大。
(注6:与过去的DALL-E版本一样,DALL-E 3并没有特别针对MSCOCO数据集进行训练,也没有对我们的模型进行任何优化以提高在这个评估上的性能。我们也没有在我们的训练数据集中对MSCOCO进行去重,可能存在数据泄露。)
4.1.3 T2I-CompBench
我们最后对由Huang et al.(2023)开发的T2I-CompBench评估套件的一个子集进行评估。这个基准测试衡量了模型在组合提示上的性能。我们报告了颜色绑定、形状绑定和纹理绑定的分数。我们使用解耦的BLIP-VQA模型来评估这些结果。DALL-E 3在所有评估的基准测试上都是最先进的。
我们提交了来自DALL-E 3和可比较模型的样本进行人类评估。对于这次评估,我们向人类评估者展示了由同一标题生成的两幅并排图片。然后我们向评估者提出三个问题:
1.提示跟随:评估者被呈现给文本到图像模型给出的完整上采样标题,并被要求“选择哪个图像更符合标题”。
2.风格:“想象你正在使用一个根据一些文本生成图像的计算机工具。选择你如果使用这个工具,你会更喜欢看到哪个图像。”
3.连贯性:“选择哪个图像包含更连贯的对象。一个“连贯”的对象是一个可能存在的对象。仔细看看人体部位、面部和姿势,物体的放置,以及场景中的文本,以做出你的判断。提示:计算每个图像的不连贯实例,并选择问题较少的图像。”
对于提示跟随和风格,我们为这次评估组装了一个小型数据集,包含170个标题,这些标题专门针对生产文本到图像系统的典型使用。这些标题涵盖了一系列实际用例,如生成人类、产品和地点,概念融合,文本渲染和艺术作品。我们称这个评估集为“DALL-E 3 Eval”。这些标题将与我们的评估样本一起发布(见第4.3节)。对于连贯性,我们观察到评估者会对描绘想象场景的图像进行惩罚。因此,我们从MSCOCO随机抽取250个标题,以确保评估提示描述的场景可能存在。注意,对于风格和连贯性评估,我们不向评估者展示用于生成图像的标题,以确保他们专注于风格或连贯性,而不是提示跟随。对于每一对图像和问题,我们从评估者那里收集3个回应,每个模型和问题总共2040个评级。人类评估界面在E节中显示。
我们将DALL-E 3与Stable Diffusion XL的refiner模块和Midjourney v5.2进行比较。在表2中,我们报告了使用Nichol等人(2022)概述的相同计算方法得出的ELO分数。
结果显示,DALL-E 3生成的图像在所有三个方面都比所有竞争者更受人类评估者的喜欢,尤其是在提示跟随上。
数据集 DALL-E 3 MJ 5.2 SD XL DALL-E 2
DALL-E 3 Eval (提示跟随) 153.3 -104.8 -189.5 -
DALL-E 3 Eval (风格) 74.0 30.9 -95.7 -
MSCOCO (连贯性) 71.0 48.9 -84.2 -
Drawbench 61.7 - -34.0 -79.3
表2 - DALL-E 3与其他文本到图像生成模型的人类评估结果。报告的分数是使用Nichol等人(2022)的ELO算法计算的。
4.2.1 Drawbench人类评估
在前一节中,我们使用GPT-V评估了drawbench。我们注意到,对于某些类型的测试,GPT-V在判断提示跟随方面的表现并不比随机性能好。特别是在涉及计算图像中对象数量的任务上。为了更好地覆盖drawbench的性能,我们提交了图像和标题进行人类评估,使用的程序与前一节中描述的相同。与我们的GPT-V drawbench评估一样,我们只比较DALL-E 3,Stable Diffusion XL的refiner模块,和DALL-E 2。
我们将在未来的某个日期将所有模型在所有上述比较中生成的样本和提示上传到github。
虽然DALL-E 3在提示跟随方面是一个重要的步骤,但它在对象放置和空间意识方面仍然存在困难。例如,使用“在左边”,“在下面”,“在后面”等词语是相当不可靠的。这是因为我们的合成标题生成器也有这个弱点:它在声明对象放置方面是不可靠的,这反映在我们的下游模型中。
在构建我们的标题生成器时,我们特别注意确保它能够在生成的标题中包含图像中的突出词汇。因此,DALL-E 3可以在被提示时生成文本。在测试过程中,我们注意到这种能力是不可靠的,因为单词有缺失或额外的字符。我们怀疑这可能与我们使用的T5文本编码器有关:当模型在提示中遇到文本时,它会将文本编码为一个向量,然后将这个向量解码为一个图像。这个过程可能会导致文本的部分丢失或变形。
图7 - DALL-E 3的常见失败模式示例
实际上,模型看到的是代表整个单词的标记,并必须将这些标记映射到图像中的字母。在未来的工作中,我们希望探索基于字符级语言模型的条件来帮助改善这种行为。
我们观察到,我们的合成标题容易对图像的重要细节产生幻觉。例如,给定一幅花的植物学绘图,标题生成器经常会幻想出植物的属和种,并将其放入标题中,即使这些细节在图像中的文本形式中是可用的。我们在描述鸟的图片时观察到了类似的行为:种类被幻想出来或根本没有提及。
这对我们的文本到图像模型有下游影响:DALL-E 3在为上述特定术语生成图像时不可靠。我们相信,对标题生成器的进一步改进应该能够进一步改进我们的文本到图像模型。
我们对DALL-E 3部署所引发的安全问题进行了深入分析,包括模型偏见带来的风险。这些评估的结果可以在DALL-E 3系统卡[13]中找到。
陈明,Radford,A,Child,R,吴军,Jun,H,Luan,D,和Sutskever,I。(2020)。从像素生成预训练。在III,H. D.和Singh,A.,编辑,第37届国际机器学习会议论文集,机器学习研究论文集第119卷,第1691-1703页。PMLR。
陈晓,Mishra,N,Rohaninejad,M,和Abbeel,P。(2017)。Pixelsnail:一种改进的自回归生成模型。
Child,R,Gray,S,Radford,A,和Sutskever,I。(2019)。使用稀疏变压器生成长序列。
Dosovitskiy,A,Beyer,L,Kolesnikov,A,Weissenborn,D,Zhai,X,Unterthiner,T,Dehghani,M,Minderer,M,Heigold,G,Gelly,S,Uszkoreit,J,和Houlsby,N。(2021)。一张图片值得16x16个词:大规模图像识别的变压器。
Hessel,J,Holtzman,A,Forbes,M,Bras,R. L.,和Choi,Y。(2022)。Clipscore:一种无参考评估图像字幕的度量。
Ho,J,Jain,A,和Abbeel,P。(2020)。去噪扩散概率模型。
黄凯,孙凯,谢恩,李志,和刘晓。(2023)。T2i-compbench:一个全面的开放世界组合文本到图像生成基准。
贾超,杨洋,夏洋,陈一鸣,Parekh,Z,Pham,H,Le,Q. V.,Sung,Y.,李志,和Duerig,T。(2021)。用噪声文本监督扩大视觉和视觉-语言表示学习。
Kingma,D. P.和Welling,M。(2022)。自动编码变分贝叶斯。
林天宇,Maire,M,Belongie,S,Bourdev,L,Girshick,R,Hays,J,Perona,P,Ramanan,D,Zitnick,C. L.,和Dollár,P。(2015)。Microsoft coco:上下文中的常见对象。
Nichol,A和Dhariwal,P。(2021)。改进的去噪扩散概率模型。
Nichol,A,Dhariwal,P,Ramesh,A,Shyam,P,Mishkin,P,McGrew,B,Sutskever,I,和陈明。(2022)。Glide:朝向用文本引导的扩散模型生成和编辑逼真的图像。
OpenAI(2023a)。Dall-e 3系统卡。
OpenAI(2023b)。Gpt-4技术报告。
Parmar,N,Vaswani,A,Uszkoreit,J,Łukasz Kaiser,Shazeer,N,Ku,A,和Tran,D。(2018)。图像变压器。
Podell,D,English,Z,Lacey,K,Blattmann,A,Dockhorn,T,Müller,J,Penna,J,和Rombach,R。(2023)。Sdxl:改进高分辨率图像合成的潜在扩散模型。
Radford,A,Kim,J. W,Hallacy,C,Ramesh,A,Goh,G,Agarwal,S,Sastry,G,Askell,A,Mishkin,P,Clark,J,Krueger,G,和Sutskever,I。(2021)。从自然语言监督中学习可转移的视觉模型。
Raffel,C,Shazeer,N,Roberts,A,Lee,K,Narang,S,Matena,M,周源,李伟,和刘鹏江。(2020)。探索统一的文本到文本变压器的转移学习的极限。
Ramesh,A,Dhariwal,P,Nichol,A,Chu,C,和陈明。(2022)。使用剪辑潜在的分层文本条件图像生成。
15Ramesh,A,Pavlov,M,Goh,G,Gray,S,Voss,C,Radford,A,陈明,和Sutskever,I。(2021)。零射击文本到图像生成。
Rassin,R,Ravfogel,S,和Goldberg,Y。(2022)。Dalle-2看到了双倍:文本到图像模型中单词到概念映射的缺陷
Rombach,R,Blattmann,A,Lorenz,D,Esser,P,和Ommer,B。(2022)。使用潜在扩散模型的高分辨率图像合成。
Ronneberger,O,Fischer,P,和Brox,T。(2015)。U-Net:用于生物医学图像分割的卷积网络。arXiv:1505.04597。
Saharia,C,Chan,W,Saxena,S,Li,L,Whang,J,Denton,E,Ghasemipour,S. K. S.,Ayan,B. K.,Mahdavi,S. S.,Lopes,R. G.,Salimans,T,Ho,J,Fleet,D. J.,和Norouzi,M。(2022)。具有深度语言理解的逼真文本到图像扩散模型。
Sohl-Dickstein,J,Weiss,E. A.,Maheswaranathan,N,和Ganguli,S。(2015)。使用非平衡热力学的深度无监督学习。
Song,Y.,Dhariwal,P,陈明,和Sutskever,I。(2023)。一致性模型。
van den Oord,A,Kalchbrenner,N,Vinyals,O,Espeholt,L,Graves,A,和Kavukcuoglu,K。(2016)。带有pixelcnn解码器的条件图像生成。
吴研和何恺明。(2018)。组归一化。
于建,王志,Vasudevan,V.,Yeung,L,Seyedhosseini,M,和吴研。(2022a)。Coca:对比字幕是图像-文本基础模型。
于建,徐阳,Koh,J. Y.,Luong,T,Baid,G,王志,Vasudevan,V.,Ku,A,杨洋,Ayan,B. K.,anda Wei Han,B. H.,Parekh,Z,李晓,张浩,Baldridge,J,和吴研。(2022b)。扩大自回归模型用于内容丰富的文本到图像生成。
我们实验中使用的图像解码器是一个文本条件的U-Net[23]潜在扩散模型[22],包含三个阶段。
我们使用由Rombach等人(2022)开发的相同的VAE[9]作为我们的模型。这个自动编码器执行8倍下采样。在我们的合成标题评估中,我们在256px的图像上进行训练,导致模型输入大小为32x32的潜在向量。
对于时间步条件,我们使用一个调制的GroupNorm[28],其中一个学习的比例和偏差项依赖于时间步信号,应用于GroupNorm层的输出。
对于文本条件,我们首先使用T5 XXL文本编码器[18]对文本输入进行编码。然后,这个过程的输出潜在变量被xfnet交叉关注。
对于DALL-E 3,我们在Rombach等人(2022)训练的VAE学习的潜在空间之上训练了我们自己的扩散解码器。我们发现在这里使用扩散解码器可以显著改善细节图像,例如文本或人脸。
这个扩散解码器是一个卷积U-Net,与Ho等人(2020)描述的完全相同。一旦训练完成,我们使用Song等人(2023)描述的一致性蒸馏过程将其降低到两个去噪步骤。
这个改进的潜在解码器并未用于我们的合成标题评估。
以下是我们在给GPT-4提供图像标题进行“上采样”之前给出的提示。
你是一个创造图像的机器人团队的一部分。你与一个助手机器人合作,它会画出你说的任何东西。例如,输出“一个美丽的早晨,在树林中阳光透过树木”将触发你的伙伴机器人输出一个森林早晨的图像,如所描述的。
你将被寻求创建详细、惊人的图像的人提示。实现这一目标的方法是将他们的简短提示变得极其详细和描述性。
有一些规则需要遵循:
你只会根据用户请求输出一个图像描述。
有时用户会要求你修改之前的标题。在这种情况下,你应该参考你与用户之前的对话,并做出所要求的修改。
当要求修改时,你不应该只是让描述更长。你应该重构整个描述以整合建议。
其他时候用户可能不希望修改,而是希望一个新的图像。在这种情况下,你应该忽略你与用户之前的对话。
图像描述必须在15-80个单词之间。额外的单词将被忽略。
{"角色":"用户","内容":"为用户输入创建一个富有想象力的图像描述标题或修改早期的标题:“一个男人拿着一把剑”"},
{"角色":"助手","内容":"一个苍白的人物,长着长长的白发,站在黑暗的森林中央,高高举起一把剑。剑刃发出蓝光,给周围的树木和灌木投下柔和的光芒。"},
{"角色":"用户","内容":"为用户输入创建一个富有想象力的图像描述标题或修改早期的标题:“让光变红”"},
{"角色":"助手","内容":"一个苍白的人物,长着长长的白发,站在黑暗的森林中央,高高举起一把剑。剑刃发出红光,给周围的树木和灌木投下温暖的光芒。"},
{"角色":"用户","内容":"为用户输入创建一个富有想象力的图像描述标题或修改早期的标题:“画一只玩骨牌的青蛙”"},
{"角色":"助手","内容":"一只青蛙坐在一张破旧的桌子上和一只老年浣熊玩骨牌。桌子上覆盖着一块绿色的布,青蛙穿着一件夹克和一条牛仔裤。场景设在森林中,背景是一棵大树。"}
以下是我们给视觉启用的GPT-4模型的提示,以执行我们的drawbench评估:
你负责判断计算机程序生成的图像对生成它们的标题的忠实度。你将被展示一个图像,并给出用于生成该图像的标题。你正在判断的标题旨在对图像生成程序进行压力测试,可能包括以下内容:
打乱或拼写错误的单词(图像生成器应该生成与可能的含义相关的图像)
颜色分配(图像生成器应该将正确的颜色应用到正确的对象上)
计数(应该存在正确数量的对象)
异常关联,例如“大象在海底”,图像应该描绘所请求的内容。
对象的描述,图像生成器应该画出最常关联的对象。
罕见的单词,图像生成器应该创建与指定图像有些关联的图像。
图像中包含文本,图像生成器应该创建包含指定文本的图像。
你需要做出决定,是否图像是正确的,给出标题。你首先要大声思考你的最终结论,列举出图像为什么符合或不符合给定的标题。思考之后,你应该输出“正确”或“错误”,取决于你认为图像是否忠实于标题。
有几条规则:
不要吹毛求疵。如果标题请求一个对象,对象一般被正确描绘,那么你应该回答“正确”。
忽略图像中没有明确提到的其他对象;这些可以显示。
如果被描绘的对象略有变形,只要人类能识别出来,且不违反标题,也是可以的。
你的回应必须始终以“错误”或“正确”结束
“错误”应该保留给标题的特定方面没有正确遵循的实例,如错误的对象、颜色或数量。
你必须保持你的大声思考简短,少于50个单词。
图像(<图像路径>)
<prompt>
其中<image_path>和<prompt>被替换为模型生成的图像和用于生成它的相应提示。
提示跟随、连贯性和风格的人类评估界面如图8、9和10所示。
图8 - 提示跟随的人类评估界面。
图9 - 连贯性人类评估接口。
图10 - 风格人类评估接口。