SlideShare ist ein Scribd-Unternehmen logo
1 von 21
ブラックボックスからXAI (説明可能なAI) へ
LIME (Local Interpretable Model-agnostic Explanations)
AIが出した予測結果の説明責任を果たす
機械学習における説明可能性 (解釈可能性)
● 高い予測精度であっても、重大な意
思決定がからむ場合には、予測結果
の「説明可能性」が重要となる (e.g.
医療現場)
● 機械学習は高い精度で予測は得意だ
が、予測の根拠などを示すのは不得
意 → ブラックボックス
● 現代の機械学習のモデルは複雑にな
りすぎて解釈が難しい → XAIが必要
● 説明可能性と解釈可能性については、
同文脈で使われることが多い
なぜそのような診断にな
ったのですか?
AIが判断しました。
ブラックボックスなので
理由はわかりません。
ブラックボックスなAIをそのまま利用した場合
の医療現場
大域的な説明と局所的な説明
● 説明可能性には「大域的な説明」と「局所的な説明」の2つがある
○ 大域的な説明
■ モデル全体の挙動を理解する (e.g. 特徴が重要かを知る)
○ 局所的な説明
■ ある入力に対して予測の根拠を知る (e.g. どの特徴が予測に寄与したかを知る)
入力 出力
どの特徴を重要視
しているモデルか
予測結果に寄与し
た特徴は何か
大域的な説明 局所的な説明
今回紹介する論文
● “Why should I trust you?” Explaining the Predictions of Any Classifier
○ 著者: MT Ribeiro, S Singh, C Guestrin
○ 投稿: Proceedings of the 22nd ACM SIGKDD International Conference on Knowledge
Discovery and Data Mining. ACM. 2016, pp. 1135–1144.
○ 引用: 6147件 (2021/08/10 時点)
● 論文の内容
○ 人間がモデルを”信頼する”ための手法を提案
■ 予測時に何を重要視したか、局所的な説明をするためのアルゴリズムLIME
■ モデル全体を説明する、大域的な説明のためのSP-LIME
“モデルを信頼する” とは
● 2種類の定義
○ 個々の予測を信頼 → 局所的な説明
■ 予測結果に基づいてなんらかの行動をとれるか
○ モデルそのものを信頼 → 大域的な説明
■ モデルがどのような性質を持つか理解できる
● どちらも人がモデルの動作をどれだけ理解しているかに直接影響
● しかし、モデルの「評価軸」は予測精度を用いることが多い
● 一方、実社会では、精度とは別に信頼性をも求められることがある
○ 医療診断やテロの検知など
信頼性の問題に対処するために、予測・モデルに対する説明を提供する必要がある
LIME (Local Interpretable Model-agnostic Explanations)
● 元のモデルが複雑だとしても人間が理解
できるようにする
● 元のモデルは複雑な境界を持つため、判
別の基準が分かりづらい → 説明したい
データの近くを集めて、その周辺だけで
局所的に解釈しやすいモデルで近似させ
る
● Lassoの正則化パスを用いることで、人
間が扱える数に特徴を限定し、局所境界
を回帰で解く
: 説明したいデータ
: 正例のサンプル
: 負例のサンプル
: モデルが正と予測する範囲
: モデルが負と予測する範囲
: 局所的な分類器
例) SVMによるテキスト分類
● あるテキストが、キリスト教と無神論どち
らについて書かれたものか予測
● モデルは検証データで94%の正解率
● 右側は実際あるテキストで予測したとき結
果で、予測時に重要だった単語が抽出され
ている
● 予測の説明を見ると、”Posting”, “Host”,
“Re” といった関係ない単語を重要視してい
ることがわかる
➡ 分類器として信頼できない
● LIMEにより、データセット自体に含まれる
問題を発見し、取り除くこともできる
例) DNNによる画像分類
● 画像に何が写っているか予測 (google の画像分類モデルを用いた)
● 図(b)~(d) は元画像(a) に対して予測された上位3クラスの重要視されたピクセル部分
● 図(c), (d) は正解したが、(b) はアコースティックギターをエレクトリックギターを予
測している
● しかしこれは指板によるもの
→ 予測を誤ってもモデル自体は正しい挙動をしていることを確認できる
SP(Submodular Pick)-LIME
● LIMEで1つの予測値を説明することで、モデルの性質をある程度理解できる
が、モデル全体の信頼性を評価するには不十分
● モデル全体を説明する手法
予
測
し
た
デ
|
タ
特徴
● 予測する全てのデータに対してLIMEを行う
○ i行はあるデータに対してどの特徴が重視されたかを示す
● 各列をみたとき、多くのデータを説明している特徴(f2)を持つデ
ータを選択
● 特徴を網羅するように選択を繰り返す
○ 3行目は冗長
○ 5行目は全く新しい説明
論文内で検証されていること
論文では様々な切り口でLIMEの有効性を検証している
● 説明はモデルに忠実か
● 個々の予測が信頼できるか
● モデル自体を信頼できるか
● 最適なモデルを選択できるか
● 専門家でなくてもモデルを改善できるか
● 説明は洞察につながるか
それぞれの実験の詳細に関しては、概要欄にあるSlideShareを参照
まとめ
● 実世界では、機械学習は予測精度だけではなく、人がモデルを信頼
できるかどうかも重要になることがある → XAI (説明可能なAI)
● 機械学習の任意のモデルが信頼できるかを確認するための2つの手法
○ LIME: 個々の予測を説明 (局所的な説明)
○ SP-LIME: モデルの全体像を説明 (大域的な説明)
● 抽出された特徴を観察することで、モデルが信頼できる予測をできて
いるかを判断できた
● 予測に寄与するはずのない特徴などを発見でき、データセットから
不要なデータを省くこともできる
補足
● LIMEのPythonでの実装: https://github.com/marcotcr/lime
● 複雑なモデルを無理に解釈するのではなく、解釈可能なモデルを
最初から考えるべきという主張もある (SRudin, Cynthia. "Stop
explaining black box machine learning models for high stakes
decisions and use interpretable models instead." Nature
Machine Intelligence 1.5 (2019): 206-215.)
チャンネル紹介
● チャンネル名: 【経営xデータサイエンスx開発】西岡 賢一郎のチャンネル
● URL: https://www.youtube.com/channel/UCpiskjqLv1AJg64jFCQIyBg
● チャンネルの内容
○ 経営・データサイエンス・開発に関する情報を発信しています。
○ 例: アジャイル開発、データパイプライン構築、AIで使われるアルゴリズム4種類など
● noteでも情報発信しています → https://note.com/kenichiro
Appendix
LIME (Local Interpretable Model-agnostic Explanations)
● アルゴリズム
● Z は局所分類器を作成するためのデ
ータを入れる箱
● 説明したいデータx’ の周りから得
たサンプリングz’_i
● z’_i を説明変数、f(z_i) を目的変数
とした線形回帰
● 回帰係数w でその特徴の重要度を
決める
目的関数: 損失L と複雑度g の和を最小とする
局所分類器g を得たい
実験: 説明はモデルに忠実か?
● もともと解釈可能なモデルである、スパ
ースなロジスティック回帰(a)と決定木(b)
を用意
● 個々の説明がそれらのモデルに忠実かを
確かめる
● 元モデルの重要な特徴上位10個を用意
● recall = 説明に含まれていた重要な特徴の
数 / 10
● テストセット全体でこれを平均とった(手
法4つを比較)
○ ranodm: ランダムに10個選択
○ parzen: パルツェン窓を用いた手法
○ greedy: 予測クラスに最も貢献している特徴
を選択
実験: 個々の予測が信頼できるか?
● 個々の予測に対するシミュレーション (分類問題)
● 初めに25%の特徴を信頼できないものとしてランダムに選択
● テストデータの予測に対し、ラベルをつける
○ 局所的な線形分類器から信頼できない特徴を除いたときに予測が変化する → 信頼できない
○ 予測が変化しない → 信頼できる
● 信頼できるとラベルづけされたデータに関して、元の特徴の時の予測値と、25%
の特徴を除いた時の予測値についてF1scoreを算出
○ これが高いと、局所的な線形分類器が信頼できる(説明が信頼できる)と言える?
実験: モデル自体を信頼できるか?
● SP-LIMEの効果を確かめたい
● SP-LIMEによる説明をモデル選択に役立てられるか
● データセットにノイズの多い特徴を10個追加した
● ランダムフォレストを2つ作成
○ どちらも検証精度はとてもよい
○ ただしテスト精度はそれぞれで5%以上異なるように
○ 優れたモデルを選択できない状況
● 模擬ユーザーがb件の予測に登場する人工的な特徴
を信頼できないものとしてマークして、それに続き
検証セットの予測全体のうち何件を信頼するかを評
価する (4つの手法それぞれでモデル全体として重要
な特徴を決めている?)
● b件見せて、信頼できると判断した数が多かった分
類器を選択する → 800回繰り返す
● SP-LIMEで選択されたものはbが少なくても高い正
解率
○ すくない検証セットの予測で他の手法よりもモデルをよく
説明してい
実験: 最適なモデルを選択できるか?
● 被験者は、機械学習の専門家ではなく、宗教に関する基本的な知
識を持つ人たち
● 説明に使う特徴の数、文書の数はともに6とし、被験者にどのア
ルゴリズムが適しているか選択してもらった
○ 2つのアルゴリズムの結果を見せることを6回繰り返す (文書の数だけ)
○ 2つのアルゴリズム
■ 元の特徴そのまま
■ 不要だと思われる特徴を排除したもの
■ テストデータでの精度だけをみると元の特徴そのまま使用し
たアルゴリズムがよかった
■ でも実世界で使える適したアルゴリズムは「クリーン」な後
者のアルゴリズム
● 被験者100人に対し、どちらのアルゴリズムが優れたものか選択
してもらう
● 説明手法
○ greedy または LIME
● グローバル解釈
○ Random pick または Submodular pick
● 精度だけでは「クリーン」な方の最適なアルゴリズムを選択でき
なかったが、説明を加えることで選択できるようになった
実験: 専門家でなくてもモデルを改善できるか?
● 分類器が信頼できないとなった場合、特徴量を見直す
ことが考えられる
● 説明によって不要な特徴を取り除くことが可能
● 各被験者に対して説明文(LIMEによる)を見せて削除す
べき単語(特徴)にマークをつけてもらう
● この選択を異なる被験者を介して何段階か行い、最終
的に残った特徴それぞれで250個の分類器が出来上が
る
○ イメージ: ①10人→10個の分類器 ②5人→50個の分類器...
● 説明方法には SP-LIME または RP-LIME
● ①→②...の各ラウンドの分類器の性能を薄い線で、
その平均精度を実線で示している
● ラウンドが増える(不要な特徴を削除)と精度が上がる
● モデルの説明にはSP>RP
● 被験者は専門家ではなく、ただ説明をみて特徴の選択
を繰り返しただけであるがモデル改善をはたすことが
できた
実験: 説明は洞察につながるか?
● 収集したデータにはのぞましくないデータが入っていることがある
● これを生のデータや予測から見抜くことは難しい
例) オオカミの写真とエスキモー犬(ハスキー)の写真を区別するタスク
● オオカミの背景には必ずゆき
● ハスキーの背景には雪はない
→ 雪があればオオカミと予測するように意図的に学習させた
(a) はハスキーだが、背景に雪があるためにオオカミと予測された
● 大学院生にアンケートをとった(before: 説明を見せない, After: 説明を
見せる)
○ このアルゴリズムが実世界でうまく機能すると思うか
○ その理由は何か
○ このアルゴリズムがオオカミとハスキーをどのように区別していると思うか
● 結果 -> 右の表です
○ 説明を見せる前は1/3以上が分類器を信頼
○ 見せたあとはほとんどの被験者が正しい洞察を示した
○ さらに分類器への信頼も大幅に低下した
● 個々の予測を説明することで、分類器が信頼できないタイミングやそ
の理由を知るための洞察を得ることができることを実証できた

