[datawhale202210]李宏毅机器学习2021:机器学习模型的可解释性

结论速递

可解释性是不可缺少的,因为我们需要在借助机器学习模型做出决策时了解机器学习模型做出决策的原因。

模型原生的可解释性和模型本身的拟合能力之间存在着一定的矛盾,线性模型可解释性好,但拟合能力差,而神经网络则恰恰相反。兼具强可解释性和强拟合能力的决策树模型,在实际应用当中也会陷入可解释性变差的困境。我们所探讨的可解释性,是试图给黑箱的模型一个原因,来帮助决策。

模型的可解释性分为Local和Global的,一个探讨做出具体决策的原因,另一个探讨做出某一类决策的道理。

目录

    • 结论速递
  • 1 动机
    • 1.1 为什么需要可解释性
    • 1.2 可解释性VS模型能力
    • 1.3 可解释性机器学习的目标
  • 2 可解释性机器学习
    • 2.1 分类
    • 2.2 Local Explanation:解释决策原因
      • 2.2.1 问题描述
      • 2.2.2 saliency map

1 动机

1.1 为什么需要可解释性

可以解决数学问题的神马汉斯,可以在人群围观的情况下解决数学问题,但没有人围观时就无法解决数学问题。事实上,神马汉斯并没有解决数学问题的能力,只是能观察到周围人群微妙的情感变化。

[datawhale202210]李宏毅机器学习2021:机器学习模型的可解释性_第1张图片

为了避免机器学习模型也是像神马汉斯一样的伪智能模型,我们需要机器学习的可解释性。

而在真实的应用场景中,也非常需要可解释性。如

  • 法律场景,机器学习模型帮助法官判案,如何能知模型是否是公正的,模型应当在给出答案的同时给出给出答案的理由。
  • 医疗诊断场景,机器学习帮助进行诊断,人命关天之时,如果模型是黑箱的,则不可信。
  • 自动驾驶的车辆,也需要其决策的逻辑可解释,否则可能会造成不可预料的后果。

更进一步地,如果机器学习模型有可解释性,我们还可以用可解释性修正机器学习的结果。当然,目前离这一目标还有着很远的距离。

[datawhale202210]李宏毅机器学习2021:机器学习模型的可解释性_第2张图片

1.2 可解释性VS模型能力

  • 有很多模型本身具有比较强的可解释性。比如线性模型,从权重可以看出特征的关键程度。但这类模型并不具有很强的拟合能力。
  • 深度神经网络很难被解释,就像黑河,但确实拟合能力更强。

但,我们没有必要因为神经网络模型复杂,就扬弃它。

[datawhale202210]李宏毅机器学习2021:机器学习模型的可解释性_第3张图片

可以类比这个路灯下找钥匙的故事,我们不应该因为其他路面黑暗,就不去那边找,应该想办法扩大路灯照明的范围。也就是我们尝试让不可解释的模型变得可解释。

[datawhale202210]李宏毅机器学习2021:机器学习模型的可解释性_第4张图片

这里有一对名词常被混用,实际上二者有所不同。

explainable vs interpretable

  • explainable:常指使模型变得可解释;
  • interpretable:模型本身可解释。

容易想到,决策树可以是既可解释,同时又拟合能力有比较强的一类模型。

[datawhale202210]李宏毅机器学习2021:机器学习模型的可解释性_第5张图片
在这里插入图片描述

但事实上,决策树有可能很复杂。而且我们可能使用forest,模型中上百棵决策树一起考虑,可解释性也被削弱了。

[datawhale202210]李宏毅机器学习2021:机器学习模型的可解释性_第6张图片

所以,决策树,也并非是可解释性机器学习的最终答案。

1.3 可解释性机器学习的目标

李宏毅提供了他的个人观点:

  • 有些人认为可解释性是完全知道ML模型是如何工作的?

    • 李宏毅认为不是,因为我们事实上也并不知道人类的脑子是如何工作的,但我们依然相信人类的决策。
    • 有一个非常有名的实验:The Copy Machine Study
      你想先使用打印机,如果给出先使用打印机的原因(无论这个原因是什么),对方接受的概率大大提升。
      [datawhale202210]李宏毅机器学习2021:机器学习模型的可解释性_第7张图片
      所以人其实就是需要一个理由,无论这个理由是什么。
  • 李宏毅认为好的explanation就是让人觉得合理可以接受。
    [datawhale202210]李宏毅机器学习2021:机器学习模型的可解释性_第8张图片

2 可解释性机器学习

2.1 分类

