Изотоническая регрессия — это непараметрический метод построения монотонной (неубывающей или невозрастающей) функции, которая наилучшим образом аппроксимирует данные в смысле минимизации суммы квадратов ошибок.

Если говорить простыми словами: она находит “ступенчатую” монотонную кривую, которая максимально близко проходит к вашим данным, не нарушая заданного порядка.

Ключевая идея

Допустим, у вас есть точки , где — это вход (например, предсказанная моделью вероятность), а — отклик (например, фактическая доля событий). Изотоническая регрессия ищет такую функцию , которая:

  1. Монотонно неубывает: если , то .
  2. Минимизирует сумму квадратов отклонений: среди всех монотонных функций.

Результатом является кусочно-постоянная функция (ступеньки).


Как работает алгоритм (PAVA)

Самый известный алгоритм — PAVA (Pool Adjacent Violators Algorithm — Алгоритм объединения смежных нарушителей).

Его логика на примере:

  1. Исходные данные: Допустим, у нас есть отсортированные по значения : .
  2. Поиск нарушений монотонности: Мы видим, что — это нарушение (после 0.3 должно быть число не меньше).
  3. Объединение (пулинг): Нарушающий блок объединяется в один блок, и ему присваивается среднее значение: . Теперь последовательность: .
  4. Проверка дальше: Теперь — новое нарушение. Объединяем в один блок со средним . Последовательность: .
  5. Проверка глобально: Внезапно, после первого объединения у нас могло появиться новое нарушение: Нет, равны. ? Да. ? Да. ? Да.
  6. Результат: Получаем монотонную кусочно-постоянную функцию со значениями .

Визуально: Если нарисовать исходные точки и изотоническую аппроксимацию, вы увидите “ступеньки”, которые идут снизу вверх, проходя как можно ближе к данным.


Главное применение в машинном обучении: Калибровка вероятностей

Это именно то, о чем вы спрашивали в контексте логистической регрессии и .

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

Решение (постобработка):

  1. Берём откалибровочную выборку (не использованную при обучении).
  2. Используем на ней модель, чтобы получить “сырые” предсказания ().
  3. Отсортировываем пары , где — истинная метка (0 или 1).
  4. Применяем изотоническую регрессию, где:
    • = отсортированные “сырые” предсказания ().
    • = соответствующие бинарные метки ().
  5. Получаем монотонную калибровочную функцию , которая преобразует исходные предсказания в откалиброванные вероятности.
  6. Для любого нового предсказания ищем, в какую “ступеньку” оно попадает, и заменяем его на значение этой ступеньки.

Почему это работает для калибровки? По своей природе истинная вероятность события должна монотонно расти с ростом предсказания модели. Если модель говорит, что случай A имеет вероятность выше, чем случай B, то и фактическая доля событий в группе A должна быть не ниже, чем в группе B. Изотоническая регрессия принудительно обеспечивает эту монотонность, попутно усредняя фактические доли внутри каждого блока.


Сравнение с другими методами калибровки

МетодПринципГибкостьСклонность к переобучению
Platt ScalingПропускает логит модели через логистическую регрессию с 2 параметрами.Низкая (только S-образная форма).Низкая.
Изотоническая регрессияСтроит произвольную монотонную ступенчатую функцию.Очень высокая (может исправить сложные нелинейности).Высокая, требует достаточно большого откалибровочного набора (>1000 samples).

Вывод: Изотоническая регрессия — это более мощный, но и более требовательный к данным метод. Её стоит использовать, когда:

  • Калибровочная кривая имеет сложную нелинейную форму.
  • У вас есть достаточно большой откалибровочный набор данных.
  • Важна максимально точная калибровка.

Преимущества и недостатки

Плюсы:

  • Непараметрическая: Не накладывает заранее заданную форму (например, сигмоиду), что позволяет улавливать сложные искажения.
  • Монотонность: Гарантирует, что порядок предсказаний сохранится (если , то и после калибровки ).
  • Интерпретируемость: Результат — это просто набор порогов и скорректированных значений.

Минусы:

  • Склонность к переобучению: На маленьких выборках может выучить шум.
  • Экстраполяция: Плохо обрабатывает значения вне диапазона откалибровочной выборки (обычно для них используют ближайшее граничное значение).
  • Кусочно-постоянный вид: На выходе получается дискретное множество вероятностей, а не непрерывный спектр.

Примеры применения вне калибровки

  • Восстановление монотонных зависимостей: Когда из физики/экономики известно, что зависимость должна монотонной (например, спрос от цены), а зашумленные данные нарушают монотонность.
  • Статистика и визуализация: Построение монотонных трендов.
  • Задачи ранжирования: Когда нужно преобразовать выходы алгоритма в значения, строго соответствующие порядку.

Изотоническая регрессия — это мощный инструмент для принудительного исправления монотонных искажений в данных или прогнозах модели. В контексте машинного обучения она является “тяжёлой артиллерией” среди методов калибровки, способной исправить даже сложные нелинейные перекосы в предсказанных вероятностях, но требующей для этого достаточно данных.