作者丨李秋池、王本友
学校丨帕多瓦大学博士生
研究方向丨信息检索/自然语言处理
今天要介绍的文章与当前大火的 BERT 同获最佳论文,摘得 NAACL 2019 最佳可解释NLP论文(Best Explainable NLP Paper)。NAACL 与 ACL 和 EMNLP 并称之为 NLP 三大顶会,去年 ELMO 获得 outstanding paper,今年一共有五篇最佳论文,分别是 Best Thematic Paper,Best Explainable NLP Paper,Best Long Paper 以及最佳短文和最佳 resource 论文。
目前用深度学习的方法来做 NLP 任务已经越来越火了,很多具有复杂结构的神经网络被声称在给定规范良好的输入和输出的某些数据集有着更好表现。但是神经网络本身的可解释性的问题,像一颗定时炸弹,始终萦绕在大家心头。
如果始终在 how 的问题上,在应用上下猛药,也可能像炼丹术一样,有可能并没有对准病症。而 why 的问题,也就是它为什么 work 的机制,是一个更难的问题,正吸引越来越多的研究者从不同的角度和视野去挑战。
哈士奇还是狼?
对于神经网络的工作原理,有一个形象的例子,那就是哈士奇还是狼(husky or wolf)的问题 [1]。大部分人都可以很正确地判断出左图中的动物是狼,而右图中的动物是哈士奇,这两个图对人而言还是相对不难。不出意外地,神经网络模型也能够把这两张图分得很准。
当让神经网络模型分下面这张图,它就凌乱了,认为下图是狼。
原来神经网络模型分类这两个类别,靠的是背景,而不是真的知道哈士奇和狼之间细微的区别。换句话说,一旦哈士奇大哥偶尔跑到雪地上,神经网络就傻眼了。如果有一天用户或者产品经理跑过来说,这只站在雪地里的哈士奇,一定要在下一个版本被正确地分类,那么这时候负责模型设计人员多半会手足无措。
提到这一个例子的目的是说明,因为神经网络内部本身的约束非常少,神经元的值可以在任意的取值区间,这使得神经网络只是被当做一个黑盒子去拟合输入输出,其内部的机制并不能够被大家所清晰地理解。因此,目前的神经网络往往并不是十全完美的解决方案,而需要改进结构的设计便于人们理解其内部的机制。
可解释性 (Interpretation)
可解释性的问题较早就有人提出来,有着不一样的叫法,比如 interpretable, explainable, intelligible, transparent 和 understandable,不一而足。
值得提到的是此处的可解释性与推荐系统的推荐理由或多或少有一些联系和细微的区别,本文提到的可解释性并不限于对于机器学习某个预测(某个特定 case)的理由,更多的理解为对这个模型的通用(general)的理解。无论何种理解,可解释性都与最终的性能关系并不紧密。
通常,可解释性是人们在机器学习模型中寻求的各种特征的代理。这些辅助的特征可能是公平性(Fairness,能否减轻各类偏见 bias?),可靠性(Reliability),因果(Causality,是一种相关性还是因果性?如分类哈士奇和狼是靠的两种类别之间的差异,还是由于背景带来的相关性),可信度(Trust,模型能够知道预测本身的置信度如何?)。
本文主要参考 Lipton 的说法 [2],主要解释为透明度 Transparency 和事后解释性 Post-hoc Explainability。
前者 Transparency 主要关心模型的运作机制和功能。这样方便人类去做检查,比如人工剔除模型的一些显著的弱点。一旦发现了 bad cases,人类有办法按照自己预期的目标,去干预和改变它的预测。在实时的应用中,数据可能包含比标注语料更多的噪音,所以透明性更加重要。
事后解释性通常在模型训练完成之后的马后炮解释。在模型训练之后,比如对一些组件做一些统计分析,像对 CNN 核的可视化,对机器翻译 attention 的可视化 [3][4]。
CNM复值匹配网络
值得注意的是,本文提到的可解释网络并非标准范式,本文作者给出一些新的神经网络范式,从新的角度去阐述可解释性。
本文提到的网络不同于多层感知机,卷积神经网络和循环或递归神经网络。从网络结构本身,可以理解为一个玩具(toy)网络(代码开源在 Github 上),因为目前它是一个较浅的神经网络,在结果本身并没有太大的竞争力,关注的是可解释性。
透明度和事后解释性解释为两个稍微具体一点的研究问题:
1. Transparency – 模型怎么工作的?网络由什么驱动来给出最终预测?
2. Post-hoc Explainability – 神经网络学到了什么?网络中每一层某个神经元的激活值大或者小意味着什么?
对于这两个问题,在本文的网络架构里姑且给出一个可能的思路就是: