Разработка AI-системы предсказания оттока игроков

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

Почему предсказание оттока игроков ломается на живых данных

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

Сильнее всего проседает точность прогноза оттока на редких событиях. Ушедших мало, поэтому доля верных ответов остаётся высокой даже у модели, которая всем отвечает «останется». Смотреть нужно на верхушку списка риска: сколько реальных уходов попадает в первые проценты и сколько ложных срабатываний получит команда, которая зовёт этих игроков обратно.

Вторая потеря — задержка между последним действием и самим уходом. Игрок затихает не мгновенно: сессии укорачиваются, покупки реже, интервал между входами растёт — и это размазано на две-три недели. Признаки, посчитанные за сутки, к моменту срабатывания устаревают; нужны оконные агрегаты на разных горизонтах и признаки динамики, а не срезы.

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

Все три места лечатся не сменой алгоритма, а постановкой задачи: горизонт прогноза, разметка по времени, отдельные пороги риска для сегментов. Разбираем, как это закрывается на практике.

Что даёт ранняя система выявления оттока: измеримые эффекты

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

Раннее предупреждение вместо разбора постфактум

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

Эффект на удержание

Касания уходят только в группу риска, поэтому оффер не размывается по всей базе и не съедает ценность активных игроков. Сравнение с контрольной группой показывает вклад именно точечных сценариев: доля ушедших в группе риска выравнивается до уровня остальной базы, а не просто «немного падает».

Эффект на нагрузку поддержки

Часть обращений «удалите аккаунт» — последняя стадия разочарования, а не осознанное решение. Триггер по высокому риску запускает сценарий возврата до обращения, и доля таких тикетов падает. Поддержка перестаёт быть каналом удержания по факту и занимается реальными проблемами.

Одна метрика на всю команду

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

Режимы работы: правила, статистика, модель на событиях

Оценку риска оттока собирают тремя способами, и выбор диктует не мода, а частота решений и цена ошибки. Ниже — что даёт каждый вариант и на чём он ломается, чтобы можно было выбрать отправную точку.

Вариант Когда подходит Ограничения
Пороговые правила Первый контур: прогрев базы, сегменты, оповещения по неактивности Решение по одному-двум признакам, позднее срабатывание, пороги правят вручную
Статистическая модель на агрегатах Есть история действий за окно и стабильный баланс механик Не видит порядок и контекст действий, требует регулярного переобучения
Модель на поведенческих событиях Нужно раннее предупреждение и причины риска по каждому игроку Нужны поток событий, разметка исходов, контроль дрейфа признаков

Когда достаточно пороговых правил

Если признаков один-два, а решение принимается раз в сутки, порог по «нет входа N дней» или падение активности к базовой линии закрывает задачу. Правило прозрачно, его читает поддержка, а отключение занимает минуту. Предел наступает на живом сегменте: сезонность и новые механики дают ложные срабатывания, и пороги приходится вести вручную.

Когда нужна модель на поведенческих событиях

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

Этапы внедрения: от аудита данных до передачи модели

Порядок работ фиксируем до старта: каждый этап заканчивается артефактом, который заказчик принимает отдельно, — так внедрение не превращается в «мы что-то обучили, разбирайтесь сами». Ниже — этапы внедрения предсказания оттока игроков от аудита данных до передачи решения.

Аудит данных и постановка метрики

  1. Аудит данных и разметки: выгружаем историю сессий, платежей и внутренних событий, проверяем глубину, полноту и расхождения между системами, отсекаем ботов и тестовые аккаунты. На выходе — карта источников и перечень пробелов, которые закрываем до обучения.
  2. Постановка метрики: договариваемся, что считаем оттоком — уход на заданное число дней, падение активности относительно личного темпа игрока или отказ от платежей. Здесь же фиксируем горизонт предсказания и допустимую долю ложных срабатываний, чтобы предложения удержания не уходили на лояльных игроков.
  3. Сборка схемы признаков: активность за разные окна, динамика относительно личной нормы, платёжное поведение, социальные связи, прогресс в режимах, отклик на прошлые акции. Каждый признак документируем — источник, формула расчёта, поведение при пропуске значения.

