【译】Interpretable Machine Learning(2 可解释性)

2 可解释性

可解释性并没有数学上的定义。我喜欢Miller(2017)提出的非数学上的定义[1]:可解释性是人类对于决策原因理解的程度。另一个定义是:可解释性是人类可以持续预测模型结果的程度[2]。机器学习模型的可解释性越高,人们就越容易理解为什么做出某些决策或预测。如果一个模型的决策对于人类来说比另一个更容易理解,那么这个模型就是更容易解释的。我将交替使用interpretable(侧重理解后的解释)和explainable(侧重解释且在完全确定下的)这两个术语。和Miller提出的相似,我认为区分interpretability/explainability和explanation是有意义的。我会使用”explanation”来解释单个预测。如果想了解人类认为的好的解释是什么,请参阅有关解释(explanation)的部分。

2.1 可解释的重要性

如果机器学习模型表现良好,为什么我们不相信模型并忽略它做出某个决定的原因? “问题在于单个指标,例如分类准确性,是对大多数现实世界任务的不完整描述。”(Doshi-Velez and Kim 2017[3]


让我们深入探讨解释性如此重要的原因。在预测建模方面,你必须做一个权衡:你只是想知道预测的内容吗?例如,客户流失的可能性或某些药物对患者的有效性。或者您是否想知道预测的原因,并且可能因为可解释性付出代价,导致预测性能的下降?在某些情况下,您不关心为何做出决策,只需知道测试数据集的预测性能良好即可。但在其他情况下,了解“为什么”可以帮助您更多地了解问题,数据以及模型可能失败的原因。一些模型可能不需要解释,因为它们用于低风险环境,意味着错误不会产生严重后果(例如电影推荐系统),或者该方法已经被广泛研究和评估(例如光学字符识别)。对可解释性的需求源于问题形式化的不完整性(Doshi-Velez和Kim 2017),这意味着对于某些问题或任务来说,获得预测(即什么)是不够的。该模型还必须解释它是如何进行预测的(原因),因为正确的预测只能在一定程度上解决您的原始问题。以下原因推动了对可解释性和解释的需求(Doshi-Velez和Kim 2017以及Miller 2017)。


人类的好奇心和学习:人类有一个关于环境的心理模型,当意外发生时会更新这个心理模型。这个更新是通过寻找意外事件的解释来执行的。例如,当一个人意外生病时,会问:“为什么我会感到生病了?”。后来他发现每次吃红莓都会生病。于是他更新了他的心理模型,并得到浆果引起疾病,所以应该避免的结论。当使用不透明机器学习模型进行研究时,如果模型仅给出没有解释的预测,则科学发现仍然是完全隐藏的。为了促进学习和满足人们对于机器给出预测或者行为原因的好奇心,可解释性和解释是至关重要的。当然,人类不需要解释发生的所有事情。对于大多数人来说,他们不了解计算机的工作原理是可以的。我们对意想不到的事情感到好奇。例如:为什么我的电脑意外关机?


与学习密切相关的是人类渴望找到事物存在的意义。我们希望协调元素和知识结构之间的矛盾或不一致。人类可能会问“为什么我的狗咬我,即使它之前从未这样做过?”。在对狗过去行为的认识与被咬伤的令人不愉快的体验之间存在着矛盾。兽医的解释调解了狗主人的矛盾:“狗处在压力和痛苦之下。”机器决策对人的生命影响越大,机器就越需要解释其行为。如果机器学习模型拒绝申请人的贷款申请,申请人可能想不到为什么会被拒绝。他们只能希望通过某种解释来调解期望与现实之间的这种不一致。解释实际上不必完全解释情况,但应解决一个主要原因。另一个例子是算法产品推荐。就个人而言,我总是想到为什么某些产品或电影已经通过算法推荐给我。通常非常清楚:广告在互联网上跟随我,因为我最近买了一台洗衣机,而且我知道在接下来的几天里我会跟着洗衣机的广告。是的,如果我的购物车里已经有冬帽,建议戴上手套是有意义的。该算法推荐这部电影,因为喜欢我喜欢的其他电影的用户也喜欢推荐的电影。越来越多的互联网公司正在为他们的建议添加解释。一个很好的例子是亚马逊产品推荐,它基于经常购买的产品组合:



在许多科学学科中,从定性方法到定量方法(例如社会学,心理学)以及机器学习(生物学,基因组学)都有所变化。科学的目标是获取知识,但是大数据集和黑盒机器学习模型解决了许多问题。模型本身成为知识的来源而不是数据。可解释性使得可以提取模型捕获的这些额外知识。


机器学习模型承担需要安全措施和测试的实际任务。想象一下,自动驾驶汽车会根据深度学习系统自动检测骑车人。你想要100%确定系统所学的抽象是没有错误的,因为跑过骑自行车的人是非常糟糕的。一个解释可能会发现,最重要的学习功能是识别自行车的两个轮子,这个解释可以帮助您考虑边缘情况,如带侧袋的自行车,部分覆盖车轮。


默认情况下,机器学习模型从训练数据中获取偏差。这可以将您的机器学习模型变成歧视受保护组的种族主义者。可解释性是用于检测机器学习模型中的偏差的有效调试工具。可能会发生这样的情况:接受过自动同意或拒绝信用申请训练过的机器学习模型会歧视少数人。您的主要目标是仅向最终会偿还贷款的人提供贷款。在这种情况下,问题表述的不完整性在于,您不仅要尽量减少贷款违约,还要求不要根据某些人口统计数据进行区分。这是一个额外的约束,它是您的问题公式的一部分(以低风险和合规的方式发放贷款),机器学习模型优化的损失函数不包含这一约束。


将机器和算法集成到我们日常生活中的过程需要可解释性来增加社会接受度。人们将信仰,欲望,意图等归因于对象。在一个著名的实验[4]中,Heider和Simmel(1944)向参与者展示了形状的视频,其中一个圆圈打开了一扇“门”进入“房间”(这只是一个矩形)。参与者描述了形状的行为,因为它们将描述人类的行为,为形状分配意图甚至情感和个性特征。机器人就是一个很好的例子,就像我的吸尘器一样,我把它命名为“Doge”。如果Doge陷入困境,我想:“Doge想要继续清洁,但要求我帮忙,因为它被卡住了。”后来,当Doge完成清洁并搜索家庭基地充电时,我想:“Doge有充电的愿望并且打算找到家庭基地。“我也归因于个性特征:”Doge有点愚蠢,但是以一种可爱的方式。“这些是我的想法,特别是当我发现Doge已经敲打了一个植物同时尽职尽责地吸尘屋。解释其预测的机器或算法将获得更多的接受。另见解释章节,其中认为解释是一个社会过程。


解释用于管理社交互动。通过创造某事物的共同意义,解释者会影响解释接受者的行为,情感和信念。对于与我们互动的机器,它可能需要塑造我们的情感和信念。机器必须“说服”我们,以便他们能够达到预期的目标。如果它没有在某种程度上解释它的行为,我不会完全接受我的真空吸尘器机器人。真空吸尘器通过解释它被卡住而不是简单地停止工作而没有评论,创造了一个共同的意义,例如,“意外”(如再次卡在浴室地毯上......)。有趣的是,解释机器的目标(创建信任)和接收者的目标(理解预测或行为)之间可能存在不一致。也许Doge卡住的完整解释可能是电池电量非常低,其中一个车轮工作不正常,并且有一个错误使机器人一遍又一遍地到达同一地点,即使有一个障碍。这些原因(以及其他一些原因)导致机器人卡住,但它只是解释了某些东西挡住了,这足以让我相信它的行为并获得该事故的共同意义。顺便说一句,Doge再次被困在浴室里。在我们让Doge吸尘之前,我们每次都要移除地毯。



机器学习模型只有在可以解释时才能进行调试和审核。即使在低风险环境中,例如电影推荐,解释能力在研发阶段以及部署后也很有价值。之后,当在产品中使用模型时,事情可能会出错。对错误预测的解释有助于理解错误的原因。它为如何修复系统提供了方向。考虑一个哈士奇与狼分类器的例子,将一些哈士奇错误归类为狼。使用可解释的机器学习方法,您会发现错误分类是由于图像上的雪。分类器学会使用雪作为将图像分类为“狼”的特征,这在将狼与哈士奇分离在训练数据集中可能是有意义的,但在实际使用中则不然。


如果您可以确保机器学习模型可以解释决策,您还可以更轻松地检查以下特征(Doshi-Velez和Kim 2017):

  • 公平:确保预测不偏不倚,不会暗中或明确歧视受保护群体。可解释的模型可以告诉您为什么它决定某个人不应该获得贷款,并且人们更容易判断该决定是否基于学习的人口统计(例如种族)偏见。
  • 隐私:确保数据中的敏感信息受到保护。
  • 可靠性或稳健性:确保输入中的微小变化不会导致预测发生重大变化。
  • 因果关系:检查只有因果关系被选中。
  • 信任:与黑匣子相比,人类更容易信任解释其决策的系统。


当我们不需要可解释性时。


以下场景说明了我们何时不需要甚至不希望机器学习模型的可解释性。


如果模型没有重大影响,则不需要可解释性。想象一下,一个名叫迈克的人正在研究机器学习方面的项目,以根据Facebook数据预测他的朋友将在下一个假期去哪里。迈克只是喜欢用有根据的猜测让他的朋友们惊喜,他们将去度假。如果模型错误(最糟糕的是对迈克有点尴尬)没有真正的问题,如果迈克无法解释他的模型的输出也没有问题。在这种情况下,没有可解释性是完全没有问题的。如果迈克开始围绕这些度假目的地预测开展业务,情况将会改变。如果模型错误,企业可能会亏钱,或者由于学习到的种族偏见,模型可能会对某些人造成更糟糕的影响。一旦模型产生重大影响,无论是财务还是社会影响,可解释性都会变得相关。


当问题得到充分研究时,不需要可解释性。一些应用已得到充分研究,因此对模型有足够的实践经验,并且随着时间的推移已经解决了模型的问题。一个很好的例子是用于光学字符识别的机器学习模型,它处理来自信封的图像并提取地址。这些系统有多年的经验,很明显它们可以工作。此外,我们并不真正有兴趣获得有关手头任务的更多见解。


可解释性可能使人或程序能够操纵系统。欺骗系统的用户的问题是由于创建者的目标与模型的用户之间的不匹配造成的。信用评分就是这样一种系统,因为银行希望确保只向可能退还贷款的申请人提供贷款,申请人的目的是即使银行不想给他们提供贷款。这些目标之间的不匹配为申请人提供了激励系统游戏以增加获得贷款的机会。如果申请人知道有两张以上的信用卡对他的分数产生负面影响,他只需返回第三张信用卡以提高他的分数,并在贷款获得批准后组织一张新卡。虽然他的分数有所提高,但偿还贷款的实际可能性仍未改变。如果输入是因果特征的代理,则系统只能被游戏,但实际上不会导致结果。只要有可能,应该避免使用代理功能,因为它们可以使模型具有可玩性。例如,谷歌开发了一个名为谷歌流感趋势的系统来预测流感爆发。该系统将谷歌搜索与流感爆发相关联 - 并且表现不佳。搜索查询的分布发生了变化,谷歌流感趋势错过了许多流感爆发。谷歌搜索不会导致流感。当人们寻找像“发烧”这样的症状时,这只是与实际流感爆发的相关性。理想情况下,模型只会使用因果特征,因为它们不适合游戏。

2.2 可解释方法的分类

机器学习可解释性的方法可以根据各种标准进行分类。


本质(intrinsic)还是因果关系(post hoc)的?该标准通过限制机器学习模型(本质)的复杂度或分析训练好的模型(因果关系)来区分是否可实现可解释性。本质上可解释是指机器学习模型由于其简单的结构而被认为是可解释的,例如短决策树或稀疏线性模型。因果关系可解释性是指在模型训练后再应用一些方法去解释。比如排列特征重要性就是因果关系解释方法。因果关系方法也可以应用于本质上可解释的模型。例如,可以为决策树计算置换特征重要性。本书章节的组织由本质上可解释的模型和事后(和模型不可知)解释方法之间的区别决定。


解释方法的结果:可以根据结果粗略地区分各种解释方法。

  • 特征统计:许多解释方法为每个特征提供统计。某些方法为每个特征返回单个数值,例如特征重要性,或更复杂的结果,例如特征交互程度。
  • 特征可视化:大多数特征统计信息也可以显示。一些特征实际上只有在可视化并且表格是错误的选择时才有意义。特征的部分依赖性就是这种情况。部分依赖图是显示特征和平均预测结果的曲线。呈现部分依赖性的最佳方式是实际绘制曲线而不是打印坐标。
  • 模型内部成分(例如学习权重):本质上可解释模型的解释属于这一类。示例是线性模型中的权重或决策树的学习树结构(用于分割的特征和阈值)。例如,线性模型中的模型内部和特征摘要统计之间的线条模糊,因为权重同时是模型内部和特征的摘要统计。输出模型内部的另一种方法是在卷积神经网络中学习的特征检测器的可视化。输出模型内部的可解释性方法根据定义是模型特定的(参见下一个标准)。
  • 数据点:此类别包括返回数据点(已存在或新创建)以使模型可解释的所有方法。一种方法称为反例解释。为了解释数据实例的预测,该方法通过改变预测结果以相关方式(例如预测类中的翻转)改变的一些特征来找到类似的数据点。另一个例子是识别预测类的原型。为了有用,输出新数据点的解释方法要求可以解释数据点本身。这适用于图像和文本,但对于具有数百个功能的表格数据不太有用。
  • 本质上可解释的模型:解释黑盒模型的一个解决方案是使用可解释的模型来近似它们(全局或局部)。通过查看内部模型参数或特征统计信息来解释可解释模型本身。


模型特定或模型不可知?特定于模型的解释工具仅限于特定的模型类。线性模型中回归权重的解释是一种特定于模型的解释,因为 - 根据定义 - 本质上可解释模型的解释始终是特定于模型的。仅适用于解释例如工具的工具神经网络是模型特定的。模型不可知工具可用于任何机器学习模型,并在模型训练后(因果关系)应用。这些不可知的方法通常通过分析特征输入和输出对来工作。根据定义,这些方法无法访问模型内​​部,例如权重或结构信息。


局部还是全局?解释方法是解释个体预测还是整个模型行为?或者范围介于两者之间?请阅读下一节中有关范围标准的更多信息。

2.3 可解释性的范围

一个算法可以训练一个输出预测结果的模型。每一步都可以评估其透明性或者可解释性。

2.3.1 算法透明性

算法如何创建模型?


算法透明度是关于算法如何从数据中学习模型以及它可以学习什么样的关系。如果使用卷积神经网络对图像进行分类,则可以解释该算法在最低层上学习边缘检测器和滤波器。这是对算法如何工作的理解,但不是对最终学习的特定模型的理解,而不是如何进行单个预测。算法透明度仅需要算法的知识而不需要数据或学习模型的知识。本书侧重于模型可解释性而非算法透明性。诸如用于线性模型的最小二乘法的算法被充分研究和理解。它们具有高透明度的特点。深度学习方法(通过具有数百万权重的网络推动梯度)不太了解,内部工作是正在进行的研究的焦点。它们被认为不太透明。

2.3.2 全局,整体模型的可解释性

训练好的模型如何进行预测?

如果您能够立即理解整个模型,您可以将模型描述为可解释的(Lipton 2016[5])。要解释全局模型输出,您需要经过训练的模型,算法知识和数据。这种可解释性水平是基于对其特征和每个学习组件(例如权重,其他参数和结构)的整体视图来理解模型如何做出决策。哪些功能很重要,它们之间会发生什么样的相互作用?全局模型可解释性有助于根据特征了解目标结果的分布。全球模型的可解释性在实践中很难实现。任何超过少数参数或权重的模型都不太可能适合普通人的短期记忆。我认为你无法想象具有5个特征的线性模型,因为它意味着需要想象在5维空间中绘制估计的超平面。任何超过3维的特征空间对于人类来说都是不可思议的。通常,当人们试图理解模型时,他们只考虑模型的一部分,例如线性模型中的权重。

2.3.3 模块化层面的全局模型可解释性

模型的某些部分如何影响预测?


具有数百种功能的朴素贝叶斯模型对我来说太大了,你可以留在我们的工作记忆中。即使我们设法记住所有权重,我们也无法快速预测新的数据点。此外,您需要对头部中的所有要素进行联合分布,以估计每个要素的重要性以及这些要素平均如何影响预测。一项不可能的任务但是你可以很容易地理解一个重量。虽然全局模型解释性通常是遥不可及的,但很有可能至少在模块化层面上理解某些模型。并非所有模型都可以在参数级别解释。对于线性模型,可解释的部分是权重,对于树,它将是分裂(选择的特征加截止点)和叶节点预测。例如,线性模型看起来好像可以在模块化水平上完美地解释,但单个重量的解释与所有其他权重互锁。单个重量的解释总是伴随着其他输入特征保持相同值的脚注,而许多实际应用并非如此。预测房屋价值的线性模型,考虑房屋的大小和房间的数量,可以对房间特征具有负权重。它可能发生,因为已经有高度相关的房屋大小功能。在人们喜欢较大房间的市场中,如果两个房间的大小相同,那么房间较少的房子可能比房间更多的房子更有价值。权重仅在模型中的其他特征的上下文中有意义。但是线性模型中的权重仍然可以比深度神经网络的权重更好地解释。

2.3.4 面向单个预测的局部可解释性

为什么模型会对实例做出某种预测?


您可以放大单个实例并检查模型为此输入预测的内容,并解释原因。如果你看一个单独的预测,那么复杂模型的行为可能表现得更好。从局部上看,预测可能仅对某些特征线性或单调地依赖,而不是对它们具有复杂的依赖性。 例如,房屋的价值可能非线性地取决于其大小。 但是,如果您只查看一个特定的100平方米的房屋,则有可能对于该数据子集,您的模型预测线性地取决于尺寸。 您可以通过模拟当您将尺寸增加或减小10平方米时预测价格如何变化来找到这一点。 因此,本地解释比全局解释更准确。 本书介绍的方法可以使单个预测在模型不可知方法部分更容易理解。

2.3.5 面向一组预测的局部可解释性

为什么要让模型单独对一组实例进行预测?


多个实例的模型预测可以使用全局模型解释方法(在模块级别上)或单个实例的解释来解释。 可以通过获取实例组,将它们视为组是完整数据集,并将全局方法与此子集一起使用来应用全局方法。可以在每个实例上使用各个解释方法,然后为整个组列出或聚合。

2.4 可解释性的评估

关于机器学习的可解释性没有真正的共识。也不清楚如何衡量它。但是,对此进行了一些初步研究,并尝试制定一些评估方法,如下一节所述。

Doshi-Velez和Kim(2017)提出了评估可解释性的三个主要层面:

应用程序级别评估(实际任务):将说明放入产品中并由最终用户进行测试。想象一下,骨折检测软件带有一个机器学习组件,用于定位和标记X射线中的骨折。在应用层面,放射科医师将直接测试骨折检测软件以评估模型。这需要良好的实验设置和对如何评估质量的理解。一个良好的基线是人类在解释同一决策时有多好。

人员评估(简单任务)是简化的应用程序级别评估。不同之处在于,这些实验不是与领域专家一起进行的,而是与外行人进行的。这使得实验更便宜(特别是如果领域专家是放射科医师)并且更容易找到更多的测试者。一个例子是向用户显示不同的解释,用户会选择最好的解释。

不需要人的功能级别评估(代理任务)。当所使用的模型的种类已经由其他人在人类评估中进行评估时,这种方法效果最佳。例如,可能知道最终用户理解决策树。在这种情况下,解释质量的代理可以是树的深度。较浅的深度将获得更好的可解释性分数。添加约束使树的预测性能保持良好并且与较深的树相比不会减少太多是有意义的。

下一章的重点是评估特征水平上个体预测的解释。我们在评估时会考虑哪些解释的相关属性?

2.5 解释的属性

我们想解释机器学习模型的预测。为了实现这一点,我们依赖于一些解释方法,这是一种生成解释的算法。解释通常以人类可理解的方式将实例的特征值与其模型预测相关联。其他类型的解释由一组数据实例组成(例如,在k-最近邻模型的情况下)。例如,我们可以使用支持向量机预测癌症风险,并使用局部代理方法解释预测,该方法生成决策树作为解释。或者我们可以使用线性回归模型而不是支持向量机。线性回归模型已经配备了解释方法(权重的解释)。

我们仔细研究解释方法和解释的属性(Robnik-Sikonja和Bohanec,2018[6])。这些属性可用于衡量解释的好坏。目前尚不清楚所有这些属性如何正确测量它们,因此其中一个挑战是形式化它们的计算方法。

解释方法的属性

  • 表达能力是该方法能够产生的解释的“语言”或结构。解释方法可以生成IF-THEN规则,决策树,加权和,自然语言或其他。
  • 半透明度描述了解释方法依赖于机器学习模型可观测的程度,例如其参数。例如,依赖于本质上可解释的模型(如线性回归模型(模型特定))的解释方法是高度半透明的。仅依赖于操纵输入和观察预测的方法具有零半透明性。根据具体情况,可能需要不同程度的半透明度。高半透明度的优点是该方法可以依赖更多信息来生成解释。半透明度低的优点是解释方法更便携。
  • 可移植性描述了可以使用解释方法的机器学习模型的范围。具有低半透明度的方法具有更高的可移植性,因为它们将机器学习模型视为黑盒子。替代模型可能是具有最高可移植性的解释方法。仅适用于例如递归神经网络具有低可移植性。
  • 算法复杂度描述了生成解释的方法的计算复杂性。当计算时间是生成解释的瓶颈时,此属性非常重要。


个体解释的属性

  • 准确性:解释预测看不见的数据有多好?如果将解释用于代替机器学习模型的预测,则高精度尤其重要。如果机器学习模型的准确性也很低,并且目标是解释黑匣子模型的作用,那么低精度就可以了。在这种情况下,只有保真度很重要。
  • 保真度:解释能在多大程度上近似出黑盒模型的预测?高保真度是解释中最重要的属性之一,因为低保真度的解释对解释机器学习模型毫无用处。准确性和保真度密切相关。如果黑盒模型具有高精度并且说明具有高保真度,则解释也具有高精度。一些解释仅提供局部保真度,这意味着解释仅与数据子集的模型预测(例如,局部替代模型)或甚至仅对于单个数据实例(例如,Shapley值)很好地近似。
  • 一致性:对于在同一任务中训练并产生相似预测的模型之间的解释有多大差异?例如,我在同一任务上训练支持向量机和线性回归模型,两者都产生非常相似的预测。我使用我选择的方法计算解释并分析解释的不同之处。如果解释非常相似,那么解释是非常一致的。我发现这个属性有点棘手,因为这两个模型可以使用不同的特征,但得到相似的预测(也称为“罗生门效应”)。在这种情况下,不期望高度一致性,因为两个解释的差异性必须非常大。如果模型确实依赖于相似的关系,则需要高度一致性。
  • 稳定性:相似实例的解释有多相似?虽然一致性比较模型之间的解释,但稳定性比较固定模型的类似实例之间的解释。高稳定性意味着实例特征的轻微变化基本上不会改变解释(除非这些轻微变化也强烈改变预测)。缺乏稳定性可能是解释方法的高度变化的结果。换句话说,解释方法受到要解释的实例的特征值的微小变化的强烈影响。缺乏稳定性也可能由解释方法的非确定性组件引起,例如数据采样步骤,如本地代理方法所使用的。始终需要高稳定性。
  • 可理解性:人们对解释的理解程度如何?这看起来就像许多房产中的一个,但它是房间里的大象。难以定义和衡量,但要做到正确非常重要。很多人都认为可理解性取决于受众。用于测量可理解性的想法包括测量解释的大小(线性模型中具有非零权重的特征的数量,决策规则的数量......)或测试人们如何从解释中预测机器学习模型的行为。 。还应考虑解释中使用的特征的可理解性。功能的复杂转换可能比原始功能更难以理解。
  • 确定性:解释是否反映了机器学习模型的确定性?许多机器学习模型仅提供预测,而没有关于预测正确的模型置信度的陈述。如果模型预测一名患者患癌症的概率为4%,那么具有不同特征值的另一名患者接受的概率是否为4%?包含模型确定性的解释非常有用。
  • 重要程度:解释如何反映特征或部分解释的重要性?例如,如果生成决策规则作为单个预测的解释,那么清楚规则中哪个条件最重要?
  • 新颖性:解释是否反映了要解释的数据实例是否来自远离训练数据分布的“新”区域?在这种情况下,模型可能不准确,并且解释可能是无用的。新颖性的概念与确定性概念有关。新颖性越高,模型由于缺乏数据而具有低确定性的可能性就越大。
  • 代表性:解释涵盖了多少个实例?解释可以覆盖整个模型(例如,线性回归模型中的权重的解释)或仅表示个体预测(例如,Shapley值)。

2.6 人性化的解释

让我们深入挖掘并发现我们人类所看到的“好”解释以及对可解释机器学习的含义。人文研究可以帮助我们找到答案。米勒(2017)对有关解释的出版物进行了大量调查,本章以他的总结为基础。


在本章中,我想让您相信以下内容:作为事件的解释,人们更喜欢简短的解释(只有1或2个原因),如将当前情况与事件不会发生的情况进行对比。特别是异常原因提供了很好的解释。解释是解释者和被解释者(解释的接受者)之间的社会交互,因此社会背景对解释的实际内容有很大影响。


当您需要针对特定​​预测或行为的所有因素进行解释时,您不需要人性化的解释,而是完整的因果归因。如果法律要求您指定所有影响功能或调试机器学习模型,则可能需要因果归因。在这种情况下,请忽略以下几点。在所有其他情况下,如果外行人或时间很少的人是解释的接收者,以下部分应该对您感兴趣。

2.6.1 什么是解释

解释是why-question的答案(Miller 2017)。

  • 为什么治疗不能对患者起作用?
  • 为什么我的贷款被拒绝了?
  • 为什么我们没有被外星生命联系过呢?

前两个问题可以用“日常”解释来回答,而第三个问题来自“更普遍的科学现象和哲学问题”。 我们专注于“日常”类型的解释,因为它们与可解释的机器学习相关。 以“如何”开头的问题通常可以改为“为什么”问题:“我的贷款如何被拒绝?”可以变成“为什么我的贷款被拒绝了?”。


在下文中,术语“解释”指的是解释的社会和认知过程,但也指这些过程的产物。 解释器可以是人或机器。

2.6.2 什么是好的解释

本节进一步浓缩了Miller关于“好”解释的总结,并为可解释的机器学习增加了具体含义。


解释是对比的(Lipton 1990[7])。人们通常不会问为什么会做出某种预测,而是为什么要做出这种预测而不是另一种预测。我们倾向于在反例的情况下思考,即“如果输入X不同,预测会怎样?”。对于房价预测,房主可能会对预测价格与他们预期的较低价格相比较高的原因感兴趣。如果我的贷款申请被拒绝,我不想听到所有通常支持或反对拒绝的因素。我对我的申请中需要更改以获得贷款的因素感兴趣。我想知道我的应用程序和我的应用程序的可接受版本之间的对比。认识到对比解释很重要是可解释机器学习的重要发现。从大多数可解释的模型中,您可以提取一个解释,该解释隐含地将实例的预测与人工数据实例的预测或实例的平均值进行对比。医生可能会问:“为什么这种药对我的病人无效?”并且他们可能想要一种解释,将患者与患者所服用的患者以及与无反应患者相似的患者进行对比。对比解释比完整解释更容易理解。医生问题为什么药物不起作用的完整解释可能包括:患者患有该疾病10年,11个基因过度表达,患者身体很快将药物分解成无效化学物质,......对比解释可能更简单:与响应患者相反,无反应的患者具有某些基因组合,使药物效果降低。最好的解释是突出感兴趣对象和参考对象之间最大差异的解释。

对于可解释的机器学习意味着什么:人们并没有希望对一个实例的预测做出完整的解释,而是想比较与另一个实例预测的差异(可能是一个人为的预测)。创建对比解释取决于应用程序,因为它需要一个参考点进行比较。这可能取决于要解释的数据点,也取决于接收解释的用户。房价预测网站的用户可能希望得到与他们自己的房子对比的房价预测的解释,或者可能对网站上的另一个房子或者可能对邻近的普通房屋进行对比。自动创建对比解释的解决方案还可能涉及在数据中查找prototypes(实物上的原型)或archetypes(观念上的原型)。


选择性解释。人们没有期望解释可以覆盖事件完整的一系列原因。我们习惯于从各种可能的原因中选择一个或两个原因作为解释。作为证据,打开电视新闻:“股票价格的下跌归咎于由于最新的软件更新问题而对公司产品的反弹越来越大。”

“由于防守薄弱,Tsubasa和他的球队输掉了比赛:他们给对手太多的空间来制定他们的策略。”

“对已建立的机构和政府越来越不信任是减少选民投票率的主要因素。”

可以通过各种原因解释事件的事实被称为罗生门效应。罗生门是一部日本电影,讲述了关于武士死亡的另类,矛盾的故事(解释)。对于机器学习模型,如果可以从不同的特征进行良好的预测是有利的。将具有不同特征(不同解释)的多个模型组合在一起的集合方法通常表现良好,因为对这些“故事”进行平均使得预测更加稳健和准确。但这也意味着有一个以上的选择性解释为什么做出某种预测。

对于可解释的机器学习意味着什么:使解释非常简短,即使环境再复杂,也只给出1到3个理由。LIME方法在这方面做得很好。


解释是具有社交性的。它们是解释器和解释器接收者之间的对话或交互的一部分。社会背景决定了解释的内容和性质。如果我想向技术人员解释为什么数字加密货币价值如此之高,我会说:“分散的,分布式的,基于区块链的分类账,不会由中央实体控制,与想要保证财富安全的人产生共鸣,这解释了高需求和价格。“但我的祖母会说:”看,奶奶:加密货币有点像电脑黄金。人们喜欢并为黄金付出了很多,年轻人喜欢并为计算机黄金付出了很多。“

对于可解释的机器学习意味着什么:关注机器学习应用程序和目标受众的社交环境。正确获取机器学习模型的社交部分完全取决于您的具体应用。寻找人文学科的专家(例如心理学家和社会学家)来帮助您。


解释集中在异常上。人们更关注异常原因来解释事件(Kahnemann和Tversky,1981[8])。这些原因概率很小,但却发生了。消除这些异常原因会大大改变结果(反例解释)。人们认为这些“异常”原因是很好的解释。 Štrumbelj和Kononenko(2011)[9]讲的一个例子是:假设我们有一个关于教师和学生之间测试情境的数据集。学生在成功发表演讲后直接上课并通过课程。教师可以选择另外询问学生的问题以测试他们的知识。无法回答这些问题的学生将无法完成课程。学生可以有不同的准备程度,这可以转化为正确回答教师问题的不同概率(如果他们决定测试学生)。我们想要预测学生是否会通过课程并解释我们的预测。如果老师不提出任何其他问题,通过的机会是100%,否则通过的概率取决于学生的准备程度以及由此产生的正确回答问题的概率。

情景1:教师通常会向学生询问其他问题(例如,100次中有95次)。没有学习的学生(有10%的机会回答出问题)不是幸运者之一,并且他未能正确回答老师给的问题。为什么学生不通过课程?我会说不学习是学生的错。

情景2:教师很少提出其他问题(例如,100次中有2次)。对于没有研究过问题的学生,我们会预测通过课程的可能性很高,因为提问题的概率很小。当然,其中一名学生没有为这些问题做准备(有10%的机会回答出问题)。他很不走运,老师问了一些学生无法回答的问题,他没有通过课程。失败的原因是什么?我认为现在,更好的解释是“因为老师测试了学生”。老师不太可能测试,所以老师表现得异常。

对于可解释的机器学习意味着什么:如果预测的输入特征之一在任何意义上都是异常的(如罕见的分类特征类别)并且该特征影响了预测,则应将其包括在解释中,即使其他“正常”特征对预测的影响与异常特征相同。我们的房价预测示例中的一个异常特征可能是一个相当昂贵的房子有两个阳台。即使一些归因方法发现两个阳台对价格差异的贡献与上述平均房屋面积,良好社区或最近的翻新一样多,但异常特征“两个阳台”可能是房子为何如此昂贵的最佳解释。


解释是真实的。在现实中(即在其他情况下),良好的解释证明是真实的。但令人不安的是,这不是“好”解释的最重要因素。例如,选择性似乎比真实性更重要。仅选择一个或两个可能原因的解释很少涵盖整个相关原因列表。选择性省略了部分事实。例如,只有一两个因素导致股市崩盘,这是不正确的,但事实是,有数百万的因素影响着数百万人采取行动,最终造成了崩溃。

对于可解释的机器学习意味着什么:解释应尽可能真实地预测事件,机器学习有时称为保真度。因此,如果我们说第二个阳台会增加房屋的价格,那么这也应该适用于其他房屋(或者至少应该适用于类似的房屋)。对于人类而言,解释的保真性并不像选择性,对比度和社会性那样重要。


良好的解释与解释的先验概率保持一致。人类倾向于忽略与先验概率不一致的信息。这种效应称为确认偏差(Nickerson 1998[10])。这种偏见不能解释说明。人们倾向于贬低或忽视不符合他们认知的解释。这组认知因人而异,但也存在基于群体的先验概率,例如政治世界观。

对可解释的机器学习意味着什么:好的解释与先验概率一致。这很难集成到机器学习中,并且可能会大大降低预测性能。我们之前认为房屋大小对预测价格的影响是房屋越大,价格越高。让我们假设一个模型也显示房屋大小对一些房屋的预测价格的负面影响。该模型已经了解了这一点,因为它改善了预测性能(由于一些复杂的相互作用),但这种行为与我们先前的信念强烈矛盾。您可以强制执行单调性约束(一个特征只能影响一个方向的预测)或使用类似具有此属性的线性模型。


好的解释是一般性的和可信的。可以解释许多事件的原因非常普遍,可以被认为是一个很好的解释。请注意,这与异常原因给出良好解释的说法相矛盾。在我看来,异常原因击败了一般原因。根据定义,异常原因在给定方案中很少见。在没有异常事件的情况下,一般性解释被认为是一个很好的解释。还要记住,人们往往会误判联合事件的可能性。(乔是一名图书馆员。他是否更有可能成为一个害羞的人或者是一个喜欢读书的害羞的人?)一个很好的例子是“房子很贵,因为它很大”,这是一个非常普遍的,好的解释为什么房子昂贵或便宜。

对于可解释的机器学习意味着什么:通用性可以通过功能支持轻松衡量,该支持是应用解释的实例数除以实例总数。

  1. Miller, Tim. “Explanation in artificial intelligence: Insights from the social sciences.” arXiv Preprint arXiv:1706.07269. (2017).
  2. Kim, Been, Rajiv Khanna, and Oluwasanmi O. Koyejo. “Examples are not enough, learn to criticize! Criticism for interpretability.” Advances in Neural Information Processing Systems (2016).
  3. Doshi-Velez, Finale, and Been Kim. “Towards a rigorous science of interpretable machine learning,” no. Ml: 1–13. arxiv.org/abs/1702.0860 ( 2017).
  4. Heider, Fritz, and Marianne Simmel. “An experimental study of apparent behavior.” The American Journal of Psychology 57 (2). JSTOR: 243–59. (1944).
  5. Lipton, Zachary C. “The mythos of model interpretability.” arXiv preprint arXiv:1606.03490, (2016).
  6. Robnik-Sikonja, Marko, and Marko Bohanec. “Perturbation-based explanations of prediction models.” Human and Machine Learning. Springer, Cham. 159-175. (2018).
  7. Lipton, Peter. “Contrastive explanation.” Royal Institute of Philosophy Supplements 27 (1990): 247-266.
  8. Kahneman, Daniel, and Amos Tversky. “The Simulation Heuristic.” Stanford Univ CA Dept of Psychology. (1981).
  9. Štrumbelj, Erik, and Igor Kononenko. “A general method for visualizing and explaining black-box regression models.” In International Conference on Adaptive and Natural Computing Algorithms, 21–30. Springer. (2011).
  10. Nickerson, Raymond S. “Confirmation Bias: A ubiquitous phenomenon in many guises.” Review of General Psychology 2 (2). Educational Publishing Foundation: 175. (1998).
编辑于 2019-04-13 16:47