Как ИИ предсказывает исходы матчей Dota 2 — внутри движка BritBets
Как BritBets использует искусственный интеллект для предсказания результатов матчей Dota 2. Детекция драфта, XGBoost, нейросеть DraftNet, 91 экспертный признак, SHAP-объяснения и поиск value-ставок.
Может ли машина предсказать победителя в Dota 2?
Каждый матч Dota 2 начинается с драфта. Два капитана по очереди банят и пикают героев из пула в 120+ вариантов, и к моменту последнего пика огромная часть результата уже предопределена. Профессиональные аналитики всегда это чувствовали интуитивно — плохой драфт может проиграть игру ещё до звука горна. Но что если можно точно измерить, насколько каждый пик влияет на исход?
Именно этот вопрос решает BritBets. Платформа использует две независимые модели машинного обучения — градиентный бустинг XGBoost и специализированную нейросеть DraftNet — для анализа каждого профессионального драфта в реальном времени. Система отслеживает живые матчи, фиксирует пики и баны по мере их появления, прогоняет обе модели и публикует прогноз с процентом уверенности и понятным объяснением, почему одна команда имеет преимущество.
Если вы никогда не сталкивались с машинным обучением — не переживайте. В этой статье мы пройдём весь путь от момента начала матча до появления прогноза на <a href='/predictions'>странице предсказаний</a>. Без формул и учёных степеней.
Шаг 1: Детекция драфта в реальном времени
Прежде чем что-то предсказывать, система должна знать, какие герои были выбраны и забанены. BritBets использует live-фид данных Hawk, который мониторит профессиональные матчи с задержкой 15-30 секунд. В момент, когда капитан фиксирует героя, система это записывает. Если Hawk недоступен, есть резервное подключение к Steam Game Coordinator, хотя оно работает с большей задержкой.
Данные драфта включают не только самих героев, но и какая команда их выбрала, порядок пиков и какие герои были забанены. Вся эта информация поступает в модели предсказаний. Порядок пиков важен, потому что ранние пики — обычно безопасные, гибкие герои, а поздние — целевые контрпики, и модели научились обрабатывать их по-разному.
Шаг 2: Feature engineering — превращение драфта в числа
Модели машинного обучения не понимают имена героев. Они понимают числа. Поэтому система переводит каждый драфт в набор числовых признаков (фич) — измеримых свойств, описывающих драфт со всех сторон, которые могут быть важны для моделей.
Модель XGBoost использует примерно 624 признака на матч. Сюда входят one-hot кодировки пиков каждой команды, актуальные винрейты героев, история личных встреч между командами, индикаторы уровня лиги и 56 обогащающих признаков из анализа реплеев. Признаки из реплеев фиксируют такие вещи, как среднее преимущество в золоте на 10-й минуте, паттерны урона по вышкам и участие в тимфайтах — данные, полученные из парсинга реальных игровых реплеев, а не просто из списка пиков.
Нейросеть DraftNet добавляет ещё один слой: 91 экспертный признак, кодирующий глубокие знания о Dota. Эти признаки охватывают синергии героев, контрпик-связи, лейн-матчапы, пауэрспайки, цепочки контроля, способности, пробивающие BKB, баланс типов урона, мобильность, глобальное присутствие, способность защищать хайграунд, AoE-покрытие, доступ к бэклайну, гибкость, наличие диспелов, стакинг аур, эффективность на Торменторе, секьюр килов, потенциал восстановления, давление сплитпушем, баланс бёрста и сустейна, войну маны, способность к ресету тимфайта, прочность фронтлайна, контроль вижена и силу в файтах у Рошана.
Шаг 3: Две модели — одно предсказание
BritBets запускает две модели параллельно, потому что они видят игру по-разному. XGBoost — это градиентный бустинг деревьев решений. Представьте его как огромную блок-схему, которая задаёт сотни вопросов «да/нет» о драфте и приходит к вероятности победы. Он отлично улавливает статистические паттерны из исторических данных: если команда А пикает героя X, а команда Б — героя Y, и исторически этот матчап в пользу команды А в 63% случаев, XGBoost это запоминает.
DraftNet — это нейросеть, специально построенная для драфтов Dota 2. Она использует эмбеддинги героев (выученные векторные представления каждого героя), слои self-attention, позволяющие понять, как герои одной команды взаимодействуют друг с другом, и слои cross-attention, сравнивающие две команды между собой. DraftNet обучена на более чем 28 000 профессиональных матчей и достигает точности 68.8% на валидации. Она особенно хороша в обнаружении неочевидных синергий — комбинаций героев, которые вместе сильнее, чем предполагают их индивидуальные винрейты.
Финальное предсказание объединяет обе модели, взвешивая их по уверенности каждой и количеству доступных данных для конкретного матчапа. Прогнозы можно смотреть в реальном времени на <a href='/predictions'>странице предсказаний BritBets</a>.
Шаг 4: Почему ИИ так думает? SHAP-объяснения
Прогноз полезен только тогда, когда его можно понять. BritBets использует технику SHAP (SHapley Additive exPlanations), чтобы разложить каждое предсказание на индивидуальные вклады. Для каждого признака, поступившего в модель, SHAP рассчитывает, насколько он сдвинул прогноз в сторону той или иной команды.
На практике это означает, что вы можете увидеть объяснение вроде: «Пик Anti-Mage вносит +4.2% в пользу Radiant благодаря сильному лейт-гейму против драфта Dire, но пик Spirit Breaker у Dire даёт +3.1% за счёт давления ганками в мид-гейме». Эти объяснения помогают понять не только что предсказывает ИИ, но и почему — и согласны ли вы с его логикой.
Эта прозрачность критически важна для ставок. Если ИИ даёт 62% вероятности победы одной команде, но ключевая причина — фактор, который вы знаете как нерелевантный в данном контексте (например, историческая статистика личных встреч состава, который уже изменился), вы можете скорректировать свою оценку.
Шаг 5: Калибровка — чтобы 60% действительно значило 60%
Одна из самых частых ошибок любительских моделей — излишняя самоуверенность. Модель может сказать «70% шансов у команды А», когда в реальности команды в такой ситуации выигрывают лишь 55% времени. BritBets решает эту проблему двумя методами калибровки.
Первый — изотоническая калибровка, которая сопоставляет сырые выходы модели с наблюдаемыми частотами. Если модель говорит 70%, а команды в этом диапазоне реально побеждают в 65% случаев, изотоническая калибровка корректирует выход до 65%. Второй — температурное масштабирование, которое смягчает экстремальные прогнозы. BritBets использует температуру 1.8, что означает, что сырой прогноз 80% сжимается ближе к 50% — уменьшая самоуверенность, но сохраняя направление.
В результате получается хорошо откалиброванная модель, где заявленная уверенность близко соответствует реальным результатам. Проверить это можно на <a href='/stats'>странице статистики</a>, где отслеживается точность прогнозов во времени.
Шаг 6: Поиск value-ставок — когда ИИ не согласен с рынком
Самая интересная часть системы — детекция value-ставок. Когда прогноз BritBets существенно расходится с коэффициентами букмекеров, система помечает это как потенциальную value-ставку. Логика проста: если ИИ говорит, что команда А победит с вероятностью 65%, а коэффициенты букмекера подразумевают лишь 50%, есть разрыв, представляющий потенциальную ценность.
Но система консервативна в таких оценках. Применяется несколько фильтров для избежания ложных срабатываний. Value-ставки помечаются только для лиг первого и второго уровня, где качество данных высокое. Максимальный порог коэффициентов — 2.50 (исторические данные показали 0 побед из 8 при коэффициентах 2.50 и выше). А когда разрыв между прогнозом ИИ и рынком превышает 20%, система сжимает своё преимущество на 80%, потому что экстремальное расхождение с рынком чаще означает, что ИИ упускает контекст, а не находит альфу.
Отслеживать результаты value-ставок и текущее преимущество ИИ можно на <a href='/predictions'>странице предсказаний</a>.
Чего ИИ не может
Ни одна модель не идеальна, и BritBets открыто говорит о своих ограничениях. Система предсказывает на основе драфтов, истории команд и контекста лиги — она не может учесть, что игрок сегодня в плохой форме, команда пробует экспериментальную стратегию или в игре лагает сервер. Текущая точность в продакшене — около 66.7% для матчей известных лиг, против 77% на тестовой выборке. Часть этого разрыва объясняется отсутствием данных реплеев (около 73% живых матчей не имеют обогащающих признаков из реплеев в момент прогноза).
ИИ также испытывает сложности с неизвестными лигами и лигами третьего уровня, где данных мало. Для таких матчей система применяет 20% штраф сжатия преимущества и никогда не помечает value-ставки. Это сделано намеренно — лучше признать неопределённость, чем изображать уверенность.
Если хотите поэкспериментировать с тем, как разные драфты влияют на вероятность победы, <a href='https://draft.britbets.xyz'>симулятор драфта</a> позволяет пробовать комбинации героев и видеть прогнозы DraftNet в реальном времени. А для живых предсказаний прямо в телефон — <a href='https://t.me/britbets_bot'>Telegram-бот BritBets</a> всегда на связи.
Смотрите ИИ-прогнозы на сегодняшние матчи Dota 2
Смотреть прогнозы