Проверка на исторических периодах и передача

  • Обучение модели и подбор порога срабатывания под конкретные задачи удержания.
  • Проверка качества модели: прогоняем на отложенных исторических отрезках, включая праздничные и кризисные недели, и смотрим не среднюю точность, а попадание в топ-сегмент риска — сколько игроков из самых «горячих» действительно ушли. Отдельно проверяем устойчивость: метрика не должна проседать при смене сезона или обновлении игры.
  • Мониторинг и передача решения: отдаём воспроизводимое обучение, документацию по признакам, панель контроля дрейфа данных и регламент переобучения. Команда заказчика ведёт модель дальше без нас — это и есть критерий завершённого проекта.

Артефакты: схемы признаков, конфигурации и регламенты

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

Схема признаков и разметка

  • Схема признаков: перечень сигналов с окнами агрегации — частота и длительность сессий, динамика уровня, паузы между входами, изменения в покупках — с указанием источника каждого поля и правила пересчёта.
  • Разметка ухода: определение целевого события, горизонт наблюдения и обработка вернувшихся игроков, чтобы метка не «плыла» между запусками и обучение оставалось сопоставимым.
  • Документация модели: назначение, входные признаки, пороги срабатывания, ограничения применимости и известные режимы отказа.
  • Конфигурация расчётов: параметры пересчёта признаков, окна и расписание — запуск воспроизводится одной командой, без ручных правок.

Регламенты мониторинга качества

  • Регламент мониторинга: какие метрики качества считаются ежедневно, какие пороги считаются деградацией, кто реагирует и в какой срок.
  • Журнал контроля смещения: сравнение распределений признаков и доли срабатываний с эталонным периодом — расхождение видно до того, как упадут продажи.
  • Инструкция по переобучению и откату на предыдущую версию с критериями, когда переобучение обязательно, а когда достаточно пересчёта признаков.

Все документы лежат рядом с кодом, версионируются вместе с ним и обновляются по тому же регламенту, что и сама модель.

Кейс: как изменились метрики удержания после внедрения

Проект вёлся на действующей мобильной игре с многомиллионной установочной базой: поведенческие события собирались в Amplitude, но решения по удержанию принимались по недельным сводкам. Ниже — что было до старта, что изменили во время внедрения и как это отразилось в динамике удержания.

Исходная ситуация и гипотезы

Отток замечали постфактум: игрок не заходил третьи сутки — и только тогда попадал в рассылку возврата. Гипотеза была не про «умную модель саму по себе», а про момент срабатывания: если предсказывать уход за двое суток, у команды остаётся окно на действие, а контакт не выглядит запоздалым.

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

Результат в динамике удержания

Сигнал приходил за двое суток до фактического ухода: точность около 0,8 при доле ложных срабатываний порядка 15%. Кампании возврата уходили только тем, у кого сработал сигнал — массовых рассылок по всей базе не было.

Удержание 7-го дня выросло на 6 процентных пунктов, 30-го — на 4. Доля вернувшихся после контактного сценария составила 22% против 9% в контрольной группе, а нагрузка на коммуникации не выросла. Результат проекта: отток перестал быть фактом из отчёта и стал управляемой метрикой с понятным регламентом реакции.

Чем отличается скоринг риска ухода от поведенческой сегментации?

Скоринг риска ухода отвечает на вопрос «кто и как скоро уйдёт»: для каждого игрока на заданном горизонте считается вероятность, которая обновляется по мере накопления событий. Поведенческая сегментация отвечает иначе — «на какие группы похожи игроки и что с каждой группой делать»: на выходе не число, а несколько устойчивых сегментов с описанием поведения.

Разница подходов начинается с данных. Скорингу нужна разметка: мы фиксируем определение оттока (например, отсутствие сессий дольше заданного порога) и берём историю, где событие уже подтверждено. Сегментация разметки не требует — она группирует активность по признакам: частота и глубина сессий, динамика прогресса, социальные связи, реакция на внутриигровые события. Поэтому скоринг чувствителен к тому, как определён отток, а сегментация — к сопоставимости признаков между игроками.

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

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

