【例会】“Why Should I Trust You?” Explaining the Predictions of Any Classifier

主持人:李雨龙

参会老师:杨矫云

参会学生:赵春阳、程坤、刘硕、丁会通、韩朋、肖勇博、贵芳、郭思伊、殷越

时间:201911月27

本次例会学习讨论了文章:“Why Should I Trust You?” Explaining the Predictions of Any Classifier

一、背景

机器学习现在已经被各行各业广泛利用了,而且现在的机器学习模型的识别率也越来越高,但是这只能是说机器学习作为一个工具来说越来越成熟。有一个问题我们不能通过仅仅提高机器学习模型的成功率就能解决掉。那就是“信任”问题,如果一个用户不信任一个预测结果或者模型,那么这个用户就不会去使用它。这个“信任”分成两种:一种是信任一个预测结果,一个用户是否愿意相信某一个特定的预测结果,并且根据这个结果采取一些行动。另一种是信任一个模型,一个用户是否愿意相信根据这个模型给出的预测结果。这两种情况都要求人类能够理解模型内部的行为,即能够看到黑箱模型的里面。

当一个模型用于决策时,信任预测是一个非常重要的问题。例如,当机器学习用于医学诊断或恐怖分子检测时,预测不能以盲目的信仰为依据,因为这可能引发非常严重的后果。

 

所以这篇文章的工作集中在以下三个方面:

  • 介绍一种LIME(LOCAL INTERPRETABLE MODEL-AGNOSTIC EXPLANATIONS)方法,一种可解释算法,可以用一个可解释的模型在局部近似的条件下解释任何分类或回归的预测结果。
  • 介绍一种SP-LIME方法,这是一种抽样方法,通过子模块优化,选择一组具有解释的代表性实例以解决“信任模型”问题。
  • 通过模拟和实际人员测试进行综合评价,来测量解释对信任和相关任务的影响。文章还展示了如何理解神经网络对图像的预测,这有助于用户知道何时以及为什么他们不应该信任一个模型。

二、为什么需要解释预测:

如果提供了可理解的解释,医生就可以更好地在模型的帮助下做出决定。

提供解释可以增加对电影推荐和其他自动化系统的接受程度。

人类通常拥有关于模型应用领域的先验知识,如果他们理解模型背后的推理,他们可以用这个解释来接受(信任)或拒绝预测。

不光是对单独的预测结果,每个机器学习应用程序还需要对模型中总体的信任有某种度量。

有一种替代方法来评估整个模型那就是查看模型产生的实例,因此,文章提出解释几个具有代表性的模型的单个预测结果,作为理解模型全局的一种方法。

三、对解释器的要求:

身为一个解释器,文中要求至少满足以下特征:

  • 可解释性(Interpretable)
  • 局部忠诚(Local Fidelity)
  • 与模型无关(Model-Agnostic)
  • 全局视角(Global Perspective)

可解释性:包含两个部分,分别为模型和特征。我们以模型为例,像决策树或是线性回归都是很适合拿来解释的模型,前提是特征也要容易解释才行。所以利用可解释的模型配上可解释的特征,才是真正的可解释性。否则像是词嵌入(Word Embedding)的方式,即使是简单的线性回归也无法做到可解释性。而且解释性还要取决于目标群体,比如如何向不了解的机器学习的门外汉去解释这些模型。

局部忠诚:既然我们已经使用了可解释的模型与特征,就不可能期望简单的可解释模型在效果上等同于复杂模型(比如原始CNN分类器)。所以解释器不需要在全局上达到复杂模型的效果,但至少在局部上效果要很接近,而此处的局部代表我们想观察的那个样本的周围。

与模型无关:这里所指的是与复杂模型无关,换句话说无论多复杂的模型,像是SVM或神经网络,该解释器都可以工作。

全局视角:准确度有时并不是一个很好的指标,所以我们才需要去解释模型。解释器的工作在于提供对样本的解释,来帮助人们对模型产生信任。

四、LIME

1.首先要有一个已经训练好的分类器(复杂模型)

2.选定一个要解释的样本x,以及在可解释维度上的x’

3.定义一个相似度计算方式,以及要选取用来解释的K个特征

4.进行N次perturb扰动

5.zi’:从x‘扰动而来(可解释的扰动)

6.将z’还原到d维度,并计算预测值f(z)以及相似度

7.收集到N次扰动后的样本后,利用套索回归(Lasso regression)取得对这个样本有影响力的可解释的特征的系数

捕获

下面两张图是LIME的两组使用样例,分别对应文本分类和图像分类32

 

五、SP-LIME

尽管,对单一预测结果的解释可以让用户对分类器的可靠性有些理解,但想要达到对整个模型的评估和信任是不够的,于是本文提出了Submodular pick的思路(SP)来对模型进行解释,下面通过图5和算法2来进行介绍。

4

由于用户没有时间来检查大量的解释,我们使用budget B代表人类的耐心,也就是为了理解一个模型而愿意看到的解释的数量,图5就是给定了一组实例X,定义了选取B实例的流程。

这张图举了一个5实例5个特征的例子,行代表文档也就是实例,列代表特征也就是单词。我们可以看到蓝框的f2特征得到了最高的重要性,与之相比f3,4只覆盖了两个实例。然后我们想选择最少的实例来覆盖较高的重要性的特征,比如f2的有最高的重要性我们选择了第二行实例,但第三行实例没有增加新的值,第四行出现了一个重复的值,因此选择第五行实例。

六、实验

1、第一个实验针对的问题是:解释器是否忠于模型?

实验中,对于任何实例 其特征的最大数目为10,也就是10个最重要的特征,然后计算不同方法中这些重要特征的吻合程度。

5

2、第二个实验针对的问题是:我们是够该相信这个预测?

实验让用户选择了一些不值得信任的特征(前提是用户可以识别的不信任的特征),通过对测试集生成的预测结果贴了一个“不值得信任”的标签,看是否这些不信任的特征被移除后预测结果发生了变化。

6

关于不值得信任的结果,文章认为当解释中所有的不信任特征都被移除后,预测的线性逼近发生了变化,我们就认为用户得到了不值得信任的结果

 

3、第三个实验针对的问题是:我们能够相信这个模型?

7

这是用户面对两个精度差不多的模型,如何进行取舍的问题。试验中作者添加了10个人工的噪声特征,如果我们计算出的重要特征中出现了我们加入的噪声特征,就认为这个解释器不值得信任。

第二部分实验主要对LIME和SP-LIME在以下方面进行评估:

1、第一个实验针对的问题是:用户能够选择出最好的分类器吗?

让用户通过lime产生的解释来选出最好的算法,用的是前面提到的“基督教”和“无神论”文档,用户可以通过解释,选择更能被理解和接受的机器学习模型。

 

 9

2、第二个实验是针对的问题是:那些没有先验知识的人是否能够改进一个分类器?

用的也是前面提到的“基督教”和“无神论”文档。

文中做了一个有关特征选择的实验,通过得到的解释来对那些他们认为不重要的特征进行删除,实验结果可以发现通过SP选取样本的方法,更可以让没有先验知识的人们来帮助提高分类器的预测能力。

8

 

3、第三个实验是针对问题:解释器能够指出模型的insights吗?

当我们样本中狼都是在白雪背景中,哈士奇并没有雪地背景。这样的话我们扔给模型一个没有白雪背景的狼图片很可能识别成哈士奇,相反给一张哈士奇站在雪地里的图片很可能识别成狼。

10

anyShare分享到:
This entry was posted in 例会. Bookmark the permalink.

发表评论