Skip to content

Задача кластеризации. (Сегментирование клиентов онлайн-магазина подарков) / Clustering task. Segmentation of online gift store customers.

License

Notifications You must be signed in to change notification settings

ArtemKornev0/Clustering-Segmentation-of-customers

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

9 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Clustering task. (Segmentation of online gift store customers)

Задача кластеризации. (Сегментирование клиентов онлайн-магазина подарков)

Заголовок

Оглавление

  1. Описание проекта

  2. Описание данных

  3. Зависимости

  4. Установка

  5. Использование

  6. Авторы

  7. Выводы

Описание проекта

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

Машинное обучение помогает поисковой системе анализировать огромное количество данных о посетителях платформы, узнавать модели поведения профессиональных покупателей, определять категорию клиентов (например, лояльные/перспективные/новички/«спящие»/ушедшие) и выбирать правильную стратегию взаимодействия с ними.

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

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

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

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

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

Основные этапы проекта:

  1. Произвести первичную обработку набора данных.
  2. Провести разведывательный анализ данных и выявить основные закономерности.
  3. Сформировать категории клиентов.
  4. Построить несколько моделей машинного обучения, решающих задачу кластеризации клиентов, определить количество кластеров и проинтерпретировать их.
  5. Спроектировать процесс предсказания категории интересов клиента и протестировать вашу модель на новых клиентах.

1 Первичная обработка данных: сформировать набор данных на основе предложенных источников информации, а также обработать пропуски и выбросы в данных.

2 Разведывательный анализ данных (EDA): исследовать данные, нащупать закономерности и выдвинуть гипотезы.

3 Формирование категорий клиентов: использование метода сегментации клиентов под названием RFM (Recency, Frequency, Monetary). Формирование из исходного датасета о транзакциях таблицы с RFM-характеристиками клиентов и их первичная сегментация.

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

5 Проектирование процесса предсказания категории интересов клиента: построение модели классификации, которая позволит автоматически определять сегмент клиента на основе нескольких транзакций.

О структуре проекта:

  • plots - папка с изображениями, необходимыми для проекта
  • Project_6_notebook.ipynb - jupyter-ноутбук, содержащий код проекта.

Оглавление

Описание данных

Как правило, наборы данных для электронной коммерции являются частной собственностью и, следовательно, их трудно найти среди общедоступных данных. Однако в The UCI Machine Learning Repository создали набор данных, содержащий фактические транзакции интернет-магазина за 2010 и 2011 годы.

Датасет содержит все транзакции, произошедшие за период с 01.12.2010 по 09.12.2011, для базирующейся в Великобритании компании, занимающейся розничной онлайн-торговлей. Компания в основном продаёт уникальные подарки на все случаи жизни. Многие клиенты являются оптовиками.

Метрика качества

Метрикой качества предсказания категории клиента является accuracy. Непосредственно задача кластеризации оценивается исходя из заранее заданного требуемого количества кластеров: до 8, с использованием коэффициента силуэта и нескольких методов кластеризации с преобразованием (линейным и нелинейным) пространства признаков.

Зависимости

  • numpy 1.23.5
  • pandas 2.1.0
  • matplotlib 3.7.1
  • seaborn 0.12.2
  • plotly 5.14.1
  • ipython 8.14.0
  • scikit-learn 1.3.0

Установка

git

Нажать зеленую кнопку: <> Code, далее выбрать нужное (клонировать репозиторий, открыть на ПК или скачать его архив), при запуске кода в jupyter-ноутбуке необходимо учесть существующие зависимости.

Все данные необходимо скачать отдельно по указанным ссылкам и установить в подпапку data папки проекта на локальном диске.

Использование

Вся информация о работе представлена в jupyter-ноутбуке Project_6_notebook.ipynb.

Авторы

Артем Корнев

Выводы

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

Дополнительно: Помимо RFM-анализа возможно:

  • выделить оптовиков в отдельный сегмент. В таком случае идея метода RFM расширяется путём добавления в датасет информации о среднем количестве покупаемого товара за один заказ. То есть аббревиатура RFM превращается в RFMQ, где Q — среднее количество товаров в одном заказе.
  • произвести кластерный анализ товаров на основе их описания и сформировать категории, по которым совершаются покупки.
  • рассчитать частоту покупки каждой категории товаров для каждого клиента. Эта информация может стать основой для построения модели кластеризации и сегментирования клиентов по их интересам.
  • воспользоваться информацией о сезонности покупок и добавить в модель информацию о частоте покупок клиентов в каждый из месяцев. Так можно определить, какие клиенты являются постоянными, то есть их покупки не зависят от сезона, а какие покупают товары только в преддверии праздников. Эта информация позволит экспериментировать с маркетинговой кампанией и повышать лояльность клиентов.

Оглавление

About

Задача кластеризации. (Сегментирование клиентов онлайн-магазина подарков) / Clustering task. Segmentation of online gift store customers.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published