Блог

Точність прогнозів: як її перевіряти — калібрування і Brier score

Відсоток «зайдених» прогнозів майже нічого не каже. Розбираємо метрики, які показують реальну точність прогнозів, і чек-лист перевірки будь-якого прогнозиста.

Точність прогнозів не можна чесно виміряти одним відсотком угаданих результатів. Прогноз на футбол — це ймовірність, тому перевіряти потрібно, наскільки ці ймовірності збігаються з реальністю: чи справджуються події, яким дали 70%, приблизно в 70% випадків. Для цього використовують калібрування ймовірностей, Brier score і бектест на минулих матчах. Нижче — як працює кожен інструмент і як з їхньою допомогою перевірити будь-якого прогнозиста.

Чому відсоток угаданих вводить в оману

Уявіть двох прогнозистів. Перший обирає лише великих фаворитів і вгадує більшість результатів. Другий прогнозує рівні матчі й вгадує рідше. За відсотком влучань перший виглядає сильнішим, але це нічого не каже про якість: він просто обирає події, які й так майже завжди стаються.

У відсотка угаданих три проблеми:

  • Він не враховує впевненість. Прогноз «70% на перемогу господарів» і прогноз «51% на перемогу господарів» зараховуються однаково, хоча це різні твердження.
  • Він залежить від добору матчів. Високий відсоток легко отримати, обираючи очевидні результати.
  • Він нічого не каже про коефіцієнти. Для ставок важливо не лише «зайшло чи ні», а й за якою ціною. Вгадувати 60% результатів за коефіцієнтів, які передбачають 70%, — означає програвати на дистанції.

Тому точність прогнозів оцінюють метриками, які працюють з імовірностями, а не з бінарним «так/ні».

Калібрування ймовірностей

Модель відкалібрована, якщо її ймовірності означають рівно те, що написано. Перевіряється це просто: усі прогнози ділять на групи за заявленою ймовірністю (наприклад, 50–60%, 60–70%, 70–80%) і в кожній групі рахують, яка частка справді справдилася.

  • Якщо в групі «60–70%» справдилося близько 65% — модель добре відкалібрована.
  • Якщо справдилося 50% — модель надто самовпевнена: обіцяє більше, ніж дає.
  • Якщо справдилося 80% — модель надмірно обережна: занижує ймовірності.

Калібрування ймовірностей важливіше, ніж здається. Навіть правильно обраний фаворит марний для оцінки ставки, якщо заявлена ймовірність завищена: саме її порівнюють із коефіцієнтом.

На xG.Football калібрована ймовірність рахується саме так. Система дивиться, як часто справджувалися минулі прогнози з тим самим ринком, лінією, кількістю балів і рішенням моделі. Спершу беруться матчі цього турніру: потрібно щонайменше 200 розрахованих результатів. Якщо їх менше, використовуються всі турніри, і тоді потрібно щонайменше 500. Якщо набрати вибірку не вдається, імовірність не показується як калібрована. Докладніше про критерії — у статті про те, як працює модель.

Brier score: одна цифра для якості ймовірностей

Brier score — це середній квадрат помилки ймовірності. Для кожного прогнозу беруть заявлену ймовірність p і фактичний результат o (1, якщо подія сталася, 0, якщо ні), рахують (p − o)² і усереднюють за всіма прогнозами.

Приклад: прогноз дав події 0,7, і вона сталася. Помилка — (0,7 − 1)² = 0,09. Якби подія не сталася, помилка була б (0,7 − 0)² = 0,49. Упевнений промах карається найсильніше.

Як читати результат для подій «так/ні»:

  • 0 — ідеальні прогнози (недосяжно у футболі);
  • 0,25 — рівень прогнозу «50% на все»: орієнтир, нижче якого модель має опускатися, щоб у ній був сенс;
  • що менше, то краще.

Головна властивість Brier score: його не можна «обдурити» добором легких матчів так само просто, як відсоток угаданих. Він одночасно враховує, чи вгадано результат і наскільки правильно обрано впевненість. Порівнювати Brier score має сенс лише на тому самому наборі подій: у ринку з частими результатами й у ринку з рідкісними результатами базовий рівень різний.

Бектест прогнозів (backtest): перевірка на минулому без підглядання

