Explainable AI на собеседовании Data Scientist

Проверь себя · 1/3разбор после ответа
Среднее время выполнения задачи — 70 секунд, стандартное отклонение — 10 секунд. Сотрудник выполнил задачу за 85 секунд. Чему равен его z-score и что он означает?

Зачем нужен XAI

Explainable AI (XAI) — это набор методов, которые отвечают на вопрос «почему модель выдала именно такое предсказание». Градиентный бустинг или нейросеть внутри — чёрный ящик: на вход подали фичи, на выходе получили число, но что повлияло и как — неочевидно. На собесе Data Scientist тему поднимают почти всегда, когда речь идёт о продакшене в финтехе, медицине или скоринге: там модель без объяснимости просто не пустят в прод.

Зачем интерпретируемость нужна на практике:

  • Доверие. Пользователи, бизнес и регуляторы должны понимать логику модели, иначе ей не будут пользоваться. Продукт-менеджер не выкатит скоринг, если не может объяснить клиенту отказ.
  • Отладка. Когда модель ошибается, объяснение показывает, какая фича утянула предсказание не туда — часто это утечка таргета (data leakage) или мусорный признак.
  • Комплаенс. GDPR закрепляет «право на объяснение» автоматического решения, а финансовые регуляторы (в РФ — ЦБ) прямо требуют обоснования отказа в кредите. Модель без интерпретации тут вне закона.
  • Улучшение модели. Через объяснения находят предвзятые (biased) признаки — например, когда модель фактически принимает решение по полу или региону, хотя это запрещено.

Global vs local интерпретация

Первое, что стоит развести на собесе, — уровень объяснения.

Глобальная интерпретация описывает поведение модели в целом: какие фичи важны для всех предсказаний. Пример вывода: «доход — самый значимый признак в скоринге». Инструменты: важность признаков (feature importance), permutation importance, глобальный SHAP summary plot.

Локальная интерпретация объясняет одно конкретное предсказание: почему именно этому клиенту отказали. Пример: «этой заявке отказано из-за низкого кредитного рейтинга и трёх просрочек за год». Инструменты: SHAP-values для одной строки, LIME, counterfactuals.

Интервьюер часто ловит на подмене: кандидат называет глобальную важность фичи, когда вопрос был про конкретный кейс. Для объяснения отдельного решения клиенту нужен именно локальный метод.

SHAP

SHapley Additive exPlanations — метод атрибуции вкладов признаков, основанный на теории игр (значениях Шепли из кооперативных игр). Идея: каждый признак — «игрок», а предсказание — «выигрыш», который надо честно поделить между игроками. SHAP считает средний вклад фичи по всем возможным комбинациям признаков, поэтому у него есть строгие математические свойства (аддитивность, справедливость дележа).

import shap

explainer = shap.TreeExplainer(model)       # для деревьев есть быстрая версия
shap_values = explainer.shap_values(X)
shap.summary_plot(shap_values, X)            # глобальная картина важности

Плюсы:

  • Теоретически обоснован — единственный метод с гарантией справедливого распределения вкладов.
  • Работает и на глобальном, и на локальном уровне: одни и те же SHAP-values агрегируются в общую важность или разбирают одно предсказание.
  • Для деревьев есть TreeSHAP — точная и быстрая версия, без сэмплирования.

Минусы: на больших данных и на моделях без специализированной версии (KernelSHAP) вычисление дорогое — сложность растёт экспоненциально с числом признаков, поэтому его аппроксимируют сэмплированием.

LIME

Local Interpretable Model-agnostic Explanations — метод, который объясняет одно предсказание, аппроксимируя модель локально простой линейной моделью. Вокруг интересующего объекта LIME генерирует возмущённые копии (случайно меняет значения фич), прогоняет их через чёрный ящик и обучает на этих точках взвешенную линейную регрессию. Коэффициенты этой локальной модели и есть объяснение.

from lime import lime_tabular

explainer = lime_tabular.LimeTabularExplainer(X_train)
exp = explainer.explain_instance(x, model.predict_proba)  # объяснение одной строки

Плюсы: model-agnostic (работает с любой моделью — от бустинга до нейросети), интуитивно понятен, объяснение легко показать бизнесу.

Минусы: локальная линейная аппроксимация может не отражать истинное поведение модели, если поверхность решения рядом сильно нелинейна. Результат нестабилен — от запуска к запуску объяснения плавают из-за случайного сэмплирования. SHAP в этом смысле надёжнее.

