
文章目录
- [1、Global Explanation:explain the whole model](#1、Global Explanation:explain the whole model)
- [2、局部解释(Local Explanation) vs 全局解释(Global Explanation)](#2、局部解释(Local Explanation) vs 全局解释(Global Explanation))
- 3、参考
1、Global Explanation:explain the whole model
之前讲的是 local explanation,给一张图片,为什么机器觉得里面是一只猫
【AI】《Explainable Machine Learning》(1)
这篇文章讲 global explanation
global explanation 不是针对特定一张图片进行分析,而是心里想象的猫到底长什么样子
输入 Image X,如果 filter 1 上面有很多 large values,也即比较多的相应,说明 image X contain the partterns filter 1 can detect
这是 local explanation,如果不知道输入 X 呢?
下面是 global explanation,采用的是 gradient ascent,最大化 filter 1 的相应,求出对应的 X
让某个类别的分数越高越好
在没有生成器约束时,最原始的方法是:寻找一张图片 X X X,使得该神经元的激活值最大化(Maximizing Activation)。
- 数学公式: X ∗ = arg max X y i X^* = \arg \max_X y_i X∗=argmaxXyi
- 结果: 这通常会导致模型生成一堆人类看不懂的噪声和彩斑。
- 为什么? 因为在不受约束的像素空间里,让神经元激活最强烈的,往往是一些能产生超大梯度但对人类无意义的纹理。这并没有解决可解释性的核心问题 ------ "让人类看懂"。
gradient ascent 基础上,加入约束,eg:让白色的点更少(数字占比整图的像素是比较少的)
with several regularization terms,and hyperparameter tuning ...
才能达到肉眼友好型的可视化结果
引入生成器约束
为了让生成的图片符合人类视觉习惯,我们需要一个限制。这就是 Image Generator(生成器,如 GAN, VAE) 的用武之地。
第一阶段:预训练生成器
- 使用海量的自然图片(猫、狗、老虎等)预训练一个生成器。它学到了从一个低维向量 z z z 生成高质量、自然图片的能力( X = G ( z ) X = G(z) X=G(z))。
- 意义: 这意味着它知道一张自然的图片大概长什么样(有边缘、有光照、有材质)。
第二阶段:对潜在空间进行优化
- 我们不再直接优化像素 X X X,而是优化生成器的输入 z z z。
- 数学公式: z ∗ = arg max z y i z^* = \arg \max_z y_i z∗=argmaxzyi
- 新的处理流: 寻找最佳的向量 z ∗ z^* z∗ → \rightarrow → 送入生成器 G G G → \rightarrow → 生成高质量的图片 X ∗ = G ( z ∗ ) X^* = G(z^*) X∗=G(z∗) → \rightarrow → 送入我们想要分析的 Classifier(分类器) → \rightarrow → 获得最高激活值 y i y_i yi。
最后得到的 z ∗ z^* z∗ 再经过 Image Generator G G G 后,得到 global explanation 的 X ∗ X^* X∗
结果展示,eg 蚂蚁、火山
我们其实没有那么在乎机器真正想的是什么(eg 生成的相应最高的图片都是杂讯),我们希望有些方法解读出来的东西,人看起来觉得很开心,然后就说机器想的可能就是这个样子的
用白盒模仿黑盒 (Mimicking)
using an interpretable model to mimic the behavior of an uninterpretable model
黑盒子做到的事情,linear model 不一定能做到,可以只模仿一小部分(一小个区域)的行为
代理模型(LIME)的思路: "我知道这里有个几何结构,但我不想弄明白它。我只想知道,在这一块局部的几何区域里,如果我们改变一个特征,最后的预测结果会怎么变。通过这种局部的'扰动'来归纳规律。"
2、局部解释(Local Explanation) vs 全局解释(Global Explanation)
在可解释性 AI(XAI)领域,局部解释(Local Explanation) 和全局解释(Global Explanation) 是两个最核心的维度。简单来说,它们分别是"看局部细节"和"看宏观逻辑"的区别。
(1)局部解释 (Local Explanation)
核心问题: "为什么模型对这个特定的样本给出了这样的预测?"
- 定义: 专注于单个输入实例。它试图说明模型在处理某一个具体案例时,哪些特征起到了决定性作用。
- 在视觉/CNN 中的体现:
- Grad-CAM / 热力图: 针对这张"猫"的照片,模型是因为看到了耳朵还是胡须才判定它是猫?
- LIME / SHAP: 通过微调该样本的特征(如遮住图片的一部分),观察预测结果的变化。
- 应用场景:
- 纠错: 为什么机器人把这个具体的线圈认成了障碍物?(可能是因为这根电线反光严重)。
- 医疗/法律: 为什么这个特定的病人的 X 光片被判定为肺炎?
why do you think this image is a cat?
(2)全局解释 (Global Explanation)
核心问题: "整个模型整体上是如何工作的?它学习到的一般性规律是什么?"
- 定义: 试图描述模型的完整逻辑、内部结构和普遍规律,而不针对具体样本。
- 在视觉/CNN 中的体现:
- 特征可视化(Feature Visualization): 第 5 层卷积核通常在寻找什么样的纹理?(比如它们整体上都在找圆形轮廓)。
- Probing(探测): 模型是否在中间层普遍学到了"词性"或"物体几何关系"?。
- 应用场景:
- 模型验证: 确认模型是否通过"作弊"学习(比如是否只要背景是绿色就预测是树)。
- 知识发现: 通过观察模型,人类是否能学到新的规律?
what does a "cat" look like?(not referred to a specific image)
(3)区别与联系
核心区别对照表
| 维度 | 局部解释 (Local) | 全局解释 (Global) |
|---|---|---|
| 视角 | 显微镜(Microscopic) | 望远镜(Macroscopic) |
| 对象 | 单个样本、单次决策 | 整个模型、所有参数、普遍规律 |
| 计算量 | 相对较小(只算一次 Inference) | 非常大(通常需要遍历大量数据或分析参数) |
| 忠实度 | 对单次决策非常忠实 | 容易过度简化(很难用一句话说清亿级参数的逻辑) |
它们之间的联系
- 个体与总体的关系: 局部解释是全局逻辑在某个点上的投影。如果你做了足够多的局部解释(如对 1 万张图片做热力图),你就能归纳出全局解释(模型普遍更看重物体的边缘)。
- 互补性: 在算法工程中通常需要双管齐下。
- 通过全局解释确保模型没有系统性偏差。
- 通过局部解释解决长尾问题(Edge Cases)。











