Slide 1

Slide 1 text

機械学習モデルの解釈可能性について InterpretML ライブラリのご紹介 ⼥部⽥啓太 ⽇本マイクロソフト株式会社 Cloud Solution Architect – Machine Learning, Deep Learning

Slide 2

Slide 2 text

⼥部⽥啓太 Cloud Solution Architect – Machine Learning & Deep Learning 略歴 : ⽇本マイクロソフト株式会社 カスタマーサク セス事業本部 Data & AI クラウドソリューションアー キテクト。統計解析ソフトウェアベンダーでのセールス エンジニアを経て、2018年 Microsoft に⼊社。 現在は、Azure Machine Learning を中⼼とした AI・機械学習のアーキテクトとしてお客様プロジェクト へ技術⽀援を⾏う。また、最新技術をイベント・セミ ナーで訴求している。

Slide 3

Slide 3 text

アジェンダ

Slide 4

Slide 4 text

アジェンダ

Slide 5

Slide 5 text

Report

Slide 6

Slide 6 text

No content

Slide 7

Slide 7 text

No content

Slide 8

Slide 8 text

⼀⽅で、それに起因する問題が散⾒される ... • 構築された機械学習モデルは妥当なものか?信頼できるか? • なぜこの予測値になったのか現場に説明できない • モデルをどうやって改善すればいいか分からない 単に精度が⾼い機械学習モデルを開発するだけでなく、 “モデルの解釈可能性” のアプローチが必要 ⾼精度の機械学習モデルを実現するために、 深層学習などの複雑な機械学習アルゴリズムが数多く登場している

Slide 9

Slide 9 text

モデル開発 推論

Slide 10

Slide 10 text

https://interpret.ml/

Slide 11

Slide 11 text

https://github.com/interpretml Interpret-text ⾃然⾔語処理モデルの解釈可能性 DiCE 反実仮想によるモデル解釈 Interpret 解釈可能な Glassbox モデルと Blackbox なモデル の解釈性を提供 Interpret-community Interpret にある表形式データに対す る追加機能 Azureml-interpret Azure Machine Learning の Python SDK のラッパー

Slide 12

Slide 12 text

https://github.com/interpretml Interpret-text ⾃然⾔語処理モデルの解釈可能性 DiCE 反実仮想によるモデル解釈 Interpret 解釈可能な Glassbox モデルと Blackbox なモデル の解釈性を提供 Interpret-community Interpret にある表形式データに対す る追加機能 本⽇の範囲 Azureml-interpret Azure Machine Learning の Python SDK のラッパー

Slide 13

Slide 13 text

https://interpret.ml/ 機械学習モデル解釈・説明のための 包括的なフレームワーク 決定⽊ ルールリスト 線形回帰・ロジスティック回帰 EBM … SHAP LIME Partial Dependence Sensitivity Analysis ...

Slide 14

Slide 14 text

解釈可能性が⾼い構造を持つ 機械学習アルゴリズム Fever? Internal Bleeding? Stay Home Stay Home Go to Hospita l 決定⽊ ルールリスト 線形回帰・ロジスティック回帰 Explainable Boosting Machines (EBM) …. Glass-box models

Slide 15

Slide 15 text

ブラックボックスな 機械学習モデルの説明 Model Explanation Perturb Inputs Analyze SHAP LIME Partial Dependence Sensitivity Analysis ... Black-box explanations

Slide 16

Slide 16 text

intepret interpret-community interpret-text interpret にもブラックボックスな モデルを解釈する機能はあるけど、 interpret-community の⽅が 機能が充実しているよ

Slide 17

Slide 17 text

アジェンダ

Slide 18

Slide 18 text

https://interpret.ml/ 機械学習モデル解釈・説明のための 包括的なフレームワーク 決定⽊ ルールリスト 線形回帰・ロジスティック回帰 EBM … SHAP LIME Partial Dependence Sensitivity Analysis ...

Slide 19

Slide 19 text

Explainable boosting machines (EBM)

Slide 20

Slide 20 text

ž Linear Model ž y = β0 + β1 x1 + β2 x2 + ... + βn xn ž Additive Model ž y = f1 (x1 ) + f2 (x2 ) + ... + fn (xn) ž Additive Model with Pairwise Interactions (GA2M) ž y = Ʃi fi (xi) + Ʃij fij (xi , xj )

Slide 21

Slide 21 text

Demo ⼯場の品質管理モデルの解釈 (interpret の EBM モデルによる解釈可能性) https://aka.ms/interpretdemo1 Notebook

Slide 22

Slide 22 text

Issue#74

Slide 23

Slide 23 text

No content

Slide 24

Slide 24 text

No content

Slide 25

Slide 25 text

SHAP

Slide 26

Slide 26 text

各特徴量がどのくらい寄与 家の価格の 予測 $300,000 家の価格の 平均 $310,000 差額 - $10,000

Slide 27

Slide 27 text

近くに公園がある +$10000 猫の飼育禁⽌ -$20000 安全な地域 +$10000 ペンキ禁⽌ -$10000 各特徴量がどのくらい寄与

Slide 28

Slide 28 text

Demo ⾃動⾞価格予測モデルの解釈 (Interpret-community のダッシュボード) https://aka.ms/interpretdemo2 Notebook

Slide 29

Slide 29 text

信頼できる機械学習とは? https://docs.microsoft.com/ja-JP/azure/machine-learning/concept-responsible-ml

Slide 30

Slide 30 text

No content

Slide 31

Slide 31 text

アジェンダ

Slide 32

Slide 32 text

テキストデータの モデルの解釈可能性 https://github.com/interpretml/interpret-text Interpret-text

Slide 33

Slide 33 text

• 古典的な機械学習パイプライン • 前処理、エンコーディング、学習、 ハイパーパラメータチューニングが実装済み • サポートしているモデル • scikit-learn の線形モデル (coefs_) • Tree ベースのアンサンブルモデル (feature_importances) • 上記モデルの係数や重要度を利⽤した説明性を提供 デフォルトの設定 : 1-gram bag-of-words + scikit-learn count vectorizer + Logistic regression

Slide 34

Slide 34 text

⼀貫性のある解釈 任意の DNN モデル Towards A Deep and Unified Understanding of Deep Neural Models in NLP, Guan et al. [ICML 2019]

Slide 35

Slide 35 text

Rethinking Cooperative Rationalization: Introspective Extraction and Complement Control, Yu et al. [EMNLP 2019] 内省的⽣成器 min-max ゲーム 予測器 補完的予測器

Slide 36

Slide 36 text

Classical Text Explainer Unified Information Explainer Introspective Rationale Explainer Input model support Scikit-learn linear models and tree-based models PyTorch PyTorch Explain BERT No Yes Yes Explain RNN No No Yes NLP Pipeline Support Handles text pre- processing, encoding, training, hyperparameter tuning Uses BERT tokenizer however user needs to supply trained/fine- tuned BERT model, and samples of trained data Generator and predictor modules handle the required text pre-processing.

Slide 37

Slide 37 text

InterpretML : Understand Models. Build Responsibly. interpretML (GitHub) 機械学習モデル解釈ナイト (エンジニア向け) BlackBox モデルの説明性・解釈性技術の実装 ⼀般化線形モデル (GLM) & ⼀般化加法モデル(GAM) Deep Learning Ditial Conference [Track4-1] BERT の解剖学 : interpret-text による⾃然⾔語処理 (NLP) のモデル解釈 Microsoft AI Business School Microsoft 責任のある AI

Slide 38

Slide 38 text

No content

Slide 39

Slide 39 text

No content