Weitere ähnliche Inhalte

Was ist angesagt?

機械学習モデルの判断根拠の説明
機械学習モデルの判断根拠の説明機械学習モデルの判断根拠の説明
機械学習モデルの判断根拠の説明Satoshi Hara
 
Active Learning 入門
Active Learning 入門Active Learning 入門
Active Learning 入門Shuyo Nakatani
 
深層学習の数理
深層学習の数理深層学習の数理
深層学習の数理Taiji Suzuki
 
【DL輪読会】時系列予測 Transfomers の精度向上手法
【DL輪読会】時系列予測 Transfomers の精度向上手法【DL輪読会】時系列予測 Transfomers の精度向上手法
【DL輪読会】時系列予測 Transfomers の精度向上手法Deep Learning JP
 
多様な強化学習の概念と課題認識
多様な強化学習の概念と課題認識多様な強化学習の概念と課題認識
多様な強化学習の概念と課題認識佑 甲野
 
SSII2021 [TS2] 深層強化学習 〜 強化学習の基礎から応用まで 〜
SSII2021 [TS2] 深層強化学習 〜 強化学習の基礎から応用まで 〜SSII2021 [TS2] 深層強化学習 〜 強化学習の基礎から応用まで 〜
SSII2021 [TS2] 深層強化学習 〜 強化学習の基礎から応用まで 〜SSII
 
“機械学習の説明”の信頼性
“機械学習の説明”の信頼性“機械学習の説明”の信頼性
“機械学習の説明”の信頼性Satoshi Hara
 
方策勾配型強化学習の基礎と応用
方策勾配型強化学習の基礎と応用方策勾配型強化学習の基礎と応用
方策勾配型強化学習の基礎と応用Ryo Iwaki
 
[DL輪読会]ICLR2020の分布外検知速報
[DL輪読会]ICLR2020の分布外検知速報[DL輪読会]ICLR2020の分布外検知速報
[DL輪読会]ICLR2020の分布外検知速報Deep Learning JP
 
【メタサーベイ】基盤モデル / Foundation Models
【メタサーベイ】基盤モデル / Foundation Models【メタサーベイ】基盤モデル / Foundation Models
【メタサーベイ】基盤モデル / Foundation Modelscvpaper. challenge
 
猫でも分かるVariational AutoEncoder
猫でも分かるVariational AutoEncoder猫でも分かるVariational AutoEncoder
猫でも分かるVariational AutoEncoderSho Tatsuno
 
グラフィカルモデル入門
グラフィカルモデル入門グラフィカルモデル入門
グラフィカルモデル入門Kawamoto_Kazuhiko
 
深層生成モデルと世界モデル(2020/11/20版)
深層生成モデルと世界モデル(2020/11/20版)深層生成モデルと世界モデル(2020/11/20版)
深層生成モデルと世界モデル(2020/11/20版)Masahiro Suzuki
 
最適輸送の解き方
最適輸送の解き方最適輸送の解き方
最適輸送の解き方joisino
 
畳み込みニューラルネットワークの研究動向
畳み込みニューラルネットワークの研究動向畳み込みニューラルネットワークの研究動向
畳み込みニューラルネットワークの研究動向Yusuke Uchida
 
【論文紹介】How Powerful are Graph Neural Networks?
【論文紹介】How Powerful are Graph Neural Networks?【論文紹介】How Powerful are Graph Neural Networks?
【論文紹介】How Powerful are Graph Neural Networks?Masanao Ochi
 
【DL輪読会】The Forward-Forward Algorithm: Some Preliminary
【DL輪読会】The Forward-Forward Algorithm: Some Preliminary【DL輪読会】The Forward-Forward Algorithm: Some Preliminary
【DL輪読会】The Forward-Forward Algorithm: Some PreliminaryDeep Learning JP
 
GAN(と強化学習との関係)
GAN(と強化学習との関係)GAN(と強化学習との関係)
GAN(と強化学習との関係)Masahiro Suzuki
 

Was ist angesagt? (20)

機械学習モデルの判断根拠の説明
機械学習モデルの判断根拠の説明機械学習モデルの判断根拠の説明
機械学習モデルの判断根拠の説明
 
Active Learning 入門
Active Learning 入門Active Learning 入門
Active Learning 入門
 
深層学習の数理
深層学習の数理深層学習の数理
深層学習の数理
 
【DL輪読会】時系列予測 Transfomers の精度向上手法
【DL輪読会】時系列予測 Transfomers の精度向上手法【DL輪読会】時系列予測 Transfomers の精度向上手法
【DL輪読会】時系列予測 Transfomers の精度向上手法
 
多様な強化学習の概念と課題認識
多様な強化学習の概念と課題認識多様な強化学習の概念と課題認識
多様な強化学習の概念と課題認識
 
SSII2021 [TS2] 深層強化学習 〜 強化学習の基礎から応用まで 〜
SSII2021 [TS2] 深層強化学習 〜 強化学習の基礎から応用まで 〜SSII2021 [TS2] 深層強化学習 〜 強化学習の基礎から応用まで 〜
SSII2021 [TS2] 深層強化学習 〜 強化学習の基礎から応用まで 〜
 
“機械学習の説明”の信頼性
“機械学習の説明”の信頼性“機械学習の説明”の信頼性
“機械学習の説明”の信頼性
 
方策勾配型強化学習の基礎と応用
方策勾配型強化学習の基礎と応用方策勾配型強化学習の基礎と応用
方策勾配型強化学習の基礎と応用
 
[DL輪読会]World Models
[DL輪読会]World Models[DL輪読会]World Models
[DL輪読会]World Models
 
