例如ML将一张图分类为猫,同时要回答:
- 为什么你认为这是一只猫? --- Local Explanation
你认为一只猫是怎样的? --- Global Expanation
1. Local Explanation
1.1. 方法一:
将Object x分解成Component (x1, x2, ..., xN)
移除一个compenent之后,对decision的影响越大,说明这个component越重要。
一个component可以是一个pixel、segment、方块、单词,或是自己定义的一个单位。
component的大小必须很小心地设计,太大或太小都得不到好的结果
1.2. 方法二:Saliency Map
对输入向量x的一个分量增加一个小小的扰动,得到:
x的一个分量通常是一个像素。
由于x的改变,y也会相应地改变:
计算,值越大,说明x的这个分量越重要。
缺点:Gradient Sturation
但在某个位置梯度小不代表它不重要。
1.3. 方法三:用一个model解释另一个model LIME
LIME = Local Interpretable Agnostic Explanations
basic Idea:
用一个有解释能力的model(例如Linear)去模仿另一个没有解释能力的model(例如NN)
但是,Linear Model不可能真的能模拟出NN,只能模拟出NN的一个local region
问:怎样fit with linear model?
答:提取图像的m个特征,定义linear model为:
问:怎么基于linear model解释?
与结果无关
对结果起积极作用
对结果起消极作用
2. Global Explanation
2.1. Activation Maximization
其中yi为期望的结果的confidence
这种方法还需要增加一些额外的限制,否则结果不好
2.2. Image Geneator
例如 GAN、VAE