Моя команда и я довольно новички в SHAP, и мы пытаемся провести несколько тестов, чтобы применить SHAP к некоторым синтетическим данным, которые мы создали. У нас есть задача регрессии, в которой есть 5 числовых независимых переменных и 1 числовая зависимая переменная.
Я знаю, что обычно мы делаем что-то вроде ниже, чтобы получить значения SHAP для линейной регрессии. .
Код: Выделить всё
X_train = data[['x1', 'x2', 'x3', 'x4', 'x5']]
y_train = data[['y']]
model = sklearn.linear_model.LinearRegression()
model.fit(X_train, y_train)
explainer = shap.LinearExplainer(model, X_train)
В приведенном выше примере я заранее определяю модель линейной регрессии для своих данных перед запуском SHAP. Однако мой менеджер попросил меня: «Вместо того, чтобы запускать модели true (которые нам полезно знать), давайте вместо этого запустим SHAP и попробуем спрогнозировать y, используя в качестве данных от x1 до x5». ."
Есть ли способ рассчитать значения SHAP без указания модели, например линейной регрессии, и вместо этого загружать в нее только независимые и зависимые переменные?>
Подробнее здесь:
https://stackoverflow.com/questions/786 ... true-model