可解释性机器学习又分为Local可解释性,以及Global的可解释性。

以识别猫的模型为例:

  • Local的可解释性,是指解释一个图片为什么被判断为猫;
  • Global的可解释性,是指解释什么类型的图片会被判断为猫,也就是,猫长什么样。

[datawhale202210]李宏毅机器学习2021:机器学习模型的可解释性_第9张图片

2.2 Local Explanation:解释决策原因

2.2.1 问题描述

将这个问题具体化,给定一张图片,机器判断它是猫的时候,到底是根据什么原因(图片的什么部位)判断它是猫呢,是根据猫的眼睛,猫的耳朵,还是猫的爪子?

[datawhale202210]李宏毅机器学习2021:机器学习模型的可解释性_第10张图片

通用描述的话,对一个对象,可以是图片,音频,文字或者其他,它由很多components组成。我们想要知道哪一个component贡献了这个结果。

判断的原则也很简单,就是去除或者调整component,看模型的输出有什么变化。如果某个component被修改或者去除后,模型的输出发生了巨大的变化,那就可以知道,这个component很重要。

[datawhale202210]李宏毅机器学习2021:机器学习模型的可解释性_第11张图片

在图像上可以更好地理解这个任务,我们在图片的不同区域放上灰色的遮盖。在分析输出结果的变化。

热图中,蓝色部分代表着,灰色遮盖移到那个位置时,模型输出不再正确,则这个位置是重要的位置。

对应三个例子,

  • 当灰色方框移动到博美犬的脸上时,模型不再能判断是博美犬,也就是说模型根据博美犬的脸来判断博美犬;
  • 当灰色方框移动到轮胎上时,模型不再能判断是轮胎,说明模型确实根据图中轮胎的位置来判断轮胎;
  • 当灰色方框移动到阿富汗猎犬位置时,模型不再能判断是阿富汗猎犬,说明模型确实根据图中阿富汗猎犬的位置来判断阿富汗猎犬。

[datawhale202210]李宏毅机器学习2021:机器学习模型的可解释性_第12张图片

2.2.2 saliency map

对于图中的每个pixel,如果我们给其中一个加上一个 δ x \delta x δx,而error的增加记为 δ e \delta e δe的话,我们就可以获得整张图的 ∣ δ e δ x n ∣ \lvert \frac {\delta e}{\delta x_n} \rvert δxnδe,绘制成saliency map。

在saliency map上,如果这个地方越亮,代表值越大,则代表这个地方越重要。

[datawhale202210]李宏毅机器学习2021:机器学习模型的可解释性_第13张图片

saliency map的具体应用:

训练一个宝可梦和数码宝贝的分类器,这是一个二元分类的问题。

[datawhale202210]李宏毅机器学习2021:机器学习模型的可解释性_第14张图片

我们尝试让机器在没有见过的测试集判断宝可梦和数码宝贝。实际上,人类也很难判断,比如可以看看下面这两张图,能够判断出哪只是宝可梦,哪只是数码宝贝吗。

[datawhale202210]李宏毅机器学习2021:机器学习模型的可解释性_第15张图片

而,机器竟然能在没有见过的图片上,达到98.4%的准确率!这非常令人惊讶。

[datawhale202210]李宏毅机器学习2021:机器学习模型的可解释性_第16张图片

所以,我们想通过绘制saliency map,来看看机器到底是如何完成分类的。

先来看看数码宝贝,发现亮点都聚集在四个角落,不在数码宝贝身上。

[datawhale202210]李宏毅机器学习2021:机器学习模型的可解释性_第17张图片

再来看看宝可梦,宝可梦的更加明显,也是聚集在四周,不在宝可梦身上。

[datawhale202210]李宏毅机器学习2021:机器学习模型的可解释性_第18张图片

最后发现,是因为宝可梦都是png格式的,数码宝贝都是jpeg格式的,而png格式的读取后四周都是黑的…所以机器只需要根据四周的颜色就能进行判断。

[datawhale202210]李宏毅机器学习2021:机器学习模型的可解释性_第19张图片

这个例子告诉我们,可解释性ai是很重要的。

上述例子可能很荒谬,但是,在真实数据集中也是可能发生的。比如这个PASCAL VOC 2007的数据集,判断马靠的并不是马,而是左下角这个地方。这是因为图库里面马的照片都是有这串英文水印的,机器其实是通过识别这串水印来识别马的。

[datawhale202210]李宏毅机器学习2021:机器学习模型的可解释性_第20张图片

你可能感兴趣的:(笔记,学习,机器学习,人工智能,算法)