Обзор проекта

Это часть завершающего проекта Udacity for Data Science Nano Degree. Здесь наша цель — определить пользователей со статусом оттока после использования музыкального приложения Sparkify. Основная цель проведения анализа в этом заключается в том, что он поможет нам определить клиентов, которые готовы уйти, и если мы сможем определить факторы, которые приводят к оттоку, компания может оказаться в лучшем положении, чтобы избежать оттока пользователей.

Этот набор данных содержит данные журнала поведения пользователей sparkify за два месяца. Журнал пользователя содержит некоторую базовую информацию о пользователе, такую ​​как прослушанные песни, количество друзей, добавленных пользователем, время активности и другие действия, такие как отметка «палец вниз», «палец вверх» и т. д.

Весь этот анализ был загружен в мой репозиторий github.[мой код github]

В этом проекте я использовал PySpark для анализа и прогнозирования оттока на основе набора данных о действиях клиентов вымышленной музыкальной сервисной компании Sparkify объемом 12 ГБ. Во-первых, я использовал небольшое подмножество полного набора данных для проведения исследовательского анализа и применения моделей машинного обучения в рабочей области, предоставляемой udacity.

Исследовательский анализ данных

Исходное подмножество содержит 18 столбцов и 286 500 строк данных.

отток — определение

когда значение страницы = «Подтверждение отмены» используется в качестве статуса для определения оттока.

В этом подмножестве данных у нас есть 52 оттока и 173 не оттока клиентов.

Одним из основных атрибутов из списка является страница . Это дает нам некоторую важную информацию об оттоке и неоттоке клиентов.

Я выбрал некоторые функции для построения модели на основе вышеуказанных параметров.

Отток клиентов-мужчин больше, чем у женщин.

Ушедшие клиенты прослушали меньше песен.

Статус подписки для отмененных пользователей составляет почти ~25%.

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

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

Разработка функций:

После выполнения EDA мы узнали о некоторых важных атрибутах и ​​их изменении в зависимости от целевой переменной. Теперь пришло время создать те атрибуты функций, которые входят в модель. Это некоторые из функций, которые я подготовил.

  1. Продолжительность — платный пользователь
  2. Количество раз — обратился за помощью
  3. Посчитай - палец вверх
  4. Считать — большой палец вниз
  5. Время использования — общее время использования приложения.

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

Окончательная таблица характеристик показана ниже.

Сборка модели:

Перед обучением модели все функции преобразуются в векторы с последующим масштабированием значений атрибутов.

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

Набор данных был разделен в соотношении 70:30 для тестирования производительности.

Окончательная производительность выполняется на наборе данных проверки.

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

Выводы:

Здесь, в этом проекте, я работал над созданием модели оттока, в которой эта модель идентифицирует пользователей, которые собираются уйти. Я начал работать с исследовательским анализом данных, понимая переменные данных, и внедрил две модели — логистическую регрессию и классификатор GBT. Поскольку данные представляют собой небольшое подмножество исходного набора данных, я использовал "f1-score" в качестве метрики.

Улучшения:

Я твердо верю, что если бы я смог создать еще несколько функций с большим опытом в предметной области, это помогло бы мне улучшить мою модель. В настоящее время я работал только с набором данных объемом 128 МБ — если работать со всем набором данных (12 ГБ) — результаты будут улучшены, а выводы станут более реальными, и у вас будет большой потенциал для предотвращения оттока клиентов.