最近看过的相关可解释性的论文(持续更新...)

最近看过的相关可解释性的论文

1.(2020ICLR)TabNet: Atentive Interpretable Tabular Learning

解决的问题

  • 基于树的方法能够有很好的解释性,但是需要大量的特征工程,以及精度不够高 基于DNN的方法能够有效编码各种格式数据,无需大量特征工程,且能够准确鲁棒地对数据进行处理,能否设计兼顾两者的DNN

想法/创新:

  • 提出了一种基于表格的数据的DNN的架构TabNet,学习类似决策树式的映射,使用顺序注意机制从每个决策步中选择最显著的特征用于下游任务
  • 能够提供输入的量化每个输入对于输出的贡献,全局可解释性和局部可解释性

在这里插入图片描述
之前的论文已经证明DNN可以通过拟合一个函数模拟决策树的学习过程,从而构建一个超平面的决策边界。TabNet基于一个tree-like的函数,通过构成系数Mask确定每个特征的比例,具体而言,TabNet构建了一个sequential multi-step的结构,设计了 instance-wise 的特征选择方法。上图中,第一step选择professional类的特征,第二step选择Investment类的特征。
在这里插入图片描述
整个网络由多个step模块构成,每个模块包括一个feature transformer和一个attentive transformer,其中attentive transformer生成mask决定每个特征的重要性,而feature transformer用于特征的提取
在这里插入图片描述

M [ i ] = sparsemax ⁡ ( P [ i − 1 ] ⋅ h i ( a [ i − 1 ] ) ) P [ i ] = ∏ j = 1 i ( γ − M [ j ] ) L  sparse  = ∑ i = 1 N steps ∑ b = 1 B ∑ j = 1 D − M b , j [ i ] N steps ⋅ B log ⁡ ( M b , j [ i ] + ϵ ) M [ i ] = \operatorname { sparsemax } ( P [ i - 1 ] \cdot h _ { i } ( a [ i - 1 ] ) )\\ P [ i ] = \prod _ { j = 1 } ^ { i } ( \gamma - M [ j ] )\\ L _ { \text { sparse } } = \sum _ { i = 1 } ^ { N _ { \text {steps} } } \sum _ { b = 1 } ^ { B } \sum _ { j = 1 } ^ { D } \frac { - M _ { b , j } [ i ] } { N _ { \text {steps} } \cdot B } \log ( M _ { b , j } [ i ] + \epsilon ) M[i]=sparsemax(P[i1]hi(a[i1]))P[i]=j=1i(γM[j])L sparse =i=1Nstepsb=1Bj=1DNstepsBMb,j[i]log(Mb,j[i]+ϵ)
其中 M [ i ] M [ i ] M[i]表示第i个step的MASK矩阵, P [ i − 1 ] P [ i - 1 ] P[i1]代表先验知识(i step前所有的step的先验), h i h_i hi代表特征提取器,如果某些特征的 M [ i ] M [ i ] M[i]很大时,那么在下一步,就希望更多的关注于先前没有关注的特征,loss目的是为了保证M的稀疏性

在这里插入图片描述
[ d [ i ] , a [ i ] ] = f i ( M [ i ] ⋅ f ) [ d [ i ] , a [ i ] ] = f _ { i } ( M [ i ] \cdot f ) [d[i],a[i]]=fi(M[i]f)
这里表示split后的两部分,一部分用于本步的决策,一部分作为下一step的输入

可解释性的体现:每个step 的mask都是一种局部解释性,而融合的mask是一种全局解释性,每个输入对于输出的贡献可以通过累加所有step的MASK来得到
M a g g − b , j = ∑ i = 1 N s t e p s η b [ i ] M b , j [ i ] / ∑ j = 1 D ∑ i = 1 N s t e p s η b [ i ] M b , j [ i ] M _ { agg - b , j } = \sum _ { i = 1 } ^ { N _ { s t e p s } } \eta _ { b } [ i ] M _ { b , j } [ i ] / \sum _ { j = 1 } ^ { D } \sum _ { i = 1 } ^ { N _ { s t e p s } } \eta _ { b } [ i ] M _ { b , j } [ i ] Maggb,j=i=1Nstepsηb[i]Mb,j[i]/j=1Di=1Nstepsηb[i]Mb,j[i]
和常用的解释性方法对于特征重要程度的对比:
在这里插入图片描述
Critical Tinking:

  1. 通过局部特征选择MASK,通过顺序步长的方式来选择特征,最后融合每个step的特征做出预测
  2. 虽然MASK矩阵是通过学习到的,是否能够真实反应对于输出的贡献有待考量

2.(2019ICLR)GNNExplainer: Generating Explanations for Graph Neural Networks

解决的问题:

  1. 同时包含图结构和特征信息会导致模型复杂,无法解释GNN做出的预测

方法和创新

  • 对于单一实例,GNNExplainer能够确定一个紧凑的子图结构和节点的部分重要特征,这些特征对于预测起着重要作用
  • 对于实例类,能够找到一个子图及节点特征原型来生成简洁一致的解释

方法的具体过程
在这里插入图片描述
在这里插入图片描述
GNNExplainer目的是为了找到如上图所示的一系列的重要节点信息传播路径(绿色路径)以及学习相应的节点上的特征重要性掩码

  • 问题定义
  1. 定义GNN的主要相关计算:
    (1)节点对间的信息 m i j l = MsG ⁡ ( h i l − 1 , h j l − 1 , r i j ) m _ { i j } ^ { l } = \operatorname { MsG } ( h _ { i } ^ { l - 1 } , h _ { j } ^ { l - 1 } , r _ { i j } ) mijl=MsG(hil1,hjl1,rij),其中 h i l − 1 , h j l − 1 h _ { i } ^ { l - 1 } , h _ { j } ^ { l - 1 } hil1,hjl1代表上一层节点表示
    (2)每个节点聚合邻居信息 M i l = AGG ⁡ ( { m i j l ∣ v j ∈ N v i } ) M _ { i } ^ { l } = \operatorname { AGG } ( \{ m _ { i j } ^ { l } | v _ { j } \in N _ { v _ { i } } \} ) Mil=AGG({ mijlvjNvi})
    (3)根据聚合的信息和上一层节点的信息生成当前节点的表示 h i l = UPDATE ⁡ ( M i l , h i l − 1 ) h _ { i } ^ { l } = \operatorname { UPDATE } ( M _ { i } ^ { l } , h _ { i } ^ { l - 1 } ) hi

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值