作者:哈工大SCIR 杨重阳
转载自:哈工大SCIR
原文链接:
1.介绍
传统的自然语言处理方法具有可解释性,这些自然语言处理方法包括基于规则的方法、决策树模型、隐马尔可夫模型、逻辑回归等,也被称为白盒技术。近年来,以语言嵌入作为特征的深度学习模型(黑盒技术)不断涌现,虽然这些方法在许多情况下显著提高了模型的性能,但在另一方面这些方法使模型变得难以解释。用户难以了解数据经过怎样的过程得到所期望的结果,进而产生许多问题,比如削弱了用户与系统之间的交互(如聊天机器人、推智能给用户提供关于模型如何得出结果的可解释,也称为结果解释问题(outcome explanation problem)[1]。在可解释人工智能中,解释可以帮助用户建立对基于NLP的人工智能系统的信任。本文依据前人的综述[2]讨论了可解释的分类方式,介绍了能够给出可解释的技术及其具体操作,并简要地描述了每一种技术及其代表性论文。
2.解释的分类
解释主要有两种分类方式[1][3]。
2.1局部解释与全局解释(Local vs Global)
局部解释是模型对特定输入的预测结果提供针对该预测结果的解释,全局解释是通过揭示模型预测的过程来解释如何预测,与特定的输入无关。
2.2自解释与事后解释(Self-Explaining vs Post-Hoc)
解释的分类除了按局部解释与全局解释划分,根据解释是作为预测过程的一部分,还是需要利用预测结果进行后处理得到,还存在另外一种分类方式,即自解释与事后解释。自解释方法,也可以称为直接解释(directly Interpretable)[4],利用在预测过程中产生的信息作为解释,解释与模型的预测结果同时产生。决策树和基于规则的模型是全局自解释模型,而注意力机制等显著性特征方法是局部自解释模型。事后解释的方法是在给出预测结果后需要执行额外的操作,LIME[5]使用简单的模型对复杂的模型进行解释,这里简单的模型是复杂的模型给出预测结果后的额外操作,该方法是局部事后解释的一个例子。
表1 解释的分类3.可解释的技术
主要调研五种采用不同的机制给用户提供解释的可解释性技术。
3.1特征重要性(Feature Importance)
其主要思想是通过研究不同特征对最终预测结果的影响程度来得出解释。这些方法可以建立在不同类型的特征上,例如利用特征工程(feature engineering)[6]手动提取特征、word/token和n-gram等词法特征[7][8],或神经网络学习到的潜在特征[9]。注意力机制[10]和一阶导数显著性(first-derivative saliency)[11]是两个广泛使用的能够实现基于特征重要性的可解释技术。基于文本的特征本质上比一般特征更容易被人类解释,这也是为什么基于注意力机制的方法在NLP领域广泛使用。
3.2替代模型(Surrogate Model)
模型预测可以通过学习另一个具有可解释能力的模型作为代理来进行解释。一个非常典型的例子是LIME[5],它使用被称为输入扰动(input perturbation)的操作来学习一个效果相近的替代模型。基于替代模型的方法是模型无关的(model-agnostic),可用于实现局部[12]或全局[13]解释。然而,学习到的替代模型和原始模型可能有完全不同的机制来进行预测,这导致了人们对基于替代模型的方法是否忠于原模型持怀疑的态度。
3.3样例驱动(Example-driven)
这种方法通过识别和呈现其他与输入实例语义相似的已标注实例来解释输入实例的预测。它们在思想上类似于基于最近邻的方法[14],并已应用于不同的NLP任务,如文本分类[15]和问答[16]。
3.4溯源(Provenance-based)
通过展示部分或全部的预测推导过程,当最终的预测是一系列推理步骤的结果时,这是一种直观而有效的可解释性技术。在问答领域有很多工作采用了这种可解释方法[16][17][18]。
3.5陈述归纳(Declarative Induction)
在设计过程中直接使用人类可读、可理解的表示,如规则[19]、树结构[6]和程序(program)[20]直接作为解释。
4.实现解释的操作
4.1一阶导数显著性(First-derivative Saliency)
这是一种受反向传播影响的策略。它可以衡量每个输入单元对最终决策的贡献量,这些贡献可以用一阶导数来近似。形式化的定义如下:对于一个分类模型,其输入为EE ,输出的正确分类标签为 cc(NLP任务而言,输入可以是一个单词或一系列单词序列,而标签可以是词性标签、情绪标签、下一个要预测的单词索引等)。模型会给出E与c的关联分数。而该算法目的是得到输入EE 的哪个单元 cc 对上述分数的贡献最大,即 Sc(e)S_c(e) 。由于 Sc(e)S_c(e)是高度非线性函数(highly non-linear function),所以用一阶泰勒展开将原函数变为线性表示:
Sc(e)≈w(e)Te+bS_{c}(e) \approx w(e)^{T} e+b
其中 w(e)w(e) 是 ScS_c 对嵌入 ee 的导数:
w(e)=∂(Sc)∂e|ew(e)=\left.\frac{\partial\left(S_{c}\right)}{\partial e}\right|_{e}
导数的大小(绝对值)表明了最终结果对一个特定维度的变化的敏感性,即该词的一个特定维度对最终决定的贡献程度。显著性的分数是由下面的公式所给出:
S(e)≈|w(e)|S(e) \approx|w(e)|
下面的例子是来自Stanford Sentiment Treebank语料。分析为什么”I hate the movie.”的标签是负面情绪。
图1 三种模型针对输入"I hate the movie."绘制得到的热图(每一行表示对应单词的显著性分数,每个网格/列代表不同的维度)e”之外的单词,其他单词几乎没有影响。这可能是由于LSTMs和Bi-LSTMs中的门结构机制控制了信息流,使得这些架构能够更好地过滤掉不太相关的信息。此外一阶导数显著性常用于神经网络模型,因为可以通过单独调用深度学习引擎提供的自动求导来计算得到。最近的工作还提出了对一阶导数显著性的改进[21]。如其名称和定义所述,一阶导数显著性可以实现特征重要性的可解释,特别是在token-level的特征。
4.2相关性分数逐层传播(Layer-wise Relevance Propagation)
Layer-wise Relevance Propagation(LRP)是一种将可解释性融入高度复杂的深度学习神经网络的技术。通过一种专门设计的反向传播规则在神经网络中反向传播预测结果。基于反向传播relevance score生成heatmap(主要用于图像领域,也有自然语言处理方面的应用)。下面简要介绍其思想。
LRP实现的传播过程遵循守恒性质,即神经元接收到的必须以相等的数量重新分配到较低的层。设 jj 和 kk 是神经网络中连续的两层中的神经元。应用以下规则,将相关分数传递到较低层神经元上:
Rj=∑kzjk∑jzjkRkR_{j}=\sum_{k} \frac{z_{j k}}{\sum_{j} z_{j k}} R_{k}
zjkz_{jk} 建模了神经元 jj 影响神经元 kk相关分数的程度,分母用于保持守恒的性质。在到达输入节点后,传播过程将终止。如果将上述规则用于网络中的所有神经元,则很容易验证每层的守恒特性∑jRj=∑kRk\sum_{j} R_{j}=\sum_{k} R_{k}。将该性质扩展到全局,得到∑jRj=f(x)\sum_{j} R_{j}=f(x) 。其中 f(x)f(x) 代表整个模型在x作用下的输出,具体展示效果如下图:
图2 LRP过程的说明(每个神经元重新分配到下层的和它从上层接收到的分数一样多)这里LRP使用的反向传播规则在实际应用中有两种改进形式,分别是 ϵ−rule\epsilon- rule 和 β−rule\beta- rule,这两种方法可以避免原规则中可能出现的分母为零的情况,并且具有更强的鲁棒性。相关性分数逐层传播,还被用于实现特征重要性的可解释性[22]和样例驱动的可解释性[23]。这里以图片举例,其实际应用效果如下:
图3 输入图像和通过各种LRP程序获得的输出神经元“城堡”的像素级解释4.3输入扰动(Input Perturbations)
以LIME[5]模型举例,输入扰动可以通过生成输入x的随机扰动并训练一个可解释的模型(通常是一个线性模型)来解释输入x的输出。LIME 的主要思想是,通过训练一个模拟原模型但更简单的模型来解释原模型是如何做出预测的。因此,可以利用更简单的模型(也称为替代模型)来解释原始模型的预测。此方法不涉及模型内部,而是通过对输入进行大量且轻微的扰动(例如删除不同的单词),观察黑盒模型的输出所发生的变化,然后根据这些输入输出训练简单且可解释的模型。由于替代模型是一个简单的线性分类器,通过给每个单词分配一个权重来进行预测,因此我们可以看到分配给每个单词的权重来了解每个单词如何影响最终预测。最终得到的效果如下图所示:
图4 输入的各部分对分类的不同程度的影响(绿色单词使分类器认为评论更消极,而蓝色单词认为评论更积极)正如举例的LIME一样,这类操作常用于替代模型[5]12]。
4.4注意力机制(Attention)
Attention机制[10]是自然语言处理领域最常采用的可解释方法之一,其能在一系列任务上对模型性能产生显著的提升,尤其是基于循环神经网络结构的seq-to-seq模型。Attention机制模拟了人类理解语言时会集中注意到一些关键词的行为,实现的方式是权重分配。同时,前人将Attention层引入神经网络来实内容)。
4.5可解释的结构设计(Explainability-aware Architecture Design)
该方法通过模仿人类解决问题的过程设计神经网络架构,由于该架构包含模拟人类认知的组件,使得学习到的模型(部分)可解释。实现这样的模型架构可用于解决数学问题MathQA[18][20]或句子简化问题[24]。这种设计也可以应用于可解释的替代模型。以MathQA为例,在数学考试中,答题者经常被要求逐步给出答案是如何推导得到的,如果缺少推导中的任何关键步骤,那么答题者很大可能不能得到满分。MathQA模型利用可解释的结构设计试图重现这一推导过程。MathQA是一个大型英语多项选择数学问题的数据集,训练数据通过众包的方式进行标记。对于一个问题,参与标记者会被要求循环执行下面的步骤:首先选出一个操作(加、减、乘、除、平方等),然后从问题题干中或之前操作的计算结果中标记这个方法所需要的参数,直到获得的操作集合能够共同作用得出答案。在实际训练中希望获得的是一个encoder-decoder的结构,将输入的问题题干看作是编码后的数据,而目的是将其解码为一个以各种操作为元素的序列。通过这一序列,可以清楚的认识到整个求解过程。实例效果如下:
图5 模型实例(输入是数学问题题干,输出是该问题的求解步骤)5.结论
本文讨论了解释的主要分类(局部解释与全局解释、自解释与事后解释),实现可解释的常用技术以及这些可解释技术的具体操作。除此以外,还有其他的可解释性操作,例如利用强化学习来进行简单否定规则的学习等[19]。可解释性人工智能仍然存在许多问题亟待解决,诸如对该领域相关概念更清晰的定义、可解释性更明确的理解,以及如何与目标建立联系等。未来期待更多的工作来完善该领域,促进用户与人工智能之间的交互。
参考资料
[1] Guidotti R, Monreale A, Ruggieri S, et al. A Survey of Methods for Explaining Black Box Models[J]. ACM Comput. Surv., New York, NY, USA: Association for Computing Machinery, 2018, 51(5).
[2] Danilevsky M, Qian K, Aharonov R, et al. A Survey of the State of Explainable AI for Natural Language Processing[J]. 2020(Section 5).
[3] Tjoa E, Guan C. A Survey on Explainable Artificial Intelligence (XAI): Toward Medical XAI[J]. IEEE Transactions on Neural Networks and Learning Systems, 2020: 1–21.
[4] Arya V, Bellamy R K E, Chen P-Y,et al. One Explanation Does Not Fit All: A Toolkit and Taxonomy of AI Explainability Techniques[J]. 2019.
[5] Ribeiro M T, Singh S, Guestrin C. 《 Why should i trust you?》 Explaining the predictions of any classifier[A]. Proceedings of the 22nd ACM SIGKDD international conference on knowledge discovery and data mining[C]. 2016: 1135–1144.
[6] Voskarides N, Meij E, Tsagkias M, et al. Learning to explain entity relationships in knowledge graphs[J]. ACL-IJCNLP 2015 – 53rd Annual Meeting of the Association for Computational Linguistics and the 7th International Joint Conference on Natural Language Processing of the Asian Federation of Natural Language Processing, Proceedings of the Conference, 2015, 1: 564–574.
[7] Godin F, Demuynck K, Dambre J, et al. Explaining Character-Aware Neural Networks for Word-Level Prediction: Do They Discover Linguistic Rules?[J]. 2018.
[8] Mullenbach J, Wiegreffe S, Duke J, et al. Explainable Prediction of Medical Codes from Clinical Text[J]. 2018.
[9] Xie Q, Ma X, Dai Z, et al. An Interpretable Knowledge Transfer Model for Knowledge Base Completion[J]. 2017.
[10] Bahdanau D, Cho K H, Bengio Y. Neural machine translation by jointly learning to align and translate[A]. 3rd International Conference on Learning Representations, ICLR 2015[C]. 2015.
[11] Li J, Chen X, Hovy E H, et al. Visualizing and Understanding Neural Models in NLP[A]. HLT-NAACL[C]. 2016.
[12] Alvarez-Melis D, Jaakkola T. A causal framework for explaining the predictions of black-box sequence-to-sequence models[A]. Proceedings of the 2017 Conference on Empirical Methods in Natural Language Processing[C]. 2017: 412–421.
[13] Liu N, Huang X, Li J, et al. On interpretation of network embedding via taxonomy induction[A]. Proceedings of the 24th ACM SIGKDD International Conference on Knowledge Discovery & Data Mining[C]. 2018: 1812–1820.
[14] Dudani S A. The distance-weighted k-nearest-neighbor rule[J]. IEEE Transactions on Systems, Man, and Cybernetics, IEEE, 1976(4): 325–327.
[15] Croce D, Rossini D, Basili R. Auditing deep learning processes through kernel-based explanatory models[A]. Proceedings of the 2019 Conference on Empirical Methods in Natural Language Processing and the 9th International Joint Conference on Natural Language Processing (EMNLP-IJCNLP)[C]. 2019: 4028–4037.
[16] Abujabal A, Roy R S, Yahya M, et al. Quint: Interpretable question answering over knowledge bases[A]. Proceedings of the 2017 Conference on Empirical Methods in Natural Language Processing: System Demonstrations[C]. 2017: 61–66.
[17] Zhou M, Huang M, Zhu X. An interpretable reasoning network for multi-relation question answering[J]. arXiv preprint arXiv:1801.04726, 2018.
[18] Amini A, Gabriel S, Lin S, et al. MathQA: Towards interpretable math word problem solving with operation-based formalisms[J]. arXiv, 2019: 2357–2367.
[19] Pröllochs N, Feuerriegel S, Neumann D. Learning interpretable negation rules via weak supervision at document level: A reinforcement learning approach[A]. Proceedings of the 2019 Conference of the North American Chapter of the Association for Computational Linguistics: Human Language Technologies[C]. Association for Computational Linguistics, 2019, 1: 407–413.
[20] Ling W, Yogatama D, Dyer C, et al. Program induction by rationale generation: Learning to solve and explain algebraic word problems[J]. arXiv preprint arXiv:1705.04146, 2017.
[21] Sundararajan M, Taly A, Yan Q. Axiomatic attribution for deep networks[A]. International Conference on Machine Learning[C]. PMLR, 2017: 3319–3328.
[22] Poerner N, Roth B, Schütze H. Evaluating neural network explanation methods using hybrid documents and morphological agreement[J]. arXiv e-prints, 2018: arXiv-1801.
[23] Croce D, Rossini D, Basili R. Explaining non-linear classifier decisions within kernel-based deep architectures[A]. Proceedings of the 2018 EMNLP Workshop BlackboxNLP: Analyzing and Interpreting Neural Networks for NLP[C]. 2018: 16–24.
[24] Dong Y, Li Z, Rezagholizadeh M, et al. EditNTS: An Neural Programmer-Interpreter Model for Sentence Simplification through Explicit Editing[A]. Proceedings of the 57th Annual Meeting of the Association for Computational Linguistics[C]. 2019: 3393–3402.
机器学习/深度学习算法/自然语言处理交流群
已建立机器学校+昵称+Pytorch即可。然后我们就可以拉你进群了。群里已经有非得多国内外高校同学,交流氛围非常好。
机器学习算法与自然语言处理账号和机器学习算法与自然语言处理解到最新优质的干货资源。
推荐阅读
最强的Attention函数诞生啦,带给你意想不到的巨大提升!
新分类!全总结!最新Awesome-SLU-Survey资源库开源!
NUS&A* STAR: 一种简单有效的数据增广方法for n-shot任务型对话系统
全领域涨点 | Transformer携Evolving Attention在CV与NLP领域全面涨点
Facebook AI大一统!使用统一Transfomer的多模态多任务学习
CVPR 2021接收结果出炉!录用1663篇,录取率27%
GPT“高仿”系列开源了!最大可达GPT-3大小,还能自主训练
我,大学没毕业,在OpenAI搞AI,想教教你如何提升“研究品味”
赛尔原创@AAAI 2021 | 纠结于联合学习中的建模方法?快来看看图网络显式建模!
如何提高PyTorch“炼丹”速度?这位小哥总结了17种方法,可直接上手更改的那种
斯坦福CS224W《图机器学习》2021开课!Jure Leskovec大牛主讲,附课程PPT下载
第二十届中国计算语言学大会(CCL 2021)技术评测任务征集
完全图解GPT-2:看完这篇就够了(一)
IJCAI 2020今日开幕,杰出论文奖、卓越研究奖、约翰·麦卡锡奖等8项大奖公布!
全面回顾2020年图机器学习进展,12位大神论道、寄望2021年大爆发!
2020年arXiv十大热门论文来了!不止GPT-3、SimCLR、YOLOv4…
超过500个附代码的AI/机器学习/深度学习/计算机视觉/NLP项目
Awesome Transformer for Vision Resources List库
2020 Top10计算机视觉论文总结:论文,代码,解读,还有demo视频!
摘要数据整理仓库,6个数据集!
156个参考文献!Visual Transformer 调研survey
谷歌最新28页高效 Transformer 模型综述
加拿大蒙特利尔大学助理教授刘邦招收2021/2022年博士生
【EMNLP2020】基于动态图交互网络的多意图口语语言理解框架
忆臻:AAAI 2021论文接收列表放出!!!
机器学习自然语言处理:通俗易懂!BiLSTM上的CRF,用命名实体识别任务来解释CRF(一)
机器学习自然语言处理:通俗易懂!BiLSTM上的CRF,用命名实体识别任务来解释CRF(二)
机器学习自然语言处理:赛尔笔记 | 自然语言处理领域的数据增广方法
机器学习自然语言处理:基于小样本学习的图像分类技术综述(中文版),19页pdf
机器学习自然语言处理:【斯坦福NLP-CS224N硬核课】自然语言处理未来与深度学习,81页ppt
机器学习自然语言处理:大道至简:算法工程师炼丹Trick手册
机器学习自然语言处理:Transformer!「预训练变换器文本排序」首篇综述书,155页pdf概述BERT类模型文本检索进展
机器学习自然语言处理:周志华老师《机器学习》手推笔记,214页
机器学习自然语言处理:原来有这个算法,让点评体验如此好!
机器学习自然语言处理:AAAI2020-图神经网络(GNN)过去、现在、应用和未来最新研究进展分享
机器学习自然语言处理:图神经网络(GNN)必读论文及最新进展跟踪
机器学习自然语言处理:5种神经网络常见的求导!
机器学习自然语言处理:一文概览 CVPR2021 最新18篇 Oral 论文
机器学习自然语言处理:CVPR2021最新接收论文合集!22个方向100+篇论文汇总|持续更新
机器学习自然语言处理:Transformer是巧合还是必然?搜索推荐领域的新潮流
机器学习自然语言处理:AAAI 2021最佳论文《Informer》作者:Transformer 最新进展
机器学习自然语言处理:[万字长文] 图神经网络的解释性综述
机器学习自然语言处理:图解Transformer(完整版)!
机器学习自然语言处理:【Transformer】图解OpenAI的秘密武器GPT-2:可视化Transformer语言模型
机器学习自然语言处理:搞懂Transformer结构,看这篇PyTorch实现就够了
机器学习自然语言处理:深度学习中的知识蒸馏技术(下)-知识蒸馏与推荐系统
机器学习自然语言处理:排序(rank)后重排(re-rank)?
机器学习自然语言处理:从理论到实践解决文本分类中的样本不均衡问题
机器学习自然语言处理:总结+paper分享|对话系统中的自然语言生成技术(NLG)
机器学习自然语言处理:百家争鸣|国内外NLP领域学术界和工业界的牛人和团队
机器学习自然语言处理:任务型对话系统公式建模&&实例说明机器学习自然语言处理:一文”看透”多任务学习
机器学习自然语言处理:总结+paper分享|对话系统中的自然语言生成技术(NLG)
机器学习自然语言处理:百家争鸣|国内外NLP领域学术界和工业界的牛人和团队
机器学习自然语言处理:CTR模型越来越”深”,如何让它变”轻”?
机器学习自然语言处理:排序(rank)后重排(re-rank)?
赛尔笔记 | 对比学习简述 – 知乎 (zhihu.com)
20篇「ICML2021」最新论文抢先看!看机器学习2021在研究什么? – 知乎 (zhihu.com)
“意念打字”速度接近常人手机聊天,专家:这比马斯克的“猴子玩游戏”难多了 | Nature封面 – 知乎 (zhihu.com)
MLP三大工作超详细解读:why do we need? – 知乎 (zhihu.com)
近期必读的5篇顶会CVPR 2021【对比学习(CL)】相关论文和代码 – 知乎 (zhihu.com)
赛尔原创@IJCAI 2021 | 会议摘要有难度?快来引入对话篇章结构信息 – 知乎 (zhihu.com)
ViLT:最简单的多模态Transformer – 知乎 (zhihu.com)
台大最新《深度学习优化问题》硬核课,林智仁教授讲解,附课件下载 – 知乎 (zhihu.com)
Rethinking “Batch” in BatchNorm – 知乎 (zhihu.com)
写给新手炼丹师:2021版调参上分手册 – 知乎 (zhihu.com)
100+篇论文合集:GNN在NLP中的应用 – 知乎 (zhihu.com)
《自监督学习》概述,117页ppt,李飞飞经典CS231N2021《卷积神经网络视觉识别》课程第十三讲! – 知乎 (zhihu.com)
近期必读的5篇顶会ICML 2021【图神经网络(GNN)】相关论文和代码 – 知乎 (zhihu.com)
成熟的AI应该自己写代码,IBM发布5亿行代码数据集,包含55种语言|开源 – 知乎 (zhihu.com)
2021机器学习研究风向是啥?MLP→CNN→Transformer→MLP! – 知乎 (zhihu.com)
基于会话推荐系统最新长文综述,163篇参考文献,已被ACM Computing Surveys接收 – 知乎 (zhihu.com)
弗吉尼亚理工、滑铁卢大学、威斯康星大学、弗吉尼亚大学AI硕博招生! – 知乎 (zhihu.com)
UC伯克利马毅ICML投稿得到4个评审接收却仍遭AC拒绝!自称论文泄露了深度学习的天机 – 知乎 (zhihu.com)
TransGAN:两个Transformer可以构造一个强大的GAN – 知乎 (zhihu.com)
CHI2021最新「可解释人工智能XAI导论」,86页PPT带你实战XAI系统 – 知乎 (zhihu.com)
吊打BERT、GPT、DALL·E,跨模态榜单新霸主诞生! – 知乎 (zhihu.com)
拯救Sci-Hub的「最后行动」:把77TB论文,转化成850个BT种子传播下去 – 知乎 (zhihu.com)
【2021新书】概率图模型:原理与应用,370页pdf概述PGM最新技术 – 知乎 (zhihu.com)
为什么贝叶斯统计如此重要? – 知乎 (zhihu.com)
Github标星1.2K,Visual Transformer 最全最新资源,包含期刊、顶会论文 – 知乎 (zhihu.com)