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

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

  • Предварительная обработка данных
  • Исследовательский анализ данных
  • Модель управления
  • Оценка модели и сводка
  1. Предварительная обработка данных

Pandas используется для загрузки данных в формате csv в фрейм данных. для простого вызова столбцов применяется именование в стандартном формате.

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

Во-первых, функции разделены на числовые столбцы и столбцы объектов (категорий).

2.1. Одномерный анализ

  • Характеристики объекта

график гендерного подсчета показывает, что классы женщин и мужчин почти сбалансированы.

  • Числовые признаки

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

как показано на рисунке выше, большинство числовых признаков уже являются аккуратными и чистыми, за исключением того, что признак «годовой_доход» имеет один выброс = 0,5% наблюдений, что приемлемо для этого случая.

2.2. Двумерный анализ

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

3. Управление моделью

3.1. Масштабирование данных

Для повышения производительности алгоритмов кластеризации. все числовые признаки необходимо масштабировать, прежде чем помещать их в модель. Для выполнения этой работы выбирается метод масштабирования Min-Max, чтобы преобразовать диапазон данных в [0,1] для всех заданных функций. sklearn.preprocessing уже создал инструмент для этого процесса.

3.2 Модели-кандидаты

  • Кластеризация K-средних

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

  • Алгоритм сбалансированного итеративного сокращения и кластеризации иерархий (BIRCH)

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

4. Оценка модели и сводка

Общая оценка алгоритма кластеризации

  • Оценка силуэта

Оценка силуэта — это диапазон оценок [-1,1], в котором используется расстояние между каждой точкой в ​​пределах своего кластера и межкластерное расстояние до всех кластеров. используя два расстояния, упомянутых выше, для вычисления среднего расстояния/максимально возможного расстояния.

  • Оценка Калински Харабаш

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

для получения дополнительной информации: посетите этот сайт

  • Оценка Дэвиса Булдина

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

4.1. Кластеризация K-средних

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

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

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

как показано на рисунке, количество кластеров = 5 — это подходящее количество кластеров для применения к этому набору данных, который

  • начать убывающую отдачу (метод локтя)
  • самый высокий средний балл силуэта
  • относительная высокая оценка Calinski Harabarz (локальный максимум)
  • самый низкий балл Дэвиса Булдина

упорядочить кластер по возрастанию годового дохода и переиндексировать кластер, начиная с 1, дает результат как

4.2. БЕРЕЗА кластеризация

в отличие от кластеризации k-средних, кластеризация BIRCH не имеет оценки искажения. Итак, 3 оценочные метрики (Силуэт, CH, DBI) остались прежними.

и K-средние, и BIRCH дают один и тот же ответ, что соответствующее количество кластеров равно 5.

в том же процессе с k-средними переиндексация применяется и к результатам.

Оба алгоритма приводят к схожим результатам (не совсем одинаковым). для простоты интерпретации алгоритм K-средних выбран в качестве кандидата на роль шага.

4.3. Результаты

как показано на рисунке выше, возраст сегментов, которые хорошо разделены, составляет

  • сегмент 2 =› возраст в диапазоне от 27 до 40 со средним возрастом 33 года.
  • сегмент 5 =› возраст в диапазоне от 18 до 35 со средним значением 25 лет.

из показанного графика плотности годового дохода,

  • сегмент 4 и сегмент 5 имеют примерно равный годовой доход, который составляет около 26 тысяч долларов. →группа с низким доходом
  • сегмент 1 и сегмент 2 имеют примерно равный годовой доход, который составляет около 87 тысяч долларов. →группа с высоким доходом
  • сегмент 3 — это независимая группа со среднегодовым доходом 55 тысяч долларов. → группа со средним доходом

сочетание возраста и годового дохода дает следующие результаты.

результат показывает, что

  • сегменты 2 и 5 имеют одинаковый возрастной диапазон, но существенно различаются по сумме годового дохода.
  • сегменты 4 и 5 имеют одинаковый диапазон годового дохода, но сегмент 5 относится к подростковой группе (20–40 лет)

результат показывает, что

  • сегмент 5 имеет самый высокий показатель расходов.
  • сегмент 4 имеет самый низкий показатель расходов.

объединить счет расходов и годовой доход вместе.

результат показывает, что

  • сегменты 1 и 2 имеют одинаковый диапазон годового дохода, но имеют полную разницу в показателе расходов.
  • сегменты 4 и 5 имеют одинаковый диапазон годового дохода, но имеют полную разницу в диапазоне расходов.

Сводка

таблица выше представляет средние значения по сегментам,

  • даже сегмент 1 является группой с самым высоким годовым доходом, но имеет наихудший показатель расходов. → Текущие продукты торгового центра не являются предпочтительными, чтобы заставить этот сегмент клиентов тратить свои деньги.
  • по сравнению с сегментом 1, сегмент 2 имеет средний возраст ниже, чем сегмент 1, на 10, но имеет в 4 раза больше среднего показателя расходов при том же диапазоне годового дохода .
  • даже сегмент 5 имеет самый высокий показатель расходов, но относится к группе с самым низким годовым доходом. → Очевидные покупки заметно выше в сегментах этого клиента.
  • Если целью является максимизация денежных средств, предоставляемых покупателями, и нельзя изменить ни один продукт в торговом центре, сегмент 2 считается первой целью. Сегмент 2 имеет самый высокий показатель годового дохода и расходов. предположим, что совокупная сумма, которую тратят клиенты, представляет собой произведение годового дохода и показателя расходов на 100 как «net_score». сильный>.

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

Ссылки



https://www.researchgate.net/figure/K-means-clustering-algorithm-An-example-2-cluster-run-is-shown-with-the-clusters_fig3_268880805

https://medium.com/geekculture/balanced-iterative-reduction-and-clustering-using-hierarchies-birch-1428bb06bb38

https://towardsdatascience.com/understanding-k-means-clustering-in-machine-learning-6a6e67336aa1

https://www.kaggle.com/datasets/vjchoudhary7/customer-segmentation-tutorial-in-python

https://scikit-learn.org/stable/auto_examples/cluster/plot_kmeans_silhouette_analysis.html#:~:text=The%20silhouette%20plot%20displays%20a, like%20number%20of%20clusters%20visually.



https://towardsdatascience.com/k-means-dbscan-gmm-agglomerative-clustering-mastering-the-popular-models-in-a-segmentation-c891a3818e29