Обзор проекта
Это часть завершающего проекта Udacity for Data Science Nano Degree. Здесь наша цель — определить пользователей со статусом оттока после использования музыкального приложения Sparkify. Основная цель проведения анализа в этом заключается в том, что он поможет нам определить клиентов, которые готовы уйти, и если мы сможем определить факторы, которые приводят к оттоку, компания может оказаться в лучшем положении, чтобы избежать оттока пользователей.
Этот набор данных содержит данные журнала поведения пользователей sparkify за два месяца. Журнал пользователя содержит некоторую базовую информацию о пользователе, такую как прослушанные песни, количество друзей, добавленных пользователем, время активности и другие действия, такие как отметка «палец вниз», «палец вверх» и т. д.
Весь этот анализ был загружен в мой репозиторий github.[мой код github]
В этом проекте я использовал PySpark для анализа и прогнозирования оттока на основе набора данных о действиях клиентов вымышленной музыкальной сервисной компании Sparkify объемом 12 ГБ. Во-первых, я использовал небольшое подмножество полного набора данных для проведения исследовательского анализа и применения моделей машинного обучения в рабочей области, предоставляемой udacity.
Исследовательский анализ данных
Исходное подмножество содержит 18 столбцов и 286 500 строк данных.
отток — определение
когда значение страницы = «Подтверждение отмены» используется в качестве статуса для определения оттока.
В этом подмножестве данных у нас есть 52 оттока и 173 не оттока клиентов.
Одним из основных атрибутов из списка является страница . Это дает нам некоторую важную информацию об оттоке и неоттоке клиентов.
Я выбрал некоторые функции для построения модели на основе вышеуказанных параметров.
Отток клиентов-мужчин больше, чем у женщин.
Ушедшие клиенты прослушали меньше песен.
Статус подписки для отмененных пользователей составляет почти ~25%.
Статус подписки разбивается по активности пользователя и полу. Активных самцов больше, чем самок, и отменяющих самцов тоже больше, чем самок. Похоже, мужчины склонны отменять больше, чем женщины.
Похоже, что большая часть оттока происходит в более поздние часы вечера.
Разработка функций:
После выполнения EDA мы узнали о некоторых важных атрибутах и их изменении в зависимости от целевой переменной. Теперь пришло время создать те атрибуты функций, которые входят в модель. Это некоторые из функций, которые я подготовил.
- Продолжительность — платный пользователь
- Количество раз — обратился за помощью
- Посчитай - палец вверх
- Считать — большой палец вниз
- Время использования — общее время использования приложения.
Используя все эти вышеперечисленные производные переменные, мы создали окончательную таблицу признаков.
Окончательная таблица характеристик показана ниже.
Сборка модели:
Перед обучением модели все функции преобразуются в векторы с последующим масштабированием значений атрибутов.
Я использовал логистическую регрессию в качестве начальной модели, а затем классификатор повышения градиента с оценочной метрикой f1-score.
Набор данных был разделен в соотношении 70:30 для тестирования производительности.
Окончательная производительность выполняется на наборе данных проверки.
Наблюдаются окончательные оценки для каждой из моделей, и я обнаружил, что Gradient Boosting Classifier является лучшей прогностической моделью.
Выводы:
Здесь, в этом проекте, я работал над созданием модели оттока, в которой эта модель идентифицирует пользователей, которые собираются уйти. Я начал работать с исследовательским анализом данных, понимая переменные данных, и внедрил две модели — логистическую регрессию и классификатор GBT. Поскольку данные представляют собой небольшое подмножество исходного набора данных, я использовал "f1-score" в качестве метрики.
Улучшения:
Я твердо верю, что если бы я смог создать еще несколько функций с большим опытом в предметной области, это помогло бы мне улучшить мою модель. В настоящее время я работал только с набором данных объемом 128 МБ — если работать со всем набором данных (12 ГБ) — результаты будут улучшены, а выводы станут более реальными, и у вас будет большой потенциал для предотвращения оттока клиентов.