Чернобровов АлексейАналитик

Как измерить эффективность Machine Learning: считаем метрики и деньги на примере прогнозирования оттока пользователей

Большие данные и машинное обучение до сих пор остаются самыми популярными ИТ-трендами: спрос на специалистов по Data Science растет, а о Big Data и Machine Learning говорят даже на правительственных конференциях. Тем не менее, при всех достоинствах данных технологий, далеко не каждая компания использует их на практике: профессионалы в этой сфере стоят очень дорого. При этом невозможно точно предсказать, когда вернутся потраченные инвестиции. Однако, бизнесмены хотят четко понимать, какую реальную пользу принесут те или иные инструменты.

С точки зрения бизнеса любая технология – это лишь средство повышения его эффективности. Машинное обучение (Machine Learning, ML) – не исключение. На практике новые алгоритмы и нетривиальные модели интересны только ML-специалисту, аналитику или data scientist’у. Бизнесу нужны деньги и показатели, которые помогают их контролировать, например, количество посетителей сайта, продолжительность визитов, индекс лояльности потребителей, средний чек, конверсия, показатель отказов и т.д. В статье рассмотрено, как оценивать эффективность прогнозирования оттока (Churn Rate) посетителей сервиса с помощью ML.

 

ML или более дешевые альтернативы: что нужно бизнесу?

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

  1. Каков ожидаемый прирост бизнес-метрики в денежном выражении или процентах? Например, рост прибыли, повышение конверсии, увеличение среднего чека или снижение оттока.
  2. Какой прирост ML-метрик нужно обеспечить для улучшения бизнес-показателей? Как, например, улучшение точности прогноза повлияет на реальной увеличение дохода компании?
  3. Каковы затраты на машинное обучение: зарплату специалистов, оборудование, время на поиск и адаптацию профессионалов, налоги и другие расходы?
  4. Какие есть альтернативы и сколько они стоят? Например, можно сегментировать потребителей с помощью RFM-анализа, вручную прописать правила для формирования рекомендаций по предложению товаров, а для фильтрации спама в электронной почте нанять человека, который будет просматривать письма быстро, качественно и недорого.

 

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

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

 

Оценка эффективности внедрения ML на примере прогнозирования оттока

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

Для построения модели сначала нужно определить проверяемую гипотезу: ушел пользователь в отток или остался (рис. 1). Рассмотрим типовую матрицу ошибок (Confusion matrix), которая поможет понять, как соотносятся значения прогнозируемых ситуаций и реальных случаев (таблица 1).

 

Таблица 1. Матрица ошибок 

Прогноз Реальная ситуация
+ Отток - Нет оттока

+ Отток

True Positive: прогноз совпал с реальностью, пользователь ушел в отток, как и было предсказано моделью ML False Positive: ошибка 1-го рода, модель ML предсказала отток пользователя, а на самом деле он остался

- Нет оттока

False Negative: ошибка 2-го рода – модель ML предсказала , что пользователь уйдет, но на самом деле он остался True Negative: пользователь остался, прогноз ML совпал с реальностью

 

С точки зрения бизнеса, если пользователь хочет уйти в отток, необходимо его удержать: предложить подарок, скидку или что-то еще, чтобы он остался. А если клиент не собирается в отток, не стоит тратить время и средства на его удержание. Чтобы понять, какая ML-метрика лучше всего подходит для этой задачи, нужно опять посмотреть на проблему с точки зрения бизнеса, т.е. посчитать деньги. Здесь снова возможны 4 варианта (таблица 2):

  • Если модель машинного обучения верно предсказывает, что пользователь хочет уйти в отток, то, предложив клиенту скидку (Discount, D), бизнес может заработать на нем сумму, равную пожизненной ценности клиента (LifeTime Value, LTV) минус размер скидки;
  • Если ML прогнозирует уход в отток, а пользователь остается, бизнес теряет размер предложенной скидки;
  • Если по ML-модели клиент остается, а на самом деле он ушел в отток, бизнес теряет все деньги, которые мог бы на нем заработать – LTV.
  • Если пользователь остался, как и предсказала модель ML, в этом конкретном случает от машинного обучения бизнесу нет ни убытка, ни прибыли.

 

