Краткий обзор анализа и прогнозирования оттока клиентов с помощью классификатора дерева решений.

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

Мы можем классифицировать отток клиентов (также известный как отток клиентов), сгруппировав их по различным категориям. Контрактный отток, который применим к таким предприятиям, как кабельные компании и поставщики услуг SAAS, - это когда клиенты решают не продолжать свои истекшие контракты. Добровольный отток, с другой стороны, - это когда клиент решает отказаться от существующей услуги, что может быть применимо для таких компаний, как предоплаченные мобильные телефоны и поставщики подписки на потоковую передачу. Также бывают случаи, когда потребители оставляют возможную покупку, не завершив транзакцию. Мы можем классифицировать эти случаи как неконтрактный отток, который применим к компаниям, которые полагаются на розничные точки, интернет-магазины или онлайн-услуги по заимствованию. И, наконец, есть непроизвольный отток, например, когда клиент не может оплатить счет своей кредитной карты и больше не остается в компании-эмитенте кредитной карты.

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

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

Лучший способ избежать оттока клиентов - это знать своих клиентов, а лучший способ узнать своего клиента - это исторические и новые данные о клиентах.

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

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

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

Когда мы смотрим на статистические данные, мы видим, что средний возраст наших клиентов - 39 лет, средний возраст клиентов в месяц - 5, а ориентировочная средняя зарплата - 100 тысяч.

Когда мы смотрим на пол и географическое распределение расчетной заработной платы, мы видим, что расчетная средняя зарплата мужчин-клиентов выше, чем женщин, во Франции и Испании, однако в Германии расчетная средняя зарплата женщин-клиентов выше.

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

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

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

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

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

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

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

На основе оценок метрик, в то время как 73% прогнозов будут точными с моделью классификатора решений, 82% прогнозов будут точными с помощью RandomForestClassifier. В этом случае мы бы предпочли использовать случайный лес.

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

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

В наборе данных нет недостающих данных, и типы данных верны. Давайте посмотрим на категориальные ценности и их уникальные ценности.

Когда мы смотрим на штат и отток, мы видим, что Калифорния и Нью-Джерси являются первыми штатами с самым высоким уровнем оттока.

Мы также видим, что коэффициент оттока выше у клиентов с международным тарифным планом и ниже у клиентов с тарифным планом голосовой почты.

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

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

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

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

Теперь мы готовы разделить набор данных для обучения / тестирования и создания наших моделей. Начнем со случайного леса.

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

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

Модель предсказывает 560 истинно отрицательных, 13 ложных положительных, 54 ложных отрицательных, 40 истинных положительных.

Когда мы оцениваем модель с помощью классификатора случайного леса, мы видим, что:

Оценка точности 0,729

Рейтинг отзыва 0,372

Кривая ROC выглядит следующим образом:

Оценка AUC (площадь под кривой roc) составляет 0,83, а оценка f1 составляет 0,49.

Мы также выяснили, что для получения максимальной производительности от модели нам нужно установить для оценки n значение 30 (в настоящее время в нашей модели используется 100).

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

Лучше всего с точки зрения важности функции, мы определенно можем удалить состояние из нашей модели.

Давайте создадим еще одну модель, используя машину опорных векторов.

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

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

Модель предсказывает 567 истинно отрицательных результатов, 6 ложных положительных результатов, 83 ложных отрицательных результата и 11 истинных положительных результатов. Несмотря на то, что количество ложных положительных результатов немного уменьшилось, истинных положительных результатов значительно меньше по сравнению с RandomForestClassifier.

И оценка точности (0,647), и оценка запоминания (0,11) намного ниже, чем у случайного классификатора. Площадь под кривой roc (auc) равна 0,83, что соответствует классификатору случайного леса. Лучшим вариантом для степени машины опорных векторов является 1. (в настоящее время установлено значение по умолчанию, равное 3).

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

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