📊 Что такое empirical Bayes (байесовское сглаживание)

Кратко

Empirical Bayes — это метод статистики, который соединяет наблюдаемые данные (эмпирику) с заранее известным распределением (prior) для получения более точных оценок, особенно когда данных мало.

В нашем контексте: мы комбинируем win-rate из базы данных с калиброванной вероятностью от модели, чтобы получить лучшую оценку для любой позиции.

Формула

P̂ = (wins + α · p_prior) / (n + α)

Где:

  • n — количество партий в БД для этого узла
  • wins — количество выигранных партий (ничья = 0.5)
  • p_prior — калиброванная вероятность от модели
  • α — «вес prior’а в эквивалентных партиях», обычно 10–50

Как это работает

  • При n = 0 (нет данных): показываем чистый prior от модели
  • При n ≫ α (много данных): показываем чистую эмпирику
  • Между ними: плавный переход без порогов и швов

Подбор параметра α

α не выдумывается, а подбирается минимизацией log-loss или Brier score на отложенной выборке с временны́м сплитом по партиям (обучение до даты T, проверка после). Это гарантирует, что позиции одной партии не попадают в обе стороны (обучение и тест).

Иерархическое сглаживание

Ключ explorer’а normalized_fen + dice_sorted встречается в ~56 раз реже, чем сама позиция (56 мультимножеств броска). Используем двухуровневое сглаживание:

эмпирика (pos, dice)  →  сглаживается к  эмпирике (pos)  →  та к  p_prior

Prior при этом может быть roll-aware: ценность лучшего хода при данном броске, если модель/поиск умеет оценивать после броска.

Вывод из нашей практики

Замерено 2026-08-09

На наших данных сглаживание (w + α·p_prior)/(n + α) не нужно — смесь проигрывает чистой модели во всех сегментах, а α упирается в максимум сетки, то есть «эмпирику почти игнорировать».

Причина: 97% позиций встречаются ровно один раз, а 0,26% дебютных покрывают 25,8% ходов. Эмпирика существует только в голове распределения, и даже там она хуже модели.

Формулировка «эмпирика для частых, prior для редких» перевёрнута: модель — основной оценщик везде.

Связанные понятия