[DL輪読会]ICLR2020の分布外検知速報
[DL輪読会]ICLR2020の分布外検知速報[DL輪読会]ICLR2020の分布外検知速報
[DL輪読会]ICLR2020の分布外検知速報
 
【メタサーベイ】基盤モデル / Foundation Models
【メタサーベイ】基盤モデル / Foundation Models【メタサーベイ】基盤モデル / Foundation Models
【メタサーベイ】基盤モデル / Foundation Models
 
猫でも分かるVariational AutoEncoder
猫でも分かるVariational AutoEncoder猫でも分かるVariational AutoEncoder
猫でも分かるVariational AutoEncoder
 
グラフィカルモデル入門
グラフィカルモデル入門グラフィカルモデル入門
グラフィカルモデル入門
 
深層生成モデルと世界モデル(2020/11/20版)
深層生成モデルと世界モデル(2020/11/20版)深層生成モデルと世界モデル(2020/11/20版)
深層生成モデルと世界モデル(2020/11/20版)
 
最適輸送の解き方
最適輸送の解き方最適輸送の解き方
最適輸送の解き方
 
BlackBox モデルの説明性・解釈性技術の実装
BlackBox モデルの説明性・解釈性技術の実装BlackBox モデルの説明性・解釈性技術の実装
BlackBox モデルの説明性・解釈性技術の実装
 
畳み込みニューラルネットワークの研究動向
畳み込みニューラルネットワークの研究動向畳み込みニューラルネットワークの研究動向
畳み込みニューラルネットワークの研究動向
 
【論文紹介】How Powerful are Graph Neural Networks?
【論文紹介】How Powerful are Graph Neural Networks?【論文紹介】How Powerful are Graph Neural Networks?
【論文紹介】How Powerful are Graph Neural Networks?
 
【DL輪読会】The Forward-Forward Algorithm: Some Preliminary
【DL輪読会】The Forward-Forward Algorithm: Some Preliminary【DL輪読会】The Forward-Forward Algorithm: Some Preliminary
【DL輪読会】The Forward-Forward Algorithm: Some Preliminary
 
GAN(と強化学習との関係)
GAN(と強化学習との関係)GAN(と強化学習との関係)
GAN(と強化学習との関係)
 

Ähnlich wie ブラックボックスからXAI (説明可能なAI) へ - LIME (Local Interpretable Model-agnostic Explanations)

科学的説明を持つ機械学習システム
科学的説明を持つ機械学習システム科学的説明を持つ機械学習システム
科学的説明を持つ機械学習システムgree_tech
 
機械学習モデルの判断根拠の説明(Ver.2)
機械学習モデルの判断根拠の説明(Ver.2)機械学習モデルの判断根拠の説明(Ver.2)
機械学習モデルの判断根拠の説明(Ver.2)Satoshi Hara
 
機械学習品質管理・保証の動向と取り組み
機械学習品質管理・保証の動向と取り組み機械学習品質管理・保証の動向と取り組み
機械学習品質管理・保証の動向と取り組みShintaro Fukushima
 
MapReduceによる大規模データを利用した機械学習
MapReduceによる大規模データを利用した機械学習MapReduceによる大規模データを利用した機械学習
MapReduceによる大規模データを利用した機械学習Preferred Networks
 
SSII2020TS: 機械学習モデルの判断根拠の説明​ 〜 Explainable AI 研究の近年の展開 〜​
SSII2020TS: 機械学習モデルの判断根拠の説明​ 〜 Explainable AI 研究の近年の展開 〜​SSII2020TS: 機械学習モデルの判断根拠の説明​ 〜 Explainable AI 研究の近年の展開 〜​
SSII2020TS: 機械学習モデルの判断根拠の説明​ 〜 Explainable AI 研究の近年の展開 〜​SSII
 
【論文調査】XAI技術の効能を ユーザ実験で評価する研究
【論文調査】XAI技術の効能を ユーザ実験で評価する研究【論文調査】XAI技術の効能を ユーザ実験で評価する研究
【論文調査】XAI技術の効能を ユーザ実験で評価する研究Satoshi Hara
 
機械学習チュートリアル@Jubatus Casual Talks
機械学習チュートリアル@Jubatus Casual Talks機械学習チュートリアル@Jubatus Casual Talks
機械学習チュートリアル@Jubatus Casual TalksYuya Unno
 
20171015 mosa machine learning
20171015 mosa machine learning20171015 mosa machine learning
20171015 mosa machine learningMuneyoshi Benzaki
 
20180115_東大医学部機能生物学セミナー_深層学習の最前線とこれから_岡野原大輔
20180115_東大医学部機能生物学セミナー_深層学習の最前線とこれから_岡野原大輔20180115_東大医学部機能生物学セミナー_深層学習の最前線とこれから_岡野原大輔
20180115_東大医学部機能生物学セミナー_深層学習の最前線とこれから_岡野原大輔Preferred Networks
 
【参考文献追加】20180115_東大医学部機能生物学セミナー_深層学習の最前線とこれから_岡野原大輔
【参考文献追加】20180115_東大医学部機能生物学セミナー_深層学習の最前線とこれから_岡野原大輔【参考文献追加】20180115_東大医学部機能生物学セミナー_深層学習の最前線とこれから_岡野原大輔
【参考文献追加】20180115_東大医学部機能生物学セミナー_深層学習の最前線とこれから_岡野原大輔Preferred Networks
 
令和元年度 実践セミナー - Deep Learning 概論 -
令和元年度 実践セミナー - Deep Learning 概論 -令和元年度 実践セミナー - Deep Learning 概論 -
令和元年度 実践セミナー - Deep Learning 概論 -Yutaka KATAYAMA
 
Jubatusのリアルタイム分散レコメンデーション@TokyoWebmining#17
Jubatusのリアルタイム分散レコメンデーション@TokyoWebmining#17Jubatusのリアルタイム分散レコメンデーション@TokyoWebmining#17
Jubatusのリアルタイム分散レコメンデーション@TokyoWebmining#17Yuya Unno
 
IVS CTO Night & Day 2016 Tech Talk - AI
IVS CTO Night & Day 2016 Tech Talk - AIIVS CTO Night & Day 2016 Tech Talk - AI
IVS CTO Night & Day 2016 Tech Talk - AIToshiaki Enami
 
人工知能を用いた医用画像処理技術
人工知能を用いた医用画像処理技術人工知能を用いた医用画像処理技術
人工知能を用いた医用画像処理技術Yutaka KATAYAMA
 
機械学習応用システムのアーキテクチャ・デザイパターン(2020-07 ドラフトバージョン))
機械学習応用システムのアーキテクチャ・デザイパターン(2020-07 ドラフトバージョン))機械学習応用システムのアーキテクチャ・デザイパターン(2020-07 ドラフトバージョン))
機械学習応用システムのアーキテクチャ・デザイパターン(2020-07 ドラフトバージョン))HironoriTAKEUCHI1
 
機械学習応用アーキテクチャ・デザインパターン概観
機械学習応用アーキテクチャ・デザインパターン概観機械学習応用アーキテクチャ・デザインパターン概観
機械学習応用アーキテクチャ・デザインパターン概観Hironori Washizaki
 
5. Big Query Explainable AIの紹介
5. Big Query Explainable AIの紹介5. Big Query Explainable AIの紹介
5. Big Query Explainable AIの紹介幸太朗 岩澤
 
20150803.山口大学講演
20150803.山口大学講演20150803.山口大学講演
20150803.山口大学講演Hayaru SHOUNO
 

Ähnlich wie ブラックボックスからXAI (説明可能なAI) へ - LIME (Local Interpretable Model-agnostic Explanations) (20)

科学的説明を持つ機械学習システム
科学的説明を持つ機械学習システム科学的説明を持つ機械学習システム
科学的説明を持つ機械学習システム
 
機械学習モデルの判断根拠の説明(Ver.2)
機械学習モデルの判断根拠の説明(Ver.2)機械学習モデルの判断根拠の説明(Ver.2)
機械学習モデルの判断根拠の説明(Ver.2)
 
機械学習品質管理・保証の動向と取り組み
機械学習品質管理・保証の動向と取り組み機械学習品質管理・保証の動向と取り組み
機械学習品質管理・保証の動向と取り組み
 
MapReduceによる大規模データを利用した機械学習
MapReduceによる大規模データを利用した機械学習MapReduceによる大規模データを利用した機械学習
MapReduceによる大規模データを利用した機械学習
 
SSII2020TS: 機械学習モデルの判断根拠の説明​ 〜 Explainable AI 研究の近年の展開 〜​
SSII2020TS: 機械学習モデルの判断根拠の説明​ 〜 Explainable AI 研究の近年の展開 〜​SSII2020TS: 機械学習モデルの判断根拠の説明​ 〜 Explainable AI 研究の近年の展開 〜​
SSII2020TS: 機械学習モデルの判断根拠の説明​ 〜 Explainable AI 研究の近年の展開 〜​
 
