Auto Byte

专注未来出行及智能汽车科技

微信扫一扫获取更多资讯

Science AI

关注人工智能与其他前沿技术、基础学科的交叉研究与融合发展

微信扫一扫获取更多资讯

魔王、张倩编译

注意力机制不能提高模型可解释性?不,你这篇论文搞错了

最近,很多研究人员对注意力机制能否解释模型预测提出了疑问,比如今年 2 月份的论文《Attention is not Explanation》。而今天要介绍的这项研究针锋相对地反驳了上述论文,从标题中我们就可以看出来:Attention is not not Explanation VS. Attention is not Explanation。

注意力机制在 NLP 系统中起着重要作用,尤其是对于循环神经网络(RNN)模型。那么注意力模块提供的中间表征能否解释模型预测的推理过程,进而帮助人们了解模型的决策过程呢?近期,很多研究人员对这个话题产生了浓厚的兴趣。一篇题目为《Attention is not Explanation》(Jain and Wallace, 2019) 的论文表示,注意力机制并不能提高模型的可解释性。

这篇论文在多个自然语言处理任务上进行了实验,以评估注意力权重能够对模型预测提供何种程度上的有意义的「解释」。其结果表明:注意力权重基本上无法提高模型可解释性。例如,学习到的注意力权重通常与基于梯度的特征重要性度量没有关联,而且他们发现非常不同的注意力分布可以带来同样的预测。

来自佐治亚理工学院的 Sarah Wiegreffe 和 Yuval Pinter 挑战了这篇论文中的一些假设,认为其论断依赖「解释」(explanation)的定义,且测试该论断是否正确需要考虑模型的所有元素,使用更加严谨的实验设计。因此 Wiegreffe 和 Pinter 提出四种替代性测试方法,来确定注意力何时可用作「解释」、是否能作为「解释」,这四种方法分别是:简单的统一权重基线、基于多次随机种子运行的方差校准、使用预训练模型固定权重的诊断框架、端到端对抗注意力训练协议。

每一种方法都证明 RNN 模型中的注意力机制可以提供有意义的「解释」。该研究证明,即使存在可靠的对抗分布,它们在简单的诊断框架上也无法取得很好的性能,这表明《Attention is not Explanation》并没有驳倒「注意力机制可以提高模型可解释性」的说法。

《Attention is not not Explanation》写了啥

目前,注意力机制在 NLP 领域非常常见,它能否为模型预测提供解释也是一个热门话题。

近期研究《Attention is not Explanation》指出了一些可能导致研究者误用注意力分数解释模型行为的陷阱,其前提是可解释性注意力分布应该与其他特征重要性度量一致且对于给定预测具备排他性。

其核心论点是,如果可以找到使得输出结果与原始模型输出类似的其他注意力分布,则原始模型的注意力分数无法可靠地解释模型预测。

而 Wiegreffe 和 Pinter 则认为,尽管上述论文提出了一个重要问题,对使用注意力权重解释模型在英文数据集上的预测结果可能存在潜在误用提出担忧,但其实验设计中使用的一些核心假设在设置上存在很大的自由度,最终导致人们无法采取可行的方式衡量注意力分布在特定设置下的效用。

Wiegreffe 和 Pinter 提出一种更加模型驱动(model-driven)的方法来解决这一问题。他们证明,在一些数据集上,固定注意力分布与学习到的注意力权重效果一样好,从而得出结论:在这些案例中,随机分布或对抗扰动分布不能证明注意力无法作为「解释」。

《Attention is not Explanation》为什么认为「注意力机制不能提高模型可解释性」?

Wiegreffe 和 Pinter 介绍了《Attention is not Explanation》中的实验设计,并查看了其作者认为可以支撑「注意力不能提高模型可解释性」的实验结果。

Jain 和 Wallace 在实验中选取了八个分类数据集(大部分是二分类)和两个问答任务。他们首先展示了注意力分数和其他可解释性度量之间的关联分析,发现注意力与其他可靠的特征重要性度量(基于梯度的方法和留一法)之间不具备强相关,而后者彼此之间互相关联。

他们基于实验提出了关于一致性的论断:如果基于注意力的可解释方法与其他特征重要性度量之间不具备强相关,则「注意力能够提高模型可解释性」的观点并不准确。

接下来,Jain 和 Wallace 提出了一种替代性对抗注意力分布,它可以最小程度地改变模型预测结果。为此,他们控制训练好的模型的注意力分布(以下称之为 base),来判别是否存在替代性分布使得模型输出接近原始预测。

他们使用这些实验结果作为论据,来支持「由于注意力分布不具备排他性,因而它们无法用于解释模型」的论点。

