ВВЕДЕНИЕ 7
1 ОБЗОР МЕТОДОВ МАШИННОГО ОБУЧЕНИЯ 8
1.1 Понятие машинного обучения 8
1.2 Обзор существующих методов решения задачи 8
1.2.1 Логистическая регрессия 9
1.2.2 Случайный лес 10
1.2.3 Градиентный бустинг 14
1.3 Выводы по первому разделу 16
2 ПРЕДОБРАБОТКА ИСХОДНЫХ ДАННЫХ ДЛЯ ПРИМЕНЕНИЯ
АЛГОРИТМОВ МАШИННОГО ОБУЧЕНИЯ 17
2.1 Цели и задачи предобработки исходных данных 17
2.2 Исходные данные 17
2.3 Обработка пропущенных значений 19
2.4 Кодирование категориальных признаков 22
2.5 Формирование обучающей и тестовой выборок 23
2.5.1 Формирование обучающей и тестовой выборок 23
2.5.2 Группировка данных 25
2.6 Результат реализации этапа предобработки исходных данных . 26
2.7 Выводы по второму разделу 27
3 ПРИМЕНЕНИЕ АЛГОРИТМОВ МАШИННОГО ОБУЧЕНИЯ ДЛЯ
ПРОГНОЗИРОВАНИЯ ВЕРОЯТНОСТИ СОВЕРШЕНИЯ ПОКУПКИ КЛИЕНТОМ ИНТЕРНЕТ-МАГАЗИНА 28
3.1 Назначение раздела 28
3.2 Оценка значимости признаков 28
3.3 Корреляционный анализ 30
3.4 Метрика ROC AUC (площадь под кривой ошибок) 31
3.4.1 Алгоритм построения ROC-кривой 31
3.4.2 Смысл ROC AUC 34
3.4.3 Способ расчета ROC AUC 34
3.5 Результаты применения алгоритмов 35
3.6 Отбор признаков для логистической регрессии с нормализованными признаками 43
3.7 Выводы по третьему разделу 45
ЗАКЛЮЧЕНИЕ 47
БИБЛИОГРАФИЧЕСКИЙ СПИСОК 49
ПРИЛОЖЕНИЕ 1 Код программы
Актуальной задачей для любого интернет-магазина является прогнозирование поведения клиента, в частности получение значения вероятности совершения покупки для конкретного покупателя в определенный период в будущем.
Решение данной задачи позволит осуществлять более качественный персонализированный подход и автоматизировать маркетинговые и рекламные кампании. Правильно и своевременно стимулировать клиента к покупке любыми доступными способами. Например, если вероятность покупки клиента в ближайшую неделю относительно низкая, то, скорее всего, никакие рентабельные маркетинговые активности не спровоцируют его на покупку. Или, наоборот, если вероятность покупки относительно высокая, то нет смысла организовывать маркетинговое воздействие на клиента, так как он совершит покупку без какого-либо воздействия.
Целью работы является построение моделей на основе машинного обучения, которые будут прогнозировать вероятность совершения покупки конкретного клиента интернет-магазина в определенный период в будущем.
Задачи:
- изучить существующие методы решения подобной задачи;
- провести анализ и предобработку исходных данных;
- изучить существующие методы решения подобной задачи;
- разработать модели машинного обучения на основе следующих алгоритмов: логистическая регрессия, случайный лес и градиентный бустинг;
- сравнить качество прогнозирования полученных моделей для выявления лучшей.
В ходе реализации проекта было изучено понятие машинного обучения, проведен обзор существующих алгоритмов для решения подобных задач. Среди рассмотренных алгоритмов: логистическая регрессия, случайный лес и градиентный бустинг. Изучен смысл алгоритмов, их достоинства и недостатки.
Изучено краткое резюме исходных дынных. Исходные данные представляют из себя историю заказов интернет-магазина «imkosmetik».
Проведена обработка пропущенных значений следующими способами: удаление пропущенных значений признаков являющихся уникальными идентификаторами объектов прогнозирования; заменой средними значениями по соответствующему региону для «Стоимости доставки» и «Периода доставки»; заменой наиболее часто встречающимся значением в регионе для признаков «ID платежной системы» и «ID способа доставки». Обработано 396005 пропущенных значений, по 8 признакам.
Произведена обработка категориальных признаков: «Область», «ID платежной системы» и «ID способа доставки» с помощью dummy-кодирова-ния.
Сформирована обучающая и тестовая выборка. Данные сгруппированы по идентификаторам объекта определенным образом. Все признаки приведены к необходимому типу.
Подготовленные данные были проанализированы. Проведен факторный анализ, выявлены 20 наиболее значимых признаков, которые впоследствии участвовали в построении модели. Проведен корреляционный анализ, для выявления степени взаимосвязи признаков и целевой переменной. В результате корреляционного анализа не было выявлено признаков, которые в значительной степени самостоятельно объясняли бы значения вектора ответов.
Были построены 5 моделей на основе рассмотренных алгоритмов машинного обучения
Проведена оценка качества прогнозирования построенных моделей с помощью метрики ROC AUC и матрицы ошибок. Наилучшее качество показала модель на основе логистической регрессии, с проведением предвари-тельной нормализации признаков. Значение метрики ROC AUC составило - 0,99 и матрица ошибок показала, что модель выдала 8 ошибочных ответов из 215348.
Модель с наилучшим качеством, построенная на 20 наиболее значимых признаках, показала качество ниже, чем модель, построенная на всех признаках, значение метрики ROC AUC снизилось на 1% (с 99% до 98%), количество ложно спрогнозированных ответов увеличилось.