Я пытаюсь интерпретировать мою модель, используя ядро Shap. Набор данных имеет форму (176683, 42). Объяснитель (xgbexplainer) успешно смоделирован, и когда я использую его для генерации shap_values, он выдает ошибку памяти.
import shap
xgb_explainer = shap.KernelExplainer(trained_model.steps[-1][-1].predict,X_for_shap.values)
shap_val = xgb_explainer.shap_values(X_for_shap.loc[0], nsamples=1)
Сначала я использовал nsamples по умолчанию = 2 * X_for_shap.shape [2] + 2048, это возвращено MemoryError: невозможно выделить массив с формой (2132, 7420686) и типом данных float64
Когда я установил его в nsamples = 1, он будет работать в течение неопределенного времени. Пожалуйста, помогите мне понять, где я делаю неправильно
Это скриншот сообщения об ошибке