过去的一年里,随着DALL-E 2,Stable Diffusion等图像生成模型的发布,text-to-image模型生成的图像在分辨率、质量、文本忠实度等方面都得到了飞跃性提升,极大促进了下游应用场景的开发,人人都成了AI画家。
但相关研究表明,目前的生成模型技术仍然存在一个重大缺陷:无法在图像中呈现出可靠的视觉文本。
有研究结果表明,DALL-E 2在图片中生成连贯文本字符上非常不稳定,而最新发布的Stable Diffusion模型则是直接将「无法呈现可读的文本」列为已知的限制。
字符拼写错误:(1) California: All Dreams Welcome, (2) Canada: For Glowing Hearts, (3) Colorado: It’s Our Nature, (4) St. Louis: All Within Reach.
最近Google Research发布了一篇新论文,试图了解并提高图像生成模型渲染高质量视觉文本的能力。
论文链接:https://arxiv.org/abs/2212.10562
研究人员认为当下的text-to-image生成模型模型存在文本渲染缺陷的主要原因是缺乏字符级的输入特征。
为了量化该输入特征在模型生成中的影响,文章中设计了一系列控制实验对是否包含文本输入特征的文本编码器(character-aware和character-blind)进行对比。
研究人员发现,在纯文本领域,character-aware模型在一个新的拼写任务(WikiSpell)上获得了很大的性能收益。
将该经验迁移到视觉领域后,研究人员训练了一套图像生成模型。实验结果表明character-aware模型在一系列新的文本渲染任务(DrawText基准)中比character-blind更胜一筹。
并且character-aware模型在视觉拼写方面达到了更高的技术水平,尽管训练的样例数量少得多,其在不常见的单词上的准确率仍然比竞争模型高出30多个百分点。
语言模型可分为直接访问构成其文本输入字符的character-aware模型和无法访问的character-blind模型。
许多早期的神经语言模型直接在字符上进行操作,而不使用多字符的token作为标记。
后来的模型逐渐转向基于词汇表的tokenization,其中一些模型如ELMo仍然保留了character-aware,但其他模型如BERT则放弃了字符特征以支持更有效的预训练。
目前,大多数广泛使用的语言模型是character-blind的,依靠数据驱动的子词(subword)分割算法,如字节对编码(BPE)来生成子词pieces作为词汇表。
虽然这些方法对于不常见的序列可以退回到字符级表示,但它们在设计上仍然会将常见的字符序列压缩成不可分割的单元。
这篇论文的主要目的是试图了解并提高图像生成模型渲染高质量视觉文本的能力。
为此,研究人员首先孤立地研究了当下文本编码器的拼写能力,从实验结果可以发现,尽管character-blind文本编码器很受欢迎,但它们没有收到关于其输入的字符级构成的直接信号,导致其拼写能力有限。
研究人员还测试了不同规模、架构、输入表示、语言和调整方法的文本编码器的拼写能力。
这篇论文首次记录了character-blind模型通过网络预训练诱导出强大的拼写知识(准确率>99%)的神奇能力,但实验结果表明这项能力在英语之外的语言中并没有得到很好的泛化,而且只有在超过100B参数的规模下才能实现,所以对于大多数应用场景是不可行的。
另一方面,character-aware的文本编码器能够在更小的尺度上实现强大的拼写能力。
在将这些发现应用于图像生成场景时,研究人员训练了一系列character-aware的文本到图像的模型,并证明它们在现有的和新的文本渲染的评估中明显优于字符盲目的模型。
但对于纯字符级模型来说,虽然文本渲染的性能提升了,但对于不涉及视觉文本的prompt,图像-文本对齐度则会下降。
为了缓解这一问题,研究人员建议将字符级和token级的输入表征结合起来,从而可以实现最佳的性能。
由于文本到图像的生成模型依赖于文本编码器来产生用于解码的表征,研究人员首先从Wiktionary中采样一些单词创建了WikiSpell基准,然后基于此数据集在一个纯文本的拼写评估任务来探索文本编码器的能力。
对于WikiSpell中的每个样例,模型的输入是一个单词,预期的输出是它的具体拼写(通过在每个Unicode字符之间插入空格来生成)。
由于该文章仅对研究一个词的频率和模型的拼写能力之间的关系感兴趣,所以研究人员根据单词在mC4语料库中出现的频率,将Wiktionary中的词分成五个互不重叠的桶:最频繁的前1%的词,最频繁的1-10%的词,10-20%的词,20-30%的词,以及最低的50%的词(包括在语料库中从未出现过的词)。
然后从每个桶中均匀地抽取1000个词来创建一个测试集(以及一个类似的开发集)。
最后通过结合两部分建立了一个由10,000个词组成的训练集:5,000个从最底层的50%桶(最不常见的词)中统一取样,另外5,000个根据它们在mC4中的频率按比例取样(从而使这一半的训练集偏向频繁的词)。
研究人员将任何被选入开发集或测试集的词排除在训练集之外,因此评估结果总是针对被排除的词。
除了英语外,研究人员还对其他六种语言(阿拉伯语、汉语、芬兰语、韩语、俄语、泰语)进行评估,选择这些语言是为了涵盖影响模型学习拼写能力的各种特性,对每一种语言的评估都重复上述数据集构建过程。
研究人员使用WikiSpell基准来评估多种预训练的纯文本模型在不同规模上的表现,包括T5(一个在英语数据上预训练的character-blind编码解码器模型);mT5(与T5类似,但在超过100种语言上预训练);ByT5(mT5的character-aware版本,直接在UTF-8字节序列上操作);以及PaLM(一个规模更大的解码模型,主要是在英语上预训练的)。
在纯英语和多语言的实验结果中,可以发现character-blind模型T5和mT5在包含Top-1%最频繁词汇的桶上的表现要差很多。
这个结果似乎是反直觉的,因为模型通常在数据中频繁出现的例子上表现最好,但是由于subword词汇的训练方式,频繁出现的词通常被表示为一个单一的原子标记(或少量的标记),事实上也是如此:在英语前1%的桶中,87%的词被T5的词汇表示为一个子词标记。
因此,较低的拼写准确性分数表明,T5的编码器没有保留足够的关于其词汇中subword的拼写信息。
其次,对于character-blind模型,规模是影响拼写能力的一个重要因素。T5和mT5都随着规模的增加而逐渐变好,但即使在XXL规模下,这些模型也没有表现出特别强的拼写能力。
只有当character-blind模型达到PaLM的规模时,才开始看到近乎完美的拼写能力:540B参数的PaLM模型在英语的所有频率桶中都达到了>99%的准确率,尽管它在提示中只看到20个例子(而T5显示的是1000个微调例子)。
然而,PaLM在其他语言上的表现较差,可能是由于这些语言的预训练数据少得多。
对ByT5的实验表明,character-aware模型表现出更强大的拼写能力。ByT5在Base和Large尺寸下的表现仅略微落后于XL和XXL(尽管仍然至少在90%的范围内),而且一个词的频率似乎对ByT5的拼写能力没有太大影响。
ByT5的拼写性能远远超过了(m)T5的结果,甚至与参数多于100倍的PaLM的英语表现相当,并且超过了PaLM在其他语言上的表现。
从而可知ByT5编码器保留了相当多的字符级信息,而且这些信息可以根据解码任务的需要从这些冻结的参数中检索出来。
从2014年发布的COCO数据集到2022年的DrawBench基准,从FID, CLIP得分到人类偏好等指标,如何评估text-to-image模型一直是一个重要的研究课题。
但目前在文本渲染和拼写评估方面一直缺乏相关工作。
为此,研究人员提出了一个新的基准DrawText,旨在全面衡量文本到图像模型的文本渲染质量。
DrawText基准由两部分组成,分别测量模型能力的不同维度:
1)DrawText Spell,通过大量的英语单词集合的普通单词渲染进行评估;
研究人员从英语WikiSpell频率桶中各抽取100个单词,并将它们插入一个标准模板中,总共构建了500个提示。
对于每个prompt,从候选模型中抽取4张图片,并使用人类评分和基于光学字符识别(OCR)的指标对其进行评估。
2)DrawText Creative,通过视觉效果的文本渲染进行评估。
视觉文本并不局限于像街道标志那样的常见场景,文字可以以多种形式出现,如潦草的、绘画的、雕刻的、雕塑的,等等。
如果图像生成模型支持灵活而准确的文本渲染,这将使设计师能够使用这些模型来开发创造性的字体、标志、布局等等。
为了测试图像生成模型支持这些用例的能力,研究人员与一位专业的图形设计师合作,构建了175个不同的提示,要求在一系列创造性的风格和设置中渲染文本。
许多提示超出了当前模型的能力,最先进的模型会表现出拼写错误、丢弃或重复的单词。
实验结果显示,用于对比的9个图像生成模型中在DrawText Spell基准上的准确率中,character-aware模型(ByT5和Concat)无论模型尺寸大小都优于其他模型,特别是在不常见单词上。
Imagen-AR显示了避免cropping的好处,尽管训练时间长了6.6倍,其仍然比字character-aware模型表现差。
模型之间的另一个明显的区别在于它们是否在多个样本中持续地拼错一个给定的单词。
在实验结果中可以看出,无论抽取多少个样本,T5模型都有很多单词拼错,研究人员认为这表明文本编码器中缺少字符知识。
相比之下,ByT5模型基本只会出现零星的错误。
通过测量模型在所有四个图像样本中持续正确(4/4)或持续错误(0/4)的比率可以量化这一观察结果。
可以看到一个鲜明的对比,特别是在常见的词上(前1%),即ByT5模型从未持续错误,而T5模型在10%或更多的词上持续错误。
以上是不做文盲画家!谷歌魔改「文本编码器」:一个小操作让图像生成模型学会「拼写」的详细内容。更多信息请关注PHP中文网其他相关文章!