值得注意的是,Jain 和 Wallace 把注意力分布和预训练网络输出层与用于计算它们的参数分离开来,将每个注意力分数看作独立于模型的单独单元。此外,他们还为每个实例单独计算对抗分布。

注意力机制不能提高模型可解释性」的观点错在哪儿?

佐治亚理工学院的研究使用了四个量化实验。如下图 1 所示,左侧图中的每个花括号表示每个实验中对于标准 RNN-with-attention 架构操纵的组件。Wiegreffe 和 Pinter 鼓励 NLP 研究人员在自己的注意力模型上使用他们提出的方法,来评估注意力模块提供模型可解释性的效果。

  • 研究代码将于 9 月初开源:https://github.com/sarahwie/attention

图 1:带注意力的 LSTM 分类模型图示,图中包括《Attention is not Explanation》和《Attention is not not Explanation》的实验部分操纵或替换的组件。

Wiegreffe 和 Pinter 认为,出于以下原因,《Attention is not Explanation》中反事实的注意力权重实验无法支撑其论文的论点。

1. 注意力分布不是原语(Primitive)

从建模角度来看,分离模型各部分获得的注意力分数(即注意力机制)会降低模型性能。base 注意力权重并非由模型随机分配,而是通过必备组件计算得到,该组件的参数与其他层一同训练,它们的运行也互相依赖。

《Attention is not Explanation》提供了可带来类似预测结果的替代性分布,但是研究过程中移除了激发注意力分布可解释性的连接,即注意力模型需要关注其选择的 token。

2. 存在并不意味着排他

从更偏理论的角度来看,Wiegreffe 和 Pinter 认为注意力分数可以提供可解释性,但不是唯一的可解释性。LSTM 模型的最后一层能够用多种方式轻松产生可被聚合为相同预测值的输出,但是模型仍然使用其训练得到的注意力模块选择特定的权重分布。

这一具备数学灵活度的输出能力在二分类器中尤为明显。二分类器的预测值是一个标量,(IMDB 数据集的)平均实例包含 179 个 token,即模型输出需要聚合 179 个标量。

在每个实例上单独执行时,该效应会显著加强。因此,也难怪 Jain 和 Wallace 在这种自由度下找到了他们寻找的东西。

总之,由于《Attention is not Explanation》中的展示本质上是按实例进行的,且模型参数并非直接学得或操纵,因此 Jain 和 Wallace 并未证明能够输出对抗分布的对抗模型。也就是说,我们不能将这些对抗注意力作为模型预测同等可靠的「解释」。此外,他们没有提供学习到的注意力分布的期望变化基线,这使得读者疑惑他们发现的对抗分布到底对抗程度如何。

你需要注意力是什么样,它就是什么样

注意力能否解释模型取决于每个人对「解释」的定义:合理和/或可靠的解释。Wiegreffe 和 Pinter 认为,《Attention is not Explanation》和《Attention is not not Explanation》的实验结果都无法证明「注意力机制不能提高模型可解释性」。

但是,Wiegreffe 和 Pinter 确认了《Attention is not Explanation》中的原始假设:在一些分类任务中,LSTM 模型可以找到对抗分布。这可以阻止研究人员依靠注意力分布为模型预测提供可靠的可解释性。同时,该研究提供了一些实验,研究人员可以利用这些实验,在解释模型预测时,对模型注意力机制的质量做出明智的判断。

入门AttentionExplanation
2
相关数据
权重技术

线性模型中特征的系数,或深度网络中的边。训练线性模型的目标是确定每个特征的理想权重。如果权重为 0,则相应的特征对模型来说没有任何贡献。

注意力机制技术

我们可以粗略地把神经注意机制类比成一个可以专注于输入内容的某一子集(或特征)的神经网络. 注意力机制最早是由 DeepMind 为图像分类提出的,这让「神经网络在执行预测任务时可以更多关注输入中的相关部分,更少关注不相关的部分」。当解码器生成一个用于构成目标句子的词时,源句子中仅有少部分是相关的;因此,可以应用一个基于内容的注意力机制来根据源句子动态地生成一个(加权的)语境向量(context vector), 然后网络会根据这个语境向量而不是某个固定长度的向量来预测词。

自然语言处理技术

自然语言处理(英语:natural language processing,缩写作 NLP)是人工智能和语言学领域的分支学科。此领域探讨如何处理及运用自然语言;自然语言认知则是指让电脑“懂”人类的语言。自然语言生成系统把计算机数据转化为自然语言。自然语言理解系统把自然语言转化为计算机程序更易于处理的形式。

推荐文章
暂无评论
暂无评论~