模型无关的局部解释(Local Interpretable Model-Agnostic Explanations,LIME)指使用一个Interpretable Model拟合一个Uninterpretable Model的局部,比如使用Linear Model或者Decision Tree模拟Neural Network。
具体来讲,对于局部范围内的相同输入,我们希望两个模型的输出尽可能接近。这里要重点强调局部范围的概念,因为实际上Linear Model并不能模拟整个Neural Network但却可以模拟其中的一个Local Region,这也是LIME可行的原因。
案例:使用Linear Model拟合Neural Network
定位:确定需要解释的data point(下图5个蓝点中最中间的蓝点)
取样:在上一步确定的data point周围sample获得更多的data point(下图5个蓝点)
sample的范围需要根据情况调整,一般范围小则拟合得更准确
sample的方法不同,结果也会不同
拟合:使用Linear Model模拟上一步确定的data point及其对应的Neural Network输出
解释:对Linear Model进行解释,进而解释Neural Network的局部
案例:LIME For Image Classification
如何将LIME应用到Image Classification呢?假设有一张图片被分类为frog,下面只讲一些关键点。
如何进行sample?
首先可以将图片分成多个segment:$\{s_1,s_2,\dots,s_n\}$,随机去除其中的一些segment就可以得到该图片“周围”的一些图片
将LIME应用于图片时,一般要进行Feature Extraction,那如何做呢?
使用$x_i$表示图片中的每个segment是否被删除,其中$i=1,…,n$,若$x_i$为1则表示该segment被删除,否则表示该segment未被删除
如何解释Linear Model?
设Linear Model为$y=w_1x_1+..+w_nx_n$,$w_i$的值有以下3种情况
- $w_i\approx 0$表示$s_i$对分类为frog没有影响;
- $w_i> 0$表示$s_i$对分类为frog具有正面影响,即这个segment使得模型倾向于将图片分类为frog
- $w_i<0$表示$s_i$对分类为frog具有负面影响,即这个segment使得模型倾向于认为该图片不是frog类别
Tree Regularization
理论上可以用无深度限制的Decision Tree拟合完整的Neural Network,但Decision Tree的深度不可能没有限制,因此在使用Decision Tree拟合Neural Network时需要对Decision Tree的复杂度进行约束。
设Neural Network的参数为$\theta$、Decision Tree的参数为$T_\theta$,使用Decision Tree的平均深度表示其参数$T_\theta$的复杂度$O(T_\theta)$。在使用Decision Tree拟合Neural Network时,不仅要使两者输出相近还要使$O(T_\theta)$最小化,因此优化目标为$\theta^*=arg\ {\rm min}\ L(\theta) + \lambda O(T_\theta)$。
因此我们在训练神经网络时就可以使用Tree Regularization使得训练出的神经网络更具有可解释性,$O(T_\theta)$不能微分,解决方法详见《Beyond Sparsity: Tree Regularization of Deep Models for Interpretability》。
Github(github.com):@chouxianyu
Github Pages(github.io):@臭咸鱼
知乎(zhihu.com):@臭咸鱼
博客园(cnblogs.com):@臭咸鱼
B站(bilibili.com):@绝版臭咸鱼
微信公众号:@臭咸鱼
转载请注明出处,欢迎讨论和交流!