Исследовать модель

Draft Transformer · Нейросеть для Dota 2

За каждым пиком —весь драфт.

Герой меняет возможности союзников и соперников. Draft Transformer учится на исходах матчей оценивать такие сочетания — и сравнивает, как следующий пик меняет прогноз для состава.

Драфтер открыт бесплатно, без регистрации

01 / Представления героев

Герои в пространствемодели.

При обучении у каждого героя формируется числовой вектор — эмбеддинг. Карта позволяет исследовать эти представления: выбрать знакомого героя и посмотреть на его окружение.

ДЕМО КАРТЫ

Расположение героев и связи условные. Обученные эмбеддинги ещё не подключены.

1.0×
HERO EMBEDDINGS127 героев · 256D → 2D
Anti-MageAxeBaneBloodseekerCrystal MaidenDrow RangerEarthshakerJuggernautMiranaMorphlingShadow FiendPhantom LancerPuckPudgeRazorSand KingStorm SpiritSvenTinyVengeful SpiritWindrangerZeusKunkkaLinaLionShadow ShamanSlardarTidehunterWitch DoctorLichRikiEnigmaTinkerSniperNecrophosWarlockBeastmasterQueen of PainVenomancerFaceless VoidWraith KingDeath ProphetPugnaTemplar AssassinViperLunaDragon KnightDazzleClockwerkLeshracNature's ProphetLifestealerDark SeerClinkzOmniknightEnchantressHuskarNight StalkerBroodmotherBounty HunterWeaverJakiroBatriderChenSpectreAncient ApparitionDoomUrsaSpirit BreakerGyrocopterAlchemistInvokerSilencerOutworld DestroyerLycanBrewmasterShadow DemonLone DruidChaos KnightMeepoTreant ProtectorOgre MagiUndyingRubickDisruptorNyx AssassinNaga SirenKeeper of the LightIoVisageSlarkMedusaTroll WarlordCentaur WarrunnerMagnusTimbersawBristlebackTuskSkywrath MageAbaddonElder TitanLegion CommanderTechiesEmber SpiritEarth SpiritUnderlordTerrorbladePhoenixOracleWinter WyvernArc WardenMonkey KingDark WillowPangolierGrimstrokeHoodwinkVoid SpiritSnapfireMarsRingmasterDawnbreakerMarciPrimal BeastMuertaKezLargoPhantom Assassin
Демонстрация выбора

Phantom Assassin

Ближайшие векторы

cos θ

Пример интерфейса. Настоящие соседи и косинусная близость появятся после загрузки эмбеддингов.

Близость векторов не означает сильную связку или контрпик.

Макет · условные данные
Как читать эту карту

После подключения выгрузки каждая точка будет соответствовать обученному вектору героя. t-SNE задаст расположение точек, а линии свяжут пять ближайших векторов в исходных 256 измерениях. Сейчас показан только макет этих взаимодействий.

Сейчас показан макет визуализации. Карта не содержит результатов модели.

Проекция
Demo
Отпечаток весов

Кнопки + / − меняют масштаб. Колесо прокручивает страницу.

02 / От героя — к сочетаниям

Один герой.Разная ценностьв разных составах.

Эмбеддинг — отправная точка. Дальше модель сопоставляет героя с союзниками, соперниками, ролями, линиями и условиями матча. Его представление обновляется с учётом этого окружения.

Зачем здесь Transformer

Слои внимания передают информацию между пиками. Следующие слои работают уже с представлениями, обогащёнными контекстом. Вместе с нелинейными преобразованиями это позволяет учить эффекты, в которых значение одного героя зависит сразу от нескольких других.

Одна пара. Разный расклад.

Добавляй героев — смотри, что меняется

Пока смотрим только на двух героев

До Sniper можно добраться

Phantom Strike позволяет PA сократить дистанцию до Sniper. В этой паре понятен план: найти цель и зайти в ближний бой.

Есть план на цель
+ Abaddon и Axe на стороне Sniper

Теперь прыжок — это риск

У Sniper появляются Abaddon и Axe. Щит помогает пережить урон, а Axe может поймать PA после прыжка. Теперь важно, кто прикрывает цель.

Вход под сейв и контроль
+ Tidehunter на стороне PA

