O slideshow foi denunciado.
Utilizamos seu perfil e dados de atividades no LinkedIn para personalizar e exibir anúncios mais relevantes. Altere suas preferências de anúncios quando desejar.

SSII2020TS: 機械学習モデルの判断根拠の説明​ 〜 Explainable AI 研究の近年の展開 〜​

2.221 visualizações

Publicada em

SSII2020 チュートリアルセッション TS3
6/12 (金) 9:30~10:40 メイン会場 (vimeo + sli.do)
本チュートリアルでは、機械学習モデルの判断根拠を提示するための説明法について紹介する。高精度な認識・識別が可能な機械学習モデルは一般に非常に複雑な構造をしており、どのような基準で判断が下されているかを人間が窺い知ることは困難である。このようなモデルのブラックボックス性を解消するために、近年様々なモデルの説明法が研究・提案されてきている。本チュートリアルではこれら代表的な説明法及び近年の更なる展開について紹介する。

Publicada em: Tecnologia
  • Seja o primeiro a comentar

SSII2020TS: 機械学習モデルの判断根拠の説明​ 〜 Explainable AI 研究の近年の展開 〜​

  1. 1. 機械学習モデルの判断根拠の説明 〜 Explainable AI 研究の近年の展開 〜 2020.6.12 原 聡 (⼤阪⼤学)
  2. 2. 【SSII2020 チュートリアル】 原聡 自己紹介 n 原 聡、博士(工学) • ~ 2013 • 2013 ~ 2016 • 2016 ~ 2017 • 2017 ~ n 研究 • 異常検知 - グラフィカルモデルの構造学習 (ECML’11) - 異常変数の同定 (AISTATS’15,17) • 機械学習モデルの説明 - アンサンブル木の簡略化 (AISTATS’18) - モデル列挙 (AAAI’17,18) - 嘘の説明 (ICML’19; AAAI’20) - データクレンジング(NeurIPS’19) 2 : 博士後期課程@鷲尾研、阪大 : 研究員@IBM東京基礎研 : 研究員@国立情報学研究所 : 助教 → 准教授@産研, 阪大
  3. 3. 【SSII2020 チュートリアル】 原聡 【参考資料】 n 本資料にないものは これら参考資料を参照 • 社会背景 • 研究界の動向 • 一部の説明法の紹介 3 https://www.slideshare.net/SatoshiHara3/ss-126157179 日本語まとめ資料 • 機械学習における解釈性(私のブックマーク), 人工知能, Vol.33, No.3, pages 366--369, 2018. • 説明可能AI(私のブックマーク), 人工知能, Vol.34, No.4, pages 577--582, 2019. 前置き・注意事項 1/6
  4. 4. 【SSII2020 チュートリアル】 原聡 おことわり n 本チュートリアルでは 「機械学習モデルが“ブラックボッ クス”だと困る状況」 を想定して話を進める。 n 「機械学習」 も 「モデルの説明」 も、あくまでも課題解 決のためのツール・手段。適材適所が大前提。 • モデルが“ブラックボックス”でも困らない事例にまで、説明を 求める必要はない。 • 「説明できない“ブラックボックス”なモデルは全てダメ」 と断じ る意図はない。過度に不安を助長するのは望ましくない。 4 機械学習の活躍が期待される領域 モデルが“ブラック ボックス”だと困る 領域 前置き・注意事項 2/6
  5. 5. 【SSII2020 チュートリアル】 原聡 【補足】 「モデルが“ブラックボックス”」とは 【ブラックボックス】 ② 使い方だけわかっていて、動作原理のわからない装置。 『三省堂 大辞林 第三版』より引用 n 機械学習モデルは ブラックボックスではない。 • 機械学習モデルの動作原理は明確に理解できる。 - モデル内部の計算の手順はプログラムとして記述される。 - 実行時の内部の各計算の結果にもアクセス可能である。 n 機械学習モデルにおける“ブラックボックス”とは • モデルが出力する予測の根拠を人間が直感的、 または論理的に理解できないこと。 5 辞書によれば 多くの場合、このような状況を指して “ブラックボックス”と言われる。 前置き・注意事項 3/6
  6. 6. 【SSII2020 チュートリアル】 原聡 全てはまずモデルを作るところから n “説明”は「実用価値のあるモデル」がある前提での話。 • 「価値価値のあるモデル」を実際に運用するに際して“ブラック ボックス”が問題になったときに、 “説明”について考える。 • モデルを作る前に“説明”を必要以上に気にしても意味がない。 n 実用・技術・“説明”のバランスがとれた開発を。 6 機械学習 モデルの開発 “説明”の検討実用現場 具体的な実用ケース、 具体的なモデルなしに “説明”だけを考えても あまり意味はない。 前置き・注意事項 4/6
  7. 7. 【SSII2020 チュートリアル】 原聡 全てはまずモデルを作るところから n “説明”は「実用価値のあるモデル」がある前提での話。 • 「価値価値のあるモデル」を実際に運用するに際して“ブラック ボックス”が問題になったときに、 “説明”について考える。 • モデルを作る前に“説明”を必要以上に気にしても意味がない。 n 実用・技術・“説明”のバランスがとれた開発を。 7 どんな“説明”が可能か? 機械学習 モデルの開発 “説明”の検討実用現場 どのような “説明”が必要か? 本当に“説明”が 必要か? 前置き・注意事項 5/6
  8. 8. 【SSII2020 チュートリアル】 原聡 【注意】 “説明”は万能ではない。むしろ高コスト。 n 論文として発表されている結果は、「うまくいった事例」 だけが抽出されている可能性がある。 n 説明法導入には、手元のモデル/データで検証が必要。 • 現状の説明法は手放しに使えるものではない。 n 説明には計算リソースも必要。 • それなりに計算コストがかかる方法が多い。 • 場合によっては、通常のモデルに加えて、別の説明用モデル を作る必要もある。 n “誤説明”もあり得る。 • 説明を意図的にミスリードするようにデータを改変できること が報告されている。 8 人手 お金・時間 リスク 前置き・注意事項 6/6
  9. 9. 【SSII2020 チュートリアル】 原聡 アウトライン 第一部: “モデルの説明”とは? 第二部: 代表的研究 • 重要特徴の提示 • 重要データの提示 第三部: 近年の展開 – 説明の信頼性 • 説明への攻撃 • 説明法の見直し • 説明の悪用 9
  10. 10. 【SSII2020 チュートリアル】 原聡 “モデルの説明”とは? n 機械学習モデルに予測だけでなく、 “説明”もして欲しい。 10 病気の診断モデルを導入したが、モデル の診断結果を信頼して良いかわからない。 診断の根拠を説明して欲しい。 工場に異常検知モデルを導入したが、 異常の見落としがないか心配だ。 モデルに見落としがないと保証して欲しい。 工場に導入した異常検知モデルが異常の 見落としをした。 モデルが見落とした理由が知りたい。 第一部: “モデルの説明”とは?
  11. 11. 【SSII2020 チュートリアル】 原聡 すごい “説明法” “モデルの説明”とは? n 機械学習モデルに予測だけでなく、 “説明”もして欲しい。 11 病気の診断モデルを導入したが、モデル の診断結果を信頼して良いかわからない。 診断の根拠を説明して欲しい。 工場に異常検知モデルを導入したが、 異常の見落としがないか心配だ。 モデルに見落としがないと保証して欲しい。 工場に導入した異常検知モデルが異常の 見落としをした。 モデルが見落とした理由が知りたい。 病気の診断根拠は… 私は見落としのない 完璧なモデルです。 なぜなら… 異常の見落としが 起きた原因は… 第一部: “モデルの説明”とは?
  12. 12. 【SSII2020 チュートリアル】 原聡 すごい “説明法” “モデルの説明”とは? n 機械学習モデルに予測だけでなく、 “説明”もして欲しい。 12 病気の診断モデルを導入したが、モデル の診断結果を信頼して良いかわからない。 診断の根拠を説明して欲しい。 工場に異常検知モデルを導入したが、 異常の見落としがないか心配だ。 モデルに見落としがないと保証して欲しい。 工場に導入した異常検知モデルが異常の 見落としをした。 モデルが見落とした理由が知りたい。 病気の診断根拠は… 私は見落としのない 完璧なモデルです。 なぜなら… 異常の見落としが 起きた原因は… ! 第一部: “モデルの説明”とは?
  13. 13. 【SSII2020 チュートリアル】 原聡 “モデルの説明” ≠ 何でも説明できる n “モデルの説明” は 「何でも説明できるすごい技術」ではない。 n “モデルの説明”は技術・研究分野の総称。 • 単一のすごい“説明法”が存在するわけではない。 • 実際は色々な要素技術の集合体。 13 “モデルの説明”に 過度な期待は抱か ないように。 第一部: “モデルの説明”とは?
  14. 14. 【SSII2020 チュートリアル】 原聡 “モデルの説明” ≒ モデルから情報抽出する技術 Q. “モデルの説明”は何をする技術なのか? A. 予測以外の 追加情報 を モデルから抽出する技術 。 n 追加情報 とは? • ユーザが知りたい情報。 • 抽出したい追加情報を明確にするのはユーザの仕事。 14 第一部: “モデルの説明”とは?
  15. 15. 【SSII2020 チュートリアル】 原聡 Q. “モデルの説明”は何をする技術なのか? A. 予測以外の 追加情報 を モデルから抽出する技術 。 n 追加情報 とは? • ユーザが知りたい情報。 • 抽出したい追加情報を明確にするのはユーザの仕事。 • 「診断の根拠」とは具体的にはどんな追加情報か? - 「血圧が低い」、「血糖値が高い」などの重要項目? - 「過去の事例Xと類似している」などの類似事例? 15 病気の診断モデルを導入したが、モデル の診断結果を信頼して良いかわからない。 診断の根拠を説明して欲しい。 “モデルの説明” ≒ モデルから情報抽出する技術 第一部: “モデルの説明”とは?
  16. 16. 【SSII2020 チュートリアル】 原聡 Q. “モデルの説明”は何をする技術なのか? A. 予測以外の 追加情報 を モデルから抽出する技術 。 n 追加情報 とは? • ユーザが知りたい情報。 • 抽出したい追加情報を明確にするのはユーザの仕事。 • 「見落としがない保証」とは具体的にはどんな追加情報か? - 要請が不明確。追加情報として何が欲しいか、の明確化が必要。 - ユーザはどんな情報があったら腹落ちするか? 16 工場に異常検知モデルを導入したが、 異常の見落としがないか心配だ。 モデルに見落としがないと保証して欲しい。 “モデルの説明” ≒ モデルから情報抽出する技術 第一部: “モデルの説明”とは?
  17. 17. 【SSII2020 チュートリアル】 原聡 Q. “モデルの説明”は何をする技術なのか? A. 予測以外の 追加情報 を モデルから抽出する技術 。 n 追加情報 とは? • ユーザが知りたい情報。 • 抽出したい追加情報を明確にするのはユーザの仕事。 • 「見落としの原因」とは具体的にはどんな追加情報か? - 「過去の正常事例Xと類似している」などの類似事例? - 「センサーデータの分布変化」などの環境要因? 17 工場に導入した異常検知モデルが異常の 見落としをした。 モデルが見落とした理由が知りたい。 “モデルの説明” ≒ モデルから情報抽出する技術 第一部: “モデルの説明”とは?
  18. 18. 【SSII2020 チュートリアル】 原聡 Q. “モデルの説明”は何をする技術なのか? A. 予測以外の 追加情報 を モデルから抽出する技術 。 n 追加情報 とは? • ユーザが知りたい情報。 • 抽出したい追加情報を明確にするのはユーザの仕事。 n モデルから抽出する技術 • 抽出したい追加情報ごとに使える“抽出技術”は異なる。 - e.g. 重要項目、類似事例など • 各種の“抽出技術”(説明法)を紹介するのが本講演の目的。 18 “モデルの説明” ≒ モデルから情報抽出する技術 第一部: “モデルの説明”とは?
  19. 19. 【SSII2020 チュートリアル】 原聡 “モデルの説明”の使い方 1. ユーザが知りたい追加情報を明確にする。 - ユーザ自身が「何を知ることができたら役に立つか」を考える。 - 役に立たない情報を取り出しても意味はない。 2. 適切な“抽出技術”を使ってモデルから追加情報を取り出す。 - 抽出技術が確立されている追加情報については既存技術を使う。 - 抽出技術が未確立な場合は、抽出技術の研究開発が必要。 3. 追加情報をもとに、ユーザが自身の行動を決定する。 - e.g. モデルが着目した重要特徴がおかしい。 → モデルの判断は誤りの可能性が高いので 無視する / 人間が判断する。 19 第一部: “モデルの説明”とは?
  20. 20. 【SSII2020 チュートリアル】 原聡 “モデルの説明”の使い方 20 欲しい追加情報 は明確か? 既存技術で抽出 できるか? 既存の抽出技術 追加情報は 役に立ったか? 抽出技術の新規開発 “説明”が欲しい! 追加情報 Yes Yes Yes No No No ! 第一部: “モデルの説明”とは?
  21. 21. 【SSII2020 チュートリアル】 原聡 【まとめ】 “モデルの説明”とは? n “モデルの説明”とは • 「何でも説明できるすごい説明法」ではない。 • ユーザが欲しい 追加情報 を モデルから抽出する技術。 - 欲しい追加情報は十分に明確である必要がある。 n “モデルの説明”の研究 • 様々な「追加情報」について、 抽出技術(説明法)の研究が 盛んに行われている。 - 抽出の精度向上や高速化、 抽出された情報の“品質”の 評価など 21 “モデルの説明”に関する論文数の推移 Peeking inside the black-box: A survey on Explainable Artificial Intelligence (XAI) https://ieeexplore.ieee.org/document/8466590/ 第一部: “モデルの説明”とは?
  22. 22. 【SSII2020 チュートリアル】 原聡 【補足】 “説明”以外の方法も考える。 n “説明”以外の方法で解決できないか? 22 病気の診断モデルを導入したが、モデル の診断結果を信頼して良いかわからない。 診断の根拠を説明して欲しい。 工場に異常検知モデルを導入したが、 異常の見落としがないか心配だ。 モデルに見落としがないと保証して欲しい。 工場に導入した異常検知モデルが異常の 見落としをした。 モデルが見落とした理由が知りたい。 予測の確信度を提示したらどう か?(e.g. ベイズの予測分散) 説明が不要な可読なモデルを 使ったらどうか?(e.g. 決定木) モデルを含む全体として頑健な 異常検知システムを作れない か?(e.g. フェールセーフ機能) ! 第一部: “モデルの説明”とは?
  23. 23. 【SSII2020 チュートリアル】 原聡 アウトライン 第一部: “モデルの説明”とは? 第二部: 代表的研究 • 重要特徴の提示 • 重要データの提示 第三部: 近年の展開 – 説明の信頼性 • 説明への攻撃 • 説明法の見直し • 説明の悪用 23
  24. 24. 【SSII2020 チュートリアル】 原聡 まず初めに n 説明法とは、ユーザが欲しい 追加情報 を 機械学習モ デルから抽出する技術。 • 『どんな追加情報が欲しいか』 はデータ/応用によって異なる。 - 現状は、研究者が「こんな追加情報があったら便利じゃない?」という 仮説に基づいて説明法の研究開発を進めていることが多い。 n 代表的な説明法 • 1. 重要な特徴の提示 • 2. 重要な学習データの提示 • 3. 自然言語による説明 • 4. モデルの可読化 • … 24 どんな追加情報を抽出したら / どの 方法を使えば現場の具体的な課題が 解決できるか、は個別に検討が必要。 第二部:代表的研究
  25. 25. 【SSII2020 チュートリアル】 原聡 代表的な研究・手法 1. 重要特徴の提示 【欲しい追加情報】 • 予測においてモデルが注目した特徴 【手法】 • LIME, SHAP, Anchor, Saliency Map など 2. 重要データの提示 【欲しい追加情報】 • 予測への関連が深いデータ 【手法】 • Influence, ProtoPNet, Concept Vector など 25 第二部:代表的研究
  26. 26. 【SSII2020 チュートリアル】 原聡 重要特徴の提示 【欲しい追加情報】 • 予測においてモデルが注目した特徴 代表的研究 n Why Should I Trust You?: Explaining the Predictions of Any Classifier, KDD'16 [Python実装 LIME; R実装 LIME] n A Unified Approach to Interpreting Model Predictions, NIPS'17 [Python実装 SHAP] n Anchors: High-Precision Model-Agnostic Explanations, AAAI'18 [Python実装 Anchor] 26 第二部:代表的研究
  27. 27. 【SSII2020 チュートリアル】 原聡 LIMEによる説明 n Why Should I Trust You?: Explaining the Predictions of Any Classifier, KDD'16 [Python実装 LIME; R実装 LIME] • どの特徴が予測に重要だったかを提示する。 • モデルを説明対象データの周辺で線形モデルで近似する。 - 線形モデルの係数の大小で、各特徴の重要度合いを測る。 27 第二部:代表的研究 Why Should I Trust You?: Explaining the Predictions of Any Classifierより引用
  28. 28. 【SSII2020 チュートリアル】 原聡 LIMEによる説明 28 第二部:代表的研究
  29. 29. 【SSII2020 チュートリアル】 原聡 LIMEの問題設定 n 2種類のデータ表現を使い分ける。 • モデル用のデータ表現(機械表現): One-Hot、埋め込み表 現など - モデル用のデータ表現は、人間には理解が難しい。 • 人間用のデータ表現(可読表現): 単語、画像のパッチなど - 人間用のデータ表現は、人間が直感的に理解しやすい。 n LIMEでは機械表現で学習したモデルを、可読表現を介 して説明として提示する。 • Adultの例: One-Hot表現(機械表現)で学習したモデルを、 元の特徴量(可読表現)を使って説明。 29 第二部:代表的研究
  30. 30. 【SSII2020 チュートリアル】 原聡 LIMEの基本アイディア n データの機械表現!に対応する可読表現を!′とする。 • LIMEでは可読表現!′はバイナリ特徴!# ∈ {0, 1}*とする。 +番 目の可読特徴!, # は、ある+番目のパターン(単語や画像の パッチ)の有無を表現。 n モデル-(!)の複雑な識別境界を、説明対象データ!0の 周辺で線形関数で近似する。 • - ! ≈ 2 !# ≔ 40 + 46!# for !# ∈ NeighborOf(!0 # ) • 4の要素4,の大小でもって、各可読特徴の予測への関連の 大きさを測る。 30 第二部:代表的研究 Why Should I Trust You?: Explaining the Predictions of Any Classifierより引用
  31. 31. 【SSII2020 チュートリアル】 原聡 LIMEの計算方法 n モデル!(#)の複雑な識別境界を、説明対象データ#%の 周辺で線形関数で近似する。 • ! # ≈ ' #( ≔ *% + *,#( for #( ∈ NeighborOf(#% ( ) n 係数*の推定 • min : ∑ <,<> ∈? @AB C ! C − ' C( E s.t. * % ≤ G - * %: 係数の非零要素の個数 - @AB C : 点#%から見た重み - H: データ点#%に微小ノイズをのせたデータの集合 31 第二部:代表的研究
  32. 32. 【SSII2020 チュートリアル】 原聡 LIMEの応用例 n 画像認識の説明 n モデルのデバッグ • 狼 vs ハスキーの分類 • 狼画像として、雪背景 のもののみを使用。 → LIMEにより、モデルが 雪を根拠に狼を認識 していることがわかる。 32 第二部:代表的研究 Why Should I Trust You?: Explaining the Predictions of Any Classifier より引用
  33. 33. 【SSII2020 チュートリアル】 原聡 画像における重要特徴の提示 【欲しい追加情報】 • 予測においてモデルが注目した特徴(画像領域) n 代表的研究 [Python+Tensorflow実装 saliency; DeepExplain] • Striving for Simplicity: The All Convolutional Net (GuidedBackprop) • On Pixel-Wise Explanations for Non-Linear Classifier Decisions by Layer-Wise Relevance Propagation (Epsilon- LRP) • Axiomatic Attribution for Deep Networks (IntegratedGrad) • SmoothGrad: Removing Noise by Adding Noise (SmoothGrad) • Learning Important Features Through Propagating Activation Differences (DeepLIFT) 33 第二部:代表的研究
  34. 34. 【SSII2020 チュートリアル】 原聡 勾配ベースのハイライト法 n 「モデルが画像のどこに注目したか」を推定してハイラ イトする方法 34 第二部:代表的研究
  35. 35. 【SSII2020 チュートリアル】 原聡 勾配ベースのハイライト法の原理 n 入力のある要素を微小変化させたら、出力はどれだけ 変化するか? • 認識に寄与している要素を微小変化させた場合 → 出力は大きく変化する • 認識に寄与していない要素を微小変化させた場合 → 出力はほぼ変化しない 35 ここを変化させたら「シマウマ」と認識さ れなくなるかも ここを変化させても「シマウマ」という認 識は変わらないだろう 第二部:代表的研究
  36. 36. 【SSII2020 チュートリアル】 原聡 勾配ベースのハイライト法の原理 n モデルを ! = # $ とする。 n あるデータ点 $ についてハイライトを計算したいとする。 n 勾配に基づくハイライト法 [Simonyan et al., arXiv’14] 入力の要素$%の注目度をモデルの入力勾配 &' ( &() で測る。 • 認識に寄与している要素を微小変化させた場合 → 出力は大きく変化する → *+ , *,- が大きい → 注目度大 • 認識に寄与していない要素を微小変化させた場合 → 出力はほぼ変化しない → &' ( &() が小さい → 注目度小 36 第二部:代表的研究
  37. 37. 【SSII2020 チュートリアル】 原聡 勾配ベースのハイライト法の原理 n 勾配に基づくハイライト法 [Simonyan et al., arXiv’14] 入力の要素!"の注目度をモデルの入力勾配 #$ % #%& で測る。 n 発展的手法:勾配はノイズが多いので、ノイズを減らす。 • GuidedBP [Springenberg et al., arXiv’14] back propagation時に正の勾配だけ伝搬させる。 • LRP [Bach et al., PloS ONE’15] 各層毎の注目度の総和を保存するように伝搬させる。 • IntegratedGrad [Sundararajan et al., arXiv’17] 勾配を積分する。 • SmoothGrad [Smilkov et al., arXiv’17] 勾配に摂動を加えて平均する。 • DeepLIFT [Shrikumar et al., ICML’17] 勾配の代わりに基準点からの差分を使う。 37 第二部:代表的研究
  38. 38. 【SSII2020 チュートリアル】 原聡 【まとめ】 重要特徴の提示 【欲しい追加情報】 • 予測においてモデルが注目した特徴 n LIME • どの可読特徴が予測に重要だったかをモデルから抽出する。 • 方法: 可読特徴を使ってモデルを線形近似する。 n 勾配ベースのハイライト法(Saliency Map) • どの特徴(画像領域)が予測に重要だったかを抽出する。 • 方法: 入力の微小変化がモデル出力に与える影響を勾配を 使って評価する。 38 第二部:代表的研究
  39. 39. 【SSII2020 チュートリアル】 原聡 代表的な研究・手法 1. 重要特徴の提示 【欲しい追加情報】 • 予測においてモデルが注目した特徴 【手法】 • LIME, SHAP, Anchor, Saliency Map など 2. 重要データの提示 【欲しい追加情報】 • 予測への関連が深いデータ 【手法】 • Influence, ProtoPNet, Concept Vector など 39 第二部:代表的研究
  40. 40. 【SSII2020 チュートリアル】 原聡 重要データの提示 【欲しい追加情報】 • 予測への関連が深いデータ 代表的研究 n Understanding Black-box Predictions via Influence Functions, ICML’17 [Python実装 influence-release] n This Looks Like That: Deep Learning for Interpretable Image Recognition, NeurIPS’19 [PyTorch実装 ProtoPNet] n Interpretability Beyond Feature Attribution: Quantitative Testing with Concept Activation Vectors (TCAV), ICML’18 [Tensorflow実装 tcav] 40 第二部:代表的研究
  41. 41. 【SSII2020 チュートリアル】 原聡 Influenceによる説明 n Understanding Black-box Predictions via Influence Functions, ICML’17 [Python実装 influence-release] n ある訓練データ("′, %′) が“無かった”としたら、テスト データ"の予測はどれくらい変わるか? 41 ラベルを予測し たいテスト画像 予測への影響が強い 訓練画像(犬) 予測への影響が強い 訓練画像(熱帯魚) 第二部:代表的研究 Understanding Black-box Predictions via Influence Functions Explanations より引用
  42. 42. 【SSII2020 チュートリアル】 原聡 Influenceの基本アイディア n ある訓練データが“無かった”としたら、テストデータの 予測はどれくらい変わるか? 42 これは 「ネコ」 これは 「イヌ」 全てのデータで 学習したモデル ある訓練データが なかった場合のモデル なくなった訓練データがモデル の判断には重要だったらしい。 → モデルの判断の“説明” 第二部:代表的研究
  43. 43. 【SSII2020 チュートリアル】 原聡 Influenceの方法 n 愚直な方法 • 訓練データを一個ずつ抜いて実際にモデルを作ってみる。 • 問題点: 時間がかかりすぎる。 n この論文の方法 • 実際にモデルを訓練データの数だけ作らなくても大丈夫。 • どの訓練データが効いたかは、影響関数を使って計算できる。 43 統計学で提唱された概念 第二部:代表的研究
  44. 44. 【SSII2020 チュートリアル】 原聡 Influenceの方法 n ある訓練データ("′, %′) が“無かった”としたら、テスト データ"の予測はどれくらい変わるか? n モデルを % = (("; *+), *+を学習されたパラメータとする。 *+ = argmin 2∈4 5 67(8,9)∈: ;(<; +) *+=6> = argmin 2∈4 5 6∈: ?@A 6B6> ;(<; +) n influence • C+=6> − C+を影響関数を使って近似的に評価する。 C+=6> − C+ ≈ − 1 G HI2 =J K;(<>; C+) 44 全データで 学習した場合 <> = ("′, %′)が 無かった場合 第二部:代表的研究 学習の目的関数のへシアン
  45. 45. 【SSII2020 チュートリアル】 原聡 Influenceの応用 n Data Poisoning • 指定したテストデータへの影響の強い学習データに敵対的ノ イズをのせた、“敵対的”学習データを作る。 • “敵対的”学習データで学習したモデルは、指定したテスト データで間違えるようになる。 45 第二部:代表的研究 Understanding Black-box Predictions via Influence Functions Explanations より引用
  46. 46. 【SSII2020 チュートリアル】 原聡 ProtoPNet: パッチを“埋め込んだ”モデル n This Looks Like That: Deep Learning for Interpretable Image Recognition, NeurIPS’19 [PyTorch実装 ProtoPNet] n ProtoPNetによる説明 46 画像中の各部位が、既知の 学習データと類似しているの で、この画像を「カケス」と認 識した。 This Looks Like That: Deep Learning for Interpretable Image Recognition より 第二部:代表的研究
  47. 47. 【SSII2020 チュートリアル】 原聡 ProtoPNetの仕組み n 1. 深層特徴抽出モジュール 47 ! 入力画像!の一部の領域を 表現する特徴ベクトル 第二部:代表的研究
  48. 48. 【SSII2020 チュートリアル】 原聡 ProtoPNetの仕組み n 1. 深層特徴抽出モジュール 48 n 2. プロトタイプ • 訓練データの“代表点” ! , # , … , % &′ 訓練画像&′の一部の領域を 表現する特徴ベクトル & 入力画像&の一部の領域を 表現する特徴ベクトル 第二部:代表的研究
  49. 49. 【SSII2020 チュートリアル】 原聡 ProtoPNetの仕組み n 1. 深層特徴抽出モジュール n 3. 類似度評価モジュール 49 ! n 2. プロトタイプ • 訓練データの“代表点” " , $ , … , & " , $ , … , ' ("" ("$ (&' … " , $ , … , ' ! !′ 入力画像の各領域と 訓練画像の代表領域 との類似度 第二部:代表的研究
  50. 50. 【SSII2020 チュートリアル】 原聡 ProtoPNetの仕組み n 1. 深層特徴抽出モジュール n 3. 類似度評価モジュール 50 ! n 2. プロトタイプ • 訓練データの“代表点” n 4. 線形予測モジュール " , $ , … , & " , $ , … , ' ("" ("$ (&' … " , $ , … , ' ("" ("$ (&' … )" )$ )* … 第二部:代表的研究
  51. 51. 【SSII2020 チュートリアル】 原聡 ProtoPNetの仕組み n 1. 深層特徴抽出モジュール n 3. 類似度評価モジュール 51 ! n 2. プロトタイプ • 訓練データの“代表点” n 4. 線形予測モジュール " , $ , … , & " , $ , … , ' ("" ("$ (&' … " , $ , … , ' ("" ("$ (&' … )" )$ )* … )+ = - ./" & - 0/" ' 1.0(.0 + 3 1.0(.0が大 入力画像の4番目の領域と訓 練画像の5番目の領域が似て いることが予測に影響している。 第二部:代表的研究
  52. 52. 【SSII2020 チュートリアル】 原聡 ProtoPNetの実行例 52 This Looks Like That: Deep Learning for Interpretable Image Recognition より 入力画像 入力画像の 類似領域 訓練画像の プロトタイプ プロトタイプ との類似度 第二部:代表的研究
  53. 53. 【SSII2020 チュートリアル】 原聡 Concept Vectorによる説明 n 特定の“コンセプト”を判断基準にしているか? • Interpretability Beyond Feature Attribution: Quantitative Testing with Concept Activation Vectors (TCAV), ICML’18 [Tensorflow実装 tcav] • シマウマ画像の認識に“シマシマ”コンセプトは重要か? 53 第二部:代表的研究 https://beenkim.github.io/slides/TCAV_ICML_pdf.pdf より引用
  54. 54. 【SSII2020 チュートリアル】 原聡 Concept Vectorによる説明 n 深層学習モデルの判断と、特定の“コンセプト”データが 関係あるか、を調べる。 n 用意するもの • “コンセプト”を表現するデータ • ランダムなデータ • 深層学習モデルの中間層 n 中間層での判断と“コンセプト”データとの関係を調べる。 54 入力! 出力" = $ % = $('(!)) 中間層での表現 % = '(!)入力→中間 ' 中間→ 出力 $ 第二部:代表的研究 https://beenkim.github.io/slides/TCAV_ICML_pdf.pdf より引用
  55. 55. 【SSII2020 チュートリアル】 原聡 Concept Vectorによる説明 n 中間層での判断と“コンセプト”データの関係を調べる。 • コンセプトデータ、ランダムデータの中間層での分布を考える。 55 中間層でのデータの分布 ! こちらに行くほど、 “シマシマ”度合いが強い “シマシマ”コンセプトを 表現するConcept Vector ! 第二部:代表的研究 https://beenkim.github.io/slides/TCAV_ICML_pdf.pdf より引用
  56. 56. 【SSII2020 チュートリアル】 原聡 Concept Vectorによる説明 n 中間層での判断と“コンセプト”データの関係を調べる。 • データをConcept Vectorの方向に動かすと、判断はどうなる か? 56 中間層でのデータの分布 ! 調べたい 入力データ" データをちょっとだけConcept Vector の方向に動かして、判断結果# " の 変化を調べる。 # $ + &! − # $ ≈ & )*# $ +! )*# $ +!が大 → 結果と“コンセプト”データの関係あり )*# $ +!が小 → 結果と“コンセプト”データの関係なし $ = -(") 第二部:代表的研究 https://beenkim.github.io/slides/TCAV_ICML_pdf.pdf より引用
  57. 57. 【SSII2020 チュートリアル】 原聡 Concept Vectorによる説明: 結果例 n “スーツ”コンセプトと各種画像の関係の大小 57 関係:大 関係:小画像 クラス CEO 看護 師長 女性 モデル 第二部:代表的研究 https://beenkim.github.io/slides/TCAV_ICML_pdf.pdf より引用【SSII2020 チュートリアル】 原聡
  58. 58. 【SSII2020 チュートリアル】 原聡 【まとめ】 重要データの提示 【欲しい追加情報】 • 予測への関連が深いデータ n Influence • 予測への影響が大きかった学習データを抽出する。 • 方法: 学習データの有無による影響を評価する。 n ProtoPNet • 予測への影響が大きかった学習データのパッチを抽出する。 • 方法: 代表的なパッチをモデルに陽に埋め込む。 n Concept Vector • ユーザの“コンセプト”データと、予測との関連の有無を抽出する。 • 方法: 予測対象データを“コンセプト”の方向に微小変化させたとき のモデル出力変化を評価する。 58 第二部:代表的研究
  59. 59. 【SSII2020 チュートリアル】 原聡 アウトライン 第一部: “モデルの説明”とは? 第二部: 代表的研究 • 重要特徴の提示 • 重要データの提示 第三部: 近年の展開 – 説明の信頼性 • 説明への攻撃 • 説明法の見直し • 説明の悪用 59
  60. 60. 【SSII2020 チュートリアル】 原聡 近年の展開 – 説明の信頼性 n 説明への攻撃 • Interpretation of Neural Networks is Fragile, AAAI’19 • Explanations can be manipulated and geometry is to blame, NeurIPS’19 n 説明法の見直し • Sanity Checks for Saliency Maps, NeurIPS’18 n 説明の悪用 • Fairwashing: the risk of rationalization, ICML’19 [Python実装 LaundryML] [発表資料] 60 第三部:近年の展開 説明そのものの 信頼性への疑問 説明の悪用の 可能性 [実装 InterpretationFragility]
  61. 61. 【SSII2020 チュートリアル】 原聡 説明への敵対的攻撃 n Saliency Map(画像の勾配ハイライト)による説明は、敵対 的攻撃に脆弱であることを指摘。 • Interpretation of Neural Networks is Fragile, AAAI’19 61 Interpretation of Neural Networks Is Fragile Explanations より引用 画像に微小ノイズをのせることで、分類結果を変えることなく、 “説明”のハイライト箇所を変えることができる。 第三部:近年の展開 [実装 InterpretationFragility]
  62. 62. 【SSII2020 チュートリアル】 原聡 説明への敵対的攻撃 n Saliency Mapの脆弱性はReLU由来であることを指摘。 softplusへと活性化関数を置き換えることで頑健化できる。 • Explanations can be manipulated and geometry is to blame, NeurIPS’19 62Explanations can be manipulated and geometry is to blame より引用 ReLUを使うと識別境界面がガタガタ になる。勾配もガタガタで、入力が少 し変わるだけで勾配が大きく変わる。 ReLUをsoftplusに置き換えると識別境 界面が滑らかになる。入力の微小変 化に対して勾配が頑健になる。 第三部:近年の展開
  63. 63. 【SSII2020 チュートリアル】 原聡 近年の展開 – 説明の信頼性 n 説明への攻撃 • Interpretation of Neural Networks is Fragile, AAAI’19 • Explanations can be manipulated and geometry is to blame, NeurIPS’19 n 説明法の見直し • Sanity Checks for Saliency Maps, NeurIPS’18 n 説明の悪用 • Fairwashing: the risk of rationalization, ICML’19 [Python実装 LaundryML] [発表資料] 63 第三部:近年の展開 説明そのものの 信頼性への疑問 説明の悪用の 可能性 [実装 InterpretationFragility]
  64. 64. 【SSII2020 チュートリアル】 原聡 説明法の見直し n 画像認識モデルの注目領域を抽出する「ハイライト法」 の良し悪しの評価方法を提案。 • Sanity Checks for Saliency Maps, NeurIPS’18 n 疑問: どのハイライト法を使うのが良いのか? 64 「注目領域」がハイラ イト法の数だけある。 どれが正しい? みんな正しい? 第三部:近年の展開
  65. 65. 【SSII2020 チュートリアル】 原聡 評価法: Model Parameter Randomization Test n アイディア • モデルのパラメータの一部をランダム値に置き換えた “ダメなモデル”を作る。 • “ダメなモデル”からは“ダメなハイライト”しか出ないはず。 n 方法 • 元のモデルと“ダメなモデル”とで、ハイライト結果を比較する。 - 「変化大のハイライト法」は、良い/ダメなモデルの差に敏感 → モデルの情報をきちんと読み取れる“良い手法” - 「変化小のハイライト法」は、良い/ダメなモデルの差がわからない → モデルの情報を読み取れない“悪い手法” 65 第三部:近年の展開
  66. 66. 【SSII2020 チュートリアル】 原聡 Model Parameter Randomization Testの例 n 出力側から一個ずつ順番に重みをランダム化していく。 • Guided Backprop、Guided GradCAMはランダム化された “ダメなモデル”でもハイライトに変化がない。 → これらはモデルを見ていない悪い手法。 66 Sanity Checks for Saliency Maps より引用 第三部:近年の展開
  67. 67. 【SSII2020 チュートリアル】 原聡 “説明”の良し悪しを適切に評価する必要がある。 n 「見た目がそれらしいハイライト」が必ずしも モデルの注目領域を正しく反映しているとは言えない。 • きちんとモデルやデータの情報を反映できるハイライト法を選 んで使う必要がある。 • 見た目に惑わされずに、きちんとした定量評価が必要。 - モデルやデータの情報を一切使わない画像のエッジ検出でも、いくつ かのハイライト法と非常に似たハイライトが作れてしまう。 n この論文はあくまでも「最低限の妥当性のチェック」 • 「この論文のチェックをパスできない方法は悪い」とは言える。 • しかし「この論文のチェックをパスしたものが全て良い」とは言 えない。 - 論文中のチェック以外にも「パスして当然」なチェックはあるかも。 - Q. どのようなチェックをパスするべきか? 67 第三部:近年の展開
  68. 68. 【SSII2020 チュートリアル】 原聡 近年の展開 – 説明の信頼性 n 説明への攻撃 • Interpretation of Neural Networks is Fragile, AAAI’19 • Explanations can be manipulated and geometry is to blame, NeurIPS’19 n 説明法の見直し • Sanity Checks for Saliency Maps, NeurIPS’18 n 説明の悪用 • Fairwashing: the risk of rationalization, ICML’19 [Python実装 LaundryML] [発表資料] 68 第三部:近年の展開 説明そのものの 信頼性への疑問 説明の悪用の 可能性 [実装 InterpretationFragility]
  69. 69. Fairwashing: the risk of rationalization Ulrich Aïvodji, Hiromi Arai, Olivier Fortineau, Sébastien Gambs, Satoshi Hara, Alain Tapp 69 第三部:近年の展開 ICML’19 [Python実装 LaundryML] [資料 Slide & Video]
  70. 70. 【SSII2020 チュートリアル】 原聡 【参考】 AI利活用ガイドライン(総務省, 2019) 70http://www.soumu.go.jp/menu_news/s-news/01iicp01_02000079.html より引用 第三部:近年の展開 【SSII2020 チュートリアル】 原聡
  71. 71. 【SSII2020 チュートリアル】 原聡 【参考】 AI利活用ガイドライン(総務省, 2019) 71 http://www.soumu.go.jp/menu_news/s-news/01iicp01_02000079.html より引用 第三部:近年の展開 モデルによる決定が公平であるように配慮する。 性別や人種などに基づく決定をしない。 モデルによる決定の過程や根拠が適切に説明される ように配慮する。 「ローン審査はxxxという理由で棄却されました。」
  72. 72. 【SSII2020 チュートリアル】 原聡 “Fairwashing”: 偽りの説明による正当化 n モデルの公平性の説明 72 正直な説明 ローン審査は、あなたの性別がxだ という理由で棄却されました。 不公平なモデル ローンの可否を性別で判断 第三部:近年の展開 モデル 審査サービス
  73. 73. 【SSII2020 チュートリアル】 原聡 “Fairwashing”: 偽りの説明による正当化 n モデルの公平性の説明 73 偽りの説明 ローン審査は、あなたの年収が低い という理由で棄却されました。 不公平なモデル ローンの可否を性別で判断 第三部:近年の展開 モデル 審査サービス
  74. 74. 【SSII2020 チュートリアル】 原聡 “Fairwashing”: 偽りの説明による正当化 n モデルの公平性の説明 74 偽りの説明 ローン審査は、あなたの年収が低い という理由で棄却されました。 不公平なモデル ローンの可否を性別で判断 第三部:近年の展開 モデル 審査サービス “Fairwashing” 悪意のある人・組織は偽りの説明により自身の モデルの正当性を詐称しうる。 “Fairwashing” 【SSII2020 チュートリアル】 原聡
  75. 75. 【SSII2020 チュートリアル】 原聡 “Fairwashing”: 偽りの説明による正当化 n モデルの公平性の説明 75 偽りの説明 ローン審査は、あなたの年収が低い という理由で棄却されました。 不公平なモデル ローンの可否を性別で判断 第三部:近年の展開 モデル 審査サービス LaundryML 偽りの説明を生成する方法 → 偽りの説明は技術的に実現可能 “Fairwashing”は現実的に起こりえる “Fairwashing” 悪意のある人・組織は偽りの説明により自身の モデルの正当性を詐称しうる。 “Fairwashing” 【SSII2020 チュートリアル】 原聡
  76. 76. 【SSII2020 チュートリアル】 原聡 LaundryML: 偽りの説明を生成する方法 n The idea “説明の候補”を複数生成する。 候補の中から自己の正当化に“有用な説明” を選ぶ。 n “説明の候補”の複数生成s • 説明モデルを列挙する。[Hara & Maehara’17; Hara & Ishihata’18] n “有用な説明” • 公平性の正当化の場合、demographic parity (DP)などで各説 明候補の公平性度合いを測る。 • DPが十分小さい説明を選ぶ。 76 アイディア 第三部:近年の展開
  77. 77. 【SSII2020 チュートリアル】 原聡 結果例 n Adultデータでの結果 • 説明における各特徴の重要度をFairMLツールにより計測 77 正直な説明 偽りの説明 gender gender 第三部:近年の展開 【SSII2020 チュートリアル】 原聡
  78. 78. 【SSII2020 チュートリアル】 原聡 結果例 n Adultデータでの結果 • 説明における各特徴の重要度をFairMLツールにより計測 78 正直な説明 偽りの説明 gender gender 第三部:近年の展開 If else if else if else if else if else low-income then high-income then low-income then low-income then low-income then high-income capital gain > 7056 marital = single education = HS-grad occupation = other occupation = white-colloar 偽りの説明 【補足】 この実験での「欲しい追加情報」は 「モデルの(近似的な)判断ルール」。 【SSII2020 チュートリアル】 原聡
  79. 79. 【SSII2020 チュートリアル】 原聡 まとめ n LaundryMLにより、偽りの説明は技術的に実現可能。 → “Fairwashing”は現実的に起こりえる問題。 n 問: どうしたら“Fairwashing”を防げるか? • 技術的に偽りの説明は検知可能か? • 制度的に防げるか? 79 第三部:近年の展開 “Fairwashing” 悪意のある人・組織は偽りの説明により自身の モデルの正当性を詐称しうる。 “Fairwashing”
  80. 80. 【SSII2020 チュートリアル】 原聡 【もう一つのFairwashing】 公平性の証拠の偽造 n Faking Fairness via Stealthily Biased Sampling, AAAI’20 Special Track [Python実装 stealthily-biased-sampling] n 公平性の検証には“公平性の証拠”が必要。 • 証拠なしではユーザが公平性を検証できない。 • 公平性の証拠の候補 - モデルの公開: 第三者検証が可能だがリスク大で非現実的。 - 一部のデータの公開: モデル公開ほどリスクはない。 Q. 「一部のデータの公開」は証拠たりえるか? A. 証拠としては不十分。 悪意を持ってデータを選別すると、不公平なモデル からも“公平性の証拠”の偽造が可能。 80 第三部:近年の展開 例. 男女差別をするモデルでも、公開するデータの 男女のバランスを調整すれば公平に見える。
  81. 81. 【SSII2020 チュートリアル】 原聡 関連する話題: 説明への批判 n 近似的な説明への批判 • 提案されている説明法の多くは、モデルを“近似的に”読める ようにすることで説明を生成する。 • 近似的な説明では、モデルと説明の間にギャップが生じる。 - このギャップを悪用すると「嘘の説明」ができる。 • つまり、近似的な説明は正しくない可能性がある。 - 実際、先述の通り“正しくない”説明法が提案されている。 n 参考 • Please Stop Explaining Black Box Models for High-Stakes Decisions, Nature Machine Intelligence, 2019. 81 第三部:近年の展開
  82. 82. 【SSII2020 チュートリアル】 原聡 まとめ 第一部: “モデルの説明”とは? 第二部: 代表的研究 • 重要特徴の提示 • 重要データの提示 第三部: 近年の展開 – 説明の信頼性 • 説明への攻撃 • 説明法の見直し • 説明の悪用 82
  83. 83. 【SSII2020 チュートリアル】 原聡 Q. “モデルの説明”は何をする技術なのか? A. 予測以外の 追加情報 を モデルから抽出する技術 。 n 追加情報 とは? • ユーザが知りたい情報。 • 抽出したい追加情報を明確にするのはユーザの仕事。 n モデルから抽出する技術 • 抽出したい追加情報ごとに使える“抽出技術”は異なる。 - e.g. 重要項目、類似事例など • 各種の“抽出技術”(説明法)を紹介するのが本講演の目的。 83 “モデルの説明” ≒ モデルから情報抽出する技術
  84. 84. 【SSII2020 チュートリアル】 原聡 “モデルの説明”の使い方 1. ユーザが知りたい追加情報を明確にする。 - ユーザ自身が「何を知ることができたら役に立つか」を考える。 - 役に立たない情報を取り出しても意味はない。 2. 適切な“抽出技術”を使ってモデルから追加情報を取り出す。 - 抽出技術が確立されている追加情報については既存技術を使う。 - 抽出技術が未確立な場合は、抽出技術の研究開発が必要。 3. 追加情報をもとに、ユーザが自身の行動を決定する。 - e.g. モデルが着目した重要特徴がおかしい。 → モデルの判断は誤りの可能性が高いので 無視する / 人間が判断する。 84
  85. 85. 【SSII2020 チュートリアル】 原聡 “モデルの説明”の使い方 85 欲しい追加情報 は明確か? 既存技術で抽出 できるか? 既存の抽出技術 追加情報は 役に立ったか? 抽出技術の新規開発 “説明”が欲しい! 追加情報 Yes Yes Yes No No No !
  86. 86. 【SSII2020 チュートリアル】 原聡 関連資料(英語) n チュートリアル資料 • ICML’17, AAAI’19, KDD’19, FAT*’20 n 動画 • NIPS’17 Interpretable ML Symposium Debate • KDD’19 Keynote (by Cynthia Rudin) • How to Fail Interpretability Research(by Been Kim) n 書籍/オンライン資料 • Interpretable Machine Learning • Limitations of Interpretable Machine Learning Methods • Explanatory Model Analysis • Explainable AI: Interpreting, Explaining and Visualizing Deep Learning 86
  87. 87. 【SSII2020 チュートリアル】 原聡 関連資料(英語) 87 https://github.com/csinva/csinva.github.io/blob/master/_notes/cheat_sheets/interp.pdf
  88. 88. 【SSII2020 チュートリアル】 原聡 関連資料(日本語) n スライド • モデルを跨いでデータを見たい • tidymodels+DALEXによる解釈可能な機械学習 • SHapley Additive exPlanationsで機械学習モデルを解釈する • BlackBox モデルの説明性・解釈性技術の実装 • 一般化線形モデル (GLM) & 一般化加法モデル(GAM) • 機械学習の説明可能性への取り組み - DARPA XAI プロ ジェクトを中心に - n 原の資料 • アンサンブル木モデル解釈のためのモデル簡略化法 • 機械学習モデルの列挙 88

×