ICML2017 Best Paper:Understanding Black-box Predictions via Influence Functions

1. 前言

众所周知,现在很多流行的机器学习模型对于我们来说就是一个黑盒子,尤其对于深度神经网络来说,网络的解释性一直是学者们很头疼的问题。一种对机器学习模型进行解释的方法是尝试找到训练数据中对结果影响最大的那部分数据点。作者应用了稳健统计学概念中的Influence Function ,来获得损失函数关于单个数据点的变化。另外,针对该方法计算量大的问题,作者提出了高效的近似算法;针对该方法对于函数可导性和凸性的严格限制,该作者对不符合要求的情况进行了讨论(这也是现在解释深度神经网络所面临的主要问题)。最后,作者讨论了该方法的应用。

这篇文章被选为ICML2017的best paper。这篇文章稍偏理论而且质量不错,仔细阅读适合初学者巩固知识,加深对机器学习模型的理解。

2.理论分析

为了研究训练数据中每个数据点对模型的影响,作者提出了两个问题:如果我们将训练数据集中的某个数据点移走会怎么样?如果我们将某个数据点的数据改变会怎么样?针对这两个问题,作者进行了讨论。

2.1 对一个数据点增加权重

首先,我们来看一下对数据点加权对模型参数的影响,形式化的来讲,模型参数的变化为: θ̂ ϵ,zθ̂  ,其中 θ̂ ϵ,z=defargminθΘ1nzizL(zi,θ)+ϵL(z,θ) , 这个公式可以理解为,去掉 zi ,然后重新进行训练,得到的参数就是 θ̂ z 。但是,对整个模型进行重新训练是一件很慢的事情。

另外,这里要说明的是,对一个数据点增加权重 ϵ ,相当于在线性近似情况下对移走数据点情况的推广:对于移走数据点的情况,加权 ϵ=1n

为了获得模型参数与数据点权重之间的关系,Cook和Weisberg计算得出,模型参与对于 ϵ 的变化率为:

up,params(z)=defdθ̂ ϵ,zdϵϵ=0=H1θ̂ θL(z,θ̂ )

其中 Hθ̂  是hessian矩阵,并且假定hessian矩阵是正定的(凸性)

既然知道了模型参数与数据点权重之间的关系,那么根据复合函数求导法则,损失函数与数据点权重之间的关系也应运而生:

up,loss(z,ztest)=dL(ztest,θ̂ ϵ,z)dϵϵ=0=θL(ztest,θ̂ )TH1θ̂ θL(z,θ̂ )

2.2 改变训练数据点

之前提到的另一个问题是,如果将数据点改变会怎么样?在此,我们同样用 ϵ 对修改过后的训练数据点进行加权。
对于一个训练点 z=(x,y) ,假定修改过后的数据点是 zδ=def(x+δ,y) ,则以 ϵ 的权重将修改过后的数据点代替原数据点,此时的模型的参数为:

θ̂ ϵ,zδ,z=defargminθΘ1nL(zi,θ)+ϵL(zθ,θ)ϵL(z,θ)

同样,以参数 θ ϵ 求导,有:

dθ̂ ϵ,zδ,zdϵϵ=0=up,params(zδ)up,params(z)=H1θ̂ (θL(zδ,θ̂ )θL(z,θ̂ ))

考虑线性近似,可以有,当 ϵ=1n 的时候,相当于使用修改后的数据点替换之前的数据点。

另外需要注意的是,该方法对离散的数据依然有效。

假设loss function L 对于 θ x 都可导,

你可能感兴趣的:(机器学习)