Я хотел бы объяснить модель XGBoost, которая была найдена с использованием функции autoML. У меня проблемы с преобразованиями, которые там используются, или, скорее, с правильным вызовом TreeExplainer. В рабочей области Azure ML я вижу, что модель использует XGBoostClassifier и StandardScalerWrapper, но я не знаю, для каких функций она была применена.
Как должен выглядеть правильный вызов для объяснения модели?
Пожалуйста, посмотрите ниже, как я это делаю, но на самом деле это не работает, ошибка говорит: «слишком много значений для распаковки (ожидается 2)».
Кроме того, когда я пытаюсь использоватьTabularExplainer, который согласно описанию должен сам выбирать TreeExplainer, я получаю сообщение об ошибке, что для моей модели не найден объяснитель. Не могли бы вы, пожалуйста, совет?
model = pickle.load(open('./GenericModel/AllSystems/model/General-All_KPIs-by-normRecall.pkl', 'rb'))
from azureml.explain.model.tabular_explainer import TreeExplainer
# "features" and "classes" fields are optional
explainer = TreeExplainer(model,
X_test,
transformations=['StandardScaler'],
allow_all_transformations=True)
# Get the global feature importance values
# you can use the training data or the test data here
global_explanation = explainer.explain_global(X_test)