【论文精读】Axiomatic Attribution for Deep Networks

Abstract(摘要)

本文研究了将深度网络的预测结果归因于输入特征的问题,这一问题此前已有多项研究。作者提出了两个基本公理——敏感性(Sensitivity)实现不变性(Implementation Invariance),认为归因方法应当满足这两个公理。研究发现,大多数现有归因方法都不满足这些公理,这被视为这些方法的根本缺陷。基于这两个公理,作者设计了一种新的归因方法——积分梯度(Integrated Gradients)。该方法无需修改原始网络,实现极其简单,仅需调用几次标准梯度算子。作者将其应用于多个图像模型、文本模型和一个化学模型,证明了其在调试网络、从网络中提取规则以及帮助用户更好地与模型交互方面的能力。

1. Motivation and Summary of Results(动机与结果概述)

本文聚焦于“将深度网络的预测归因于输入特征”这一问题。

  • 归因的定义:形式化地,设函数F:Rn→[0,1]F: \mathbb{R}^n \to [0,1]F:Rn[0,1]表示深度网络,输入x=(x1,...,xn)∈Rnx=(x_1,...,x_n) \in \mathbb{R}^nx=(x1,...,xn)Rn,则相对于基线输入(x’)的归因是一个向量(AF(x,x′)=(a1,...,an)(A_F(x, x')=(a_1,...,a_n)(AF(x,x)=(a1,...,an),其中aia_iaixix_ixi对预测结果F(x)F(x)F(x)的贡献。例如,在目标识别网络中,归因方法可指出哪些像素对标签预测起作用(见图2)。

  • 归因的意义:理解网络的输入-输出行为有助于改进模型;在实际应用中,可解释推荐理由(如医学影像模型告知医生关键区域)、帮助开发者提取规则(如从网络中挖掘决策逻辑)。

  • 现有方法的问题:归因方法的实证评估较困难(难以区分模型错误与归因方法错误),因此作者采用公理方法,提出两个核心公理。现有方法(如DeepLift、LRP等)不满足这些公理,而新方法“积分梯度”满足,且无需修改网络,易于实现。

  • 基线的必要性:归因依赖反事实直觉(判断某个特征的影响需对比其“不存在”时的结果),基线即“不存在”的输入(如图像的黑色图像),这一点在先前研究中也被提及。

2. Two Fundamental Axioms(两个基本公理)

作者提出两个归因方法必须满足的公理,并指出现有方法的缺陷。

2.1. Axiom: Sensitivity(a)(敏感性公理)
  • 定义:若输入与基线仅在一个特征上不同,且预测结果不同,则该特征的归因必须非零

  • 梯度方法的缺陷:梯度(及梯度与特征值的乘积)是深度网络中类似线性模型系数的自然类比,但违反敏感性。例如,对于单变量ReLU网络f(x)=1−ReLU(1−x)f(x)=1-ReLU(1-x)f(x)=1ReLU(1x),基线x′=0x'=0x=0,输入x=2x=2x=2时,预测从0变为1,但因x≥1x≥1x1时函数平坦(梯度为0),梯度方法给x的归因是0,违反敏感性。实际中,这会导致梯度聚焦于无关特征(如图2的“fireboat”例子)。

  • 其他反向传播方法的缺陷:DeConvNets、Guided backpropagation等方法在ReLU关闭时不反向传播信号,类似梯度,也违反敏感性(即使特征影响预测,归因仍为0)。

问题2.1: 为什么梯度方法有缺陷?如何理解?

这需要结合敏感性公理(Sensitivity(a))的定义梯度方法的特性来理解,具体可拆解为以下三层逻辑:
1. 敏感性公理(Sensitivity(a))的核心要求
根据论文定义,敏感性公理(Sensitivity(a))的核心是:
如果输入与基线仅在一个特征上存在差异,且两者的预测结果不同,那么这个差异特征的归因值必须非零
这是因为该特征直接导致了预测结果的变化,理应被归因方法“识别”并赋予非零贡献。
2. 案例中输入与基线的差异及预测结果
在案例中:

  • 基线x′=0x' = 0x=0,此时函数f(x′)=1−ReLU(1−0)=1−1=0f(x') = 1 - ReLU(1 - 0) = 1 - 1 = 0f(x)=1ReLU(10)=11=0
  • 输入x=2x = 2x=2,此时函数f(x)=1−ReLU(1−2)=1−0=1f(x) = 1 - ReLU(1 - 2) = 1 - 0 = 1f(x)=1ReLU(12)=10=1

可见,输入与基线仅在特征xxx上有差异(从0变为2),且预测结果从0变为1(明显不同)。根据敏感性公理(Sensitivity(a)),特征xxx的归因值必须非零(因为它是唯一导致预测变化的原因)。

3. 梯度方法为何违反敏感性公理?
梯度方法的归因逻辑是用输入处的梯度值衡量特征贡献,但在这个案例中:

  • 函数f(x)=1−ReLU(1−x)f(x) = 1 - ReLU(1 - x)f(x)=1ReLU(1x)的图像在x≥1x \geq 1x1时是“平坦”的(导数为0)。
  • x≥1x \geq 1x1时,1−x≤01 - x \leq 01x0ReLU(1−x)=0ReLU(1 - x) = 0ReLU(1x)=0,因此f(x)=1−0=1f(x) = 1 - 0 = 1f(x)=10=1,函数值恒为1,梯度(导数)为0。
  • 输入x=2x = 2x=2恰好落在x≥1x \geq 1x1的区间内,此时梯度为0,因此梯度方法给特征xxx的归因值为0。
    但这与敏感性公理矛盾:特征xxx明明是导致预测结果从0变为1的唯一原因,却被梯度方法赋予了0归因,完全忽略了其实际贡献。

总结
梯度方法仅关注输入点处的瞬时梯度,而当函数在输入点处“平坦”(梯度为0)时,即使该特征实际影响了预测结果(如案例中xxx从0到2导致预测从0到1),梯度方法也会错误地赋予其0归因。这种“漏报”关键特征贡献的行为,直接违反了敏感性公理(Sensitivity(a))的要求。
这也正是论文强调梯度方法存在根本缺陷的原因——它无法可靠地识别对预测结果有实际影响的特征。

2.2. Axiom: Implementation Invariance(实现不变性公理)
  • 定义:功能等价的网络(输入输出相同,实现不同)应具有相同归因,因为归因是对输入特征的“功劳/责任”分配,与网络实现细节无关。

  • DeepLift和LRP的缺陷:这两种方法使用“离散梯度”而非瞬时梯度,且修改了反向传播逻辑。离散梯度不满足链式法则f(x1)−f(x0)g(x1)−g(x0)≠f(x1)−f(x0)h(x1)−h(x0)⋅h(x1)−h(x0)g(x1)−g(x0)\frac{f(x_1)-f(x_0)}{g(x_1)-g(x_0)} \neq \frac{f(x_1)-f(x_0)}{h(x_1)-h(x_0)} \cdot \frac{h(x_1)-h(x_0)}{g(x_1)-g(x_0)}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值