機械学習モデルを解釈するSHAP
機械学習モデルを学習させた時に、実際にモデルはどの特徴量を見て予測をしているのかが知りたい時があります。今回はモデルによる予測結果の解釈性を向上させる方法の1つであるSHAPを解説します。 目次 1. XAIとは 2. SHAPとは 3. 実験・コード 1:回帰モデル(Diabetes dataset) __3.1 データ読み込み __3.2 モデル作成 __3.3 SHAP値 __3.4 SHAP可視化 4. 実験・コード 2:画像データ(Imagenet) __4.1 データ読み込み __4.2 モデル作成 __4.3 SHAP可視化 1. XAI (Explainable AI)とは XAI はExplainable AI(説明可能なAI)の英略称です。言葉通り、予測結果や推定結果に至るプロセスが人間によって説明可能になっている機械学習のモデルに関する技術や研究分野のことを指します。 AI/機械学習(特にディープラーニングなどのニューラルネットワーク)によって作成されるモデルの中身は、仕組みの性質上、基本的に解釈が難しいです。そのため、中身はブラックボックス(=内部が不明になっている箱のことと言われます。 機械学習モデルを解釈する技術にはSHAP、LIME、DeepLIFT、AIX360 (IBM)、Activation Atlases (Googleと OpenAI)などの様々なツールが考案されています。 今回紹介するSHAPは、機械学習モデルがあるサンプルの予測についてどのような根拠でその予測を行ったかを解釈するツールです。 2. SHAPとは SHAP「シャプ」はSHapley Additive exPlanationsの略称で、モデルの予測結果に対する各変数(特徴量)の寄与を求めるための手法です。SHAPは日本語だと「シャプ」のような発音のようです。ある特徴変数の値の増減が与える影響を可視化することができます。 Shapley Value Estimation 3. 実験・コード 1:回帰モデル(Diabetes dataset) データセット:糖尿病患者の診療データ(Diabetes dataset) モデル:XGBoost …