【論文調査】XAI技術の効能を ユーザ実験で評価する研究
【論文調査】XAI技術の効能を ユーザ実験で評価する研究【論文調査】XAI技術の効能を ユーザ実験で評価する研究
【論文調査】XAI技術の効能を ユーザ実験で評価する研究
 
機械学習チュートリアル@Jubatus Casual Talks
機械学習チュートリアル@Jubatus Casual Talks機械学習チュートリアル@Jubatus Casual Talks
機械学習チュートリアル@Jubatus Casual Talks
 
20171015 mosa machine learning
20171015 mosa machine learning20171015 mosa machine learning
20171015 mosa machine learning
 
20180115_東大医学部機能生物学セミナー_深層学習の最前線とこれから_岡野原大輔
20180115_東大医学部機能生物学セミナー_深層学習の最前線とこれから_岡野原大輔20180115_東大医学部機能生物学セミナー_深層学習の最前線とこれから_岡野原大輔
20180115_東大医学部機能生物学セミナー_深層学習の最前線とこれから_岡野原大輔
 
【参考文献追加】20180115_東大医学部機能生物学セミナー_深層学習の最前線とこれから_岡野原大輔
【参考文献追加】20180115_東大医学部機能生物学セミナー_深層学習の最前線とこれから_岡野原大輔【参考文献追加】20180115_東大医学部機能生物学セミナー_深層学習の最前線とこれから_岡野原大輔
【参考文献追加】20180115_東大医学部機能生物学セミナー_深層学習の最前線とこれから_岡野原大輔
 
tut_pfi_2012
tut_pfi_2012tut_pfi_2012
tut_pfi_2012
 
Overview and Roadmap
Overview and RoadmapOverview and Roadmap
Overview and Roadmap
 
令和元年度 実践セミナー - Deep Learning 概論 -
令和元年度 実践セミナー - Deep Learning 概論 -令和元年度 実践セミナー - Deep Learning 概論 -
令和元年度 実践セミナー - Deep Learning 概論 -
 
Jubatusのリアルタイム分散レコメンデーション@TokyoWebmining#17
Jubatusのリアルタイム分散レコメンデーション@TokyoWebmining#17Jubatusのリアルタイム分散レコメンデーション@TokyoWebmining#17
Jubatusのリアルタイム分散レコメンデーション@TokyoWebmining#17
 
IVS CTO Night & Day 2016 Tech Talk - AI
IVS CTO Night & Day 2016 Tech Talk - AIIVS CTO Night & Day 2016 Tech Talk - AI
IVS CTO Night & Day 2016 Tech Talk - AI
 
人工知能を用いた医用画像処理技術
人工知能を用いた医用画像処理技術人工知能を用いた医用画像処理技術
人工知能を用いた医用画像処理技術
 
機械学習応用システムのアーキテクチャ・デザイパターン(2020-07 ドラフトバージョン))
機械学習応用システムのアーキテクチャ・デザイパターン(2020-07 ドラフトバージョン))機械学習応用システムのアーキテクチャ・デザイパターン(2020-07 ドラフトバージョン))
機械学習応用システムのアーキテクチャ・デザイパターン(2020-07 ドラフトバージョン))
 
機械学習応用アーキテクチャ・デザインパターン概観
機械学習応用アーキテクチャ・デザインパターン概観機械学習応用アーキテクチャ・デザインパターン概観
機械学習応用アーキテクチャ・デザインパターン概観
 
5. Big Query Explainable AIの紹介
5. Big Query Explainable AIの紹介5. Big Query Explainable AIの紹介
5. Big Query Explainable AIの紹介
 
20150803.山口大学講演
20150803.山口大学講演20150803.山口大学講演
20150803.山口大学講演
 

Mehr von 西岡 賢一郎

Amazon SageMaker Foundation Modelsで事前学習済みモデルを利用する
Amazon SageMaker Foundation Modelsで事前学習済みモデルを利用するAmazon SageMaker Foundation Modelsで事前学習済みモデルを利用する
Amazon SageMaker Foundation Modelsで事前学習済みモデルを利用する西岡 賢一郎
 
Amazon SageMaker Ground Truthを使って手動のラベル付けを簡略化する
Amazon SageMaker Ground Truthを使って手動のラベル付けを簡略化するAmazon SageMaker Ground Truthを使って手動のラベル付けを簡略化する
Amazon SageMaker Ground Truthを使って手動のラベル付けを簡略化する西岡 賢一郎
 
Amazon SageMakerのNotebookからJobを作成する
Amazon SageMakerのNotebookからJobを作成するAmazon SageMakerのNotebookからJobを作成する
Amazon SageMakerのNotebookからJobを作成する西岡 賢一郎
 
リモートワークで知っておきたい コミュニケーション時の過大な期待
リモートワークで知っておきたい コミュニケーション時の過大な期待リモートワークで知っておきたい コミュニケーション時の過大な期待
リモートワークで知っておきたい コミュニケーション時の過大な期待西岡 賢一郎
 
リモートワークで意識すべき7つのこと
リモートワークで意識すべき7つのことリモートワークで意識すべき7つのこと
リモートワークで意識すべき7つのこと西岡 賢一郎
 
Amazon SageMaker ML Governance 3つの機能紹介
Amazon SageMaker ML Governance 3つの機能紹介Amazon SageMaker ML Governance 3つの機能紹介
Amazon SageMaker ML Governance 3つの機能紹介西岡 賢一郎
 
Feature StoreのOnline StoreとOffline Storeの違いについて理解する
Feature StoreのOnline StoreとOffline Storeの違いについて理解するFeature StoreのOnline StoreとOffline Storeの違いについて理解する
Feature StoreのOnline StoreとOffline Storeの違いについて理解する西岡 賢一郎
 
機械学習の特徴量を管理するAmazon SageMaker Feature Store
機械学習の特徴量を管理するAmazon SageMaker Feature Store機械学習の特徴量を管理するAmazon SageMaker Feature Store
機械学習の特徴量を管理するAmazon SageMaker Feature Store西岡 賢一郎
 
機械学習用のデータを準備する Amazon SageMaker Data Wrangler - ノーコードで前処理から学習まで
機械学習用のデータを準備する Amazon SageMaker Data Wrangler - ノーコードで前処理から学習まで機械学習用のデータを準備する Amazon SageMaker Data Wrangler - ノーコードで前処理から学習まで
機械学習用のデータを準備する Amazon SageMaker Data Wrangler - ノーコードで前処理から学習まで西岡 賢一郎
 
Amazon SageMakerでカスタムコンテナを使った学習
Amazon SageMakerでカスタムコンテナを使った学習Amazon SageMakerでカスタムコンテナを使った学習
Amazon SageMakerでカスタムコンテナを使った学習西岡 賢一郎
 
Amazon SageMakerでscikit-learnで作ったモデルのEndpoint作成
Amazon SageMakerでscikit-learnで作ったモデルのEndpoint作成Amazon SageMakerでscikit-learnで作ったモデルのEndpoint作成
Amazon SageMakerでscikit-learnで作ったモデルのEndpoint作成西岡 賢一郎
 
Amazon AthenaでSageMakerを使った推論
Amazon AthenaでSageMakerを使った推論Amazon AthenaでSageMakerを使った推論
Amazon AthenaでSageMakerを使った推論西岡 賢一郎
 
Amazon Athenaで独自の関数を使う Amazon Athena UDF - AthenaでTweetの感情分析
Amazon Athenaで独自の関数を使う Amazon Athena UDF - AthenaでTweetの感情分析Amazon Athenaで独自の関数を使う Amazon Athena UDF - AthenaでTweetの感情分析
Amazon Athenaで独自の関数を使う Amazon Athena UDF - AthenaでTweetの感情分析西岡 賢一郎
 
TorchDataチュートリアル解説
TorchDataチュートリアル解説TorchDataチュートリアル解説
TorchDataチュートリアル解説西岡 賢一郎
 
Amazon SageMaker JumpStart
Amazon SageMaker JumpStartAmazon SageMaker JumpStart
Amazon SageMaker JumpStart西岡 賢一郎
 
Amazon SageMaker Studio Lab紹介
Amazon SageMaker Studio Lab紹介Amazon SageMaker Studio Lab紹介
Amazon SageMaker Studio Lab紹介西岡 賢一郎
 
Amazon SageMaker Canvasを使ったノーコード機械学習
Amazon SageMaker Canvasを使ったノーコード機械学習Amazon SageMaker Canvasを使ったノーコード機械学習
Amazon SageMaker Canvasを使ったノーコード機械学習西岡 賢一郎
 
PMFを目指すプロダクト開発組織が組織拡大するときににやるべきこと
PMFを目指すプロダクト開発組織が組織拡大するときににやるべきことPMFを目指すプロダクト開発組織が組織拡大するときににやるべきこと
PMFを目指すプロダクト開発組織が組織拡大するときににやるべきこと西岡 賢一郎
 
