From 683cdbc55f1c3f24befaa712cd38b7adba5a73ae Mon Sep 17 00:00:00 2001 From: Rudy Celekli <47457359+rudycelekli@users.noreply.github.com> Date: Tue, 13 Oct 2026 11:43:48 -0400 Subject: [PATCH] fix(model-qa): explain regressors through the prediction fallback Signed-off-by: Rudy Celekli <47457359+rudycelekli@users.noreply.github.com> --- specialized/specialized-model-qa.md | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/specialized/specialized-model-qa.md b/specialized/specialized-model-qa.md index 4eb4d4ff..0b7aa024 100644 --- a/specialized/specialized-model-qa.md +++ b/specialized/specialized-model-qa.md @@ -239,9 +239,8 @@ def shap_global_analysis(model, X: pd.DataFrame, output_dir: str = ".", try: explainer = shap.TreeExplainer(model) except Exception: - explainer = shap.KernelExplainer( - model.predict_proba, shap.sample(X, 100) - ) + predict = model.predict_proba if hasattr(model, "predict_proba") else model.predict + explainer = shap.KernelExplainer(predict, shap.sample(X, 100)) shap_values = explainer.shap_values(X) @@ -284,9 +283,8 @@ def shap_local_explanation(model, X: pd.DataFrame, idx: int, try: explainer = shap.TreeExplainer(model) except Exception: - explainer = shap.KernelExplainer( - model.predict_proba, shap.sample(X, 100) - ) + predict = model.predict_proba if hasattr(model, "predict_proba") else model.predict + explainer = shap.KernelExplainer(predict, shap.sample(X, 100)) explanation = explainer(X.iloc[[idx]]) if explanation.values.ndim == 3: