Ошибка при использовании shapley для линейной регрессии: TypeError: объект «Лассо» не вызывается - PullRequest
0 голосов
/ 04 февраля 2020

Я использую библиотеку shap для сравнения нескольких моделей, одна из которых - регуляризованная линейная регрессия, но когда я пытаюсь создать объяснитель:

 shap.KernelExplainer(linear_reg,X1)

Я получаю следующую ошибку:

\Anaconda3\lib\site-packages\shap\common.py in match_model_to_data(model, data)
     87             out_val = model.f(data.convert_to_df())
     88         else:
---> 89             out_val = model.f(data.data)
     90     except:
     91         print("Provided model function fails when applied to the provided data set.")

TypeError: 'Lasso' object is not callable

Ниже приведен код, воспроизводящий эту ошибку:

from sklearn.datasets import make_regression¿
from sklearn.linear_model import LinearRegression
import shap
from sklearn import linear_model


X1,y1= make_regression(10,100)
linear_reg = linear_model.Lasso(alpha=0.1)
linear_reg.fit(X1, y1)

shap.initjs()
explainer = shap.KernelExplainer(linear_reg,X1)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...