打碎人工智能的黑匣子
——科学家解析深度学习神经网络
2017年07月17日 来源:中国科学报
Jason Yosinski坐在美国加州旧金山的一个小型玻璃办公室内,陷入了对人工智能的沉思。作为优步公司的研究科学家,Yosinski正为在笔记本电脑上运行的人工智能(AI)进行“脑外科手术”。
很多AI将改变人类现代生活,例如优步的无人驾驶汽车,Yosinski的程序是一个深度神经网络,其架构或多或少受到了大脑的启发。正如人类大脑一样,这个程序很难从外部理解:它是一个黑箱。
这一特殊的AI能通过大量的标注图像被训练,从而识别像斑马线、消防车、安全带等物体。但它能够识别Yosinski和摄像头前面的记者吗?Yosinski放大了其中一个AI的独立计算节点(神经元),从而查看是什么引发了其响应。
两个幽灵般的白色椭圆状物体浮动在屏幕上。这个神经元似乎已经学会了如何探测人脸轮廓。他说:“它会对你我的面部做出反应,也会对不同大小、不同颜色的人脸做出反应。”
不过,没有人训练这种网络识别人脸。在训练图像中,人类不被标注,但是网络确实在学习识别人脸,也许是与人脸一同出现的物体,比如领带、牛仔帽。该网络如此复杂,以至于人类无法理解其做出的决策。
而Yosinski的探索虽然指明了部分道路,但总体状况依然不清楚。他说:“我们有令人惊叹的模型,但实际上并不理解它们,而且这种情况在逐年恶化。”
深度学习
深度学习似乎每个月都会扩展至另外一个学科领域。它们能预测合成有机分子的最佳方式,可以探测与自闭症相关的基因,甚至改变了科学本身的进展方式。AI无往不利,但却留给理论科学家一个忧虑:模型为什么会如此?
阐释该难题正激励着学界和业界的新一代研究者。一些工具无需深入即可探测AI;一些是可以媲美神经网路的替代算法,有更高的透明度;一些则继续使用更多的深度学习来窥探黑匣子。它们加起来成了一门新学科,Yosinski称之为“人工智能神经科学”。
Marco Ribeiro是西雅图市华盛顿大学的一名毕业生,试图通过一种被称为“反事实探针”的神经科学工具打开黑匣子。其想法是通过聪明的方式改变AI的输入以查看有哪些变化以及如何影响输出。
例如,Ribeiro的程序LIME会把一个影评标注为积极,并对文字稍作修改以创造新变体。接着这些变体被输入黑匣子以查看其是否依然被标注为积极。结果显示LIME可以辨别词语(或者部分图像、分子结构,再或者任意类型的数据)这在AI的最初判断中至关重要。
不过,LIME等新反事实方法似乎每月都会出现。但谷歌计算机学家Mukund Sundararajan发明了另一种探查方法,它无需对网络进行数千次测试——如果你正在尝试理解很多决策,这绝对是一个福利。
Sundararajan团队并不是通过随机调变输入,而是引入一个空白的引文—— 一张纯黑图像或者一个代替文本的零排列数组,并将其一步一步推向测试的实例转化。通过在网络中运行每一步,他们观察其确定的跳跃,并通过轨迹推论出对于预测的重要特征。
Sundararajan对比了这一过程,找出了辨识其所在的玻璃墙空间的关键特征:杯子、桌子、椅子和电脑的标准组合。“我可以给出无数理由。”随着你慢慢调暗灯光,当灯光变得非常暗淡,只有最大的原因才凸显出来。这些转化允许Sundararajan比Ribeiro的变体捕捉到更多的网路决策。
但是更深的、未解答的问题依然存在,Sundararajan说。
这一问题并非只来自科学。根据欧盟的一项指令,那些部署持续影响大众的算法的公司必须在来年对其模型的内在机制做出解释。美国国防高级研究计划署也正在向“可解释AI”的新计划投入7000万美元,试图解释用于无人机和情报挖掘作业的深度学习。谷歌机器学习研究者Maya Gupta也表示,打开黑匣子的驱动同样来自硅谷内部。
Gupta于2012年加入谷歌,当时询问过AI工程师的关注问题,她发现精度并不是他们唯一关心的。工程师们告诉Gupta:“我们并不确定网络在做什么,我们不太信任它。”
神经网络
今天的神经网络要比之前复杂得多,但其本质是相同的。一端是数以百万计的杂乱数据(比如狗的照片)。这些数据会被输入具有十几个或更多层的网络中,其中的神经形式连接会响应数据中的特征。每一层都会把内容抽象一点,最后一层解释出最终判断,如从梗犬中辨别出腊肠犬。
一开始,系统或许十分笨拙。但每次结果都会与标记好的狗图片进行对比。在一种被称为反向传播的过程里,结果会通过网络向前发送。这一过程会重复数百万次,直到整个网络学会识别不同品种的狗。“使用现代技术和大胆的尝试,你可以让它们真正地工作起来。”微软雷德蒙德研究院计算机科学家Rich Caruana说。然而,这种神秘而灵活的力量也让网络变成了黑匣子。
Gupta对于处理黑匣子问题有不同的策略:她尝试绕开这些问题。几年前,Gupta开始了一个名为GlassBox的项目。她的目标是将工程化的可预测性纳入神经网络进而对其进行解释。她的指导原则就是单调性,即变量之间的相关性问题。
Gupta将这些单调性关系嵌入到被称为插值查询表的蔓生数据库中。本质上这个查询表就像高中三角函数查值表一样。但是该插值查询表不是一个维度上的十多个条目,它在多个维度上有数百万的条目。她将这些表写入神经网络中,因此有效地添加了一个额外的可预测性的层级计算知识,神经网络也将变得更可控。
不过,有时候,人们必须承受黑匣子的困惑。因此理论研究者开始追寻深度学习可解释性的第三条道路。他们说解释深度学习的方法可以是简单地进行更深度的学习,而不是寻求理解神经网络或避开它。
打开黑匣子
跟很多AI开发者一样,作为亚特兰大佐治亚理工学院娱乐智能实验室的负责人,Mark Riedl用上世纪80年代的电子游戏测试其作品。青蛙过河是他最喜欢的游戏之一:玩家让青蛙穿过车流,到达彼岸的池塘。训练一个网络进行专家级的青蛙过河游戏其实非常容易,但是解释AI在其中所做的事却很难。
Riedl没有对神经网络进行探究,而是让人类受试者去玩这个游戏,并且通过让人们实时发声描述他们的策略。Riedl在游戏代码中记录了那些玩家的评论:“噢,有一辆车冲我来了,我需要往前跳。”Riedl训练了第二个神经网络对语言进行翻译,把代码译为英文。
然后他把这个转译网络及初始的游戏网络进行连接,生成了一个可以进行表达的综合性AI,当它停在小路上时,AI会说,“在移动之前我正在等待打开一个洞。”当被卡在屏幕边缘时,AI也会沮丧,咒骂和抱怨。
Riedl把此方法叫做“合理化”,他设计这种方法帮助用户理解家庭机器人、自动驾驶汽车等机器。“如果我们不能质疑它们为什么这么做,并让它们给出合理的回答,那人们只能把AI束之高阁。”Riedl说道。但那些解释又引起另外一个问题,他补充道:“在人类失去信任之前,合理化会错到何种程度?”
像Riedl一样,Yosinski也已经使用了第二个AI系统帮助其理解第一个系统。
首先,Yosinski更新了分类器来生成图片,而不是对图片进行标注。然后,他和同事给它进行静态着色,并且通过它给请求对象发送信号,比如“更多火山”。最终,他们假设,网络会把噪声融入火山框图中。而且,AI和人类看见的东西是不同的。
接下来,这个队伍对它的图片使用了生成对抗网络(GAN)。就这样,在图像的训练数据集中,“生成器”学习生成图像的规则,并能创造合成型图像。第二个“对抗网络”会试图检测图像结果是真是假,促使生成器再一次进行尝试。这个反复过程最终会生成包含人眼可识别特征的粗略图像。
该GAN现在能够绑定到任何解决图像问题的网络。Yosinski已经使用它来识别网络中的问题,为任意图像编写描述。但Yosinski说,这只是个开端,还有大片的空白需要弥补。