サービス詳細
Rapidminerでモデルの予測結果をSHAPしてみた!! - Natic | Application Modernization Platform – 日商エレクトロニクス

Rapidminerでモデルの予測結果をSHAPしてみた!!

inside rapidminer 01 1 Rapidminerでモデルの予測結果をSHAPしてみた!!

本記事で紹介したいこと

ビジネス現場では、作成したモデルの予測精度が重要となります。
たとえば、予測精度の良いモデルは、製品の需要予測において過剰な在庫コストと品切れによる機会損失を回避できます。このように予測精度はコストや利益を左右する重要な要素であり、より高い予測精度が得られる機械学習アルゴリズムが求められます。

また、ビジネス現場では、モデルの予測精度に加えて、モデルが予測結果を導いた根拠を知ることも必要です。モデルの予測結果を説明できれば、分析者がモデルの振る舞いを把握し、利用者への説明責任を果たすことが可能となります。
今回は、Rapidminer Studioとボストンの住宅価格データを使って予測モデルを作成し、そのモデルの説明性を確認します。

目次 Table of Contents

  1. モデルの説明性のための技術
  2. SHAPとは
  3. Rapidminerによる住宅価格予測と説明性の確認
  4. まとめ

1.モデルの説明性のための技術

モデルの説明性は、「説明可能なAI」(eXplainable AI:XAI)または「解釈可能性」(Interpretable Machine Learning)と呼ばれます。
モデルの説明性に関連する技術として2016年のLIME(Local Interpretable Model-Agnostic Explanations)と2017年のSHAP(SHapley Additive exPlanations)の発表があります。
なお、SHAPはLIMEのアイデアに協調ゲーム理論を導入したものです。
また、説明性には、サンプル全体の予測結果についての全体的でグローバルな説明性と特定レコードの予測結果についての局所的でローカルな説明性の2つがあります。
前者は分析者のモデル精度向上に利用され、後者は利用者への説明責任を果たすために重要な機能となります。
inside rapidminer 04 Rapidminerでモデルの予測結果をSHAPしてみた!!

2つの説明性の利用シーン

inside rapidminer 03 Rapidminerでモデルの予測結果をSHAPしてみた!!

2.SHAPとは

SHAPの正式名称は、SHapley Additive exPlanationsで、2017年にNIPS2017(※1)で発表されました。
SHAPは、協調ゲーム理論のShapley(シャープレイ)値を機械学習でも使えるようにしたものです。
協力ゲーム理論のShapley値は、各プレイヤーの貢献度合いに応じて利益を分配する指標となります。
SHAPは、機械学習モデルの各特徴量(説明変数)をプレイヤーに見立ててShapley値を計算することにより特徴量毎の貢献度を定量的に評価します。

(※1)NIPSの正式名称は、Neural Information Processing Systems、NIPS2017は、2017年12月に米カリフォルニア州ロングビーチで開催されました。
inside rapidminer 06 Rapidminerでモデルの予測結果をSHAPしてみた!!

  1. 組み合わせの総数
  2. 説明変数ⅰを含まない任意の部分集合(=s)
  3. 組み合わせの出現回数
  4. 任意の部分集合に説明変数ⅰが参加したときの限界貢献度

※ n=説明変数の集合、|n|=集合nの要素数、|s|=集合sの要素数

Rapidminerによるボストンの住宅価格予測と説明性の確認

今回は、ボストンの住宅価格データを使って作成したモデルの説明性を確認します。
1970年代の米国マサチューセッツ州ボストンの住宅価格データの13個の説明変数から住宅価格を予測するという課題です。
アルゴリズムは、回帰系のGLM、ニューラルネットワーク系のDeep Learning、決定木系のGDBTを使用します。
一般に、GLMは説明性が高いのでホワイトボックスモデル、Deep LearningとGDBTは説明性が低いのでブラックボックスモデルと呼ばれます。

  • 利用するデータ:Boston Housing データセット(The Boston house-price data)
  • Rapidminer Studio v9.10(フリー版)
  • 使用するアルゴリズム:GLM(一般化線形モデル)、Deep Learning(ディープラーニング)、GDBT(Gradient Boosted Trees)
  • Rapidminer Extension(拡張機能):Generate Interpretation エクステンション

3-1.RapidminerでSHAPを使ったプロセス

住宅価格を予測するという課題ですので、Set Roleオペレータで住宅価格をラベル設定します。
次に、GLM、Deep Learning、GDBTの3つのアルゴリズムを利用してCross Validation(交差検証)でモデルの予測精度を確認します。
最後にGenerate Interpretationオペレータでモデルの予測結果の説明性を見ていきます。
Generate InterpretationオペレータのアルゴリズムパラメータはShapley、Sample Sizeは100とします。

メインプロセス

1 Rapidminerでモデルの予測結果をSHAPしてみた!!

3-2. GLM(一般化線形モデル)

サブプロセス

2 Rapidminerでモデルの予測結果をSHAPしてみた!!
RMSE(Root Mean Square Error)とR2(決定係数)という評価指標を使ってモデルの予測精度を確認します。RMSEから住宅価格の実測値と予測値が平均で4.809だけ乖離していることが分かります。また、R2から住宅価格が72.5%予測できていることが分かります。

  • RMSE:4.809
  • R2:0.725

モデルの内容を各説明変数の回帰係数から確認します。
回帰係数は、各説明変数が1単位だけ大きくなると住宅価格の予測値がどれだけ変化するかを表しています。
例えば、平均部屋数が1単位増えると住宅価格の予測値が3.857大きくなります。
また、低所得者人口の割合が1単位増えると住宅価格の予測値が0.518小さくなります。
GLMは、回帰係数によって各説明変数と予測値の関係を確認できます。

回帰係数

3 Rapidminerでモデルの予測結果をSHAPしてみた!!

SHAPによるグローバルな説明性

各説明変数の平均的な重要度が大きい順に並んでいます。町ごとの黒人の割合、主要施設への距離、広い家の割合の順で重要度が高いことが分かります。
4 Rapidminerでモデルの予測結果をSHAPしてみた!!

SHAPによるローカルな説明性

Row No毎に予測結果に対して重要度の高い説明変数上位3つが表示されます。Row No1の場合、主要高速道路へのアクセス性、主要施設への距離、川の隣かの順番であることが分かります。また、Row No3の場合、主要施設への距離、主要高速道路へのアクセス性、広い家の割合の順番であることが分かります。このようにRow No毎に予測結果に対して重要度の高い説明変数が異なることが確認できます。
5 Rapidminerでモデルの予測結果をSHAPしてみた!!

3-3. Deep Learning(ディープラーニング)

サブプロセス

6 Rapidminerでモデルの予測結果をSHAPしてみた!!

RMSE(Root Mean Square Error)とR2(決定係数)という評価指標を使ってモデルの予測精度を確認します。RMSEから住宅価格の実測値と予測値が平均で3.752だけ乖離していることが分かります。また、R2から住宅価格が83.3%予測できていることが分かります。

  • RMSE:3.752
  • R2:0.833

SHAPによるグローバルな説明性

各説明変数の平均的な重要度が大きい順に並んでいます。主要高速道路へのアクセス性、主要施設への距離、非小売業の割合の順で重要度が高いことが分かります。
7 Rapidminerでモデルの予測結果をSHAPしてみた!!

・SHAPによるローカルな説明性

Row No毎に予測結果に対して重要度の高い説明変数上位3つが表示されます。Row No1の場合、主要高速道路へのアクセス性、非小売業の割合、主要施設への距離の順番であることが分かります。また、Row No3の場合、主要高速道路へのアクセス性、主要施設への距離、川の隣かの順番であることが分かります。このようにRow No毎に予測結果に対して重要度の高い説明変数が異なることが確認できます。
8 Rapidminerでモデルの予測結果をSHAPしてみた!!

3-4. GDBT(Gradient Boosted Trees)

サブプロセス

9 Rapidminerでモデルの予測結果をSHAPしてみた!!

RMSE(Root Mean Square Error)とR2(決定係数)という評価指標を使ってモデルの予測精度を確認します。RMSEから住宅価格の実測値と予測値が平均で4.958だけ乖離していることが分かります。また、R2から住宅価格が81.3%予測できていることが分かります。

  • RMSE:4.958
  • R2:0.813

SHAPによるグローバルな説明性

各説明変数の平均的な重要度が大きい順に並んでいます。低所得者人口の割合、NOx濃度、主要施設への距離の順で重要度が高いことが分かります。
10 Rapidminerでモデルの予測結果をSHAPしてみた!!

・SHAPによるローカルな説明性

Row No毎に予測結果に対して重要度の高い説明変数上位3つが表示されます。Row No1の場合、主要施設への距離、平均部屋数、古い家の割合の順番であることが分かります。また、Row No3の場合、主要施設への距離、非小売業の割合、主要高速道路へのアクセス性の順番であることが分かります。このようにRow No毎に予測結果に対して重要度の高い説明変数が異なることが確認できます。
11 Rapidminerでモデルの予測結果をSHAPしてみた!!

3-5. モデルの予測精度と説明性の比較

モデルの予測精度をRMSEとR2で比較します。予測精度の順番は、Deep Learning、GDBT、GLMであることが分かります。予測結果の説明が難しいブラックボックスモデルの予測精度が高く、予測結果の説明が容易なホワイトボックスモデルの予測精度が低いという結果になりました。
image030 Rapidminerでモデルの予測結果をSHAPしてみた!!

各説明変数の平均的な重要度を比較します。
各モデルの上位3つまでに主要施設への距離が入っていることが分かります。
また、最も予測精度が良いDeep Learningで主要高速道路へのアクセス性の重要度が最も高いことが分かります。このように、モデル毎に各説明変数の重要度が異なります。
予測精度と各説明変数の重要度ランキングを確認した上で、最も納得感の得られるモデルを選択することが可能となります。
12 Rapidminerでモデルの予測結果をSHAPしてみた!!

4.まとめ

4-1.ビジネス現場では、モデルの予測精度が最も重要とされるが予測結果についての説明性も求められます

4-2. GLMは説明性が高いのでホワイトボックスモデル、Deep LearningとGDBTは説明性が低いのでブラックボックスモデルと呼ばれます

4-3. モデルの予測精度と説明性の間には、トレードオフの関係が存在します

4-4. SHAPにより全体的でグローバルな説明性と局所的でローカルな説明性が提供されます

4-5. SHAPを利用すれば、予測精度と各説明変数の重要度ランキングを確認した上で、最も納得感の得られるモデルが選択できます

5.製品や関連資料の紹介

機械学習プラットフォーム RapidMinerについてはこちら

img rapidminer banner 1 Rapidminerでモデルの予測結果をSHAPしてみた!!

参考資料1. Rapidminer Marketplace Interpretation【RapidMiner Marketplace】
参考資料2.「機械学習回帰におけるShapley値の理論説明と事例紹介(DEIM2022)」(2022/02/27 学習院大学経済学部 白田 由香利教授)
参考資料3.「機械学習を解釈する技術〜予測力と説明力を両立する実践テクニック(森下 光之助著)」(技術評論社)

記事担当者::アプリケーション事業推進部 長井伸次
投稿日:2022/06/14