Готовишься к собесу Data Scientist?
ML, Deep Learning, NLP, MLOps — вопросы с разборами в Telegram
Тренировать DS в Telegram

Counterfactuals

Контрфактическое объяснение отвечает на вопрос «какое минимальное изменение входных данных изменило бы предсказание».

Клиенту отказано в кредите. Контрфактуал:
«Если бы доход был выше на 40 000 ₽, заявку бы одобрили».

Это самый actionable-формат: он даёт пользователю конкретный шаг, а не абстрактную важность признака. Feature importance говорит «доход важен», а контрфактуал — «добавь столько-то, и решение изменится». Именно поэтому его любят в клиентских продуктах.

Инструменты: DiCE (Diverse Counterfactual Explanations) и Alibi. На собесе стоит упомянуть ограничение: контрфактуал должен быть достижимым (actionable) — совет «стать на 10 лет моложе» бесполезен, поэтому в оптимизацию закладывают ограничения на изменяемые признаки.

Как это спрашивают на собесе

Типичные формулировки, которые слышно на интервью:

  • «В чём разница между SHAP и LIME, что выберешь для скоринга?» Ждут: SHAP теоретически обоснован и стабилен, LIME быстрее и проще, но нестабилен; для регуляторной задачи — SHAP.
  • «Модель одобряет кредиты, клиент требует объяснить отказ. Что покажешь?» Ждут: локальное объяснение (SHAP-values или counterfactual для конкретной заявки), а не глобальную важность.
  • «Feature importance из .feature_importances_ дерева — можно ей доверять?» Ждут: осторожность — встроенная важность у деревьев смещена в сторону признаков с большим числом уникальных значений; permutation importance или SHAP надёжнее.
  • «Как объяснимость помогает найти data leakage?» Ждут: если в топе важности вдруг оказалась фича, которой не должно быть в момент предсказания, — это утечка таргета.

Частые ошибки

  • Путать корреляцию с причинностью. SHAP показывает вклад фичи в предсказание модели, а не причинно-следственную связь в реальном мире. Признак может быть важен для модели, но не влиять на исход в реальности.
  • Показывать глобальную важность там, где нужна локальная. Клиенту важно его решение, а не средняя важность по всей выборке.
  • Доверять встроенной feature importance деревьев. Она смещена и меняется от типа (gain / split / cover); для честной картины берут permutation importance или SHAP.
  • Считать LIME стабильным. Из-за случайного сэмплирования объяснения плавают — для аудита и регулятора это проблема.
  • Забывать про actionability контрфактуалов. Совет изменить неизменяемый признак (возраст, пол) юзеру бесполезен и вреден.

Связанные темы

FAQ

Когда выбрать SHAP, а когда LIME?

SHAP — когда важны стабильность и математическая корректность: скоринг, регуляторные задачи, аудит. LIME — когда нужно быстрое, дешёвое и наглядное объяснение на любой модели и допустима нестабильность. На практике в проде чаще выбирают SHAP из-за воспроизводимости.

Чем интерпретируемость отличается от объяснимости?

Интерпретируемая модель (interpretable) прозрачна по устройству — линейная регрессия, неглубокое дерево, где логику видно напрямую. Объяснимость (explainability) — это внешние методы поверх чёрного ящика (SHAP, LIME), которые постфактум объясняют предсказание. Первое встроено в модель, второе накручивается сверху.

Что важнее для регулятора — точность или объяснимость?

В финтехе и медицине объяснимость часто важнее нескольких процентов точности: модель, которую нельзя обосновать перед регулятором, не пустят в прод. Поэтому иногда сознательно берут чуть более слабую, но прозрачную модель, либо накрывают бустинг слоем SHAP-объяснений.

Можно ли объяснимостью поймать data leakage?

Да, это один из самых полезных приёмов. Если в топе важности оказывается признак, недоступный в момент предсказания или подозрительно сильно скоррелированный с таргетом, — почти наверняка утечка. Объяснимость тут работает как инструмент отладки, а не только отчётности.

Это официальная информация?

Нет. Статья основана на работах Lundberg & Lee 2017 (SHAP), Ribeiro et al. 2016 (LIME) и документации библиотек SHAP, LIME, DiCE и Alibi. Конкретные требования зависят от компании, домена и уровня позиции.


Тренируйте Data Science — откройте тренажёр с 1500+ вопросами для собесов.