影響関数(influence function)#
データ点
アイデア#
経験リスク
の最小化による学習アルゴリズムを前提とする。訓練データ全件で学習したモデル
と、訓練データからデータ点 を抜いて学習したモデル との差分 でインスタンス の影響度がわかるインスタンス
のデータ点 に対する影響度は、誤差 の大きさからわかるデータ点
の予測において訓練データ点 が与えた影響の大きさ を推定する
文献#
Hara et al. (2019)はconvexでない損失関数にも使えるよう拡張したらしい
Guo et al. (2020)はFastIFを提案:k-最近傍のデータに探索範囲を絞るなどして最大80倍の高速化
Sharchilev et al. (2018)は勾配ブースティング決定木に向けたinfluence functionを提案
Influence Functionはモデルのパラメータ
の微分によって近似推定するため、決定木ベースのアルゴリズムなど微分不可能なアルゴリズムでは計算できないため
Notation#
データ点
誤差関数
経験リスク:
訓練データ点が訓練集合 に含まれるとする標準的な経験リスク最小化:
Leave-One-Out#
1つのインスタンス
モデルの変化がわかればテストデータ点
Influence Function#
アイデア#
数学的なトリックを活用して再学習を避けつつLOOを近似していく。
訓練データ全部を使った経験リスクに、データ点
導出
(Koh & Liang (2017)のAppendixより)
up-weightedされた経験リスクのもとでの推定量は
これともとの推定量の差を
第二項は
ゆえに
となる。整理すると
であり、
より
(
よって
LOOの近似#
もし
もし
損失へのupweighting#
データ点
ヘッセ行列の計算の高速化#
共役勾配(conjugate gradients: CG)法
連立一次方程式に帰着させて近似解を得る方法
Hessian-vector products (HVPs)
ヘッセ行列とベクトルの積を近似推定する数学的トリックを使う方法
Stochastic estimation (Agarwal et al., 2017)
SGDのようにランダムサンプリングしてCG法のiterationを回す
FastFI#
Influence Functionは計算が重い
データ点の評価は
モデルパラメータのinverse Hessianの計算コストが高い
上記の計算は並列可能であるが、先行研究のアルゴリズムでは直列
FastIfのアイデア
全データを探索するのではなく、fast nearest neighbor search(Johnson et al., 2017)で探索範囲を狭め、桁違いに計算量を抑える
Hessianの推定において、品質を保ちつつ時間を半分以下にするハイパーパラメータ集合を識別
シンプルに並列計算へ拡張し、さらに2倍高速化
実験においてほとんどのケースで全体で2桁程度の高速化が確認された
LeafInfluence#
Paper: [1802.06640] Finding Influential Training Samples for Gradient Boosted Decision Trees
実装は Brophy et al. (2023)のリポジトリjjbrophy47/tree_influence のほうがいいかも
Brophy et al. (2023)はDataShapelyなど色々な事例型説明の手法を適用・比較しており、GBDTにおける事例型説明についてまとまっている
Case-deletion importance sampling estimators#
[0807.0725] Case-deletion importance sampling estimators: Central limit theorems and related results
Bayesian Modelのためのinfluence function的なアプローチ。データセット