advertisement banner
i
C

Визуализация драфта команд с помощью сетевого анализа связок героев

Какое-то время назад я начал постить в твиттер визуализации драфтов команд в виде графов. Т.к. я занимаюсь этой областью анализа данных уже десять лет, интуитивность и преимущества такого способа представления статистики пиков казались мне очевидными. Однако после пары комментариев я понял, что для людей, не знакомых с сетевым анализом, это совсем не так. Поэтому решил написать пост с разъяснением этих картинок.

В данный момент статистикой в dota 2 удивить кого-либо уже сложно благодаря таким сайтам, как dotabuff, datdota и opendota. Например, на той же datdota можно посмотреть не только, кого обычно берет и банит команда VGj в патче 7.xx, но и в каких стадиях игры она это делает.

2017_04_29_14_54_39.png

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

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

2017_04_29_15_07_04.png

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

Однако, что если мы хотим проанализировать драфт команд на уровне связок из трех героев или даже целых стратегий. Конечно, можно дописать запрос к базе и выводить статистику по 3, 4 и 5 героям, но в визуальном плане они не дадут видения общей картины. И вот тут на помощь приходит теория графов и сетевой анализ.

Для дальнейших иллюстраций я программным путем вытащил данные о драфтах все той же VGj в патче 7.хх в ПО для анализа данных (в моем случае это R) и дальше визуализировал результат в софте для сетевого анализа Gephi.

Начнем с простого -- с драфтов на групповой стадии. На следующей картинке изображены связи между всеми героями, которых брали VGj, где цвет связи соответствует винрейту (красный для WR < 50%, зеленый для WR > 50%), ширина -- количеству игр, в которых присутствовала данная связка героев, а цветом узла я показал основной атрибут героев.

2017_04_29_15_26_00.png
Если приглядеться, то можно увидеть, что Treant Protector был неэффективен в большинстве связок, в то время как Night Stalker выиграл во всех играх и зашел в связках с абсолютно всеми героями. Если упростить эту картинку, убрав все связки с винрейтом менее 50%, то можно получить еще более очевидную картину.

igv_group_kiev.png

Здесь легко увидеть, что забанив Omniknight & Night Stalker можно оставить для VGj по сути только 3 раздельные стратегии. Ну и без Warlock & Abaddon они остаются почти без страт, лишь с набором героев, которых нужно как-то комбинировать.

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

Для примера можно посмотреть на все связки героев VGj в патче 7.хх с винрейтом более 50% и игравшие вместе более чем в одной игре.

igv_7xx_501.png

Т.к. за 5 месяцев команда сыграла значительно больше игр, чем в группе и пикнула значительно больше героев, визуальный анализ становится затруднительным. Однако даже в таком масштабе видно, что Lifestealer, Centaur, Warlock и Slardar им лучше не отдавать.

Для того, чтобы картина прояснилась можно вернуться к табличному представлению данных, отсортировав героев по самой очевидной метрике: степени узла (Degree), т.е. количеству связок, в которых этот герой участвовал и выигрывал в Более, чем 50 % игр.

2017_04_29_16_21_43.png

Даже если это не делает выбор пиков и банов против данной команды очевидным, то, на мой взгляд, позволяет посмотреть на общую картину драфта команда "свысока", добавив инсайты, которые сложно увидеть при обычном анализе драфта. В данной табличке я оставил также ряд других полезных метрик, но рассказ о них я бы предпочел оставить на другой раз, т.к. уже подходит время игры Virtus Pro против VGj и мне как болельщику хотелось бы, чтобы они увидели этот пост до того, как она начнется ;).

P.S. Я не являюсь особо активным и скилловым игроком в доту и смотрю ее только во время крупных турниров. Моей областью экспертизы является анализ данных и сетевой анализ в частности, поэтому мне было бы интересно насколько представленные здесь результаты и их интерпретации совпадает с мнением экспертов в данном вопросе.

Комментарии