実現したいこと
コードの以下の部分でのエラー対処
shap_values = explainer.shap_values(input_data)
該当のソースコード
python
1import pandas as pd 2import tensorflow as tf 3import shap 4from tensorflow.keras.models import load_model 5 6# ファイルパスを設定 7model_name = 'model_name .h5' # モデルファイルのパス 8input_data_path = 'input_data_path.csv' # 入力データのパス 9 10# モデルとデータの読み込み 11model = load_model(model_name) 12input_data = pd.read_csv(input_data_path) 13 14# SHAP値の計算(ディープラーニングモデル用のDeepExplainerを使用) 15explainer = shap.DeepExplainer(model, input_data) 16shap_values = explainer.shap_values(input_data) 17 18# SHAP値の可視化 19# SHAPサマリープロット(特徴の重要度とその影響の方向を示す) 20shap.summary_plot(shap_values, input_data)
発生している問題・エラーメッセージ
phase = tf.keras.backend.learning_phase() AttributeError: module 'keras._tf_keras.keras.backend' has no attribute 'learning_phase'
試したこと
tensorflowとshapの互換性が問題らしい。。
現状の環境
TensorFlow version: 2.15.0
SHAP version: 0.44.0
python:3.10

あなたの回答
tips
プレビュー