论文阅读LIME概要及代码案例
Posted IMPORT_UTIL
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了论文阅读LIME概要及代码案例相关的知识,希望对你有一定的参考价值。
论文概要
LIME
LIME (Local Interpretable Model-agnostic Explanations):一种新颖的解释技术,通过在预测周围局部学习一个可解释模型,以一种可解释的和可信赖的方法来解释任何分类器的预测。主要贡献总结如下:
- LIME:一种通过用可解释性模型对预测进行局部近似,以一种可信赖的方式对于任何分类器或回归器预测进行解释的算法。
- SP-LIME:该方法通过子模块优化,选择一组具有解释的代表性实例来解决“模型信任”问题。
Algorithmic process analysis
假设建立一个大眼仔与树蛙的分类器
f
(
x
)
f(x)
f(x),若想直接解释这个模型为什么这样分类是非常困难的。
LIME提供了一个局部解释的思路:选取一个被解释实例(下图中星星-玩具树蛙),并用简单的线性回归模型来拟合决策边界,从而解释模型
f
(
x
)
f(x)
f(x)在这条边界上是如何做决策的。
LIME算法过程
Step1:将数据分割成小区块,随机扰动被解释实例的小区块产生新样本,喂入模型 f ( x ) f(x) f(x)预测结果。
将玩具树蛙的图片喂入模型
f
(
x
)
f(x)
f(x)预测出为树蛙的概率为
0.54
0.54
0.54。为了了解该模型所做的决策,将此图片根据 超像素分割算法 切分成
M
M
M个
Super Pixel
(
S
P
1
,
S
P
2
,
…
,
S
P
M
)
\\textSuper Pixel (SP_1, SP_2, \\dots, SP_M)
Super Pixel (SP1,SP2,…,SPM)。
注:
x
i
′
=
S
P
i
x'_i=SP_i
xi′=SPi,每个
Super Pixel
\\textSuper Pixel
Super Pixel均有两个取值:0表示该块超像素被灰色覆盖;1表示该块超像素为原图块(刚划分好时,每个
x
i
′
=
1
x'_i=1
xi′=1,表示每个超像素块均为原始图块)。
z
′
z'
z′随机扰动
x
′
x'
x′,使
Super Pixel
\\textSuper Pixel
Super Pixel的值随机指派为0或1。
根据上述可知,共有
M
M
M个
x
i
′
x'_i
xi′,而通过扰动,每个
z
i
′
z'_i
zi′具有两种取值。通过将
M
M
M个
z
i
′
z'_i
zi′随机指派为0或1,可以得到新的扰动样本
z
z
z,从而可到新的扰动数据集
Z
\\mathcalZ
Z。(具体理解见代码案例)
将扰动数据集
Z
\\mathcalZ
Z喂入分类模型
f
(
⋅
)
f(\\sdot)
f(⋅)中,就能得出结果
y
y
y(这里
y
y
y表示是树蛙的概率),从而了解到新数据集在分类模型的分布状况。
Step2:根据样本相似度(例如特征距离)给予样本权重。
利用核函数(kernel function)来计算新扰动样本
z
z
z与被解释实例
x
x
x的相似程度,与被解释实例越相似(越近)给与较大的权重,越不相似(越远)则给予较小的权重。
Step3:根据扰动样本训练一个简单的线性回归模型 g ( z ′ ) g(z') g(z′),并根据模型的系数解释实例。
如下图,可以理解模型会将玩具树蛙的照片判断为树蛙的原因,主要是因为玩具树蛙的头部特征。
**注:**对于结构性数据也是以上三个步骤,进行数据扰动(扰动的方式则是随机选择特征进行扰动) → \\rightarrow →定义相似度 → \\rightarrow →训练简单可解释的模型。
Local Interpretable Model-agnostic Explanations
LIME的总体目标是在局部可信赖的分类器的可解释性表示上学习一个可解释性模型。
x
∈
R
d
x\\in\\mathbbR^d
x∈Rd:一个被解释实例的原始表示
x
′
∈
0
,
1
d
′
x'\\in\\0,1\\^d'
x′∈0,1d′:一个用于可解释性表示的二进制向量
- 对于图片而言,假设原始图片为 x x x,将 x x x划分为 m m m个超像素图块 x ′ x' x′
- 对于文字而言, x ′ x' x′指词袋(类似于one-hot)
g g g:可解释性模型(线性模型、决策树等其中一种)
- 这使得解释可以很容易地以视觉或文本形式呈现给用户
- 定义域: 0 , 1 d ′ \\0,1\\^d' 0,1d′
G
G
G:表示一类潜在的可解释性模型,如线性模型、决策树或下降规则列表
Ω
(
g
)
\\Omega (g)
Ω(g):作为可解释性模型
g
∈
G
g\\in G
g∈G复杂性的度量
- 决策树: Ω ( g ) \\Omega (g) Ω(g)表示树深
- 线性模型: Ω ( g ) \\Omega (g) Ω(g)表示非零权重的数量
f
:
R
d
→
R
f:\\mathbbR^d \\rightarrow \\mathbbR
f:Rd→R:被解释模型
f
(
x
)
f(x)
f(x):在分类任务中,其表示
x
x
x属于一个确定类别的概率
π
x
(
z
)
\\pi_x(z)
πx(z):作为实例
z
z
z到
x
x
x之间的邻近度度量,以定义
x
x
x 周围的局部性
L
(
f
,
g
,
π
x
)
\\mathcalL(f, g, \\pi_x)
L(f,g,πx):度量
g
g
g在由
π
x
\\pi_x
πx定义的位置上逼近
f
f
f时的不可信程度
为了确保可解释性和局部保真度,需要在
Ω
(
g
)
\\Omega (g)
Ω(g)足够低以至于人类可以解释的情况下,最小化
L
(
f
,
g
,
π
x
)
\\mathcalL(f, g, \\pi_x)
L(f,g,πx)。
ξ
(
x
)
=
argmin
g
∈
G
L
(
f
,
g
,
π
x
)
+
Ω
(
g
)
(
1
)
\\xi(x)=\\undersetg \\in G\\operatornameargmin \\mathcalL\\left(f, g, \\pi_x\\right)+\\Omega(g)\\quad (1)
ξ(x)=g∈GargminL(f,g,πx)+Ω(g)(1)
该公式可用于不同的解释族
G
G
G、保真度函数
L
\\mathcalL
L和复杂性度量
Ω
\\Omega
Ω。
Sampling for Local Exploration
为了实现模型不可知性,本文在对 f f f不做任何假设的前提下,最小化邻近原则损失 L ( f , g , π x ) \\mathcalL(f, g, \\pi_x) L(f,g,πx)。因此,为了学习 f f f在可解释输入变化时的局部行为,本文通过抽取样本来近似 L ( f , g , π x ) \\mathcalL(f, g, \\pi_x) L(f,g,πx),并用 π x \\pi_x πx进行加权。本文通过在随机处均匀地绘制 x ′ x' x′的非零元素来采样 x ′ x' x′周围的实例。给定一个扰动样本 z ′ ∈ 0 , 1 d ′ z'\\in\\0,1\\^d' 独家 | 在R中使用LIME解释机器学习模型
低光照论文LIME:Low-light Image Enhancement via Illumination Map Estimation的代码
低光照论文LIME:Low-light Image Enhancement via Illumination Map Estimation的代码
Android应用开发编译框架流程与IDE及Gradle概要
论文阅读之Discrete Opinion Tree Induction for Aspect-based Sentiment Analysis