文章主题:关键词:丰色,金磊,发自,凹非寺,DALL·E 2,秘密语言,BPE,自然语言处理,token压缩,imgur,网友,热议,鲸鱼,食物,鸟类,农业,秘密咒语,计算机专业,博士生,模型,图像, controversy,小白论文,推特,Incredible,奶奶, cartoon,3D render,纯风景绘画, Evve waeles,随机噪音,白盒,解开,违禁词,咒语。
丰色 金磊 发自 凹非寺
量子位 | 公众号 QbitAIDALL·E 2,这个AI竟然自己搞了一套秘密语言。
例如这两个非常奇怪的词组:
Apoploe vesrreaitais(下文简称A)
Contarra ccetnxniams luryca tanniounons(下文简称C)
(翻译软件都会崩溃,可以去试试)
但到了DALL·E 2这里,画风却截然不同。
在它看来,A就是“鸟类”的意思,而C则是“害虫”之意。
于是乎,如果给DALL·E 2喂上一句:A eat C,那么它的打开方式就会这样:
清一色产出的图片,都是鸟吃害虫
相关。
而且你要是跟DALL·E 2说,生成“两只鲸鱼讨论食物,带字幕”,结果会是这样:
图里的“Wa ch zod rea”,在DALL·E 2的词库里竟然是“食物”
的意思!
此事一经曝光,瞬间引发了众多网友的热议。
有人提出,利用这些隐藏的语言,我们可以绕过 DALL-E 2 的“违禁词过滤器”,进而生成一些具有争议的图像。这样的观点引发了一定的关注和讨论。
(搞事情!)
所以,关于DALL·E 2的秘密咒语,到底是怎么一回事?
一次意外的发现
发现这个问题的是国外一名计算机专业的博士生。
他注意到DALL-E 2模型在遇到需要给出带文字的图像时,总是会出现一些奇怪的单词。
比如输入这句:“两个农民谈论蔬菜,带字幕(Two farmers talking about vegetables, with subtitles)”,就出来这样一张图像:
像是挺像的,不过这字幕写的啥啊,不是英语又不是法语的,太奇怪了。
“你给我翻译翻译什么这是?”
灵机一动的小哥把其中一个“单词”“Vicootes”当作描述丢给模型,没想到,出来这样一堆图像:
有萝卜、有南瓜、有小柿子……难道“Vicootes”就代表蔬菜?
有意思。
在接下来的步骤中,他再次将气泡中的那串字母“Apoploe vesrreaitais”传递给了DALL-E 2,从而引发了一系列的鸟类图片生成。
“哦我明白了,这个单词代表‘鸟’,所以农民们似乎在谈论影响他们蔬菜的鸟类?”
看来DALL-E 2没有糊弄人……
“我发现了DALL-E 2的秘密语言!”小哥惊呼,继而打算再验证一下这是不是偶然。
还是刚才提到的鲸鱼讨论食物的例子中,小哥把那串“Wa ch zod rea”再输回去。
结果还真出来一堆吃的,而且还全是海鲜,符合鲸鱼们的“食性”。
DALL-E 2,真·诚不我欺。
更进一步,他用这些“咒语”搭配形容图像风格的词,看看DALL-E 2是否能正常解析。
结果也都没问题。看看这些“手绘鸟“、“卡通鸟”、“3D鸟”以及“线稿鸟”:
emmmm,最后一张怎么混进来个蚊子?
先不管它了(一会再说)。
所以这个模型为什么要用这种秘密语言来表示呢?
为什么会这样?
“DALL-E 2秘密咒语”话题之热,也引来了众多“解析侠”们的关注。
例如一位叫k1uge的网友便提出,问题出在了BPE(Byte Pair Encoding)身上。
BPE(Bidirectional Passage Embedding)是一种在自然语言处理领域具有重要意义的编码方式,同时也是一种广泛应用的token压缩手段。许多大型语言模型都在实际应用中涉及到BPE。
它的核心思路就是:
在这个过程中,我们会逐个替换数据序列中的相邻数据单位,这些单位通常是数据集中出现次数最少的新单位。我们不断重复这个过程,直到达到预设的停止条件。
举个例子。
如果要压缩“aaabdaaabac”这个单词,BPE就会先找出最常见的相邻字节对,即“aa”。
找到它之后,就可以用新的字节Z去代替,那么这个单词就变成了“ZabdZabac”。
同理,下一个最常见相邻字节对是“ab”,用Y来代替,单词会进一步被压缩成“ZYdZYac”。
再下一个最常见相邻字节对是“ZY”,用X来替代,最后单词就变成了“XdXac”。
……
于是,基于这样的原理,这位网友查了下DALL-E 2针对“鸟类”所用的BPE。
它是这样的:
apo, plo, e, ,ve, sr, re, ait, ais
而现实中很多鸟类的拉丁文学名,就有“apo”和“plo”的前缀。
例如Apodidae(雨燕)和Ploceidae(织布鸟),这两个单词属于鸟类的2种鸟科,每个科都有100余种。
像Apodiformes(雨燕目)是鸟类中最大的目,共有400余种。
因此,这位网络用户得出结论,DALL-E 2能够从标记了相关“学术术语”的图片中,获取到鸟类的主要信息。
或许这就是造成DALL-E 2秘密咒语的原因了。
但,事情还有反转
博士小哥对这个重要发现激动不已,甚至专门撰写了一篇高质量的小型论文来阐述这些成果,并在推特平台上分享。这一举动吸引了众多网友的关注,大家纷纷感叹这次发现之“令人惊叹”。
不过很快就有人亲自去试了一下,发现好像事情并没有那么简单。
在“Contarra ccetnxniamls lurryca tannouns”这一串字符中,代表“虫子”的部分并非唯一。实际上,该序列还会生成其他种类图形的轮廓,如青蛙、牛或鸽子等。
如果给这个描述再加上“cartoon”一词作为限定,生成的是一些“奶奶”,跟虫子完全不搭边??
“Apoploe vesrreaitais”倒是没问题,出来的还是一些鸟。
不过同样,一旦给它加上“cartoon”“3D render”这类词,又不对了,出来的是一些虫子。
(这和小哥最后那个例子里出现的蚊子也对应上了。)
“Vicootes”作为代表蔬菜的形象,其表现手法同样具有独特性。在单独出现时,它能够很好地传达出蔬菜的特点;然而一旦加入风格限定,情况发生了变化。可以说,“Vicootes”和“painting”这类风格的搭配,更多地强调的是纯风景绘画,与之前的 noun 限定没有直接联系。这一点在很大程度上体现了“Vicootes”作为蔬菜形象的特殊性。
接着他还用同样的“两只鲸鱼谈论食物,带字幕”生成了一些图片,结果大部分文字都看不清,也没法转录。
最后找到一张这样的:
他用上面的”Evve waeles”再输入后,虽然得到了一张甜点照片,但出现了很多运动员、动物甚至水壶的照片。
还真的有点摸不着头脑了。
于是这位实验者就表示:
在我看来,这更像是一些随机的噪音,而不是DALL-E 2的秘密语言。
他艾特了博士小哥,希望他可以再给出相反的证据。
目前小哥还没有答复。
不过这确实是一个值得关注和讨论的话题,鉴于一些“咒语”和图像可以对上,如果真的是BPE码的话,那么真可能博士小哥所说:
有人用“白盒”方法解开这种规则,拿到一些违禁词的“咒语”,就可以绕过模型的过滤器了。
参考链接:
[1]https://twitter.com/giannis_daras/status/1531693093040230402[2]https://twitter.com/BarneyFlames/status/1531736708903051265[3]https://twitter.com/benjamin_hilton/status/1531780892972175361[4]https://giannisdaras.github.io/publications/Discovering_the_Secret_Language_of_Dalle.pdf[5]https://zhuanlan.zhihu.com/p/424631681
— 完 —
「人工智能」、「智能汽车」微信社群邀你加入!
欢迎关注人工智能、智能汽车的小伙伴们加入我们,与AI从业者交流、切磋,不错过最新行业发展&技术进展。
ps.加好友请务必备注您的姓名-公司-职位哦~
点这里?关注我,记得标星哦~
一键三连「分享」、「点赞」和「在看」
科技前沿进展日日相见~
关键词:丰色,金磊,发自,凹非寺,DALL·E 2,秘密语言,BPE,自然语言处理,token压缩,imgur,网友,热议,鲸鱼,食物,鸟类,农业,秘密咒语,计算机专业,博士生,模型,图像, controversy,小白论文,推特,Incredible,奶奶, cartoon,3D render,纯风景绘画, Evve waeles,随机噪音,白盒,解开,违禁词,咒语。
AI时代,拥有个人微信机器人AI助手!AI时代不落人后!
免费ChatGPT问答,办公、写作、生活好得力助手!
搜索微信号aigc666aigc999或上边扫码,即可拥有个人AI助手!