Какие методы существуют для интерпретации зависимости признака от таргета, включая блэкбокс модели
Что проверяют
Умеете ли вы объяснить, как модель использует признак, и отличаете ли глобальную картину от объяснения одного прогноза. Интервьюера интересуют ограничения методов: следом спрашивают про коррелированные признаки или про то, можно ли по SHAP судить о причинности.
Как отвечать
Разделите методы на три группы:
- встроенные в модель: коэффициенты линейной регрессии (сравнимы только после стандартизации), важность в бустингах по gain или по числу сплитов, MDI в случайном лесе. Быстро, но MDI считается на трейне и завышает признаки с множеством уникальных значений;
- глобальные модель-агностичные: permutation importance (
sklearn.inspection.permutation_importance) считается на валидации по падению метрики. Форму зависимости показывают PDP и ICE:PartialDependenceDisplay.from_estimatorсkind="both"рисует среднюю кривую и кривые отдельных объектов, по их разбросу видны взаимодействия. ALE копит локальные приращения и не уходит в нереальные комбинации признаков, поэтому при корреляциях надёжнее PDP; - локальные: SHAP раскладывает прогноз на вклады признаков по значениям Шепли. Для деревьев
TreeExplainerсчитает быстро и точно,KernelExplainerподходит любой модели, но медленный. Из локальных вкладов собираются глобальные графики: beeswarm и зависимость вклада от значения признака. LIME учит простую модель вокруг одной точки, результат заметно зависит от семплирования.
Ещё два приёма: суррогатное дерево, обученное на прогнозах чёрного ящика, и изначально прозрачные модели вроде EBM из InterpretML. Если по бизнес-логике зависимость монотонна, её задают ограничениями монотонности в LightGBM, XGBoost или CatBoost.
Где спотыкаются
Выдают важность за причинность. Методы объясняют модель, а не мир: большой SHAP значит, что модель опирается на признак, а не что он влияет на таргет.
Строят PDP по сильно коррелированным признакам. Метод подставляет значения, которых в данных не бывает, и кривая описывает фантазию модели.
Считают permutation importance при двух дублирующих признаках. Перестановка одного почти не портит метрику, и оба выглядят бесполезными.