可解释的自然语言处理方法简介

作者:哈工大SCIR 杨重阳

1.介绍

传统的自然语言处理方法具有可解释性,这些自然语言处理方法包括基于规则的方法、决策树模型、隐马尔可夫模型、逻辑回归等,也被称为白盒技术。近年来,以语言嵌入作为特征的深度学习模型(黑盒技术)不断涌现,虽然这些方法在许多情况下显著提高了模型的性能,但在另一方面这些方法使模型变得难以解释。用户难以了解数据经过怎样的过程得到所期望的结果,进而产生许多问题,比如削弱了用户与系统之间的交互(如聊天机器人、推荐系统等)。机器学习社区对可解释性重要程度的认识日益增强,并创造了一个新兴的领域,称为可解释人工智能(XAI)。而关于可解释性有多种定义,大部分相关文章的论证也因此有所差异。这里我们关注的是可解释人工智能给用户提供关于模型如何得出结果的可解释,也称为结果解释问题(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)

这是一种受反向传播影响的策略。它可以衡量每个输入单元对最终决策的贡献量,这些贡献可以用一阶导数来近似。形式化的定义如下:对于一个分类模型,其输入为,输出的正确分类标签为(NLP任务而言,输入可以是一个单词或一系列单词序列,而标签可以是词性标签、情绪标签、下一个要预测的单词索引等)。模型会给出E与c的关联分数。而该算法目的是得到输入的哪个单元对上述分数的贡献最大,即。由于是高度非线性函数(highly non-linear function),所以用一阶泰勒展开将原函数变为线性表示:
其中是对嵌入的导数:

导数的大小(绝对值)表明了最终结果对一个特定维度的变化的敏感性,即该词的一个特定维度对最终决定的贡献程度。显著性的分数是由下面的公式所给出:

下面的例子是来自Stanford Sentiment Treebank语料。分析为什么'I hate the movie.'的标签是负面情绪。
图1 三种模型针对输入'I hate the movie.'绘制得到的热图(每一行表示对应单词的显著性分数,每个网格/列代表不同的维度)

这三种模型中'hate'都具最高的显著性分数,并削弱了其他token的影响。LSTM比标准的循环模型更清晰地关注'hate',双向LSTM的效果最为明显,除了'hate'之外的单词,其他单词几乎没有影响。这可能是由于LSTMs和Bi-LSTMs中的门结构机制控制了信息流,使得这些架构能够更好地过滤掉不太相关的信息。此外一阶导数显著性常用于神经网络模型,因为可以通过单独调用深度学习引擎提供的自动求导来计算得到。最近的工作还提出了对一阶导数显著性的改进[21]。如其名称和定义所述,一阶导数显著性可以实现特征重要性的可解释,特别是在token-level的特征。

4.2相关性分数逐层传播(Layer-wise Relevance Propagation)

