Предиктивная аналитика

Материал из Самая полная в Рунете энциклопедия интернет-маркетинга
Перейти к навигации Перейти к поиску

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

Технически это прикладная часть машинного обучения, посаженная на конкретный бизнес-процесс. Берут историю: покупки, заходы в личный кабинет, обращения в поддержку, платежи, отказы. Из неё собирают датасет, где у каждого объекта есть набор признаков и известный исход. Алгоритм подбирает правило, связывающее признаки с исходом, и это правило применяют к тем, у кого исход ещё не наступил.

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

Шкала вероятности с подвижным порогом, ниже поле без воздействия, выше список, от которого расходятся верная находка и ложная тревога
Почему сдвиг одного порога меняет знак результата кампании

Чем отличается от соседних понятий

Аналитику принято делить на четыре уровня по вопросу, на который она отвечает.

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

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

От машинного обучения предиктивная аналитика отличается не методом, а рамкой. Метод общий: линейная и логистическая регрессии, деревья решений, градиентный бустинг, нейросети. Рамку задаёт бизнес. У прогноза есть заказчик, горизонт, стоимость ошибки и регламент, превращающий число в действие. См. Искусственный интеллект.

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

Откуда взялось

Практика старше компьютеров. В 1941 году Национальное бюро экономических исследований США выпустило работу Дэвида Дюрана «Risk Elements in Consumer Instalment Financing». К задаче «вернёт или не вернёт» там применили дискриминантный анализ: признаки заёмщика сворачивались в один балл, и по порогу этого балла заявку принимали либо отклоняли. Так устроен и современный скоринг. За восемьдесят с лишним лет он оброс логистической регрессией, деревьями и бустингом, но схему сохранил: много признаков на входе, одно число на выходе, порог для решения.

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

Как это устроено

Целевая переменная и горизонт

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

Вместе с событием фиксируют горизонт. Прогноз «уйдёт когда-нибудь» бесполезен: под него нельзя запланировать ни бюджет, ни смену операторов, ни объём скидок, тогда как формулировка «уйдёт в ближайшие 90 дней» сразу превращается в кампанию на квартал с понятной сметой.

Признаки, три выборки и порог

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

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

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

Что делать на практике

  1. Начать с действия, а не с данных. Сформулируйте, что произойдёт после прогноза: кому позвонят, какую скидку дадут, какой закупят объём. Нет действия, значит модель не нужна.
  2. Посчитать экономику до первой строки кода. Нужны четыре числа: маржа с удержанного клиента, стоимость воздействия, доля откликнувшихся, размер базы. Расчёт занимает полчаса и часто закрывает проект.
  3. Собрать базовое правило. Простое условие вроде «не заходил 30 дней и снизил чек» даёт точку отсчёта. Модель имеет смысл, только если она это правило обгоняет.
  4. Проверить данные на полноту. Выгрузка из CRM это ещё не датасет: нужны история изменений, отметки времени и зафиксированные исходы, а не текущее состояние карточки.
  5. Заложить контрольную группу. Часть клиентов из списка не трогают. Без этого эффект кампании не отделить от естественного поведения, и через квартал спорить будет не о чем. См. A/B-тестирование.

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

Чем измеряют

Метрики делятся по типу задачи. Прогноз числа меряют одними, прогноз события другими.

Прогноз числа: MAE и MAPE

MAE (средняя абсолютная ошибка) это среднее из модулей отклонений, в тех же единицах, что и сама величина. MAPE (средняя абсолютная ошибка в процентах) это среднее из относительных отклонений.

Условный пример на прогнозе недельных продаж одного товара:

Неделя Факт, шт. Прогноз, шт. Ошибка, шт. Ошибка, %
1 100 120 20 20 %
2 40 30 10 25 %
3 200 180 20 10 %
4 10 20 10 100 %
5 250 230 20 8 %

MAE равна 80 / 5 = 16 штук. MAPE равна 163 % / 5 = 32,6 %. Одни и те же пять прогнозов выглядят приличными по первой метрике и провальными по второй, и виновата в этом четвёртая неделя: при факте в 10 штук ошибка в 10 штук даёт 100 процентов. Документация scikit-learn предупреждает об этом прямо: при значениях факта около нуля MAPE принимает произвольно большие значения. Хайндман и Кёлер в International Journal of Forecasting за 2006 год на этом основании предложили заменить MAPE масштабированной ошибкой MASE, отметив, что стандартные метрики вырождаются в часто встречающихся ситуациях.