H2O Waveを使ったAIアプリケーション作成入門
H2O Waveを使ったAIアプリケーション作成入門H2O Waveを使ったAIアプリケーション作成入門
H2O Waveを使ったAIアプリケーション作成入門西岡 賢一郎
 

Mehr von 西岡 賢一郎 (20)

Amazon SageMaker Foundation Modelsで事前学習済みモデルを利用する
Amazon SageMaker Foundation Modelsで事前学習済みモデルを利用するAmazon SageMaker Foundation Modelsで事前学習済みモデルを利用する
Amazon SageMaker Foundation Modelsで事前学習済みモデルを利用する
 
Amazon SageMaker Ground Truthを使って手動のラベル付けを簡略化する
Amazon SageMaker Ground Truthを使って手動のラベル付けを簡略化するAmazon SageMaker Ground Truthを使って手動のラベル付けを簡略化する
Amazon SageMaker Ground Truthを使って手動のラベル付けを簡略化する
 
Amazon SageMakerのNotebookからJobを作成する
Amazon SageMakerのNotebookからJobを作成するAmazon SageMakerのNotebookからJobを作成する
Amazon SageMakerのNotebookからJobを作成する
 
リモートワークで知っておきたい コミュニケーション時の過大な期待
リモートワークで知っておきたい コミュニケーション時の過大な期待リモートワークで知っておきたい コミュニケーション時の過大な期待
リモートワークで知っておきたい コミュニケーション時の過大な期待
 
リモートワークで意識すべき7つのこと
リモートワークで意識すべき7つのことリモートワークで意識すべき7つのこと
リモートワークで意識すべき7つのこと
 
Amazon SageMaker ML Governance 3つの機能紹介
Amazon SageMaker ML Governance 3つの機能紹介Amazon SageMaker ML Governance 3つの機能紹介
Amazon SageMaker ML Governance 3つの機能紹介
 
Feature StoreのOnline StoreとOffline Storeの違いについて理解する
Feature StoreのOnline StoreとOffline Storeの違いについて理解するFeature StoreのOnline StoreとOffline Storeの違いについて理解する
Feature StoreのOnline StoreとOffline Storeの違いについて理解する
 
機械学習の特徴量を管理するAmazon SageMaker Feature Store
機械学習の特徴量を管理するAmazon SageMaker Feature Store機械学習の特徴量を管理するAmazon SageMaker Feature Store
機械学習の特徴量を管理するAmazon SageMaker Feature Store
 
機械学習用のデータを準備する Amazon SageMaker Data Wrangler - ノーコードで前処理から学習まで
機械学習用のデータを準備する Amazon SageMaker Data Wrangler - ノーコードで前処理から学習まで機械学習用のデータを準備する Amazon SageMaker Data Wrangler - ノーコードで前処理から学習まで
機械学習用のデータを準備する Amazon SageMaker Data Wrangler - ノーコードで前処理から学習まで
 
Amazon SageMakerでカスタムコンテナを使った学習
Amazon SageMakerでカスタムコンテナを使った学習Amazon SageMakerでカスタムコンテナを使った学習
Amazon SageMakerでカスタムコンテナを使った学習
 
Amazon SageMakerでscikit-learnで作ったモデルのEndpoint作成
Amazon SageMakerでscikit-learnで作ったモデルのEndpoint作成Amazon SageMakerでscikit-learnで作ったモデルのEndpoint作成
Amazon SageMakerでscikit-learnで作ったモデルのEndpoint作成
 
Amazon AthenaでSageMakerを使った推論
Amazon AthenaでSageMakerを使った推論Amazon AthenaでSageMakerを使った推論
Amazon AthenaでSageMakerを使った推論
 
Amazon Athenaで独自の関数を使う Amazon Athena UDF - AthenaでTweetの感情分析
Amazon Athenaで独自の関数を使う Amazon Athena UDF - AthenaでTweetの感情分析Amazon Athenaで独自の関数を使う Amazon Athena UDF - AthenaでTweetの感情分析
Amazon Athenaで独自の関数を使う Amazon Athena UDF - AthenaでTweetの感情分析
 
未来のカタチ x AI
未来のカタチ x AI未来のカタチ x AI
未来のカタチ x AI
 
TorchDataチュートリアル解説
TorchDataチュートリアル解説TorchDataチュートリアル解説
TorchDataチュートリアル解説
 
Amazon SageMaker JumpStart
Amazon SageMaker JumpStartAmazon SageMaker JumpStart
Amazon SageMaker JumpStart
 
Amazon SageMaker Studio Lab紹介
Amazon SageMaker Studio Lab紹介Amazon SageMaker Studio Lab紹介
Amazon SageMaker Studio Lab紹介
 
Amazon SageMaker Canvasを使ったノーコード機械学習
Amazon SageMaker Canvasを使ったノーコード機械学習Amazon SageMaker Canvasを使ったノーコード機械学習
Amazon SageMaker Canvasを使ったノーコード機械学習
 
PMFを目指すプロダクト開発組織が組織拡大するときににやるべきこと
PMFを目指すプロダクト開発組織が組織拡大するときににやるべきことPMFを目指すプロダクト開発組織が組織拡大するときににやるべきこと
PMFを目指すプロダクト開発組織が組織拡大するときににやるべきこと
 
H2O Waveを使ったAIアプリケーション作成入門
H2O Waveを使ったAIアプリケーション作成入門H2O Waveを使ったAIアプリケーション作成入門
H2O Waveを使ったAIアプリケーション作成入門
 