Бектест — це прогін моделі на вже зіграних матчах так, ніби вона працювала в той момент. Backtest прогнозів корисний, лише якщо дотримано головного правила: для кожного матчу використовуються лише дані, відомі до його початку. Якщо до розрахунку потрапляє бодай щось із майбутнього (підсумкова таблиця сезону, статистика матчів, зіграних пізніше), модель виглядає точнішою, ніж є насправді. Цю помилку називають витоком даних або «зазиранням уперед».

На xG.Football бектест будується за збереженою статистикою, а калібрування для кожного матчу використовує лише матчі, що почалися раніше за нього. Але навіть чесний бектест лишається перевіркою на минулому. Справжня перевірка — прогнози, збережені до матчу й звірені з результатом після. Такий журнал відкритий на сторінці, де зібрано статистику прогнозів.

Скільки прогнозів потрібно, щоб робити висновки

Точність прогнозів на маленькій вибірці майже нічого не означає. Десять угаданих із п'ятнадцяти — це 67%, але за такої вибірки реальна точність може з однаковим успіхом виявитися і помітно нижчою, і помітно вищою.

Для оцінки невизначеності використовують довірчий інтервал. На xG.Football поруч із каліброваною ймовірністю зберігається 95-відсотковий інтервал Вілсона: він показує, у якому діапазоні, найімовірніше, лежить справжня ймовірність за даного розміру вибірки. Що менша вибірка, то ширший інтервал і то менше варто довіряти одній цифрі.

Як перевірити прогнозиста: чек-лист

Ці самі принципи працюють, коли ви оцінюєте будь-який сервіс чи автора прогнозів:

  1. Прогнози опубліковано до початку матчу, і це можна перевірити. Прогноз, що з'явився заднім числом, нічого не вартий.
  2. Журнал повний. Програшні прогнози не видаляються й не «забуваються».
  3. Указано ймовірності або коефіцієнти. Без них не можна оцінити ні калібрування, ні цінність.
  4. Вибірка велика. Десятки прогнозів — це ще удача чи невдача, сотні вже щось кажуть.
  5. Метод пояснено. Зрозуміло, на яких даних будується прогноз, і немає обіцянок «гарантованих» результатів.
  6. Заявлена ймовірність збігається з фактом. Якщо середня впевненість висока, а відсоток тих, що справдилися, помітно нижчий, це самовпевненість, а не точність.

Останній пункт можна перевірити на сторінці статистики xG.Football: там поруч показано середню розрахункову ймовірність і точність за розрахованими прогнозами. Журнал фільтрується за ринком, статусом і датами. Актуальні прогнози на футбол на найближчі матчі потрапляють до того самого журналу й перевіряються так само, після фінального свистка.

Коротко про головне

Точність прогнозів вимірюється не відсотком угаданих, а тим, наскільки ймовірності відповідають реальності. Калібрування показує, чи можна вірити заявленим відсоткам, Brier score зводить якість імовірностей до однієї цифри, чесний бектест перевіряє модель на минулому без підглядання, а розмір вибірки каже, наскільки всім цим цифрам можна довіряти.

Питання Відповідь
Що таке точність прогнозів? Наскільки заявлені ймовірності збігаються з реальністю: події з імовірністю 70% мають справджуватися приблизно в 70% випадків.
Що таке Brier score? Середній квадрат помилки ймовірності. 0 — ідеальні прогнози, 0,25 — рівень прогнозу «50% на все»; що менше, то краще.
Що таке калібрування ймовірностей? Перевірка того, чи збігається частка прогнозів, що справдилися, у кожній групі ймовірностей із самою ймовірністю.
Що таке бектест прогнозів? Прогін моделі на вже зіграних матчах, у якому для кожного матчу використовуються лише дані, відомі до його початку.
Як перевірити прогнозиста? Переконатися, що прогнози публікуються до матчу, журнал повний, указано ймовірності або коефіцієнти, вибірка велика, а заявлена впевненість збігається з фактом.

Розбираємо зрозумілою мовою, як читати футбольну статистику та прогнози: що означає xG, як оцінювати удари в площину та кутові, як влаштована модель прогнозів xG.Football і що означають терміни на кшталт «обидві заб'ють» або «тотал».

← До всіх статей блогу