DALL-E 2语文水平被吐槽:金子和鱼画成真金·鱼,遇到一词多义就拉胯,失误率超80%

“Stable Diffusion没发现这类问题”

明敏 发自 凹非寺

量子位 | 公众号 QbitAI

以画画水平高超而风靡全球的DALL-E 2,语文水平被质疑了。

比如bat这个多义词,就把它给考住了。

a bat is flying over a baseball stadium(一只蝙蝠/球棍从棒球场上飞过)。

结果它画出来的图,蝙蝠和球拍都在天上飞。

而且这不是偶然的失误,如果输入“a person is hearing a bat”,画出来的还是蝙蝠和球棒都存在。

换成另一种情况,输入a fish and a gold ingot(一条鱼和一个金锭)。

好嘛,直接把两种东西都铸金了,变成真金·鱼。

可不能低估了这些失误,因为它们意味着DALL-E 2在根据文本生成图像的过程中,对语言中符号到实体的基本映射关系。

即一个词对应一个实体。

以bat举例,画出蝙蝠或者球棍,都算DALL-E 2理解正确,但是如果两个都给,那就有问题了。

这就好比本身是单选题,填A或B都对,可是把两个都写上就违反了规则。

更何况有时候它还把不同物体的修饰词弄错,“上一道题的解法用在下一道上”。

发现这一问题的,是来自巴伊兰大学、艾伦人工智能研究所的学者们,并且专门写了篇论文分析。

有趣的是,研究人员约阿夫·高柏(Yoav Goldberg)还提到,这种情况在mini DALL-E和Stable Diffusion中并不常见。

我猜这可能是因为所谓的逆规模现象(inverse scaling)。

简单理解就是“模型越大性能越差”。

论文具体说了啥?

几位学者在发现问题后,又反复进行了多次试验,并把问题主要划分为三种情况:

  • 第一、一个单词被解释为两个不同的事物
  • 第二、一个单词被解释为两个不同事物的修饰词
  • 第三、一个单词在被解释为一个事物的同时,又被理解成另一种事物的修饰词

前两种情况开头已经提过。

第三种情况举例来说,输入“一匹斑马和一条街道”,输出的结果中一直都有斑马线。

在这里,DALL-E 2把斑马同时解释了两次。

在针对这些情况都重复试验后,作者计算出DALL-E 2在三种情况下,出现失误的概率都超过80%

其中第二种情况的失误率最高,达到97.2%

第三种情况下,如果给另一个名词前加上新的修饰词,可以避免失误发生。

即输入一匹斑马和一条碎石路,路面上就没有斑马线出现了。

而在用DALL-E mini和Stable Diffusion时,这些重复解释的情况并不常见。

作者解释,未来可以考虑研究模型的文本编解码器来追溯这些问题,并且可以研究这些问题和模型大小、框架是否有关系。

作者之一Yoav Goldberg是巴伊兰大学的杰出教授,也是艾伦人工智能研究院以色列分院的研究主任。

之前,他在纽约的谷歌研究中心做博士后。研究兴趣方向为NLP和机器学习,尤其对语法解析感兴趣。

还曾发现DALL-E 2自创语言

不过就在几个月之前,一位计算机专业的博士小哥发现,给DALL-E 2喂一些奇怪的语言,它也能生成同一类的图像。

而这些词,正是来自DALL-E 2生成图像中的。

比如输入“两个农民谈论蔬菜,带字幕(Two farmers talking about vegetables, with subtitles)”后,DALL-E 2给出的图像中,出现了一些“乱码”的词汇。

而如果再把图像中的新词Vicootes”当作描述丢给模型,没想到,出来这样一堆图像:

有萝卜、有南瓜、有小柿子……难道“Vicootes”就代表蔬菜?

如果再把上图气泡中一串“Apoploe vesrreaitais”扔给DALL-E 2,一堆鸟图出现了:

“难道说,这个单词代表‘鸟’,所以农民们似乎在谈论影响他们蔬菜的鸟类?”

当时,这位博士小哥把自己的发现发布在网络上后,立刻引起热议。

有人试图分析DALL-E 2是如何加密语言的,还有人觉得这只是噪声。

不过总的来说,在语言理解方面,DALL-E 2总能搞出点让人意想不到的事。

你觉得这背后原因到底是什么呢?

论文地址:
https://arxiv.org/pdf/2210.10606.pdf

参考链接:
https://twitter.com/yoavgo/status/1583088957226881025

版权所有,未经授权不得以任何形式转载及使用,违者必究。