В динамичной среде отраслей бизнес-потребитель (B2C) искусство понимания клиентов выходит за рамки простых транзакций — речь идет о построении отношений. Представьте себе шумный торговый центр, где каждый посетитель уникален в своих предпочтениях и поведении. Точно так же, как опытный хозяин предугадывает потребности своих гостей, предприятия должны предугадывать и удовлетворять разнообразные потребности своих клиентов. Именно здесь на сцену выходит сегментация клиентов. Углубляясь в мир розничной торговли, мы исследуем жизненно важную роль сегментации клиентов в отраслях B2C.

Необходимость сегментации клиентов для бизнеса

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

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

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

в. Предвидение тенденций. На рынке, движимом тенденциями, понимание поведения клиентов имеет важное значение. Сегментация выявляет закономерности и тенденции внутри различных групп клиентов, позволяя компаниям опережать изменения на рынке.

Выявление конвергентных клиентских сегментов, часто называемых «целевыми клиентами», является основой эффективной сегментации.

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

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

Давайте попрактикуемся на примере набора данных о клиентах торгового центра.

Набор данных: Данные о сегментации клиентов торговых центров

  1. Создайте сегментацию клиентов с помощью алгоритма машинного обучения (кластеризация K-средних) на Python.
  2. Кто является целевой аудиторией вашей стратегии?

Хорошо, давайте загрузим набор данных

Набор данных имеет несколько простых функций, в том числе«Идентификатор клиента», «Пол», «Возраст», «Годовой доход (тысяч долларов)» и «Оценка расходов (1–100)».

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

Эти данные также показывают, что клиенты разные; Есть молодые, взрослые и пожилые клиенты по возрасту, а диапазон доходов клиентов также чрезвычайно широк: от 15 000 до 200 000 долларов в год.

давайте визуализируем функции

plt.figure(figsize=(12, 5))

plt.subplot(1, 3, 1)
plt.scatter(data['Annual Income (k$)'], data['Spending Score (1-100)'])
plt.xlabel('Annual Income (k$)')
plt.ylabel('Spending Score (1-100)')
plt.title('Annual Income vs Spending Score')

plt.subplot(1, 3, 2)
plt.scatter(data['Age'], data['Spending Score (1-100)'])
plt.xlabel('Age')
plt.ylabel('Spending Score (1-100)')
plt.title('Age vs Spending Score')

plt.subplot(1, 3, 3)
plt.scatter(data['Age'], data['Annual Income (k$)'])
plt.xlabel('Age')
plt.ylabel('Annual Income (k$)')
plt.title('Age vs Annual Income (k$)')


plt.tight_layout()
plt.show()

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

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

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

Вы можете посетить библиотеку на scikit-learn.org здесь

from sklearn.preprocessing import StandardScaler

# Select features
X = data[['Age', 'Annual Income (k$)', 'Spending Score (1-100)']]

# Standardize the features
scaler = StandardScaler()
X_scaled = scaler.fit_transform(X)

# Choosing the number of clusters using the Elbow Method
inertia = []
for k in range(1, 11):
    kmeans = KMeans(n_clusters=k, random_state=42)
    kmeans.fit(X_scaled)
    inertia.append(kmeans.inertia_)

# plot the inertia
plt.plot(range(1, 11), inertia, marker='o')
plt.xlabel('Number of Clusters')
plt.ylabel('Inertia')
plt.title('Elbow Method')
plt.show()

Я хочу взять 4 кластера для разметки данных, продолжим:

# Fit KMeans model
kmeans = KMeans(n_clusters=4, random_state=42)
kmeans.fit(X_scaled)

# Assign clusters to data
data['Cluster'] = kmeans.labels_

# show the dataframe
data.head()

Вот данные после группировки по кластерам:

Как мы видим, в кластере 0 находится огромное количество клиентов, всего 65 человек, за ним следуют кластер 2, кластер 1 и кластер 3, всего 57, 40 и 38 человек соответственно. Мы визуализируем число, чтобы было легче понять положение каждого кластера.

Общий доход на кластер

Общий показатель расходов на кластер

Возраст по кластеру

Интерпретация и рекомендации:

В кластере 0 (Сбалансированные покупатели) преобладают пожилые люди в возрасте от 45 до 68 лет. Это те, кто уже создал семьи. У них относительно низкий годовой доход, варьирующийся от 40 000 до 60 000 долларов, и они относятся к типу людей, которые экономны в своих расходах. Их средний показатель расходов умеренный. Этот кластер имеет средние значения годовых доходов и расходов, которые сбалансированы. Клиенты в этом кластере имеют средний доход и привычки расходования средств. Средства также сопоставимы, что подчеркивает сбалансированный характер группы. Этот кластер имеет большое количество абонентов, всего 65 человек.

В кластере 1 (Крупные траты) преобладают взрослые в возрасте 30–35 лет. Клиенты в этом кластере имели более высокие медианные и среднегодовые показатели доходов и расходов. Несмотря на то, что их доходы колеблются, они постоянно демонстрируют тенденцию к высоким расходам. Эта группа относится к категории людей с большими тратами. Всего этот кластер содержит 40 потребителей.

В кластере 2 (Бюджетные покупатели) преобладают клиенты в возрасте от 18 до 32 лет. Средний годовой доход этого кластера ниже, что указывает на его бережливость. Средний балл расходов выше, что указывает на то, что некоторые клиенты готовы платить больше, тогда как медианный балл расходов ниже. Этот вариант указывает на разнообразие покупательского поведения, соответствующее описанию бюджетных покупателей. Всего в этом кластере 57 клиентов.

Возраст клиентов в кластере 3 (Спонтанные траты) варьируется от 25 до 50 лет. Клиенты в этом кластере имеют более высокий средний годовой доход, но более низкий средний показатель расходов. Несмотря на более низкий средний показатель расходов, средний показатель расходов выше, что указывает на наличие импульсивных тратителей, которые время от времени принимают решения о высоких расходах. Всего в этом кластере 38 клиентов.

Чтобы этот потребитель продолжал тратить деньги, компания должна предоставлять высококачественные услуги кластеру 1 или High Spender. Покупатели должны быть тщательно проверены, чтобы повысить качество своих транзакций с помощью личных консультаций и сохранить их в течение неопределенного времени. Кластер 0 (сбалансированный потребитель) и кластер 3 (спонтанный покупатель) должны быть тщательно изучены, чтобы повысить конверсию своих расходов за счет продвижения/скидки или соответствия цены товара.

вы можете посетить мой GitHub для выполнения расчетов с использованием Python здесь