Интерпретируемость моделей

Permutation Importance

Перестановочная важность

актуальноТекущий рабочий стандарт

Признак перемешивается, и измеряется падение качества модели — модельно-независимый и честный подход.

Ключевые тезисы

  • Считается на валидации, а не на train.
  • Коррелированные признаки маскируют важность друг друга.
  • Стоимость — одно дополнительное предсказание на признак.

Подробный разбор

2 подтем — раскройте любую, чтобы увидеть объяснение, формулы, примеры и интерактивные графики.

1

Алгоритм и правильное применение

Модельно-независимо, честно и просто в реализации.

  1. Измерить качество модели на валидации.
  2. Перемешать значения одного признака между объектами.
  3. Измерить качество снова; разность — важность признака.
  4. Повторить несколько раз для устойчивости и вернуть признак на место.
from sklearn.inspection import permutation_importance
r = permutation_importance(model, X_val, y_val,
                           n_repeats=10, scoring="roc_auc", random_state=0)
for i in r.importances_mean.argsort()[::-1][:10]:
    print(f"{X_val.columns[i]:<30} {r.importances_mean[i]:.4f} ± {r.importances_std[i]:.4f}")
На практике

Считать на train бессмысленно: переобученная модель покажет высокую важность у шумовых признаков, которые она запомнила.

2

Коррелированные признаки

Почему важность может оказаться нулевой у важного признака.

Если два признака почти дублируют друг друга, перемешивание одного из них не ухудшит модель: она возьмёт информацию из второго. Оба получат нулевую важность — и вывод «признаки бесполезны» будет ложным.

  • Лечится группировкой: перемешивать коррелированные признаки вместе.
  • Или предварительной кластеризацией признаков по корреляции с выбором представителя.
  • Conditional permutation importance учитывает зависимости, но заметно дороже.

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

Признаки: создание, отбор, важность · Объяснение предсказаний

SHAP85%

SHAP · Интерпретируемость моделей

Распределение вклада признаков на основе значений Шепли из теории игр — с гарантиями аддитивности и согласованности.

LIME85%

LIME · Интерпретируемость моделей

Локальная аппроксимация сложной модели простой линейной в окрестности конкретного объекта.

Partial Dependence85%

Partial Dependence Plot · Интерпретируемость моделей

Показывает средний эффект признака на предсказание при усреднении по остальным признакам.

ICE85%

ICE-кривые · Интерпретируемость моделей

Individual Conditional Expectation: та же зависимость, но отдельной линией для каждого объекта.

Counterfactual explanations85%

Контрфактические объяснения · Интерпретируемость моделей

Минимальное изменение входа, которое меняет решение модели: «что нужно поменять, чтобы кредит одобрили».

Logistic Regression85%

Логистическая регрессия · Классическое машинное обучение

Линейная модель классификации: сигмоида переводит линейную комбинацию признаков в вероятность класса.

Feature engineering70%

Конструирование признаков · Данные

Создание признаков, в которых закономерность становится линейно отделимой или просто более заметной для модели.

Encoding70%

Кодирование категорий · Данные

Перевод категориальных признаков в числа: one-hot, ordinal, target encoding, хеширование, эмбеддинги.

Feature selection70%

Отбор признаков · Данные

Убираем шумные и избыточные признаки, чтобы снизить переобучение, ускорить инференс и упростить интерпретацию.

Feature engineering70%

Работа с признаками · Практика ML

На табличных данных грамотные признаки дают больший прирост, чем смена модели.

Feature importance70%

Важность признаков · Интерпретируемость моделей

Оценка вклада признаков в предсказания модели — первый шаг к пониманию её логики.

Feature Stores70%

Хранилища признаков · MLOps

Централизованное хранилище признаков, единое для обучения и онлайн-инференса.

Topological features70%

Топологические признаки · Топологический анализ данных

Векторизация топологии: энтропия персистентности, суммарная длина жизни, числа Бетти, persistence images.