Preparation
【機器學習 2021】機器學習模型的可解釋性 -Explainable ML- -上- – 為什麼類神經網路可以正確分辨寶可夢和數碼寶貝呢?
有时候机器得到正确的答案,并不代表它真正地理解了这个问题。
Why we need Explainable ML?
- Loan issuers are required by law to explain their models.
- 法律要求贷款发放者解释其模式。
- Medical diagnosis model is responsible for humanlife. Can it be a black box?
- 医学诊断模式对人类生活负责。它可以是一个黑盒子吗?
- If a model is used at the court, we must make surethe model behaves in a nondiscriminatory manner.
- 如果在法庭上使用一个模型,我们必须确保该模型以非歧视性的方式行事。
- If a self-driving car suddenly acts abnormally, weneed to explain why.
- 如果一辆自动驾驶汽车突然出现异常行为,我们需要解释原因。
我们可以基于模型的解释调整模型性能。
- 一些模型具有内在的可解释性。
- 比如线性模型
- 但是一般都不复杂。
- 深度学习网络难以解释。深度学习网络是一个黑盒,但是比线性模型更强大。
我们尝试让深度学习网络更具解释性。
决策树是一个强大且可解释的模型。
解释性学习的目标
- 完全知道 ML 模型的工作原理?
- 我们并不完全知道大脑是如何工作的!
- 但是我们相信人类的判断!
机器学习的可解释性分为两大类:
- Local Explanation
- 为什么你觉得这张图片是一只猫?
- Global Explanation
- 这只猫像什么?(不是指具体的图像)
Local Explanation:Explain the Decision
Image2Text 问题。究竟是猫的哪些部分被机器识别出来让机器认为这张图片是一张猫?
论文 [1311.2901] Visualizing and Understanding Convolutional Networks (arxiv.org) 使用一张灰色正方形遮盖图片,判断机器是否真正理解了图片内容。
使用 Saliency Map:[1312.6034] Deep Inside Convolutional Networks: Visualising Image Classification Models and Saliency Maps (arxiv.org) 让机器的关注点显现。
案例:让机器识别是宝可梦还是神奇宝贝。
1 |
|
写一个卷积神经网络,结果它的效果非常好!
绘制它们的 Saliency Map,发现机器的关注点都在背景上 orz
后来发现是两个数据集的背景颜色不同,导致机器学到了错误的知识。
给图片添加随机噪声,绘制它们的 Saliency Map 并求平均值。[1603.02518] A New Method to Visualize Deep Neural Networks (arxiv.org)
梯度未必能反应重要程度。
替代:[1611.02639] Gradients of Counterfactuals (arxiv.org)
- 网络是如何处理输入数据的?
- 把一个深度神经网络中间的几层拿出来看看长啥样。
在经过 8 层隐藏层之后,逐渐把不同人说的同一个句子聚集在一起。icassp12_dbn.pdf (toronto.edu)
论文 [1902.10186] Attention is not Explanation (arxiv.org) 认为 Attention 机制不能被解释。
论文 [1908.04626] Attention is not not Explanation (arxiv.org) 认为有些 Attention 机制能被解释。
在 BERT 模型中用一个 POS / NER 分类器,但是这个分类器不能太强,不然识别率会很低。
语音识别:把中间结果拿出来。[1911.01102] What does a network layer hear? Analyzing hidden representations of end-to-end ASR through speech synthesis (arxiv.org)
【機器學習 2021】機器學習模型的可解釋性 -Explainable ML- -下- –機器心中的貓長什麼樣子?
Global Explanation
在卷积神经网络中,filter 都提取了哪些特征?
直接把卷积神经网络中间的特征图拿出来()会发现难以理解,加上一些图像原来的特征()。
有了这些,我们就可以更好地调整超参数。[1506.06579] Understanding Neural Networks Through Deep Visualization (arxiv.org)
用一个简单的模型模拟深层神经网络生成的结果,然后这个简单的模型就容易被解释。