четверг, 14 февраля 2013 г.

скользящая сумма статистика

Сбор ресурсов и крафтинг

Активность в чате приватные сообщения, чат клана и общий чат

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

Новым подходом стало предсказание тех игроков, которым грозит падение в Яму через две недели, для сегментов [7-9], [10-15] и [16-20], и через 3 недели для сегмента [21-25]. То есть мы ищем игроков, теряющих момент импульса, чья активность должна сильно упасть в течение следующей пары недель:

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

Успехом стал переход от бинарного мышления «ушел/остался» к использованию наших уже существующих кластеров активности, от ситуации «игрок покинул нашу игру» к «активность игрока падает ниже порога вероятного ухода». Мы уже пару лет как используем метрику частоты использования (в западной литературе frequency) число дней активности за последние 30 календарных дней. Проще говоря, мы видим человека в игре каждый день, через день, пару дней в неделю или вообще раз в месяц. По частоте мы строим кластеры активности, сегментируя аудиторию:

Переход к сегментированию

Следующим шагом было обрубание хвоста по эмпирическим правилам, чтобы попробовать добраться до истинного дня, с которого активности начала падать. Самым эффективным был подход «последний день игры, когда суммарная активность за последние 30 суток стала меньше 9 дней», давшим точность порядка 80%. Но эмпирический подход плохо работал для лояльных, но не очень активных игроков, так что пришлось думать дальше.

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

Что считать моментом ухода 25 августа, формально последний день игры? Или, например, 16-е, когда мы не видели человека в игре уже неделю? Или 31 июля, первый раз, когда она не запускала игру уже 7 дней подряд? Мы пробовали разные гипотезы, и самые простые не сработали вообще. Предсказывать, что определенный день будет последним днем игры, нам удавалось с печальной точностью 65%.

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

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

Что считать уходом

Входные данные логи активности за 6 месяцев для 38.000 увлеченных игроков.

Ничего не изменилось с прошлой статьи, под датамайнинг у нас по-прежнему два блэйда Dual Xeon E5630 32Gb RAM, 10 Tb холодного хранилища для исходных и промежуточных данных, 3 Tb горячего хранилища в RAID10 SAS массиве для рабочих данных. Оба сервера под MS SQL 2008R2 один под БД и один под Analysis Services. Программная часть решения стандартный пакет Business Intelligence от Microsoft, входящий в SQL Server.

Технические детали

В я описал, как мы в Иннове используем data mining для предсказания ухода новичков, только начинающих свой путь в ММОРПГ Aion, на основе логов их действий за пару часов или дней, проведенных в игре. Но у нас также есть и ветераны, посвятившие игре месяцы и годы, и они тоже иногда уходят. Мы уже научились с высокой точностью предсказывать угасание их интереса теми же методами data mining.

Предсказание ухода лояльных игроков в ММО

13 августа 2012 в 08:57

Предсказание ухода лояльных игроков в ММО / Хабрахабр

Комментариев нет:

Отправить комментарий