李宏毅机器学习课程笔记-11.4模型无关的局部解释(LIME)
模型无关的局部解释(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):@绝版臭咸鱼
微信公众号:@臭咸鱼
转载请注明出处,欢迎讨论和交流!