Прогноз события: precision, recall и lift

  • Precision (точность) это доля верных срабатываний среди всех помеченных: TP / (TP + FP). Отвечает на вопрос, насколько можно доверять сигналу.
  • Recall (полнота) это доля найденных событий среди всех случившихся: TP / (TP + FN). Отвечает на вопрос, многое ли модель пропустила.
  • Lift это во сколько раз доля событий в отобранном сегменте выше, чем в базе целиком. Метрика удобна тем, что говорит на языке кампании: лифт 6 в первом дециле означает вшестеро более плотный список.

Precision и recall тянут в разные стороны: опустите порог, и полнота вырастет, а точность упадёт. Обе метрики считают промышленные библиотеки вроде scikit-learn и CatBoost, но ни одна из них не отвечает на вопрос, стоит ли запускать кампанию.

Цена ошибки в рублях

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

  • База: 100 000 активных клиентов.
  • Отток за квартал: 5 %, то есть 5 000 человек.
  • Маржа с удержанного клиента за следующий год: 3 000 ₽.
  • Удерживающее предложение: скидка 1 000 ₽.
  • Доля тех, кого предложение реально удерживает среди верно найденных: 40 %.
  • Модель: recall 60 %, precision 30 %. Список на 10 000 человек, то есть первый дециль.

Матрица получается такая: 3 000 верно найденных (TP), 7 000 ложных тревог (FP), 2 000 пропущенных уходов (FN), 88 000 спокойных клиентов (TN). Лифт первого дециля равен 6: доля уходящих в списке 30 % против 5 % в базе.

Статья Расчёт Сумма
Ложная тревога: скидка тому, кто остался бы сам 7 000 × 1 000 ₽ 7 000 000 ₽
Скидка верно найденным 3 000 × 1 000 ₽ 3 000 000 ₽
Затраты кампании 10 000 × 1 000 ₽ 10 000 000 ₽
Спасённая маржа 3 000 × 40 % × 3 000 ₽ 3 600 000 ₽
Цена пропуска: не удержали тех, кого не нашли 2 000 × 40 % × 3 000 ₽ 2 400 000 ₽
Итог кампании 3 600 000 − 10 000 000 −6 400 000 ₽

Кампания убыточна, и причина не в качестве модели: пропущенные уходы обходятся в 2,4 млн ₽, ложные тревоги в 7 млн ₽, и съедают результат именно они, то есть семь тысяч человек, которые остались бы и без всякой скидки.

Порог рентабельности выводится одной формулой. Кампания выходит в ноль, когда precision ≥ стоимость воздействия / (маржа × доля откликнувшихся). Здесь это 1000 / (3000 × 0,4) = 83,3 %. Точность такого уровня в задачах оттока встречается редко.

Зато у формулы есть второй рычаг, и он дешевле. Снизьте скидку до 300 ₽, и порог падает до 25 %: затраты кампании становятся 3 000 000 ₽, а итог плюс 600 000 ₽. Прогноз тот же самый, модель та же самая, знак результата противоположный. Поэтому разговор о предиктивной аналитике начинают с цены действия и маржи, а не с выбора алгоритма. Про расчёт маржи по клиенту см. LTV.

Когда модель проигрывает простому правилу

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

  1. Событий слишком мало. Несколько десятков случаев на всю историю не дают обучить ничего устойчивого. Порог зависит от задачи, но сотня событий это нижняя граница, за которой разговор обычно бессмысленен.
  2. Цена воздействия близка к марже. По формуле выше требуемая точность улетает за 80 процентов, а столько не даст ни один алгоритм.
  3. Правило уже объясняет почти всё. Если 80 процентов ушедших не заходили в сервис месяц, список по этому условию стоит ноль и работает сразу.
  4. Решение всё равно принимает человек. Статья 16 закона «О персональных данных» запрещает принимать решения, порождающие юридические последствия для человека, исключительно на основании автоматизированной обработки, кроме случая письменного согласия и случаев, прямо названных федеральными законами. Оператор обязан разъяснить порядок принятия такого решения и дать возможность заявить возражение.
  5. Воздействие может навредить. Кампания удержания способна ускорить уход: звонок напоминает недовольному клиенту, что пора уходить. Это измерено. В работе Николаса Рэдклиффа (Stochastic Solutions, 2007) описаны две кампании мобильных операторов с контрольными группами: у первого отток в целевой группе упал с 30 % до 25 %, у второго вырос с 9 % до 10 % при контрольной группе в 100 000 абонентов и целевой в 1 000 000. Второй кампании выгоднее было не существовать.

