100% Complete
01.03
12.04

Соревнование окончено

Финал AI-Academy

Поздравляем, вы прошли в финал, и можете гордиться, что вы уже одни из лучших! В финале мы подготовили для вас очередную задачу по данным Dota 2 - кто победит не в драке, а во всем матче!

Что происходит?

Все также, идет бесконечная битва. Команда Radiant (свет) против команды Dire (тьма). В каждой команде — ровно 5 игроков, каждый управляет своим героем.

Перед началом матча игроки выбирают себе одного героя из более 100 возможных, все 10 выбранных героев обязательно различны. Цель игры — разрушить трон, находящийся на базе противника.

Что нужно предсказать?

Матч остановлен в некоторый (произвольный) момент времени. Вам дана информация о всем происходящем до остановки, в том числе состояние всех героев. Необходимо оценить вероятность победы команды Radiant.

Обратите внимание — на этот раз не “угадать” кто победит. Нам важно оценить “шансы” на победу у команды Radiant.

Какая метрика качества?

В данной задаче Вам предлагается использовать площадь под ROC-кривой для оценки качества моделей.

Напомним, что площадь под кривой также называют ROC-AUC (от Area Under Curve). Она принимает значения в диапазоне от 0 до 1, считается, что чем выше ROC-AUC, тем лучше качество модели. Детальное описание ROC-AUC Вы найдете в конце документа.

Данные

Для участников был специально собран новый набор данных, в архиве которого содержится следующие файлы с информацией:

  • train_matches.jsonl, test_matches.jsonl - полные описания матчей ("сырые" данные);
  • train_features.csv, test_features.csv - таблицы с признаками от организаторов;
  • train_targets.csv - таблица с исходами матчей из обучающей выборки, в частности указание победителя;
  • sample_submission.csv - пример файла с решением.
insert_drive_filedota2_data_final.zip

Формат решений

Ваша задача - построить алгоритм, оценивающий шансы на победу в игре у команды Radiant radiant_win. В предыдущей задаче мы предсказывали факт победы или поражения команды Radiant в драке, указывая в ответе 0 или 1, а качество предсказаний измеряли с помощью метрики Accuracy (Точность).

Теперь задача заключается в том, чтобы оценить шанс (число из промежутка [0, 1]) того, что команда Radiant победит в матче. На практике это означает, что в ответе теперь указывается не просто 1, если по нашим оценкам в матче победит команда Radiant, а некоторое число близкое к 1, например: 0.9742.

Построенный алгоритм нужно также, запустить на тестовых данных, сохранить результат в .csv-файл, и отправить его как свое решение.

Чтобы облегчить участникам задачу, мы подготовили детальное описание задачи, игровых механик, собираемых данных, а также метрики ROC-AUC. Также участникам предоставляется обучающий tutorial с полным решением задачи, в уже привычном вам формате Ipython notebook.

descriptionОписание задачи и данных descriptionTutorial.ipynb