1.質問内容
shap値により、説明変数と目的変数の関連をグラフ化しました。
参考コードを実行してもらうと、2つのプロットグラフの説明
変数がfeature0~12で示されており、これを、以下の説明変数
名で示したいのです。
CRIM ZN INDUS CHAS NOX ... B LSTAT
よろしくお願いいたします。
2.参考コード
python
1#ボストン住宅価格データセットの読み込み 2from sklearn.datasets import load_boston 3boston = load_boston() 4#説明変数 5X = boston.data 6#目的変数 7y = boston.target 8import pandas as pd 9import numpy as np 10from pandas import DataFrame 11 12df = DataFrame(X, columns = boston.feature_names).assign(MEDV=np.array(y)) 13 14# ヘッダ出力 15df.head 16 17# scikit-learnの準備 18from sklearn.model_selection import train_test_split 19# 訓練データとテストデータに8:2で分割 20X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=0) 21 22from sklearn.ensemble import GradientBoostingRegressor 23from sklearn.metrics import mean_squared_error 24# xgboostのモデルを作成 25 26model = GradientBoostingRegressor(n_estimators=1000, max_depth=50,random_state=0) 27# モデルの訓練 28model.fit(X_train, y_train) 29 30!pip install shap 31import shap 32 33# explain the model's predictions using SHAP 34explainer = shap.Explainer(model) 35shap_values = explainer(X) 36 37# summarize the effects of all the features 38# beeswarmによるプロット 39shap.plots.beeswarm(shap_values) 40# barによるプロット 41shap.plots.bar(shap_values) 42
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2021/05/06 04:13