Калибровка вероятностей: что это такое простыми словами
Калибровка вероятностей: определение и метрики
Калибровка — это настройка вашей модели, чтобы её прогнозная вероятность совпадала с реальной частотой исходов. Если на дистанции события с прогнозом 70% происходят в 65–75% случаев, модель честна. Если же при «70%» выигрывает лишь 55% — вы систематически переоцениваете шансы. Суть калибровки — убрать этот перекос, чтобы числа значили именно то, что заявляют. Основные метрики контроля:- Диаграмма надёжности: по оси X — прогнозные вероятности (0–1), по Y — фактическая частота побед в этих «корзинах». Идеал — диагональ.
- Brier score = среднее (p − y)². Чем ближе к нулю, тем точнее и увереннее прогноз. Условный пример: на 10 исходах средний квадрат ошибки 0,120 лучше, чем 0,180.
- ECE/MCE: ожидаемая и максимальная калибровка. ECE — взвешенное отклонение «прогноз − частота» по корзинам; MCE — худший провал среди них.
| Метрика | Что показывает | Цель |
|---|---|---|
| Brier score | Точность и остроту | Минимум |
| ECE | Сдвиг вероятностей | Ближе к 0 |
| Reliability (график) | Системные перекосы | Диагональ |
Основные методы калибровки: платс, изотоническая, температурная
Платс (Platt scaling) — это логистическая подстройка: на отложенной выборке модель учится превращать «сырой» балл в вероятность через простую формулу 1/(1+e^(a·s+b)). Условный пример: модель даёт 0,72 на П1, а Платс по валидации ставит 0,66 — именно эту 0,66 и сравниваем с коэффициентом. Подходит для бинарных задач: победа/тотал больше, да/нет.
Изотоническая регрессия строит ступенчатую, лишь бы не убывающую, функцию: чем выше балл — тем выше вероятность, но форму не навязывает.
Условный пример: на валидации 0,55–0,65 по факту дают 0,58; модель «подтягивает» их к 0,58.Температурный скейлинг (softmax) калибрует многоклассовые логиты: делит их на одну «температуру» T>1 — вероятности становятся ровнее, порядок классов не меняется. Условный пример: логиты (2,0; 1,0; 0,2) при T=1,3 дают более сдержанные 0,54/0,32/0,14 вместо 0,65/0,24/0,11. Это аккуратнее для 1X2 и форы на три исхода.
Спортивный контекст: вероятности исходов и тоталов
На популярных рынках (1X2, тоталы, форы) маржа и смещение корректируются по-разному. На 1X2 комиссия «размазывается» неравномерно: на фаворита маржа выше, на аутсайдера — ниже. На тоталах и форах линия двигается к балансу ставок, а не к «истинной» вероятности. Если на ТБ 2.5 дают 1.90/1.90, это не 50/50, а около 47.6/47.6 при марже ~4.8%. Ваша задача — «раздеть» коэффициент до честной вероятности и учесть собственное смещение модели.
Динамика — главный источник калибровочной ошибки. Выход лидера из заявки, дождь на «низовом» стадионе, поздний свипслайн в хоккее — всё это сдвигает базовую оценку. Введите «дрифт-факторы» и пересчитывайте вероятности за 24–2–0.5 часа до старта. После матча обязательна пост-ивент проверка: сравнивайте предсказание с фактом и фиксируйте систематические промахи (например, переоценка домашних фаворитов в дождь).
Сегментируйте, иначе усредните ошибку. По лигам: в РПЛ исторически больше ничьих, чем в АПЛ; в НБА — иная дисперсия тоталов, чем в Евролиге. По фаворитам: для топ-клубов кэфы «пережаты» — повышайте порог входа. По времени: первые 15 минут в футболе — аномальная волатильность; в баскетболе решающий дрифт идёт в клатче. Разделяйте датасет и калибруйте раздельно.
| Сегмент | Что править | Пример (условный) |
|---|---|---|
| Фаворит дома | Снижать 1, поднимать X | Было 1.60/3.80/5.50 → 1.66/3.70/5.20 |
| Дождь + вязкий газон | ТБ вниз, ТМ вверх | ТБ2.5 1.90 → 2.05; ТМ2.5 1.90 → 1.78 |
| Клатч 4Q в НБА | Фора к «пуше» | −6.5 → −5.5 при равном счёте |
Валидация и предотвращение переобучения
Чтобы модель не зазналась, делим данные строго по времени: train — старый сезон, val — прошлый месяц, test — свежие матчи. Для спорта годится временная кросс-валидация: скользящее окно, где обучение всегда «раньше» проверки. Так вы ловите дрейф формы и календаря, а не подгоняете под шум. После калибровки проверьте надёжность: разбейте прогнозы на бины по 0,05 (0,45–0,50; 0,50–0,55 и т. д.). В каждом бине посчитайте фактическую частоту побед. Следите за размером: минимум 100–200 исходов на бин, иначе дисперсия съест выводы. Если бин пуст или мал — объединяйте соседей.- Платс: добавьте L2-регуляризацию к лог-правдоподобию, чтобы коэффициенты не улетали. Включите раннюю остановку по метрике ECE на val — как только калибровка на val перестаёт улучшаться, стоп.
- Изотоническая: принудите функцию быть неубывающей (pool adjacent violators). Без монотонности получите «прыгающие» вероятности, которые невозможно объяснить.
Выводы
Калибровка — не украшательство, а обязательный этап после обучения базовой модели. Она выравнивает ваши вероятности с реальностью: если модель обещает 70% на П1, то при 100 таких матчах должно быть около 70 побед. Без этого даже точный ранжировщик будет систематически переоценивать или недооценивать исходы, и маржа букмекера «съест» перевес.
Выбирайте метод под объём и задачу. Мало событий — берите платс или температурную шкалу: они устойчивы и не «ломаются» на краях. Данных много и виден нелинейный сдвиг — изотоническая регрессия точнее, но требует аккуратных бинтов. Проверяйте на отложенной выборке по Brier и надёжности: если изотон дал «лесенку» на редких бинах — режьте бины или возвращайтесь к платс.
Калибратор стареет: меняйте его регулярно и перепроверяйте на новых сезонах и турнирах. Обновляйте скользящим окном (например, последние 12–18 месяцев) и делайте «тест на перенос» на другой чемпионат. Если Brier на новом турнире вырос на 0,015–0,02 — переобучайте или упрощайте метод; для тоталов отдельно калибруйте по диапазонам линий, а не всё в одной куче.
Частые вопросы
1. Что такое калибровка вероятностей простыми словами?
Калибровка — это настройка модели так, чтобы её прогнозы совпадали с реальностью: если модель говорит о 70% вероятности, то в 7 из 10 таких случаев событие должно произойти. Некачественная модель может быть точной в ранжировании (кто фаворит), но давать завышенные или заниженные вероятности, например, систематически обещать 80% там, где реально 60%. Цель калибровки — устранить этот систематический сдвиг, чтобы вероятности стали надёжными для принятия решений.
2. Чем платс отличается от изотонической калибровки и что выбрать?
Платс (Platt Scaling) — это подгонка простой сигмоидальной кривой, которая хорошо работает на небольших выборках и даёт гладкие вероятности. Изотоническая калибровка строит кусочно-постоянную неубывающую функцию, она гибче и точнее на больших данных, но склонна к переобучению при малом объёме выборки. Выбирайте платс при объёме до 1–2 тысяч событий в бине или при шуме, а изотоническую — при тысячах событий и явной нелинейности ошибки.
3. Как проверить калибровку: диаграмма надёжности и ECE — как считать?
Диаграмма надёжности строится по бинам: по оси X — средняя предсказанная вероятность в бине, по оси Y — фактическая доля попаданий события в этом бине; идеально — диагональ y=x. ECE (Expected Calibration Error) — это взвешенное среднее отклонение по бинам, формула: ECE = Σ (|acc_k - conf_k| * n_k / N), где acc_k — доля событий, conf_k — средняя вероятность, n_k — размер бина, N — всего наблюдений. Условный пример: в бине 0.6–0.7 из 100 ставок зашло 55 (acc=0.55), средняя модельная 0.65 (conf=0.65), вклад в ECE = |0.55-0.65|*0.01=0.001.
4. Как калибровать вероятности тоталов и фор в футболе?
Для тоталов калибруйте не среднее число голов, а распределение (например, Пуассон или негативное биномиальное), подбирая параметр интенсивности по последним данным, а затем калибруйте квантильные вероятности (например, P(ТМ 2.5)) изотонически. Для фор сначала смоделируйте разницу счёта, а затем калибруйте P(победа с учётом форы) через платс по ошибке разницы, чтобы устранить смещение в счёте. Обязательно исключайте из обучающей выборки периоды с радикальной сменой стиля лиги, иначе калибратор выучит устаревшие паттерны.
5. Как часто обновлять калибратор в спортивных моделях?
Базовое правило — скользящее окно: переобучайте калибратор каждые 2–4 недели на данных за последние 6–12 месяцев, чтобы отражать текущую форму лиг. Для динамичных турниров (теннис, баскетбол) интервал сокращайте до 1–2 недель, для стабильных лиг можно держать 6–8 недель. Контролируйте дрейф: если ECE или наклон диаграммы надёжности выросли на 20–30% от нормы, обновите калибратор вне графика, не дожидаясь окна.