Я вчера разбирал матч Kaluga — FC UFA и буквально увидел, как модель выдаёт кэф 5.60 на домашнюю победу с вероятностью 38%. Букмекер? Смехотворные 1.80. Разрыв — почти 20% перевеса. Именно ради таких моментов я и пишу эту статью: чтобы вы поняли, что стоит за цифрами, которые видите в линии.
Что ест модель на завтрак? Feature engineering
Прежде чем запустить любой алгоритм, мы готовим данные. Это feature engineering — превращение сырой статистики в признаки, которые машина поймёт. Вот ключевые фичи:
- xG (ожижидательные голы) — оценка качества моментов. Не голы, а именно вероятность гола из каждого удара.
- Glicko-2 — рейтинговая система, которая учитывает не только победы, но и силу соперника. Динамичнее Elo.
- Форма (form) — последние 5–10 матчей с весовым коэффициентом: свежая игра важнее полугодовой давности.
- Травмы, мотивация, погода — структурные признаки, которые тоже попадают в датасет.
Но помните: xG — это вероятностная оценка, а не приговор. Реальный исход зависит от реализации моментов, решений ВАР и человеческого фактора. Модель может показать 2.1 xG, а команда не забьёт ни разу. Такое бывает каждый третий матч.
Какие алгоритмы мы используем
В арсенале Zeta AI — несколько классов моделей, и у каждого своя роль:
Random Forest
Деревья решений, проголосовавшие коллективно. Устойчив к переобучению, хорошо работает на структурированных данных. Быстрый, понятный, но не всегда точный на edge-case'ах.
XGBoost
Градиентный бустинг, который доминирует на Kaggle уже пять лет. Строит деревья последовательно, исправляя ошибки предыдущих. Отлично ловит нелинейные зависимости — например, как падение xG при игре на выезде у топ-клубов.
LightGBM и CatBoost
Прямые конкуренты XGBoost. LightGBM быстрее на больших датасетах, CatBoost лучше работает с категориальными признаками (имена тренеров, стадионы, типы турниров). В наших тестах CatBoost часто выигрывает на кубковых матчах — там больше «шума» в данных.
Нейросети (ANN / LSTM)
Для последовательностей: серия матчей, динамика формы во времени. LSTM-сети помнят «контекст» на 20–30 матчей вперёд. Но они требуют больше данных и дольше обучаются.
Ансамбли: сила в количестве
Одна модель — это риск. Мы используем стекинг: прогнозы XGBoost, LightGBM, CatBoost и нейросети подаём на вход метамодели, которая учитывает, когда каждый алгоритм ошибается чаще. Результат — стабильнее и точнее, чем у любого одиночного предиктора.
На прошедших сегодня матчах leagues это видно: Liverpool U19 — Atlético Madrid U19 модель даёт П1 с 50% вероятности, но ансамбль корректирует до 47% — потому что Atlético в youth-турнирах historically силён в контратаках.
Показатели точности: во что верить
Не гонитесь за 80% — это миф. Реальные метрики:
- Brier Score — средняя квадратичная ошибка вероятностей. Чем ближе к 0, тем лучше. Хороший результат: 0.15–0.20.
- Log Loss — штрафует за уверенные, но неверные прогнозы. Критичен для валуйных ставок.
- ROI на исторических данных — если модель давала +8–12% за сезон на дистанции 500+ матчей — это рабочий инструмент.
Наша текущая серия: Tira — Hapoel Ironi Arraba (74% на П1) и Gwangju FC — Jeju United FC (50% на гостевую победу) — оба прогноза укладываются в доверительные интервалы модели.
Где модель ломается
Честно: ML не знает о травме за 2 часа до матча, не учитывает моральный дух после скандала в раздевалке и не предсказывает пенальти в добавленное время. Кубковые матчи низших лиг — зона повышенной неопределённости. Segesta Sisak — NK Osijek или Teteks — Bregalnica Štip — тут модель даёт «тотал голов», но разброс вероятностей такой широкий, что ставить стоит только при явном валуе от букмекера.
Вывод
ИИ не гадалка. Это мощный инструмент, который обрабатывает тысячи признаков быстрее человека. Но ни одна модель не заменит вашего критического мышления. Используйте прогнозы как один из источников информации, проверяйте валуй, управляйте банкроллом и помните: даже 74% вероятности — это всё ещё
#модель #матчей #данных #catboost #моментов