Частые ошибки

Оптимизация метрики вместо денег. Команда поднимает ROC AUC с 0,78 до 0,81, а кампания как была убыточной, так и остаётся: экономику решает порог и цена воздействия.

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

Прогноз без владельца. Модель отдают «в аналитику», ответственного за действие нет, список никто не забирает.

Игнорирование дисбаланса. При доле событий 2 % модель, предсказывающая «никто не уйдёт», угадывает исход в 98 случаях из 100. Пользы ноль: в списке на обзвон у неё пусто.

Ограничения и спорные места

Прогноз описывает прошлое. Модель переносит закономерности обучающего периода в будущее и молча ломается, когда меняется рынок, ассортимент или тарифы. Обзор Джи Лу с соавторами в IEEE Transactions on Knowledge and Data Engineering (2018, препринт arXiv:2004.05785) сводит 130 с лишним работ по дрейфу данных. Общепринятого способа обнаружить дрейф вовремя авторы не называют: они описывают десять синтетических и четырнадцать открытых наборов, на которых методы сравнивают между собой.

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

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

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

Правовая рамка сужает применение к людям. Скоринг, автоматический отказ, автоматическое изменение условий договора попадают под статью 16 закона № 152-ФЗ. Обработка данных клиента требует законного основания, а объяснимость решения перестаёт быть академическим вопросом.

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

Что здесь быстро устаревает

  • Состав инструментов. Названия библиотек и облачных сервисов меняются за год, формулы метрик нет. Список инструментов проверяйте у вендора.
  • Уровни точности, которые считаются нормой. Планка ползёт вверх с ростом объёма данных. Сравнивать свою модель нужно со своим же базовым правилом, а не с цифрой из чужой статьи.
  • Правовая часть. Статья 16 закона № 152-ФЗ цитируется по редакции, действующей на сентябрь 2026 года. Регулирование автоматизированных решений обсуждается, и перед запуском скоринга норму стоит перечитать в первоисточнике.
  • Признак протухания. Метрика сменила название в библиотеке или исчезла из документации вендора: раздел пора обновлять.

См. также

Источники

  1. Федеральный закон от 27.07.2006 № 152-ФЗ «О персональных данных», статья 16 «Права субъектов персональных данных при принятии решений на основании исключительно автоматизированной обработки их персональных данных». КонсультантПлюс. https://www.consultant.ru/document/cons_doc_LAW_61801/22e884a41450dcb5cb62d956583ad32abe2bbbe9/
  2. Durand D. Risk Elements in Consumer Instalment Financing. National Bureau of Economic Research, 1941. https://www.nber.org/books/dura41-1
  3. Hyndman R. J., Koehler A. B. Another look at measures of forecast accuracy. International Journal of Forecasting, 2006, т. 22, № 4, с. 679-688. https://robjhyndman.com/papers/mase.pdf
  4. scikit-learn. mean_absolute_percentage_error, документация версии 1.9. https://scikit-learn.org/stable/modules/generated/sklearn.metrics.mean_absolute_percentage_error.html
  5. scikit-learn. precision_score и recall_score, документация версии 1.9. https://scikit-learn.org/stable/modules/generated/sklearn.metrics.recall_score.html
  6. CatBoost (Яндекс). Supported metrics: MAE, MAPE, Precision, Recall, AUC. https://catboost.ai/docs/en/references/custom-metric__supported-metrics
  7. Lu J., Liu A., Dong F., Gu F., Gama J., Zhang G. Learning under Concept Drift: A Review. IEEE Transactions on Knowledge and Data Engineering, 2018, т. 31, № 12, с. 2346-2363; препринт arXiv:2004.05785. https://arxiv.org/abs/2004.05785
  8. Radcliffe N. J. Identifying who can be saved and who will be driven away by retention activity: using uplift modelling to reduce churn in mobile telephony. Stochastic Solutions Limited, 2007. https://stochasticsolutions.com/pdf/SavedAndDrivenAway.pdf