Инициация открывает окно

Союзный Tidehunter меняет план: если Ravage зацепит прикрытие Sniper, PA может зайти следом. Ценность инициации здесь — в возможности реализовать PA.

Появляется командный план
Условный игровой сценарий. Линии обозначают взаимодействия героев, а не веса внимания или результаты модели.

Модель получает исходы матчей, а не готовые правила о сейвах и контрпиках. Игровой пример иллюстрирует идею контекста; он не является объяснением конкретного прогноза.

03 / Как проходит обучение

Учится по исходам.Видит неполную картину.

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

Один исход. Разная полнота драфта.

Посмотри, какие данные получает модель при обучении

Вход модели10 / 10 героев известны
Radiant
  1. Phantom AssassinРоль: КорЛиния: Лёгкая
  2. InvokerРоль: КорЛиния: Центр
  3. TidehunterРоль: КорЛиния: Сложная
  4. MiranaРоль: СаппортЛиния: Сложная
  5. Crystal MaidenРоль: СаппортЛиния: Лёгкая
Dire
  1. JuggernautРоль: КорЛиния: Лёгкая
  2. SniperРоль: КорЛиния: Центр
  3. AxeРоль: КорЛиния: Сложная
  4. LionРоль: СаппортЛиния: Сложная
  5. AbaddonРоль: СаппортЛиния: Лёгкая
Все герои известны

Составы, роли и линии доступны на входе. Цель обучения — связать эти данные с исходом матча.

Вход модели5 / 10 героев известны
Radiant
  1. Phantom AssassinРоль: КорЛиния: Лёгкая
  2. InvokerРоль: КорЛиния: Центр
  3. TidehunterРоль: КорЛиния: Сложная
  4. Герой скрытРоль: СаппортЛиния: Сложная
  5. Герой скрытРоль: СаппортЛиния: Лёгкая
Dire
  1. JuggernautРоль: КорЛиния: Лёгкая
  2. SniperРоль: КорЛиния: Центр
  3. Герой скрытРоль: КорЛиния: Сложная
  4. Герой скрытРоль: СаппортЛиния: Сложная
  5. Герой скрытРоль: СаппортЛиния: Лёгкая
Часть состава остаётся за кадром

В этой схеме видны 3 героя Radiant и 2 Dire. Роль и линия могут сохраняться даже у слота со скрытым героем.

Вход модели10 / 10 героев известны
Radiant
  1. Phantom AssassinРоль: КорЛиния: Лёгкая
  2. InvokerРоль: КорЛиния: скрыта
  3. TidehunterРоль: КорЛиния: Сложная
  4. MiranaРоль: скрытаЛиния: Сложная
  5. Crystal MaidenРоль: СаппортЛиния: Лёгкая
Dire
  1. JuggernautРоль: КорЛиния: Лёгкая
  2. SniperРоль: скрытаЛиния: Центр
  3. AxeРоль: КорЛиния: Сложная
  4. LionРоль: СаппортЛиния: Сложная
  5. AbaddonРоль: СаппортЛиния: скрыта
Не все детали известны

Герои остались на месте, но у отдельных слотов пропали роль или линия. Эти признаки скрываются независимо друг от друга.

Метка для обученияПобеда Radiant

Остаётся той же при любом варианте входа

Схема подготовки примера. Это не реальный матч и не прогноз модели.В 40% обучающих примеров выбирается фаза маскирования, в том числе полный драфт. Роли и линии скрываются отдельно, с вероятностью 10% для каждого признака. При валидации длительность матча всегда скрыта.
  1. 01

    Получает состав и условия

    Герои, стороны, роли и линии. Патч, режим, тип лобби и средний ранг задают контекст.

  2. 02

    Работает со скрытыми входами

    Часть героев может быть неизвестна. Роли и линии скрываются отдельно; результат матча сохраняется.

  3. 03

    Корректирует прогноз

    Функция потерь сравнивает оценку с исходом. Обучение постепенно меняет представления и связи внутри модели.

04 / Проверка качества

Проверка на матчах,отложенных от обучения.

Качество определяется прогнозами на данных. Валидационные матчи не участвуют в обновлении весов; по результатам на них выбирается лучший чекпоинт.

