原文:Understanding Black-box Predictions via
Influence Functions
目标:训练数据的某一个数据改变,预测结果会有怎样的变化(影响)?
设:input space X X X,output space Y Y Y, 训练集: z i = ( x i , y i ) ∈ X × Y , i = 1 , 2 , … , n z_i =(x_i,y_i) \in X \times Y,i=1,2,\dots,n zi=(xi,yi)∈X×Y,i=1,2,…,n;对于一个点 z z z以及模型参数 θ ∈ Φ , L ( z , θ ) \theta \in \Phi,L(z,\theta) θ∈Φ,L(z,θ)为损失函数。最小化经验函数为:
θ ^ = arg min θ ∈ Φ 1 n ∑ i = 1 n L ( z i , θ ) (1) \hat{\theta}=\arg \min_{\theta \in \Phi} \frac{1}{n} \sum_{i=1}^{n}L(z_i,\theta) \tag 1 θ^=argθ∈Φminn1i=1∑nL(zi,θ)(1)
再理一遍目标:某一个数据变化,即 z z z变化,可以视为 z z z从有到无,预测结果发生的变化;换句话说:训练时, z z z从有到无,导致模型参数 θ ^ \hat{\theta} θ^发生变化,从而引起预测结果的变化,如何衡量影响的大小?(求导)
模型参数的变化: θ ^ − z − θ ^ \hat{\theta}_{-z}-\hat{\theta} θ^−z−θ^;(移除 z z z的参数减去未移除时的参数)
其中: θ ^ − z = arg min θ ∈ Φ 1 n ∑ i = 1 , z i ≠ z n L ( z i , θ ) (2) \hat{\theta}_{-z}=\arg \min_{\theta \in \Phi} \frac{1}{n} \sum_{i=1,z_i \neq z}^{n}L(z_i,\theta) \tag 2 θ^−z=argθ∈Φminn1i=1,zi=z∑nL(zi,θ)(2)
问题1:原文作者写法(下面截图)与上式不一致,不知道是不是我没有深刻理解作者的思路,还是作者有意为之,那作者为何不要求平均了呢?按照最小化经验函数是需要求平均啊,emmm…所以应该怎样理解?
继续换个思路: n n n个 z z z,一个一个移除观察参数的变化,太慢了,根据influence function:可以在 z z z上加一个小小的权重 ϵ \epsilon ϵ来计算参数的变化.更神奇的是,移除 z z z相当于加权 ϵ = − 1 n \epsilon=-\frac{1}{n} ϵ=−n1.
加权后的参数定义为: θ ^ ϵ , z = arg min θ ∈ Φ 1 n ∑ i = 1 n L ( z i , θ ) + ϵ L ( z , θ ) (3) \hat{\theta}_{\epsilon,z}=\arg \min_{\theta \in \Phi}\frac{1}{n}\sum_{i=1}^{n}L(z_i,\theta)+\epsilon L(z,\theta) \tag 3 θ^ϵ,z=argθ∈Φminn1i=1∑nL(zi,θ)+ϵL(z,θ)(3)
对 z z z加权后,对模型参数 θ ^ \hat{\theta} θ^的影响(梯度)定义为:
I u p , p a r a m s ( z ) = d θ ^ ϵ , z d ϵ ∣ ϵ = 0 = − H θ ^ − 1 ∇ θ L ( z , θ ^ ) (4) I_{\mathrm{up,params}}(z)=\frac{\mathrm{d}\hat{\theta}_{\epsilon,z}}{\mathrm{d}\epsilon}\vert _{\epsilon=0}=-\mathbf{H}^{-1}_{\hat{\theta}}\nabla_{\theta}L(z,\hat \theta) \tag 4 Iup,params(z)=dϵdθ^ϵ,z∣ϵ=0=−H