ブラックボックスからXAI (説明可能なAI) へ - LIME (Local Interpretable Model-agnostic Explanations)

  • 1. ブラックボックスからXAI (説明可能なAI) へ LIME (Local Interpretable Model-agnostic Explanations) AIが出した予測結果の説明責任を果たす
  • 2. 機械学習における説明可能性 (解釈可能性) ● 高い予測精度であっても、重大な意 思決定がからむ場合には、予測結果 の「説明可能性」が重要となる (e.g. 医療現場) ● 機械学習は高い精度で予測は得意だ が、予測の根拠などを示すのは不得 意 → ブラックボックス ● 現代の機械学習のモデルは複雑にな りすぎて解釈が難しい → XAIが必要 ● 説明可能性と解釈可能性については、 同文脈で使われることが多い なぜそのような診断にな ったのですか? AIが判断しました。 ブラックボックスなので 理由はわかりません。 ブラックボックスなAIをそのまま利用した場合 の医療現場
  • 3. 大域的な説明と局所的な説明 ● 説明可能性には「大域的な説明」と「局所的な説明」の2つがある ○ 大域的な説明 ■ モデル全体の挙動を理解する (e.g. 特徴が重要かを知る) ○ 局所的な説明 ■ ある入力に対して予測の根拠を知る (e.g. どの特徴が予測に寄与したかを知る) 入力 出力 どの特徴を重要視 しているモデルか 予測結果に寄与し た特徴は何か 大域的な説明 局所的な説明
  • 4. 今回紹介する論文 ● “Why should I trust you?” Explaining the Predictions of Any Classifier ○ 著者: MT Ribeiro, S Singh, C Guestrin ○ 投稿: Proceedings of the 22nd ACM SIGKDD International Conference on Knowledge Discovery and Data Mining. ACM. 2016, pp. 1135–1144. ○ 引用: 6147件 (2021/08/10 時点) ● 論文の内容 ○ 人間がモデルを”信頼する”ための手法を提案 ■ 予測時に何を重要視したか、局所的な説明をするためのアルゴリズムLIME ■ モデル全体を説明する、大域的な説明のためのSP-LIME
  • 5. “モデルを信頼する” とは ● 2種類の定義 ○ 個々の予測を信頼 → 局所的な説明 ■ 予測結果に基づいてなんらかの行動をとれるか ○ モデルそのものを信頼 → 大域的な説明 ■ モデルがどのような性質を持つか理解できる ● どちらも人がモデルの動作をどれだけ理解しているかに直接影響 ● しかし、モデルの「評価軸」は予測精度を用いることが多い ● 一方、実社会では、精度とは別に信頼性をも求められることがある ○ 医療診断やテロの検知など 信頼性の問題に対処するために、予測・モデルに対する説明を提供する必要がある
  • 6. LIME (Local Interpretable Model-agnostic Explanations) ● 元のモデルが複雑だとしても人間が理解 できるようにする ● 元のモデルは複雑な境界を持つため、判 別の基準が分かりづらい → 説明したい データの近くを集めて、その周辺だけで 局所的に解釈しやすいモデルで近似させ る ● Lassoの正則化パスを用いることで、人 間が扱える数に特徴を限定し、局所境界 を回帰で解く : 説明したいデータ : 正例のサンプル : 負例のサンプル : モデルが正と予測する範囲 : モデルが負と予測する範囲 : 局所的な分類器
  • 7. 例) SVMによるテキスト分類 ● あるテキストが、キリスト教と無神論どち らについて書かれたものか予測 ● モデルは検証データで94%の正解率 ● 右側は実際あるテキストで予測したとき結 果で、予測時に重要だった単語が抽出され ている ● 予測の説明を見ると、”Posting”, “Host”, “Re” といった関係ない単語を重要視してい ることがわかる ➡ 分類器として信頼できない ● LIMEにより、データセット自体に含まれる 問題を発見し、取り除くこともできる
  • 8. 例) DNNによる画像分類 ● 画像に何が写っているか予測 (google の画像分類モデルを用いた) ● 図(b)~(d) は元画像(a) に対して予測された上位3クラスの重要視されたピクセル部分 ● 図(c), (d) は正解したが、(b) はアコースティックギターをエレクトリックギターを予 測している ● しかしこれは指板によるもの → 予測を誤ってもモデル自体は正しい挙動をしていることを確認できる
  • 9. SP(Submodular Pick)-LIME ● LIMEで1つの予測値を説明することで、モデルの性質をある程度理解できる が、モデル全体の信頼性を評価するには不十分 ● モデル全体を説明する手法 予 測 し た デ | タ 特徴 ● 予測する全てのデータに対してLIMEを行う ○ i行はあるデータに対してどの特徴が重視されたかを示す ● 各列をみたとき、多くのデータを説明している特徴(f2)を持つデ ータを選択 ● 特徴を網羅するように選択を繰り返す ○ 3行目は冗長 ○ 5行目は全く新しい説明
  • 10. 論文内で検証されていること 論文では様々な切り口でLIMEの有効性を検証している ● 説明はモデルに忠実か ● 個々の予測が信頼できるか ● モデル自体を信頼できるか ● 最適なモデルを選択できるか ● 専門家でなくてもモデルを改善できるか ● 説明は洞察につながるか それぞれの実験の詳細に関しては、概要欄にあるSlideShareを参照
  • 11. まとめ ● 実世界では、機械学習は予測精度だけではなく、人がモデルを信頼 できるかどうかも重要になることがある → XAI (説明可能なAI) ● 機械学習の任意のモデルが信頼できるかを確認するための2つの手法 ○ LIME: 個々の予測を説明 (局所的な説明) ○ SP-LIME: モデルの全体像を説明 (大域的な説明) ● 抽出された特徴を観察することで、モデルが信頼できる予測をできて いるかを判断できた ● 予測に寄与するはずのない特徴などを発見でき、データセットから 不要なデータを省くこともできる
  • 12. 補足 ● LIMEのPythonでの実装: https://github.com/marcotcr/lime ● 複雑なモデルを無理に解釈するのではなく、解釈可能なモデルを 最初から考えるべきという主張もある (SRudin, Cynthia. "Stop explaining black box machine learning models for high stakes decisions and use interpretable models instead." Nature Machine Intelligence 1.5 (2019): 206-215.)
  • 13. チャンネル紹介 ● チャンネル名: 【経営xデータサイエンスx開発】西岡 賢一郎のチャンネル ● URL: https://www.youtube.com/channel/UCpiskjqLv1AJg64jFCQIyBg ● チャンネルの内容 ○ 経営・データサイエンス・開発に関する情報を発信しています。 ○ 例: アジャイル開発、データパイプライン構築、AIで使われるアルゴリズム4種類など ● noteでも情報発信しています → https://note.com/kenichiro
  • 15. LIME (Local Interpretable Model-agnostic Explanations) ● アルゴリズム ● Z は局所分類器を作成するためのデ ータを入れる箱 ● 説明したいデータx’ の周りから得 たサンプリングz’_i ● z’_i を説明変数、f(z_i) を目的変数 とした線形回帰 ● 回帰係数w でその特徴の重要度を 決める 目的関数: 損失L と複雑度g の和を最小とする 局所分類器g を得たい
  • 16. 実験: 説明はモデルに忠実か? ● もともと解釈可能なモデルである、スパ ースなロジスティック回帰(a)と決定木(b) を用意 ● 個々の説明がそれらのモデルに忠実かを 確かめる ● 元モデルの重要な特徴上位10個を用意 ● recall = 説明に含まれていた重要な特徴の 数 / 10 ● テストセット全体でこれを平均とった(手 法4つを比較) ○ ranodm: ランダムに10個選択 ○ parzen: パルツェン窓を用いた手法 ○ greedy: 予測クラスに最も貢献している特徴 を選択
  • 17. 実験: 個々の予測が信頼できるか? ● 個々の予測に対するシミュレーション (分類問題) ● 初めに25%の特徴を信頼できないものとしてランダムに選択 ● テストデータの予測に対し、ラベルをつける ○ 局所的な線形分類器から信頼できない特徴を除いたときに予測が変化する → 信頼できない ○ 予測が変化しない → 信頼できる ● 信頼できるとラベルづけされたデータに関して、元の特徴の時の予測値と、25% の特徴を除いた時の予測値についてF1scoreを算出 ○ これが高いと、局所的な線形分類器が信頼できる(説明が信頼できる)と言える?
  • 18. 実験: モデル自体を信頼できるか? ● SP-LIMEの効果を確かめたい ● SP-LIMEによる説明をモデル選択に役立てられるか ● データセットにノイズの多い特徴を10個追加した ● ランダムフォレストを2つ作成 ○ どちらも検証精度はとてもよい ○ ただしテスト精度はそれぞれで5%以上異なるように ○ 優れたモデルを選択できない状況 ● 模擬ユーザーがb件の予測に登場する人工的な特徴 を信頼できないものとしてマークして、それに続き 検証セットの予測全体のうち何件を信頼するかを評 価する (4つの手法それぞれでモデル全体として重要 な特徴を決めている?) ● b件見せて、信頼できると判断した数が多かった分 類器を選択する → 800回繰り返す ● SP-LIMEで選択されたものはbが少なくても高い正 解率 ○ すくない検証セットの予測で他の手法よりもモデルをよく 説明してい
  • 19. 実験: 最適なモデルを選択できるか? ● 被験者は、機械学習の専門家ではなく、宗教に関する基本的な知 識を持つ人たち ● 説明に使う特徴の数、文書の数はともに6とし、被験者にどのア ルゴリズムが適しているか選択してもらった ○ 2つのアルゴリズムの結果を見せることを6回繰り返す (文書の数だけ) ○ 2つのアルゴリズム ■ 元の特徴そのまま ■ 不要だと思われる特徴を排除したもの ■ テストデータでの精度だけをみると元の特徴そのまま使用し たアルゴリズムがよかった ■ でも実世界で使える適したアルゴリズムは「クリーン」な後 者のアルゴリズム ● 被験者100人に対し、どちらのアルゴリズムが優れたものか選択 してもらう ● 説明手法 ○ greedy または LIME ● グローバル解釈 ○ Random pick または Submodular pick ● 精度だけでは「クリーン」な方の最適なアルゴリズムを選択でき なかったが、説明を加えることで選択できるようになった
  • 20. 実験: 専門家でなくてもモデルを改善できるか? ● 分類器が信頼できないとなった場合、特徴量を見直す ことが考えられる ● 説明によって不要な特徴を取り除くことが可能 ● 各被験者に対して説明文(LIMEによる)を見せて削除す べき単語(特徴)にマークをつけてもらう ● この選択を異なる被験者を介して何段階か行い、最終 的に残った特徴それぞれで250個の分類器が出来上が る ○ イメージ: ①10人→10個の分類器 ②5人→50個の分類器... ● 説明方法には SP-LIME または RP-LIME ● ①→②...の各ラウンドの分類器の性能を薄い線で、 その平均精度を実線で示している ● ラウンドが増える(不要な特徴を削除)と精度が上がる ● モデルの説明にはSP>RP ● 被験者は専門家ではなく、ただ説明をみて特徴の選択 を繰り返しただけであるがモデル改善をはたすことが できた
  • 21. 実験: 説明は洞察につながるか? ● 収集したデータにはのぞましくないデータが入っていることがある ● これを生のデータや予測から見抜くことは難しい 例) オオカミの写真とエスキモー犬(ハスキー)の写真を区別するタスク ● オオカミの背景には必ずゆき ● ハスキーの背景には雪はない → 雪があればオオカミと予測するように意図的に学習させた (a) はハスキーだが、背景に雪があるためにオオカミと予測された ● 大学院生にアンケートをとった(before: 説明を見せない, After: 説明を 見せる) ○ このアルゴリズムが実世界でうまく機能すると思うか ○ その理由は何か ○ このアルゴリズムがオオカミとハスキーをどのように区別していると思うか ● 結果 -> 右の表です ○ 説明を見せる前は1/3以上が分類器を信頼 ○ 見せたあとはほとんどの被験者が正しい洞察を示した ○ さらに分類器への信頼も大幅に低下した ● 個々の予測を説明することで、分類器が信頼できないタイミングやそ の理由を知るための洞察を得ることができることを実証できた

