如果有一天,你意外发现自己训练出的机器模型在用非人类的语言对话,你会怎么做?是保守秘密,默默观察AI的进化,还是告诉全世界AI会说话,然后显得自己像个傻瓜?
这个选择比想象的来得更快。詹尼斯·达拉斯(Giannis Daras)是一名计算机科学在读博士,也是谷歌的实习研究员,在发现自己朝夕相处的DALL·E 2的秘密之后,他选择告诉全世界。一番试验之后,他更确认了这个想法,六月初,他发出了一条推文:DALL·E 2发明了自己的神秘语言。
DALL·E 2是Open AI推出的文本生成图像模型,使用者只要输入叙述文字,就可以生成文字描述的图片。哪怕这些描述中的图片是世界上从未存在过的、八杆子打不着的元素的融合,它也能迅速学习理解,生成准确度和想象力都很惊人的命题绘画作品。
詹尼斯发现DALL·E 2的秘密语言始于一个意外。虽然DALL·E 2很擅长看字画图,但它有一个短板,就是生成文字。
比如让它画一幅“两个农夫在讨论蔬菜,把说话内容写出来”的画,就会变成下面这样:农夫和菜都像模像样,只有说的话是屁话,什么是Vicootes,什么又是Apoploe vesrreaitars。然而,这一串字符并不像看起来那样是一串乱码。詹尼斯和同事们很好奇图上的两个农夫到底在聊什么,他们把模型自己生成的字符再次输入模型,得到了令人震惊的结果。
为了进一步验证它的说话能力,研究人员又给了它更多的任务,基本上是用更多的“在图片里编一段对话”的指令,骗出更多的词汇来。有一些自创词汇还可以和人话相结合,不会影响词汇的原始含义,甚至还能自由转换风格。
研究者们注意到,模型并不是每一次都会生成一样的语言。他们也尝试用内容相关但意义不同的文字来测试模型,比如“一本书上写着蔬菜名字”,“用十种语言写‘蔬菜’”,在反反复复的实验中,不是每一次都能出现有意义的文字,所以就算DALL·E 2真的学会了说话,这种语言也不怎么成熟。
DALL·E 2是真的创造出了“神秘语言”吗?它又是从哪学会的?虽然背后的机制还没有完全搞清,但是主流的声音认为可能有以下原因:与模型训练的数据有关,与输入文本的编码方式有关。
有些AI从业者认为,“秘密语言”是夸大其词,可能只是“垃圾进垃圾出”原则的一个例子。但事实好像比“垃圾进垃圾出”更复杂、更难解释。詹尼斯的推文在网上引发热议之后,有从业者自发去测试DALL·E 2,结果发现从乱码中删除几个字符后,生成的图像会以非常特定的方式被破坏。
在我们和其他人聊天过程中,就算有的话说错了,对方也能根据上下文猜出我们的意思,但是AI模型的输入到输出,多数情况下是不连续的、离散的,当输入存在扰动时(比如图像中添加不可见的噪声),模型就会产生误差。因此,攻击者可以通过给样本添加人的视觉/听觉无法感知的扰动,轻易地欺骗深度学习模型,足以使模型输出置信度很高的错误预测,这种现象就叫做对抗攻击。
虽然这次的“暗语”是有关鸟类、海鲜、蔬菜,但我们无法解释,也不知道是不是存在更多的“暗语”,能让看上去人畜无害的模型突然“黑化”,画出让人没法接受的可怕图片。
在深度学习算法驱动的数据计算时代,确保算法的安全性和可靠性至关重要。亚利桑那州立大学计算机科学教授苏巴拉奥(Subbarao Kambhampati)在一次采访中警示人们:“你可以用它(深度学习模型)来做好事,但也肯定可以用它来做更疯狂的事。”也许这次在DALL·E 2身上发生的事是给我们所有人提了个醒。