データ分析関連のまとめ

データ分析・機械学習周りのもくもく会LTやイベント参加をまとめていきます

Sanity Checks for Saliency Maps

  • Sanity Checks for Saliency Mapsを読んでまとめました。
  • 解釈間違い等ある時がありますので、その場合指摘いただけると助かります。

背景と概要

  • 機械学習技術が向上し複雑になり、インパクトを与えるようになるにつれ、説明する手法(Saliency method)が更にもとめられてきている。
    f:id:yhiss:20191123164356p:plain
    様々なSanity methodを用いたSanity map
  • その手法の適切さを評価するための、randomization testをベースとした手法(Sanity check)に関する論文。
  • 論文では主に、Neural networkを用いた画像分類についての、いくつかのsaliency methodの分析について例示されている。
    他の説明手法に対しても適用できる手法。

2種類のrandomization test

本論文ではランダム化する対象毎に2種類のrandomization testがある。

The model parameter randomization test

  • レーニングされたモデルのsaliency methodによる出力と、ランダムに初期化されたトレーニングされていないモデルからの出力を比較。
  • saliency methodがモデルの学習されたパラメータに依存するならば、上記2つのケースの出力は異なるはずだが、似ていればパラメータの変化に対して鈍感である事がわかる。
    (特にsaliency methodがmodel debugging向けのものだった場合、必然的にモデルパラメータに依存する)

The data randomization test

  • ラベルづけされたデータセットでトレーニングしたモデルのsaliency methodによる出力と、モデルのarchitectureは同じだが、全てのラベルをランダムに入れ替えたデータでトレーニングしたモデルからの出力を比較。
  • saliency methodが依存するならば上記2つのケースの出力は異なるはず。

論文で検証されたsaliency method

  • Gradient explanation
  • Gradient Input
  • Integrated Gradients (IG)
  • Guided Backpropagation (GBP)
  • Guided GradCAM
  • SmoothGrad (SG)

Model Parameter Randomization Test

先ほど挙げたModel Parameter Randomization Testにも2種類存在する。

Cascading Randominzation

  • Cascading Randominzationでは、モデルのweightをtop layerからランダム化し、続いてbottom layerまでずっとランダム化していく。
    f:id:yhiss:20191123170538p:plain
    論文におけるCascading randomizationを行った結果
  • 図を見た段階では、Guided Back propagationおよびGuided GradCAMはランダム化していってもあまり変化が無い。
    f:id:yhiss:20191124161535p:plain
    Cascading randomization testによる結果2

Independent Randomization

  • 独立した層毎にランダム化する。

Data Radomization Test

  • 今回のdata Radomization Testではrandomized training dataとしてラベルをランダムに入れ替えたデータを用意
  • そして正しいラベルおよびランダムなラベル両方で、学習データで95%以上のaccuracyとなったモデルを使用してテストを実施。
    f:id:yhiss:20191123175600p:plain
    Data Radomization Testの結果
  • Gradientはラベルのランダム化に対して出力が異なっている。
  • Guided BackPropにおいて、左図(Absolute-Value Visualization)では変化しているように見えるが、右図ではあまり変化が起きない結果となっている。
    そのため本論文では、ビジュアルでの検査において1つの結果で判断するのはミスリードを引き起こす可能性があると述べられている。

まとめ&考察

  • Sanity checkは機械学習モデルを説明する手法の適切さを評価する手法。
  • model parameter randomization testとData Radomization Testにより構成される。
  • 論文における検証では、GradientsおよびGradCAMがsanity checkをパスする結果となった。
  • 考察:(恐らく)Cascading Randomization testの構造上、元の予測アルゴリズム次第で本手法の適用可否が決まりそう。

参考文献

Sanity Checks for Saliency Maps

https://papers.nips.cc/paper/8160-sanity-checks-for-saliency-maps.pdf

機械学習モデルの判断根拠の説明

https://www.slideshare.net/SatoshiHara3/ss-126157179