Таблица 2. Расчет бизнес-метрик по матрице ошибок

Прогноз Реальная ситуация
+ Отток - Нет оттока

+ Отток

True Positive: прибыль = LTV-D False Positive: убыток = D
- Нет оттока False Negative: убыток = LTV True Negative: ни прибыли, ни убытка от модели ML

 

Далее в таблице 3 показаны результаты матрицы ошибок после валидации ML-модели.

Таблица 3. Результаты матрицы ошибок после валидации ML-модели

Прогноз Реальность
ушли в отток остались
ушли в отток 27% 6%
остались 2% 65%

 

В реальности возросла ошибка 1-го рода: на валидации модели 6% клиентов остались. Как оценить результат такого прогноза? С одной стороны, ошибки 1-го и 2-го рода не большие. С другой, как перевести оценку в реальные деньги? Обратите внимание, простое перемножение точности прогноза на значение доходов в соответствующих ячейках не даст правильного ответа.

Пример расчета показателя оттока клиентов (Churn Rate)
Рис. 1. Пример расчета показателя оттока клиентов (Churn Rate)

 

Как оценить результат от внедрения ML?

Чтобы правильно измерить эффективность модели, нужно оценить, какой процент пользователей из тех, что собирались уйти в отток, примут скидку и после этого останутся в сервисе. Для нужно запустить А/В-тест:

  • вариант А – скидки никому не раздаются, но при этом мы прогнозируем, будет ли клиент в оттоке или останется с помощью мер на основе ML-рекомендаций;
  • вариант В – скидки раздаются тем пользователям, которые собираются в отток по прогнозу ML.

Результаты А/В-теста показаны в таблице 4.

 

Таблица 4. Результаты А/В-тестирования

 

Прогноз

Реальность

ушли в отток

остались

 (А)

 (В)

 (А)

 (В)

ушли в отток

28%

25%

6%

8% (приняли скидку и остались)

остались

2%

3%

64%

64%

ИТОГО

30%

28%

70%

72%

 

Итого, при отсутствии скидок (вариант А) в отток ушли 30% клиентов, при раздаче скидок (вариант В) – 28%. Таким образом, 2% (30-28=2) всех пользователей или 6,6% от тех, кто собирался в отток, удалось удержать с помощью ML и предложенных на основе модели рекомендаций. Реальный эффект в деньгах составит (2%*LTV-8%D) = X*LTV-Y*D, где:

  • X – это разница вариантов А и В в процентах пользователей, которых удалось удержать благодаря ML;
  • Y- число процентов пользователей, которые получили скидку и остались.

 

Экономический эффект для этого примера равен: (2%*LTV-8%D)*U – С,

где U – число пользователей сервиса, а C – затраты на внедрение, учитывая все расходы, понесенные на это мероприятие: А/В-тест, команду, ML-инструменты и т.д.

 

Первое, на что стоит обратить внимание, что если LTV в 4 раза меньше, чем размер скидки, то проект автоматически становится убыточным. Чтобы доказать это, рассмотрим простой пример.

Допустим, имеем следующие цифры:

  • LTV=7 000 рублей;
  • скидка D=500 рублей;
  • расходы на внедрение ML составили 2 млн. рублей.

С такими значениями показателей нужно как минимум 20 000 пользователей, чтобы просто окупить проект. На рисунке 2 показан пример корреляции графиков оттока клиентов с числом пользователей.

Пример оттока клиентов от числа пользователей

Рис. 2. Пример оттока клиентов от числа пользователей

 

Вместо заключения

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

Иногда задача прогнозирования оттока с помощью ML, несмотря на всю ее понятность и привлекательность, может просто не окупиться. Поэтому, прежде чем запустить такой проект, оцените его целесообразность. Например, раздайте скидку небольшой группе пользователей и посмотрите, сколько процентов ее принимают и как это улучшает ваш бизнес.

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

Контакты