Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

The review of 'Explaining nonlinear classification decisions with deep Taylor decomposition'

291 views

Published on

The review of 'Explaining nonlinear classification decisions with deep Taylor decomposition'

Published in: Data & Analytics
  • Login to see the comments

  • Be the first to like this

The review of 'Explaining nonlinear classification decisions with deep Taylor decomposition'

  1. 1. 論文紹介 Explaining nonlinear classification decisions with deep Taylor decomposition 2019/9/4 石垣哲郎 TensorFlow User Group #9
  2. 2. 2 初めに 本プレゼンは、Grégoire Montavon、Sebastian Lapuschkin、 Alexander Binder、Wojciech Samek、Klaus-Robert Müller 執筆の、 「Explaining nonlinear classification decisions with deep Taylor decomposition」(Elsevier “Pattern Recognition” Volume 65, May 2017, Pages 211-222) のご紹介資料です。
  3. 3. 発表者自己紹介 氏名:石垣 哲郎 1986年4月 日本電気株式会社入社 2015年11月 日本インサイトテクノロジー株式会社入社 TensorflowやKERASは仕事ではなく、もっぱらオフタイムに触っています。 QIITAはじめました! い し が き て つ お TwitterにSeq2seq ベースのチャット ボット公開中です。 遊んでやってくだ さい。 @gacky01B https://twitter.com/gacky01b 3
  4. 4. 本論文の基本的な考え方 • 画像認識ニューラルネットワークの最終段の分類器を、元画像の各ピク セルの関数ととらえ、これを各ピクセルの判定への寄与度を表す、ヒー トマップの和に分解する • ヒートマップを、分類器およびニューラルネットワーク各段の出力関数 の、テイラー展開(の一次項)から生成する • テイラー展開の一次項は一階偏微分、すなわち勾配である。関数の変化 が激しいピクセルほど、分類への寄与が高いと評価される 4
  5. 5. 記号と定義(1/2) • 𝒙 = 𝑥 𝑝 ∈ ℝ 𝑑 を、画像のベクトル表現とする。 • 分類器の出力関数 𝑓: ℝ 𝑑 → ℝ+ に対し、関連性スコア関数 𝑅 𝑝: ℝ 𝑑 → ℝ+ は、画像 𝒙 = 𝑥 𝑝 を構成する各ピクセルが、出力関数の値にどれくらい 寄与しているかを示す関数であり、以下の式を満たすものである: ∀𝒙: 𝑓(𝒙) = 𝑝 𝑅 𝑝 (𝒙) 5
  6. 6. 記号と定義(2/2) • 関連性スコア関数 𝑅 𝑝 を 𝑝番目の要素とするベクトル 𝑹 = 𝑅 𝑝 ∈ ℝ+ 𝑑 を、 ヒートマップと定義する。ヒートマップは元画像と同サイズの画像であ り、判定への寄与度が高いピクセルほど「高温」に表現される。 • ヒートマップ 𝑹 をテイラー展開の一次項から導出できるというのが、本 論文の主張である。 元画像 𝒙 ヒートマップ𝑹 6
  7. 7. 感度分析(sensitivity analysis) • 本論文に先立つ研究として、感度分析がある。これは偏微分の平方で関 連性スコア関数を生成する手法である。以下にそのイメージを示す: • この手法は実運用において高い表現力を持っていないとされている。本 論文では成果の比較のために引用されており、いわゆる当て馬である。 7
  8. 8. テイラー分解(Taylor decomposition) • 任意の非負な微分可能関数 𝑓(𝒙) に対し、 𝑓 𝒙 = 0 の解 𝒙 = 𝑥 𝑝 における テイラー展開を行う: 𝑓 𝒙 = 𝑓 𝒙 + 𝑝 𝜕𝑓 𝜕𝑥 𝑝 | 𝑥= 𝑥 T ∙ 𝑥 𝑝 − 𝑥 𝑝 + 𝜀 • 上式のように、 𝑅 𝒙 = 𝑅 𝑝 𝒙 をテイラー展開の1次項と定義すると、 𝒙の 定義から𝑓 𝒙 = 0なので、 𝒙が𝒙に十分近ければ、テイラー展開の高次項𝜀は 0に近づき、 𝑅は𝑓のヒートマップ表現になる。 • これにて一件落着のように見えるが、問題はすべての𝒙の近傍に 𝒙が都合よ く存在するわけではない点である。これに対する考察は、次ページ以降で。 𝑅 𝑝 𝒙 = 0 8
  9. 9. 9 ディープテイラー分解(Deep Taylor decomposition)(1/2) • ディープテイラー分解は、ニューラルネットワークを構成する各ニュー ロンに前頁のテイラー分解を適用し、ヒートマップをこれらの関数合成 で得ようとするものである。 • 各ニューロンは一次式と活性化関数の合成であり、もし活性化関数が reluなら、2次以降の微分がすべて0となる。前頁の𝜀問題は、この手法 で乗り切っている。 • 本論文の論理展開は、まず1層NNでヒートマップを構成し、次いでそれ を多層NNに適用する、という流れになっている。多層NNでのヒート マップ合成は、バックプロパゲーション的に、後ろから前に向かって行 う(次頁の図参照)。
  10. 10. 10 ディープテイラー分解(Deep Taylor decomposition)(2/2) ディープテイラー分解の計算の流れ
  11. 11. 11 1層ニューラルネットワークへの応用(1/8) 記号の定義 • 𝑥𝑗 = 𝑚𝑎𝑥 𝑖 𝑤𝑖𝑗 𝑥𝑖 + 𝑏𝑗 , 0 、 𝑥 𝑘 = 𝑗 𝑥𝑗、ここに 𝑤𝑖𝑗 , 𝑏𝑗 は重みパラ メータ • 𝑥𝑗が原点𝑥𝑖 = 0 for ∀𝑖 で必ず≦0になるように、すべての𝑗に対して、𝑏𝑗 ≤ 0であるとする
  12. 12. 12 1層ニューラルネットワークへの応用(2/8) • まず明らかに、𝑅 𝑘 = 𝑥 𝑘である • 𝑥 𝑘 = 𝑗 𝑥𝑗 は明らかに原点で0なので、原点でのテイラー分解を適用して、 𝑅𝑗 = 𝜕𝑥 𝑘 𝜕𝑥 𝑗 ∙ 𝑥𝑗 = 𝑥𝑗を得る • 𝑅𝑗 = 𝑥 𝑗 = 𝑚𝑎𝑥 𝑖 𝑤𝑖𝑗 𝑥𝑖 + 𝑏𝑗 , 0 であるから、超平面 𝑖 𝑤𝑖𝑗 𝑥𝑖 + 𝑏𝑗 = 0上の 点 𝒙(𝑗) = 𝑥𝑖 (𝑗) に対し、𝑅𝑗 = 𝑖 𝜕𝑅 𝑗 𝜕𝑥 𝑖 | 𝒙= 𝒙(𝑗) ∙ 𝑥𝑖 − 𝑥𝑖 (𝑗) が成り立つ。 • ここで𝑅𝑖を、 𝑅𝑖 = 𝑗 𝜕𝑅 𝑗 𝜕𝑥 𝑖 | 𝒙= 𝒙(𝑗) ∙ 𝑥𝑖 − 𝑥𝑖 (𝑗) と定義する。すると、 𝑖 𝑅𝑖 = 𝑗 𝑅𝑗 なので、「熱量」が下流から上流に保存されながら伝搬す る。 • 次ページ以降に、 𝒙(𝑗)の決定ロジックを示す
  13. 13. 13 1層ニューラルネットワークへの応用(4/8) 𝑤2-ルール • 𝒙 = 𝑥𝑖 ∈ ℝ 𝑑がℝ 𝑑全体を動くとき、 𝒙(𝑗) を、 𝒙から超平面 𝑖 𝑤𝑖𝑗 𝑥𝑖 + 𝑏𝑗 = 0 に垂らした垂線の足とする。この 𝒙(𝑗) を、 p12の式 𝑅𝑖 = 𝑗 𝜕𝑅𝑗 𝜕𝑥𝑖 | 𝒙= 𝒙(𝑗) ∙ 𝑥𝑖 − 𝑥𝑖 (𝑗) に代入すると、𝑅𝑖に関する以下の式を得る(証明略): 𝑅𝑖 = 𝑗 𝑤𝑖𝑗 2 𝑖′ 𝑤𝑖′ 𝑗 2 𝑅𝑗
  14. 14. 14 1層ニューラルネットワークへの応用(5/8) 𝑧+ -ルール • 𝒙 = 𝑥𝑖 ∈ ℝ+ 𝑑 のとき、線分 𝑥𝑖1 𝑤 𝑖𝑗<0 , 𝑥𝑖 ∈ ℝ+ 𝑑 は、超平面 𝑖 𝑤𝑖𝑗 𝑥𝑖 + 𝑏𝑗 = 0と少なくとも1つ以上の交点を持つ(証明略)。この主張は直感的に 明らかではないが、p17の図である程度イメージできる。 • ここで、𝑥𝑖1 𝑤 𝑖𝑗<0 = 0, if 𝑤𝑖𝑗 > 0 𝑥𝑖, if 𝑤𝑖𝑗 < 0 である。 • この交点のうち、 𝒙との距離が最も小さいものを 𝒙(𝑗) と置くとき、これを p12の式𝑅𝑖 = 𝑗 𝜕𝑅 𝑗 𝜕𝑥 𝑖 | 𝒙= 𝒙(𝑗) ∙ 𝑥𝑖 − 𝑥𝑖 (𝑗) に代入すると、𝑅𝑖に関する以下の式を 得る(証明略): 𝑅𝑖 = 𝑗 𝑥𝑖 𝑤𝑖𝑗 + 𝑖′ 𝑥𝑖′ 𝑤𝑖′ 𝑗 + 𝑅𝑗
  15. 15. 15 1層ニューラルネットワークへの応用(6/8) 𝑧 𝐵-ルール • 矩形のエリアBを、以下のように定義する:𝑙𝑖 ≤ 0, 0 ≤ ℎ𝑖を満たす 𝑙𝑖 、 ℎ𝑖 1 ≤ 𝑖 ≤ 𝑑 に対し、 B= 𝒙 ∈ ℝ 𝑑 𝑙𝑖 ≤ 𝑥𝑖 ≤ ℎ𝑖 for 1 ≤ 𝑖 ≤ 𝑑 • このとき、線分 𝑙𝑖1 𝑤 𝑖𝑗>0 + ℎ𝑖1 𝑤 𝑖𝑗<0 , 𝑥𝑖 ⊂ B は、超平面 𝑖 𝑤𝑖𝑗 𝑥𝑖 + 𝑏𝑗 = 0と少なくとも1つ以上の交点を持つ(証明略)。 • ここで、𝑙𝑖1 𝑤 𝑖𝑗>0 + ℎ𝑖1 𝑤 𝑖𝑗<0 = 𝑙𝑖, if 𝑤𝑖𝑗 > 0 ℎ𝑖, if 𝑤𝑖𝑗 < 0 である。点 𝑙𝑖1 𝑤 𝑖𝑗>0 +
  16. 16. 16 1層ニューラルネットワークへの応用(7/8) • 前頁のロジックに従って見出した 𝑖 𝑤𝑖𝑗 𝑥𝑖 + 𝑏𝑗 = 0 の解のうち、 𝑥𝑖 に 最も近いものを 𝑥𝑖 (𝑗) と置き、これをp12の式𝑅𝑖 = 𝑗 𝜕𝑅 𝑗 𝜕𝑥 𝑖 | 𝒙= 𝒙(𝑗) ∙ 𝑥𝑖 −
  17. 17. 17 1層ニューラルネットワークへの応用(8/8) 各ルールのイメージ
  18. 18. 18 深層ニューラルネットワークへの応用 • 前頁までの手法を、隠れ層が複数あるニューラルネットワークに応用す る。基本的な考え方は、前項までの手法を、ニューラルネットワークの 下流から上流に向かって順次適用していくというものである • 手法にはmini-max関連モデルと、訓練無し関連モデルがある。mini-max 関連モデルは訓練によって関連性スコア関数を決定しようというもので あるが、説明は割愛する
  19. 19. 19 訓練無し関連モデル(1/5) • 前提条件:ニューラルネットワークは線形変換+relu活性化層とプーリ ング層の繰り返しで構成されているものとする • 𝑅𝑙が線形変換+relu活性化層の関連性スコア関数であるとき、その1段前 の層のニューロン出力𝑥 𝑘は、プーリング層なので必ず≧0である。 • したがって、同層の関連性スコア関数𝑅 𝑘に𝑧+ -ルールが適用できて、 𝑥𝑙 = 𝑚𝑎𝑥 𝑘 𝑤 𝑘𝑙 𝑥 𝑘 + 𝑏𝑙 , 0 であるとき、以下のように表記できる: 𝑅 𝑘 = 𝑙 𝑥 𝑘 𝑤 𝑘𝑙 + 𝑘′ 𝑥 𝑘′ 𝑤 𝑘′ 𝑙 + 𝑅𝑙
  20. 20. 20 訓練無し関連モデル(2/5) • 𝑥 𝑘の更に前段のニューロン出力を𝑥𝑗と表記し、 𝑥 𝑘 = 𝑥𝑗 𝑞 であるとす る。ここに𝐿 𝑞 ノルムはプーリングの演算種別を表わし、 𝑞 = 1ならsum プーリング、 𝑞 = ∞ならmaxプーリングである。 • このとき、𝑥𝑗 ≥ 0なので 𝑗 𝑥𝑗 = 𝑥𝑗 1 であることに注意すると、以下 の式を得る: 𝑅 𝑘 = 𝑗 𝑥𝑗 ∙ 𝑐 𝑘 ∙ 𝑑 𝑘 • ここで𝑐 𝑘 = 𝑥𝑗 𝑞 ∕ 𝑥𝑗 1 、𝑑 𝑘 = 𝑙 𝑤 𝑘𝑙 + 𝑘′ 𝑥 𝑘′ 𝑤 𝑘′ 𝑙 + 𝑅𝑙
  21. 21. 21 訓練無し関連モデル(3/5) • このとき、 𝑐 𝑘、 𝑑 𝑘は定数になる(論文に証明無し) • この主張は、 𝑥𝑗 が互いに独立している場合は全く正しくない。論文では、 𝑥𝑗のどれかが増えれば別のどれかが減るので、全体としてバランスがと れて定数になる、といった定性的な説明をしている。 • 確かに、 𝑥𝑗は突き詰めると、最前段のピクセル値𝑥 𝑝の線形結合とプーリ ング演算の合成で出来ているので、もしかしたらそういうこともあるか もしれないが、ここは深追いせずに先に進むことにする。この件につい ては、最後に考察する
  22. 22. 22 訓練無し関連モデル(4/5) • 𝑅 𝑘 = 𝐶 𝑘 ∙ 𝑗 𝑥𝑗 (𝐶 𝑘は定数)なので、 𝜕𝑅 𝑘 𝜕𝑥 𝑗 = 𝐶 𝑘 。これをp12の式 𝑅𝑗 = 𝑘 𝜕𝑅 𝑘 𝜕𝑥𝑗 | 𝒙= 𝒙(𝑘) ∙ 𝑥𝑗 − 𝑥𝑗 (𝑘) に代入する。𝑅 𝑘は原点で0なので、 𝑥𝑗 (𝑘) = 0 とすることができ、以下の 式を得る: 𝑅𝑗 = 𝑘 𝜕𝑅 𝑘 𝜕𝑥𝑗 | 𝒙=0 ∙ 𝑥𝑗 = 𝑘 𝐶 𝑘 𝑥𝑗 = 𝑘 𝑥𝑗 𝑗′ 𝑥𝑗′ 𝑅 𝑘
  23. 23. 23 訓練無し関連モデル(5/5) • ここまでの議論をまとめると以下の通り: ① ニューラルネットワークの最終段では、 𝑅 = 𝑥 (値が1つしか無いので、添字無し) ② 𝑅𝑙が線形変換+relu活性化層の関連性スコア関数であるとき、その前段のプーリング層の関連性スコア 関数𝑅 𝑘は、 𝑅𝑙を使って以下のように分解される 𝑅 𝑘 = 𝑙 𝑥 𝑘 𝑤 𝑘𝑙 + 𝑘′ 𝑥 𝑘′ 𝑤 𝑘′ 𝑙 + 𝑅𝑙 ③ 更にその前段の線形変換+relu活性化層の関連性スコア関数𝑅𝑗は、𝑅 𝑘を使って以下のように分解される 𝑅𝑗 = 𝑘 𝑥𝑗 𝑗′ 𝑥𝑗′ 𝑅 𝑘 ④ この方法を繰り返すことにより、最前段の次のプーリング層までの関連性スコア関数が得られる。最前 段の関連性スコア関数𝑅 𝑝 は、その次のプーリング層の関連性スコア関数𝑅𝑗 に、 𝑤2 -ルール、 𝑧+ -ルール、 𝑧 𝐵 -ルールのいずれかを適用することにより、以下のように分解される 𝑅 𝑝 = 𝑗 𝑞 𝑝𝑗 𝑝′ 𝑞 𝑝′ 𝑗 𝑅𝑗 ここに、𝑞 𝑝𝑗 = 𝑤 𝑝𝑗 2 (𝑤2 -ルール)、 𝑞 𝑝𝑗 = 𝑥 𝑝 𝑤 𝑝𝑗 + (𝑧+ -ルール)、𝑞 𝑝𝑗 = 𝑤 𝑝𝑗 𝑥𝑖 − 𝑙 𝑝 𝑤 𝑝𝑗 + − ℎ 𝑝 𝑤 𝑝𝑗 − ( 𝑧 𝐵 -ルー ル) • 以上のように、すべての関連性スコア関数を具体的に書き下すことができた
  24. 24. 24 実験結果(1/3) • MNISTでの実験結果:
  25. 25. 25 実験結果(2/3) • 各方式の比較:上のグラフは、NN最終段の評価値が、関連性スコア関数に正しく分配さ れているかどうかを示すもので、直線に乗っているほど正しく分配されている • 下のヒストグラムは、関連性スコア関数の値の分布で、すべて非負になるのが正しい。ま た、分布が小さいほど、特徴をとらえている(必要条件) • 一番右の訓練無し関連モデルが最も優れている
  26. 26. 26 実験結果(3/3) • ILSVRCにおけるCaffeNetおよびGoogleNetの判定結果の評価:
  27. 27. 27 「𝑐 𝑘、 𝑑 𝑘は本当に定数なのか」についての考察 • まず、 𝑐 𝑘、 𝑑 𝑘が定数でなくても、p22の式 𝑅𝑗 = 𝑘 𝑥 𝑗 𝑗′ 𝑥 𝑗′ 𝑅 𝑘 の導出自体 は可能である(𝑅𝑗を上記のように定義してしまえばいい) • 𝑐 𝑘 、 𝑑 𝑘 が定数でなければならない理由は、式変形による導出によって、 テイラー展開の勾配を次の層の関連性スコア関数に伝搬させたいからで ある • 一方、 𝑐 𝑘、 𝑑 𝑘が定数であるという前提で導出した本論文の関連性スコ ア関数およびヒートマップは、良い結果を得られている • したがって、 𝑐 𝑘、 𝑑 𝑘が定数だという主張は正しいのかもしれないし、 もしそうでなかったとしても、テイラー展開から精度の高いヒートマッ プを得られたのだから、論文の目的は達成されたと考えられる
  28. 28. 28 ご清聴ありがとうございました

×