文章目录
张拳石组可解释性论文思想汇总
1. Interpreting multivariate interactions in DNNs(2021 AAAI)
解决的问题:
- 衡量特征组合之间的显著性交互来解释DNN的预测
- NLP领域内shapely value计算的难度比较大
方法和创新:
- 定义和量化了DNN中多个输入变量之间的交互作用,能够同时反映变量间的正交互和负交互
- 通过对于交互组合的计算可以提取原型特征,从而能够从博弈交互的视角来解释DNN
- 通过采样方式对shapely value的值进行逼近运算
- 首先是对于shapely value的定义,可以将神经网络的预测看做一个多个玩家(特征)的游戏(预测),每个玩家对于游戏结果的边际贡献可以根据公式进行计算
ϕ v ( i ∣ N ) = ∑ S ⊆ N \ { i } ( n − ∣ S ∣ − 1 ) ! ∣ S ∣ ! n ! [ v ( S ∪ { i } ) − v ( S ) ] \phi _ { v } ( i | N ) = \sum _ { S \subseteq N \backslash \{ i \} } \frac { ( n - | S | - 1 ) ! | S | ! } { n ! } [ v ( S \cup \{ i \} ) - v ( S ) ] ϕv(i∣N)=S⊆N\{i}∑n!(n−∣S∣−1)!∣S∣![v(S∪{i})−v(S)]
- 两个玩家间的交互(将{i,j}组合看做一个玩家)
B ( S i j ) = ϕ ( S i j ∣ N ′ ) − [ ϕ ( i ∣ N i ) + ϕ ( j ∣ N j ) ] B ( S _ { i j } ) = \phi ( S _ { i j } | N ^ { \prime } ) - [ \phi ( i | N _ { i } ) + \phi ( j | N _ { j } ) ] B(Sij)=ϕ(Sij∣N′)−[ϕ(i∣Ni)+ϕ(j∣Nj)]
- 同理推广到多个玩家间的交互:
B
(
[
A
]
)
=
ϕ
(
[
A
]
∣
N
[
A
]
)
−
∑
i
∈
A
ϕ
(
i
∣
N
i
)
B ( [ A ] ) = \phi ( [ A ] | N _ { [ A ] } ) - \sum _ { i \in A } \phi ( i | N _ { i } )
B([A])=ϕ([A]∣N[A])−i∈A∑ϕ(i∣Ni)
但是这里的问题在于A这个子集的shapely value是所有A中元素组合交互的结果,这样计算不能反应A中的正交互和负交互,所以这里假设A被划分为了更多小联盟的集合
Ω
=
{
C
1
,
C
2
,
⋯
,
C
k
}
\Omega = \{ C _ { 1 } , C _ { 2 } , \cdots , C _ { k } \}
Ω={C1,C2,⋯,Ck},这样的话上式可以被写成
B max ( [ A ] ) = max Ω ∑ C ∈ Ω ϕ ( C ∣ N C ) − ∑ i ∈ A ϕ ( i ∣ N i ) ( 量 化 正 交 互 影 响 ) B min ( [ A ] ) = min Ω ∑ C ∈ Ω ϕ ( C ∣ N C ) − ∑ i ∈ A ϕ ( i ∣ N i ) ( 量 化 负 交 互 影 响 ) B _ { \max } ( [ A ] ) = \max _ { \Omega } \sum _ { C \in \Omega } \phi ( C | N _ { C } ) - \sum _ { i \in A } \phi ( i | N _ { i } )(量化正交互影响)\\ B _ { \min } ( [ A ] ) = \min _ { \Omega } \sum _ { C \in \Omega } \phi ( C | N _ { C } ) - \sum _ { i \in A } \phi ( i | N _ { i } )(量化负交互影响) Bmax([A])=ΩmaxC∈Ω∑ϕ(C∣NC)−i∈A∑ϕ(i∣Ni)(量化正交互影响)Bmin([A])=ΩminC∈Ω∑ϕ(C∣NC)−i∈A∑ϕ(i∣Ni)(量化负交互影响)
**指标T([A])**同时量化正交互和负交互
T
(
[
A
]
)
=
B
max
(
[
A
]
)
−
B
min
(
[
A
]
)
=
max
Ω
∑
C
∈
Ω
ϕ
(
C
∣
N
C
)
−
min
Ω
∑
C
∈
Ω
ϕ
(
C
∣
N
C
)
T ( [ A ] ) = B _ { \max } ( [ A ] ) - B _ { \min } ( [ A ] )=\max _ { \Omega } \sum _ { C \in \Omega } \phi ( C | N _ { C } ) - \min _ { \Omega } \sum _ { C \in \Omega } \phi ( C | N _ { C } )
T([A])=Bmax([A])−Bmin([A])=ΩmaxC∈Ω∑ϕ(C∣NC)−ΩminC∈Ω∑ϕ(C∣NC)
这里关于 ϕ ( C ∣ N C ) \phi ( C | N _ { C } ) ϕ(C∣NC)的计算可以用采样的方式进行近似(Polynomial calculation of the Shapley value based on sampling 2009)
然后对于C的划分也采用采样近似方法,因为是NLP,所以作者提出用 p = { p 1 , p 2 , ⋯ , p m − 1 } p = \{ p _ { 1 } , p _ { 2 } , \cdots , p _ { m - 1 } \} p={p1,p2,⋯,pm−1}来代表所有可能的划分,其中 p i p_i pi代表第i和i+1词属于同一个划分的概率,然后根据这个概率分布进行进行采样得到 g = { g 1 , g 2 , ⋯ g m − 1 } g = \{ g _ { 1 } , g _ { 2 } , \cdots g _ { m - 1 } \} g={g1,g2,⋯gm−1},g是复合伯努利分布, g i = 1 g_i=1 gi=1代表我们的i和i+1属于同一个组合,然后可以得到
然后可以通过下式来近似计算
2. Interpreting and Boosting Dropout from a Game-Theoretic View(2021 ICLR)
解决的问题:
- 数学及实验证明了dropout能够通过抑制DNN中的特征的交互作用来防止过拟合
- 过拟合采样通常比其他采样样本有更大的交互作用
- 通过上述证明了dropout的作用的原因,并根据博弈论观点设计了loss来提升dropout的性能
- 分析了DNN的交互特征关系
方法和创新:
- 定义由深度神经网络编码的交互(两个特征间)
I ( i , j ) = def ϕ ( S i j ∣ N ′ ) − [ ϕ ( i ∣ N \ { j } ) + ϕ ( j ∣ N \ { i } ) ] = ∑ S ⊆ N \ { i , j } P Shapley ( S ∣ N \ { i , j } ) Δ f ( S , i , j ) I ( i , j ) = ∑ s = 0 n − 2 [ I ( s ) ( i , j ) n − 1 ] , I ( s ) ( i , j ) = def E S ⊆ N \ { i , j } , ∣ S ∣ = s [ Δ f ( S , i , j ) ] I ( i , j ) \stackrel { \text { def } } { = } \phi ( S _ { i j } | N ^ { \prime } ) - [ \phi ( i | N \backslash \{ j \} ) + \phi ( j | N \backslash \{ i \} ) ] = \sum _ { S \subseteq N \backslash \{ i , j \} } P _ { \text { Shapley } } ( S | N \backslash \{ i , j \} ) \Delta f ( S , i , j )\\I ( i , j ) = \sum _ { s = 0 } ^ { n - 2 } [ \frac { I ^ { ( s ) } ( i , j ) } { n - 1 } ] , \quad I ^ { ( s ) } ( i , j ) \stackrel { \text { def } } { = } E _ { S \subseteq N \backslash \{ i , j \} , | S | = s } [ \Delta f ( S , i , j ) ] I(i,j)= def ϕ(Sij∣N′)−[ϕ(i∣N\{j})+ϕ(j∣N\{i})]=S⊆N\{i,j}∑P Shapley (S∣N\{i,j})Δf(S,i,j)I(i,j)=s=0∑n−2[n−1I(s)(i,j)],I(s)(i,j)= def ES⊆N\{i,j},∣S∣=s[Δf(S,i,j)]
其中 P Shapley ( S ∣ N \ { i , j } ) = ( n − ∣ S ∣ − 2 ) ! ∣ S ∣ ! ( n − 1 ) ! P _ { \text { Shapley } } ( S | N\backslash\{i,j\} ) = \frac { (n - | S | -2) ! | S | ! } { ( n-1 ) ! } P Shapley (S∣N\{i,j})=(n−1)!(n−∣S∣−2)!∣S∣!,通过定义进行可视化之后(将图片划分为16*16的网格,然后计算邻居网格间的相互作用,并对结果进行可视化),可以看出DNN对于对于网络的交互主要集中在人脸部分
- dropout和交互关系的证明
考虑一个子集 T ⊆ S T \subseteq S T⊆S,用 T ∪ { i , j } T \cup \{ i , j \} T∪{i,j}来代表一个子推理模式,例如S代表人脸,那么 T ⊆ S T \subseteq S T⊆S代表眼睛,用 R T ( i , j ) R ^ { T } ( i , j ) RT(i,j)代表子模式产生的边际贡献,其中移除了所有更小子集的交互影响 T ′ ⫋ T T ^ { \prime } \varsubsetneqq T T′T,也就是说推理神经网络推理时,只能够被完整的子推理模式出发影响,但是不能被局部子推理模式触发影响,最终可以将s阶交互写成如下形式
I ( s ) ( i , j ) = E S ⊆ N \ { i , j } , ∣ S ∣ = s [ ∑ T ⊆ S R T ( i , j ) ] = ∑ 0 ≤ q ≤ s ( s q ) J ( q ) ( i , j ) = ∑ 0 ≤ q ≤ s Γ ( q ) ( i , j ∣ s ) I ^ { ( s ) } ( i , j ) = E _ { S \subseteq N \backslash \{ i , j \} , | S | = s } [ \sum _ { T \subseteq S } R ^ { T } ( i , j ) ] = \sum _ { 0 \leq q \leq s } \left( \begin{array} { l } { s } \ { q } \end{array} \right) J ^ { ( q ) } ( i , j ) = \sum _ { 0 \leq q \leq s } \Gamma ^ { ( q ) } ( i , j | s ) I(s)(i,j)=ES⊆N\{i,j},∣S∣=s[T⊆S∑RT(i,j)]=0≤q≤s∑(s q)J(q)(i,j)=0≤q≤s∑Γ(q)(i,j∣s)
当使用dropout后,由于会随机丢掉一些特征,假设我们只考虑没有丢掉的特征 S ′ ⊆ S S ^ { \prime } \subseteq S S′⊆S,且 ∣ S ′ ∣ = r | S ^ { \prime } | = r ∣S′∣=r,则经过dropout之后的组分贡献计算如下:
I dropout ( s ) ( i , j ) = E S ⊆ N \ { i , j } , ∣ S ∣ = s [ E S ′ ⊆ S , ∣ S ′ ∣ = r ( ∑ T ⊆ S ′ R T ( i , j ) ) ] = ∑ 0 ≤ q ≤ r Γ ( q ) ( i , j ∣ r ) I _ { \text { dropout } } ^ { ( s ) } ( i , j ) = \underset { S \subseteq N \backslash \{ i , j \} , | S | = s } { E } [ \underset { S ^ { \prime } \subseteq S , | S ^ { \prime } | = r } { E } ( \sum _ { T \subseteq S ^ { \prime } } R ^ { T } ( i , j ) ) ] = \sum _ { 0 \leq q \leq r } \Gamma ^ { ( q ) } ( i , j | r ) I dropout (s)(i,j)=S⊆N\{i,j},∣S∣=sE[S′⊆S,∣S′∣=rE(T⊆S′∑RT(i,j))]=0≤q≤r∑Γ(q)(i,j∣r)
由此式,可得:
1 ≥ Γ ( 1 ) ( i , j ∣ r ) Γ ( 1 ) ( i , j ∣ s ) ≥ ⋯ ≥ Γ ( r ) ( i , j ∣ r ) Γ ( r ) ( i , j ∣ s ) ≥ 0 , I dropout ( s ) ( i , j ) I ( s ) ( i , j ) = ∑ 0 ≤ q ≤ r Γ ( q ) ( i , j ∣ r ) ∑ 0 ≤ q ≤ s Γ ( q ) ( i , j ∣ s ) ≤ 1 1 \geq \frac { \Gamma ^ { ( 1 ) } ( i , j | r ) } { \Gamma ^ { ( 1 ) } ( i , j | s ) } \geq \cdots \geq \frac { \Gamma ^ { ( r ) } ( i , j | r ) } { \Gamma ^ { ( r ) } ( i , j | s ) } \geq 0 , \quad \frac { I _ { \text { dropout } } ^ { ( s ) } ( i , j ) } { I ^ { ( s ) } ( i , j ) } = \frac { \sum _ { 0 \leq q \leq r } \Gamma ^ { ( q ) } ( i , j | r ) } { \sum _ { 0 \leq q \leq s } \Gamma ^ { ( q ) } ( i , j | s ) } \leq 1 1≥Γ(1)(i,j∣s)Γ(1)(i,j∣r)≥⋯≥Γ(r)(i,j∣s)Γ(r)(i,j∣r)≥0,I(s)(i,j)I dropout (s)(i,j)=∑0≤q≤sΓ(q)(i,j∣s)∑0≤q≤rΓ(q)(i,j∣r)≤1
右边可以看出当使用dropout后,推理模式的矢量通常会显著减少
然后文章通过实验证明了:1. 当使用dropout时拥有更多激活单元(即交互阶数越高)的推理模式更不容易被采样,因此对于dropout的影响更大 2. 使用dropout以后会明显降低交互
阶数高的交互在dropout后被显著抑制了
- 交互强度和过拟合之间的关系
在分类任务中,过拟合的样本通常是异常样本,过拟合样本通常比正常样本造成更强的交互作用
- 通过交互关系loss来提高dropout的表现
Loss = L o s s c l a s s i f i c a t i o n + λ L o s s i n t e r a c t i o n \text { Loss } = Loss_{classification} + \lambda Loss_{interaction} Loss =Lossclassification+λLossinteraction
这里考虑RELU后的中间层,包含n个units,目标是降低任意两个units间的交互关系,可以得到下式
Lossinteraction = E i , j ∈ N , i ≠ j [ ∣ I ( i , j ) ∣ ] = E i , j ∈ N , i ≠ j [ ∣ ∑ S ⊆ N \ { i , j } P Shapley ( S ∣ N \ { i , j } ) [ Δ f ( S , i , j ) ] ∣ ] \text { Lossinteraction } = E _ { i , j \in N , i \neq j } [ | I ( i , j ) | ] = E _ { i , j \in N , i \neq j } [ | \sum _ { S \subseteq N \backslash \{ i , j \} } P _ { \text { Shapley } } ( S | N \backslash \{ i , j \} ) [ \Delta f ( S , i , j ) ] | ] Lossinteraction =Ei,j∈N,i=j[∣I(i,j)∣]=Ei,j∈N,i=j[∣S⊆N\{i,j}∑P Shapley (S∣N\{i,j})[Δf(S,i,j)]∣]
由于求解每对特征间的交互计算代价很大,所以采用近似计算,所以采样不相交的子集A,B来计算(可以看做是对于单元对的关于batch的采样,相应的近似计算可以如下:
Loss interaction ′ = E A , B ≠ N , A ∩ B = ∅ , ∣ A ∣ = ∣ B ∣ = α n { E r [ E ∣ S ∣ = r , S ⊆ N \ A \ B [ Δ f ( S , A , B ) 2 ] ] } \text { Loss } _ { \text { interaction } } ^ { \prime } = E _ { A , B _ { \neq } N , A \cap B = \emptyset , | A | = | B | = \alpha n } \{ E _ { r } [ E _ { | S | = r , S \subseteq N \backslash A \backslash B } [ \Delta f ( S , A , B ) ^ { 2 } ] ] \} Loss interaction ′=EA,B=N,A∩B=∅,∣A∣=∣B∣=αn{Er[E∣S∣=r,S⊆N\A\B[Δf(S,A,B)2]]}
根据实验,使用交互Loss能够让我们明确的控制交互强度,并且和dropout不同,交互loss能够很好的和BN相适应。