Hinweis der Redaktion

  1. 今回は、ブラックボックスから説明可能なAIへというテーマで、LIMEというアルゴリズムについてお話します。 AIないしは機械学習のことがよくわからないから実際の現場で導入できないと悩んでいる人が多いです。 その背景には、機械学習の技術そのものを理解すること自体の難しさがあるのですが、それに加えて、そもそも機械学習の専門家ですら機械学習が出した結果がなぜ出てきたかを説明することが難しいという問題があります。 高い精度の予測はできたものの、なぜそれが出てきたかの根拠がなければ、なかなか導入が難しいということですね。 ここに対して、近年説明可能なAI、英語ではExplanable AIやXAIと呼ばれるものが注目されています。 今回は、XAIのためのアルゴリズムの1つであるLIMEを解説をしていきます。 このチャンネルでは、研究や開発やスタートアップの話をしていきます。 興味のある方はチャンネル登録お願いします。
  2. まず最初に、機械学習でなぜ説明可能性が求められるかについてお話します。 機械学習で出された予測結果に対して、説明責任を果たさないといけない場合に、説明可能性は重要となります。 例えば、医療の現場における機械学習では、お医者さんからガンだと診断されたときに、判断根拠がAIだから分からないと言われたら、その診断結果を信頼することは難しいですよね。 医療現場のAIと同様のことが、多くの業界で言うことができ、おもに人間が意思決定が関わるものは、AIの結果に対する説明責任を果たすために、説明可能性が重要となってきます。 しかし、機械学習は高い精度の予測は得意ですが、なぜその予測になったのかという根拠を示すことは不得意です。 これがいわゆる、機械学習がブラックボックスと言われる所以でもあるわけです。 しかも、最近、多く使われているディープラーニングなどは、モデルが複雑になりすぎていて、ますます解釈ができないものとなってきています。 このままでは、機械学習の結果を根拠なしに信じるか、機械学習自体を使わないかのどちらかになってしまいます。 予測結果に対する説明責任を果たすことさえできれば、機械学習による高精度の予測の恩恵に預かることができるで、説明可能なAI、XAIが必要となってくるということです。 ちなみに、XAIの世界では説明可能性や解釈可能性など二通りの表現が同じような文脈で出てきます。 多くの場合、どちらに読み替えても意味が通じることが多いので、適宜読み替えて理解していただくといいと思います。
  3. ではここで、機械学習における説明可能性とは何かについて簡単に説明します。 説明可能性は大域的な説明と局所的な説明の2つに分けられます。 大域的な説明は、モデル全体の挙動を知るために、そのモデルがどの特徴を重要視していかなどを見ていきます。 一方、局所的な説明は、ある入力に対して出てきた予測の根拠を知るために、その予測でどの特徴を主に使っているかなどを見ていきます。 モデルの性質を知りたいのか、予測結果の根拠を知りたいのかで、大域的な説明か局所的な説明のどちらを求めるかが変わります。 さきほどの医療の例など、予測結果の根拠を知りたい場合は、局所的な説明が必要となることが多くなります。
  4. 説明可能性について簡単に理解していただいたところで、今回解説する論文を紹介します。 今回解説する論文は、「あらゆる分類機の予測を説明する」という題目の論文を紹介します。 2016年に投稿された論文で、引用件数は6000件超えと機械学習の世界では有名な論文となっています。 この論文は、多くの論文のように予測精度が高い手法を提案するのではなく、人間がモデルを信頼するためにはどんな情報があればよいかに主眼をおいた手法が提案されています。 論文内では2つのアルゴリズムが提案されており、1つが局所的な説明のためのアルゴリズムであるLIMEで、もう1つが大域的な説明のためのアルゴリズムであるSP-LIMEです。
  5. そもそもモデルを信頼するとはどういうことでしょうか。 この論文では、2種類の定義が紹介されています。 1つが、予測結果に基づいて何らかの行動ができるほど、個々の予測が信頼できるかです。 これは局所的な説明にあたります。 もう一つが、モデルがどんな性質を持っているか理解でき、モデルそのものを信頼できるかです。 こちらは大域的な説明にあたります。 どちらも人がモデルの動作をどれだけ理解しているかに直接影響してきます。 ところが、機械学習の世界では、モデルを評価ではどのくらいモデルを信頼できるかではなく、予測精度がどれだけ高いかを一番の目標として置いていることが多いです。 ここが実社会と異なるところと言えます。 実社会では精度だけではなく、どのくらい信頼するに足るモデルなのかを評価する必要があります。 その例として挙げられるのが、医療診断やテロの検知などです。 実務をやっている人は度々ぶち当たっていると思うのですが、これ以外にも機械学習の予測結果を鵜呑みにできない場面はよくあります。 予測結果が信頼できるかどうかという問いに対して新しい手法を提案しているのがこの論文となります。 今回もざっくりとした挙動が分かるようにかいつまんで解説していきます。
  6. それでは、今回の論文で提案されている手法、LIMEについて紹介します。 LIMEはLocal Interpretable Model-agnostic Explanationの略で、局所的に解釈可能なモデルに依存しない説明という意味になります。 下を噛みそうな名前になっているのですが、要するにどんなモデルでも解釈して説明ができるアルゴリズムということです。 LIMEは、複雑なモデルを人間が理解できるようにするために作られたアルゴリズムとなっています。 例えば、右図はとある予測の境界などを表しているのですが、薄いピンクのPositiveになる領域と薄い青色のNegativeになる領域の境界が複雑に入り組むことが機械学習ではよくあります。 このような予測のPositiveとNegativeの境界は、人間が理解できるように表現することは難しくなります。 そこでLIMEでは、境界を全て説明するのではなく、説明したいデータの周辺に着目してPositiveとNegativeの境界を見ていきます。 具体的には、対象となるデータに近いデータを使い、その周辺で人間が理解しやすい回帰モデルを用いて境界を近似します。 実際の実装では、この境界の近似にリッジ回帰などが用いられたりするようです。 また、元の説明変数が多すぎる状態で回帰をしても、人間が理解できる範囲を越えてしまうため、LIMEではLassoの正則化パスを用いてあらかじめ特徴量を絞ることをします。 厳密性よりもとにかく人間が理解するためにはどのような表現をすればよいかを考えたアルゴリズムということです。
  7. ここからはLIMEの活用例を紹介します。 ここでは、与えられたテキストがキリスト教と無神論のどちらについてかかれたかを予測するタスクを行っています。 このモデルは、検証データで94%の正解率を誇る性能の高いモデルとなっています。 右側にある結果が、実際にテキストを予測した結果となっており、ここで与えられたテキストは無神論に関するテキストとこのモデルで予測されています。 そして、バーチャートとして並んでいるものが、この予測のために重要だと判断された単語となっています。 重要だった単語は、下にある実際の文章中でもハイライトされています。 予測で重要であった単語として、予測には全く関係ない単語であるPosting, Host, Reなどが入っています。 つまり、このテキストに対する予測では、予測と全く関係ない単語を重要なものとしてこのテキストを無神論のテキストと判断しているので、信頼できない予測であることがわかります。 このように、LIMEで抽出された重要な特徴を見ることで、実際の予測が信頼に値するかどうかを考えることができます。 そして、今回の例のように、元のデータに不適切なデータが含まれていることを浮き彫りにし、データからそのようなデータを取り除くこともできます。
  8. 次にDNNによる画像分類の予測に、LIMEを適用した結果を紹介します。 この実験では、画像に何が写っているかをGoogleの画像分類モデルを使って検出しています。 一番左にある画像がオリジナルの画像で、右にある3つが画像に写っていたと判断されたものと、どこを重要視してその判断がくだされたかをLIMEを使って可視化したものとなります。 この画像では、エレクトリックギターとアコースティックギターとラブラドールの3つが検出されています。 アコースティックギターとラブラドールは元の画像にも写っているため、正しく検出していることがわかります。 また、これらがどこを重要視してこれらが検出されたかの画像を見ても、正しく特徴を捉えて検出していることがわかります。 ところが、もう一つ検出されているエレクトリックギターだけは元の画像には写っていません。 この検出自体は誤りであるのですが、エレクトリックギターだと判別した箇所は、ギターの指板のあたりとなっており、エレクトリックギターと似た特徴を捉えているので、モデルの挙動自体は正しい挙動をしていると言うことができます。 予測事態が誤っていてもモデルの挙動が正しい華道家の確認にLIMEが使えるということです。
  9. ここまで局所的な説明をするためのアルゴリズムであるLIMEを紹介してきました。 1つのデータに対して、どんな根拠で予測をしたのかを説明することにLIMEは使えますが、これはあくまでもモデルの挙動の一部であり、モデル全体の信頼性を評価できるものではありません。 たった1つの間違いがあっただけで、信頼できないモデルとしてしまうのはさすがに言い過ぎですよね。 そこで、この論文ではLIMEに加えて、モデル全体を説明する手法であるSP-LIMEも提案しています。 SP-LIMEでは、まず全てのデータに対してLIMEを適用して、それぞれの予測においてどの特徴が重要視されたかを計算します。 左の図で灰色になっている部分が予測時に重要視された特徴を表しています。 次に、多くの予測で重要視された特徴を選択します。 ここの図でいうと、最も多くのデータの予測で重要視されているf2が選択されます。 そして、重要と判断したデータがf2とかぶらないもので、多くのデータの予測で重要視されている特徴を選択します。 この例では、f3やf4だとf2とかぶり冗長となってしまうため、f5が選択されます。 これを繰り返すことに順々に重要な特徴を決めていくという流れとなります。 このように特徴を順々に選択していくやり方が、submodular pickと呼ばれているところです。
  10. この論文では、提案した手法で人間がモデルを信頼をできるかということを示すために、様々な切り口で実験を行っています。 説明がモデルに忠実であるか、個々の予測が信頼できるか、モデル自体を信頼できるか、最適なモデルを選択できるか、専門家でなくてもモデルを改善できるか、そして、説明は洞察につながるか、これら全てにおいて、提案手法が有効であることが示されています。 詳しい実験の話をすると動画が長くなるので今回は省略しますが、詳しく知りたい方は概要欄にあるSlideShareもしくは、元の論文を参照してください。
  11. まとめをします。 実世界における機械学習では、予測精度だけではなく人がモデルを信頼できるかどうかも重要になることがあります。 医療現場など、予測の根拠が示せない場所では、ブラックボックスは許容することができないということですね。 この要望にこたえるものがXAI、つまり説明可能なAIと呼ばれるものです。 今回紹介した論文では、信頼できるモデルかどうかを確認するための方法として、局所的な説明をするためのアルゴリズムであるLIMEと大域的な説明をするためのアルゴリズムであるSP-LIMEを解説しました。 これらは、任意のモデルに適応ができる、いわば後からXAIを実現するための手法となっています。 LIMEでは対象となるデータの周辺のデータを使って、境界を解釈しやすいモデルで近似しました。 一方、SP-LIMEでは、LIMEを全てのデータにあてはめ、多くのデータに渡って重要と言われる特徴を順番にあつめて、特徴の重要度を計算しました。 また、LIMEなどを用いることで、モデルが信頼しうる予測をしているかどうかを判断できました。 それに加えて、予測に寄与するはずのない特徴を発見することで、データセットから不要なデータを省くことができることもわかりました。 以上が、ブラックボックスなアルゴリズムを説明可能なAIにするという話でした。
  12. 今回紹介したLIMEはPythonのライブラリが公開されているため、簡単に実装に組み込んで試すことができます。 理論だけ学んでもわかりにくいと思うので、実際のデータで是非試してみてください。 また、今回は説明可能なAIとしてLIMEを紹介したのですが、ブラックボックスなアルゴリズムを無理やり解釈すること自体無理があるという主張もあります。 2019年に出された論文では、ブラックボックスなアルゴリズムを無理に解釈しようとしてもちゃんと解釈できないので、最初から解釈可能なモデルを考える必要があるということなどが議論されています。 LIMEを使えば、ブラックボックスのアルゴリズムが必ず説明できると信じきらずに、いろいろな主張をきちんと学んで、必要に応じて使っていきましょう。
  13. 最後にチャンネルの紹介をさせてください。 このチャンネルでは、経営やデータサイエンスや開発の話をしていきます。 聞きたい話のリクエストも募集中です。 もし、この動画が役に立ったら高評価とチャンネル登録をお願いいたします。
  14. L(f, g, π): 損失関数。元のモデルfと、局所的に解釈可能にするモデルgのそれぞれの予測値がどれだけ離れてるか (πは予測したいデータとサンプリング点との距離をはかるカーネル関数であり、これにより局所性を捉える) Ω: モデルgの複雑さ → これらの和が最小になるようなgを見つける Require 元の分類器f とN個のサンプルを用意 ← サンプリングはx’の成分をランダムに0にデータ(新しく生成している。近いとこも出るし、遠いとこも出る) 元の特徴x とその解釈可能な表現x’ を用意 解釈可能な表現は、典型的には{0, 1}のバイナリ(文章だとBag-of-words) 距離をはかるカーネル関数π と、説明に加える特徴の個数Kを用意 K-Lasso → 先にLasso回帰で使用する特徴をK個選択し、その特徴を用いて再度線形回帰(実装ではRidgeらしいです) → 回帰係数がそのまま選択した特徴それぞれの特徴重要度となる
  15. ここでは、SP-LIMEによって抽出された特徴がモデルに
  16. 個々の予測に対するシミュレーション (分類問題) 初めに25%の特徴を信頼できないものとしてランダムに選択 テストデータの予測に対し、ラベルをつける 局所的な線形分類器から信頼できない特徴を除いたときに予測が変化する → 信頼できない 予測が変化しない → 信頼できる 信頼できるとラベルづけされたデータに関して、元の特徴の時の予測値と、25%の特徴を除いた時の予測値についてF1scoreを算出 これが高いと、局所的な線形分類器が信頼できる(説明が信頼できる)と言える?
  17. SP-LIMEの効果を確かめたい SP-LIMEによる説明をモデル選択に役立てられるか データセットにノイズの多い特徴を10個追加した ランダムフォレストを2つ作成 どちらも検証精度はとてもよい ただしテスト精度はそれぞれで5%以上異なるように 優れたモデルを選択できない状況 模擬ユーザーがb件の予測に登場する人工的な特徴を信頼できないものとしてマークして、それに続き検証セットの予測全体のうち何件を信頼するかを評価する (4つの手法それぞれでモデル全体として重要な特徴を決めている?) b件見せて、信頼できると判断した数が多かった分類器を選択する → 800回繰り返す SP-LIMEで選択されたものはbが少なくても高い正解率 すくない検証セットの予測で他の手法よりもモデルをよく説明している
  18. 被験者は、機械学習の専門家ではなく、宗教に関する基本的な知識を持つ人たち 説明に使う特徴の数、文書の数はともに6とし、被験者にどのアルゴリズムが適しているか選択してもらった 2つのアルゴリズムの結果を見せることを6回繰り返す (文書の数だけ) 2つのアルゴリズム 元の特徴そのまま 不要だと思われる特徴を排除したもの テストデータでの精度だけをみると元の特徴そのまま使用したアルゴリズムがよかった でも実世界で使える適したアルゴリズムは「クリーン」な後者のアルゴリズム 被験者100人に対し、どちらのアルゴリズムが優れたものか選択してもらう 説明手法 greedy または LIME グローバル解釈 Random pick または Submodular pick 精度だけでは「クリーン」な方の最適なアルゴリズムを選択できなかったが、説明を加えることで選択できるようになった
  19. 分類器が信頼できないとなった場合、特徴量を見直すことが考えられる 説明によって不要な特徴を取り除くことが可能 各被験者に対して説明文(LIMEによる)を見せて削除すべき単語(特徴)にマークをつけてもらう この選択を異なる被験者を介して何段階か行い、最終的に残った特徴それぞれで250個の分類器が出来上がる イメージ: ①10人→10個の分類器 ②5人→50個の分類器... 説明方法には SP-LIME または RP-LIME ①→②...の各ラウンドの分類器の性能を薄い線で、その平均精度を実線で示している ラウンドが増える(不要な特徴を削除)と精度が上がる モデルの説明にはSP>RP 被験者は専門家ではなく、ただ説明をみて特徴の選択を繰り返しただけであるがモデル改善をはたすことができた
  20. 収集したデータにはのぞましくないデータが入っていることがある これを生のデータや予測から見抜くことは難しい 例) オオカミの写真とエスキモー犬(ハスキー)の写真を区別するタスク オオカミの背景には必ずゆき ハスキーの背景には雪はない → 雪があればオオカミと予測するように意図的に学習させた (a) はハスキーだが、背景に雪があるためにオオカミと予測された 大学院生にアンケートをとった(before: 説明を見せない, After: 説明を見せる) このアルゴリズムが実世界でうまく機能すると思うか その理由は何か このアルゴリズムがオオカミとハスキーをどのように区別していると思うか 結果 -> 右の表です 説明を見せる前は1/3以上が分類器を信頼 見せたあとはほとんどの被験者が正しい洞察を示した さらに分類器への信頼も大幅に低下した 個々の予測を説明することで、分類器が信頼できないタイミングやその理由を知るための洞察を得ることができることを実証できた