Мы начинаем с проверки данных: есть ли подтверждённый отток, хватает ли истории, различаются ли периоды между собой. Устойчив сигнал — строим скоринг, нет — сначала сегментацию, чтобы получить картину аудитории.

Ограничения: разметка, дисбаланс классов, сдвиг данных

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

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

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

Часть оттока непредсказуема в принципе — уход по внешним причинам не оставляет следов в игровых событиях. Поэтому прогноз встраиваем в решение с горизонтом: важно, за сколько дней предупреждение даёт запас на действие.

Что делать, если качество уже просело после сдвига?

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

Обсудим задачу: данные, горизонт, метрика качества

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

  • определение оттока: сколько дней без активности считаем уходом игрока и одинаково ли это для новичка и для платящего;
  • горизонт предсказания: 7, 14 или 30 дней — от него зависят и набор признаков, и рабочий порог срабатывания;
  • метрика качества: что важнее — не пропустить уходящего или не тревожить лояльного; отсюда точность и полнота на выбранном пороге;
  • выгрузка событий: 2-3 окна наблюдения, чтобы проверить устойчивость модели, а не подогнать её под один отрезок;
  • состав полей: сессии, покупки, прогресс, каналы привлечения, обращения в поддержку;
  • канал действия: письмо, внутриигровое предложение или ручная обработка — под него подбираются пороги и частота срабатываний;
  • ограничения: обезличивание, сроки хранения, задержка между событием и его попаданием в хранилище.

По этим ответам собираем оценку проекта и план работ: этапы, сроки, зона ответственности нашей команды и вашей стороны, точки промежуточной проверки качества. Опишите задачу в свободной форме — вернёмся с разбором, оценкой и предложением по реализации.

  • Ждут предсказания «уйдёт или не уйдёт» в виде однозначного ответа, тогда как задача — ранжировать игроков по степени риска и успеть вмешаться до последнего входа
  • Отдают всю историю одной выборкой, не разделяя её по времени: модель учится на данных, которые в реальной работе ещё не наступили, и показывает красивые результаты только на проверке
  • Считают уходом любое молчание в течение заданного числа дней, не отличая паузу между сессиями от ухода в другую игру, из-за чего разметка противоречит сама себе
  • Хотят одну общую модель на все жанры, платформы и регионы, хотя причины ухода у новичка и у постоянного игрока разные — нужны отдельные признаки или отдельные модели
  • Просят предсказывать уход задолго до события, когда тревожные сигналы появляются лишь за считанные дни, и получают либо бесполезные срабатывания, либо пропуск риска
  • Внедряют оценку риска без регламента реакции: неизвестно, кто и в какой срок связывается с игроком и какое предложение ему уместно
  • Судаят о качестве по доле верных ответов, не глядя на полноту по редкому классу уходящих, и не замечают, что модель находит лишь малую часть тех, кого теряют
  • Считают модель разовым проектом и не закладывают регулярное обновление на свежих данных, хотя поведение игроков и состав аудитории меняются постоянно
  • Начинают с выбора инструмента и подрядчика, а не с ответа на вопрос, какие решения будут приниматься по результату оценки риска и как будет измеряться польза

Направления AI-разработки

Последние работы

  • Разработка сайта компании B2B ADVANCE
    Разработка сайта компании B2B ADVANCE
    1543
  • Разработка веб-приложения для компании FEEDME
    Разработка веб-приложения для компании FEEDME
    1394
  • Разработка веб-сайта для компании БЕЛФИНГРУПП
    Разработка веб-сайта для компании БЕЛФИНГРУПП
    1081
  • Разработка интернет магазина для компании FURNORO
    Разработка интернет магазина для компании FURNORO
    1374
  • Разработка логотипа компании B2B Advance
    Разработка логотипа компании B2B Advance
    816
  • Разработка веб-приложения для компании Enviok
    Разработка веб-приложения для компании Enviok
    1142