神经网络有时被称为黑匣子,因为尽管它们可以在某些任务上胜过人类,但即使是设计它们的研究人员也常常不了解它们如何或为什么工作得这么好。但是,如果在实验室外使用神经网络,也许可以对有助于诊断心脏病的医学图像进行分类,了解该模型的工作原理有助于研究人员预测其在实践中的表现。
麻省理工学院的研究人员现在已经开发出一种方法,可以揭示黑盒神经网络的内部工作原理。以人脑为模型,神经网络被排列成处理数据的互连节点或“神经元”层。新系统可以自动生成对这些单个神经元的描述,这些描述是用英语或其他自然语言生成的。
例如,在经过训练以识别图像中动物的神经网络中,他们的方法可能将某个神经元描述为检测狐狸的耳朵。与其他方法相比,他们的可扩展技术能够为单个神经元生成更准确和更具体的描述。
在一篇新论文中,该团队表明,这种方法可用于审核神经网络以确定它学到了什么,甚至可以通过识别然后关闭无用或不正确的神经元来编辑网络。
“我们想创建一种方法,让机器学习从业者可以给这个系统他们的模型,它会从模型神经元的角度,用语言告诉他们它所知道的关于该模型的一切。这可以帮助你回答基本问题,“我的模型是否知道我没想到它会知道的东西?”麻省理工学院计算机科学与人工智能实验室(CSAIL)的研究生、该论文的主要作者EvanHernandez说。
自动生成的描述
大多数帮助机器学习从业者了解模型如何工作的现有技术要么描述整个神经网络,要么要求研究人员识别他们认为单个神经元可能关注的概念。
Hernandez和他的合作者开发的系统被称为MILAN(神经元的互信息引导语言注释),改进了这些方法,因为它不需要预先列出概念,并且可以自动生成网络中所有神经元的自然语言描述.这一点尤其重要,因为一个神经网络可以包含数十万个单独的神经元。
MILAN生成针对计算机视觉任务(如对象识别和图像合成)训练的神经网络中神经元的描述。为了描述给定的神经元,系统首先检查该神经元在数千张图像上的行为,以找到该神经元最活跃的一组图像区域。接下来,它为每个神经元选择一个自然语言描述,以最大化图像区域和描述之间称为逐点互信息的量。这鼓励了描述每个神经元在更大网络中的独特作用的描述。
“在经过训练以对图像进行分类的神经网络中,将有大量不同的神经元来检测狗。但是有很多不同类型的狗和狗的许多不同部位。所以即使‘狗’可能是对许多这些神经元的准确描述,但信息量不是很大。我们想要对神经元所做的非常具体的描述。这不仅仅是狗;这是德国牧羊犬的耳朵左侧,“埃尔南德斯。
该团队将MILAN与其他模型进行了比较,发现它生成了更丰富、更准确的描述,但研究人员更感兴趣的是了解它如何帮助回答有关计算机视觉模型的特定问题。
分析、审计和编辑神经网络
首先,他们使用MILAN来分析哪些神经元在神经网络中最重要。他们为每个神经元生成描述,并根据描述中的单词对它们进行排序。他们慢慢地从网络中移除神经元,看看它的准确性如何变化,并发现在描述中包含两个非常不同的词(例如花瓶和化石)的神经元对网络不太重要。
他们还使用MILAN来审核模型,看看他们是否学到了一些意想不到的东西。研究人员采用在人脸模糊的数据集上训练的图像分类模型,运行MILAN,并计算有多少神经元仍然对人脸敏感。
“以这种方式模糊面部确实减少了对面部敏感的神经元的数量,但远未消除它们。事实上,我们假设其中一些面部神经元对特定的人口群体非常敏感,这是相当令人惊讶。这些模型以前从未见过人脸,但它们内部却发生了各种面部处理,”Hernandez说。
在第三个实验中,该团队使用MILAN通过查找和删除检测数据中不良相关性的神经元来编辑神经网络,这导致网络在表现出相关性问题的输入上的准确性提高了5%。
虽然研究人员对MILAN在这三个应用程序中的表现印象深刻,但该模型有时给出的描述仍然过于模糊,或者当它不知道它应该识别的概念时会做出错误的猜测。
他们计划在未来的工作中解决这些限制。他们还希望继续增强MILAN能够生成的描述的丰富性。他们希望将MILAN应用于其他类型的神经网络,并用它来描述神经元组的作用,因为神经元协同工作以产生输出。
“这是一种自下而上的可解释性方法。目标是使用自然语言生成功能的开放式组合描述。我们希望利用人类语言的表达能力来生成更多描述神经元所做的事情自然而丰富。能够将这种方法推广到不同类型的模型是我最兴奋的事情,”Schwettmann说。
“任何可解释人工智能技术的最终测试是它是否可以帮助研究人员和用户就何时以及如何部署人工智能系统做出更好的决定,”安德里亚斯说。“我们距离能够以一般方式做到这一点还有很长的路要走。但我乐观地认为,米兰——以及更广泛地使用语言作为解释工具——将成为工具箱中有用的一部分。”
该研究发表在arXiv上。
标签:
免责声明:本文由用户上传,如有侵权请联系删除!