95%Обучение
5%Валидация

Случайное разбиение с сохранением пропорций патчей. Это проверка внутри исходного набора данных. Перенос на будущие патчи требует отдельного теста.

Длительность скрыта

При проверке модель не получает время окончания матча. Основной прогноз драфтера также строится без заданной длительности.

Лучший чекпоинт — по ROC AUC

Валидация используется для выбора версии модели. Независимый тест и проверка каждой стадии драфта в этом протоколе не описаны.

Что измеряем

Численные результаты ожидают выгрузки

ROC AUC
Разделяет ли модель победы и поражения при разных порогах. Выше — лучше.
Accuracy
Доля правильно предсказанных исходов при пороге 50%. Это не винрейт игрока.
LogLoss
Качество вероятностей со штрафом за уверенные ошибки. Ниже — лучше.

Архитектура и красивая карта сами по себе не измеряют точность. Здесь появятся фактические результаты проверки этой модели.

Архитектура и параметры обучения

Основу составляют Self-attention и нелинейные SwiGLU-блоки. Число слоёв не задаёт фиксированный порядок игровых взаимодействий: зависимости формируются в ходе обучения.

Архитектура
4 блока Transformer · 10 голов внимания
Представления
256 признаков героя + роль и линия
Внимание
QK-Norm · Scaled Dot-Product Attention
Внутри блока
RMSNorm · SwiGLU · остаточные связи
Регуляризация
Dropout · label smoothing · маскирование входов
Оптимизация
PyTorch · Lightning · AdamW

Attention Is All You Need

05 / Как работает драфтер

Что изменится, есливзять другого героя?

Драфтер подставляет доступных героев в выбранный слот и сравнивает прогнозы при остальных неизменных пиках. Так можно оценить варианты из своего пула в конкретном составе.

  1. 01

    Задаёшь драфт

    Добавь известные пики и выбери условия матча.

  2. 02

    Модель сравнивает замены

    Каждый кандидат получает оценку в том же окружении.

  3. 03

    Выбираешь из своего пула

    Сопоставь рекомендации со своим опытом и планом на игру.

Модель оценивает состав. Твой опыт на герое, координация команды, предметы и решения в матче остаются за пределами прогноза.

Подробнее о прогнозах

Перед тем,как довериться оценке

Что показывает карта эмбеддингов героев?

Она показывает проекцию базовых представлений героев до обработки конкретного драфта. Близкие векторы не обязательно означают сильную связку, контрпик или одинаковый стиль игры. t-SNE упрощает многомерные данные; список соседей рассчитывается отдельно по исходным векторам. В режиме демо расположение и связи условные.

Чем нейросеть отличается от таблицы контрпиков Dota 2?

Парная таблица описывает отношения двух героев. Draft Transformer получает составы и контекст целиком. Архитектура позволяет учитывать сочетания, в которых эффект одного пика зависит от нескольких других. Насколько успешно модель выучила эти зависимости, нужно проверять на данных.

Можно ли подбирать героев до завершения драфта?

Да. В обучении есть примеры со скрытыми героями. Драфтер может сравнивать варианты, пока часть слотов пуста. Каждый новый пик добавляет контекст и меняет расчёт. Отдельные метрики качества для разных стадий драфта пока не опубликованы.

Вероятность победы — это точность модели?

Нет. Вероятность относится к одному заданному составу и условиям. Accuracy описывает долю правильно предсказанных исходов на множестве проверочных матчей. Даже высокая оценка одного драфта не гарантирует победу.

График по времени предсказывает ход матча?

Нет. Он сравнивает прогнозы при заданной длительности как условии. Это не симуляция событий по минутам и не предсказание времени окончания вашей игры. Основной прогноз использует неизвестную длительность.

Как попробовать нейросеть на своём матче?

Открой онлайн-драфтер, добавь героев вручную или импортируй публичный матч по ID. Сравни варианты следующего пика и оценки составов. Драфтер бесплатный и не требует регистрации.

От устройства модели — к твоей игре

Твой пул.Твой следующий пик.

Собери знакомый драфт и сравни несколько вариантов. Посмотри, как меняется оценка, когда рядом с героем появляются союзники и соперники.