Анализ чувствительности - это проверка устойчивости к:

  • выбросам — удалить/изменить экстремальные значения;
  • выбору модели — разные функциональные формы, ковариационные структуры;
  • выбору предикторов — включить/исключить переменные;
  • априорным распределениям в байесовском анализе;
  • unmeasured confounding — насколько сильным должно быть скрытое смещение, чтобы объяснить эффект;
  • спеке случайных эффектов в LMM — random intercept vs random slope;
  • методу оценивания — ML vs REML;
  • определению исхода — разные способы операционализации.

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

Зачем он нужен

  • Понять, какие признаки/факторы сильнее всего влияют на прогноз.
  • Проверить устойчивость модели: не ломается ли она при небольших изменениях данных.
  • Оценить неопределённость прогнозов.
  • Провести what-if-анализ: «что будет, если цена вырастет на 10%?»
  • Проверить чувствительность к гиперпараметрам, шуму в данных, выбросам, дрейфу распределений.
  • Помочь в принятии решений и стресс-тестировании.

Основные виды

  1. Локальный анализ
    Смотрим, как выход меняется вблизи одной конкретной точки.
    Примеры: производные, градиенты, малые возмущения признака.

  2. Глобальный анализ
    Исследуем влияние входа по всему диапазону значений и с учётом распределений.
    Примеры: индексы Соболя, метод Морриса, дисперсионный анализ.

  3. One-at-a-time (OAT)
    Меняем один признак, остальные фиксируем. Просто, но не учитывает взаимодействия. Часто визуализируется в виде tornado-диаграммы.

  4. С учётом взаимодействий
    Методы вроде Sobol разлагают дисперсию выхода и показывают, сколько вносит сам признак и сколько — его совместное влияние с другими.

Популярные методы в DS

  • Permutation importance — насколько падает качество, если перемешать значения признака.
  • Partial dependence (PDP) и ICE-графики — как в среднем меняется прогноз при изменении признака.
  • SHAP — локальные вклады признаков; полезен для интерпретации, но это скорее атрибуция, чем классический анализ чувствительности.
  • Sobol indices — глобальные индексы чувствительности: первый порядок и полный эффект.
  • Morris screening — быстрый скрининг важных входов.
  • Анализ гиперпараметров — как метрика зависит от learning rate, глубины дерева и т.п.
  • Стресс-тесты и симуляции Монте-Карло — прогон модели при случайных входных распределениях.

Пример

Модель кредитного скоринга предсказывает вероятность дефолта. Анализ чувствительности может показать:

  • при изменении дохода на ±10% вероятность дефолта меняется на 2 п.п.;
  • при изменении возраста на ±10 лет — почти не меняется;
  • при изменении кредитной нагрузки — меняется сильнее всего, особенно в сочетании с низким доходом.

Так становится понятно, какие факторы критичны для риска.

Чем отличается от feature importance

Feature importance обычно отвечает на вопрос: «Какой признак важен для модели в целом?»
Анализ чувствительности шире: он отвечает на вопрос: «Как именно и насколько выход реагирует на изменения входа, параметров или предположений, включая взаимодействия и неопределённость?»

Ограничения

  • Результат зависит от выбранных диапазонов и распределений входов.
  • Чувствительность ≠ причинность.
  • Глобальные методы могут быть вычислительно дорогими.
  • Для сложных моделей с сильными взаимодействиями OAT-подход может вводить в заблуждение.