Привет, Хабр! В этой статье мы, консультанты аналитической практики отдела поддержки продаж, рассмотрим важность правильной оценки качества моделирования при решении аналитических задач.
В рамках нашей работы нам часто приходится решать задачи построения прогнозных моделей с использованием данных о клиентах.
При этом заказчики могут получить не только описание аналитической задачи, но и процедуру оценки качества разработанных моделей.
А иногда бывает, что заказчик предлагает сравнить ежа со змеей.
Чаще всего с этим можно столкнуться при предварительном разделении данных на обучающую и тестовую выборки, поскольку сбор данных для обеих выборок может незначительно отличаться.
Именно такая ситуация была у нас в одном из наших случаев, когда заказчик хотел проверить «силу» таргетированных коммуникаций.
Постановка задачи
Банк провел разовую акцию, в ходе которой обзвонил некоторых своих клиентов (около 10 тыс.клиентов) и предложил купить определенный кредитный продукт. По итогам кампании были собраны данные о ответ по общению.
Банк описал нам не только саму проблему, которую необходимо решить, но и указал, как и на каких данных следует строить модель, а также как проверять качество.
Что от нас требовалось:
- Постройте модель для прогнозирования реакции на общение.
- Для построения модели используйте данные о клиентах, которые Нет участвовал в кампании.
Для этого банк предоставил нам обезличенные данные обо всех клиентах, исключив из выборки тех клиентов, которые участвовали в разовой акции.
- Как целевое событие При построении модели используйте факт подачи заявки на кредитный продукт, который предлагался в рамках акции.
Те.
если модель прогнозирует, что клиент склонен к покупке кредитного продукта и по результатам общения этот клиент получил положительный ответ, то считается, что модель правильно спрогнозировала ответ.
Первые страхи
Уже на этапе обсуждения метода оценки качества были высказаны опасения по поводу некорректности данного метода оценки.Причин некорректности две.
Во-первых, разные целевые переменные на этапе построения модели и на этапе оценки ее качества.
Модель строится прогнозирование факта подачи заявки на кредитный продукт без какого-либо общения, а качество проверяется по результатам применения модели к задаче прогнозирование реакции на общение .
Во-вторых, клиенты, участвовавшие в кампании, могли сильно отличаться от всех клиентов (поскольку разумно предположить, что клиенты были отобраны для участия в кампании на основе некоторых критериев).
Несмотря на наши опасения, мы согласились попробовать построить модель с текущей постановкой проблемы.
Однако мы запросили часть данных с результатами обзвона клиентов для использования в качестве независимой (тестовой) выборки.
Моделирование
Пока мы ждали часть данных с результатами звонка, мы построили модель на клиентах, которые не участвовали в акции (~200 тыс.клиентов, около 5% купили кредитный продукт).
Результаты были хорошими (Джини ~ 0,75 на обучающих, проверочных и тестовых выборках).
Позже к нам были загружены данные о некоторых клиентах, принимавших участие в акции.
К этим данным была применена ранее построенная модель.
При применении модели к этой части выборки результаты оставляли желать лучшего (Джини = 0,16).
Распределения
Мы начали рассматривать выборку клиентов, участвовавших в кампании, и обнаружили, что распределение данных по многим переменным не совпадает с распределением данных клиентов, не участвовавших в кампании.
Вот так выглядели раздачи
NDA не позволяет оставлять отметки на осях.
Отсюда и объяснение плохих результатов.
Мы попытались построить модель на той части клиентов, которые участвовали в кампании (около 5 тысяч — отклик = 8%).
Результат плохой (недостаточно данных – показатели низкого качества – Джини ~0,3).
Проблемы
В результате было сделано несколько предположений о скудных результатах моделирования:- Различные целевые переменные (помните, что мы учимся определять склонность к покупке кредитный продукт, но мы прогнозируем ответ на общение ).
- Выборка клиентов, принявших участие в акции, формировалась не случайным образом, поэтому распределение предикторов в ней может отличаться от распределения в генеральной совокупности всех клиентов банка.
- в выборку клиентов, не участвовавших в акции, входят клиенты, которые не могут подать заявку на кредит
- клиенты, участвовавшие в акции, практически не имеют кредитных продуктов: лишь 2% имеют записи в истории платежей по кредитам, против 19% клиентов, не участвовавших в акции.
- Недостаточно данных о результатах кампании, чтобы использовать их для построения модели.
Решение проблем
- Всегда необходимо в самом начале определить правильные критерии оценки результата.
- Целевые переменные должны быть одинаковыми.
- Данные, на которых они предлагают тренироваться и на которых они предлагают проверять результат, должны быть из одной и той же генеральной совокупности.
- Целевые переменные должны быть одинаковыми.
- Необходимо заранее обсудить масштаб проекта (и то, что он распространяется на обучающие и тестовые образцы).
- Недостаток данных - либо меняем задачу (чтобы хватило) либо ждём новых сообщений.
Нижняя граница
Вышеизложенные аргументы были представлены коллегам из банка и было решено переделать задачу.В новой постановке задачи от нас требовалось спрогнозировать реакцию на обычную кампанию.
Однако на этот раз у нас были данные о коммуникациях для той же кампании ранее.
Результатом стал успешный проект (нам удалось увеличить отклик более чем в 2 раза).
Выводы
В результате возвращаемся к основам моделирования:- Всегда необходимо понимать, совпадает ли то, что мы моделируем, с тем, что хочет от нас заказчик.
В этом случае, чтобы спрогнозировать реакцию на сообщения, необходимо было иметь данные о сообщениях.
- Данные должны быть получены из одной и той же генеральной совокупности.
Если модель обучена на некоторых закономерностях, но встречает в тестовой выборке другие закономерности, то шансов получить индикатор хорошего качества на тестовой выборке мало.
-
Что Такое Алгоритм? (Часть 2) «Жизнь»
19 Oct, 24 -
Зачем Фотожурналисту 3D-Принтер?
19 Oct, 24 -
Почему 90% Клиентов Остаются С Нами
19 Oct, 24 -
Карты Санкт-Петербурга
19 Oct, 24 -
Аппаратное Ускорение Canvas В Google Chrome
19 Oct, 24 -
Плюрализация
19 Oct, 24 -
Панель Настроек Без Программирования
19 Oct, 24