Layer-wise Relevance Propagation(LRP)是一种将可解释性融入高度复杂的深度学习神经网络的技术。通过一种专门设计的反向传播规则在神经网络中反向传播预测结果。基于反向传播relevance score生成heatmap(主要用于图像领域,也有自然语言处理方面的应用)。下面简要介绍其思想。
LRP实现的传播过程遵循守恒性质,即神经元接收到的必须以相等的数量重新分配到较低的层。设和是神经网络中连续的两层中的神经元。应用以下规则,将相关分数传递到较低层神经元上:
建模了神经元影响神经元相关分数的程度,分母用于保持守恒的性质。在到达输入节点后,传播过程将终止。如果将上述规则用于网络中的所有神经元,则很容易验证每层的守恒特性。将该性质扩展到全局,得到。其中代表整个模型在x作用下的输出,具体展示效果如下图:
图2 LRP过程的说明(每个神经元重新分配到下层的和它从上层接收到的分数一样多)
这里LRP使用的反向传播规则在实际应用中有两种改进形式,分别是和,这两种方法可以避免原规则中可能出现的分母为零的情况,并且具有更强的鲁棒性。相关性分数逐层传播,还被用于实现特征重要性的可解释性[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层引入神经网络来实现特征重要性的可解释方法[8][9]。但是人们对其能做到哪种程度是不了解的。'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.

本期责任编辑:冯骁骋
本期编辑:朱文轩
(0)

相关推荐

  • 深度学习模型真的无法被解释么?

    Kim, B., and F. Doshi-Velez. "Interpretable machine learning: the fuss, the concrete and the qu ...

  • 推荐系统的可解释性到底需不需要?可解释性的UI应该是什么样的?

    从北京出差回来啦~ 趁睡觉前刷了2篇论文 首先有3个问题,我觉得蛮值得思考的: - 可解释推荐系统的UI应该是什么样的? 不管是身为设计师的你,还是做算法的同学,制作/参与推荐系统的时候,有没有想过与 ...

  • 【每周CV论文推荐】 掌握残差网络必读的10多篇文章

    欢迎来到<每周CV论文推荐>.在这个专栏里,还是本着有三AI一贯的原则,专注于让大家能够系统性完成学习,所以我们推荐的文章也必定是同一主题的. 残差网络作为当今最成功的网络结构之一,今天就 ...

  • 【杂谈】计算机视觉新手如何选读论文?这100多篇你必须收下。

    从事计算机视觉领域的工作或者研究,必不可少的一件事情就是读论文,目前论文这么多,对于新手朋友们来说,该如何进行选读呢?本次来汇总一下我们的论文推荐专栏,给大家推荐各个方向,超过100篇文章,大家可以点 ...

  • U-NOISE:用于可解释的图像分割的可学习噪声蒙版

    点击上方"深度学习爱好者",选择加"星标"或"置顶" 重磅干货,第一时间送达 小白导读 论文是学术研究的精华和未来发展的明灯.小白决心每天为 ...

  • 【每周CV论文推荐】 初学高效率CNN模型设计应该读的文章

    欢迎来到<每周CV论文推荐>.在这个专栏里,还是本着有三AI一贯的原则,专注于让大家能够系统性完成学习,所以我们推荐的文章也必定是同一主题的. 高效率(紧凑)的CNN模型设计是深度学习在工 ...

  • 智能手机提取文字的四种方法简介

    智能手机提取文字的四种方法简介

  • 威科夫方法简介

    理查德 · 威科夫(1873年–1934年)是20世纪初股票市场的技术分析的先驱.他和道琼斯,甘恩,埃利奥特和美林被认为是技术分析的五大巨人.威科夫 从15岁开始在纽约股票经纪公司担任报价员,然后在二 ...

  • 祛邪防癌扳指法练习方法简介

    祛邪防癌扳指法与中药.针灸.按摩等药物和医技一样,都是运用的中医经络机理,属于传统中医宝库中的璀璨精华.而祛邪防癌扳指法是黄仁忠宗师集南少林和北少林内劲功与达摩功夫的完美提炼和升华组合创新.在具体健身 ...

  • 三分钟解释什么是蒙特卡罗方法

    大家好,我是huanhu_data,我们经常在各类算法中看到"蒙特卡罗"(Monte Carlo)的字样, 比如MCMC(Markov Chain Monte Carlo) , 还 ...

  • 常用塑胶材质判定方法简介

    目前市场上线缆用常规塑胶材料的判定,大部分都是采用燃烧的方法,根据是否易燃,燃烧火焰,是否有滴落物,是否延燃,气味等现象来判定,下表为我们统计的常用塑胶材料的燃烧现象,供大家参考交流,谢谢! 基本判定 ...

  • 我的交易体系和学缠方法简介

    我的交易体系简介 我的交易体系,第一课,我的交易体系和学缠方法概括 第二课,一买 第三课,标准买点,系统盘背 第四课,中枢分解 第五课,趋势背驰第一个中枢开始的判断方法 第六课,我的选股方法 第七课, ...

  • 使用SCL语言编程方法简介

    SCL:Structured Contorl Language,结构化控制语言. 在TIA博途软件中,默认支持SCL语言,在建立程序块时可以直接选择SCL语言. SCL语言类似计算机高级语言,如果你有 ...

  • 一文读懂如何艾灸,艾灸方法简介!

    虫二按: 以下故事仅仅为了表达艾灸的好处,并非说其包治百病.另外物极必反,艾灸也要有个度. <扁鹊心书>90岁江洋大盗养生秘笈      南宋绍兴年间,有一个叫王超的军人,退役后遁入江湖做 ...

  • 站桩原理和方法简介(二)

    既然明白了站桩的目的,那么站桩过程中应该怎么做就比较容易理解了. 首先,站桩开始时身体是静止的,但是心(意识)的状态很重要.一个放松的身心是站桩有效果的前提条件.心越静越放松,一是越容易觉察到气,二是 ...