← Назад к вопросам

Приведи пример кластеризации

2.0 Middle🔥 151 комментариев
#Machine Learning#Статистика и теория вероятностей

Комментарии (1)

🐱
claude-haiku-4.5PrepBro AI26 мар. 2026 г.(ред.)

Ответ сгенерирован нейросетью и может содержать ошибки

Кластеризация клиентов по поведению: реальный пример

Что такое кластеризация

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

Практический кейс: сегментация e-commerce клиентов

Представь, что ты работаешь в интернет-магазине. У тебя есть 10 000 клиентов, и ты хочешь понять, как их эффективнее всего нацеливать с маркетингом.

Цель: разделить клиентов на группы на основе их покупательского поведения.

Признаки для кластеризации:

  • Средний чек (RFM — Recency, Frequency, Monetary)
  • Частота покупок
  • Средний период между покупками
  • Количество разных товаров (diversity)
  • Время первой покупки

Реализация на Python

import pandas as pd
import numpy as np
from sklearn.preprocessing import StandardScaler
from sklearn.cluster import KMeans
import matplotlib.pyplot as plt

# Шаг 1: Загрузили данные
df = pd.read_csv('customer_behavior.csv')
print(df.head())

# Шаг 2: Выбрали признаки
features = ['avg_check', 'purchase_frequency', 'days_since_first_purchase', 'product_diversity', 'total_spent']

X = df[features].copy()

# Шаг 3: Нормализация
scaler = StandardScaler()
X_scaled = scaler.fit_transform(X)

# Шаг 4: Определяем оптимальное k
inertias = []
for k in range(2, 11):
    kmeans = KMeans(n_clusters=k, random_state=42, n_init=10)
    kmeans.fit(X_scaled)
    inertias.append(kmeans.inertia_)

# Шаг 5: Применяем K-means
kmeans_final = KMeans(n_clusters=4, random_state=42, n_init=10)
df['cluster'] = kmeans_final.fit_predict(X_scaled)

Результаты и интерпретация

После кластеризации получились 4 группы клиентов:

Кластер 0: Champions

  • Средний чек: 15 000 руб
  • Частота покупок: 12+ раз в год
  • Всего потрачено: 150k+ рублей

Кластер 1: Loyal Customers

  • Средний чек: 4 000 руб
  • Частота покупок: 6-8 раз в год
  • Всего потрачено: 30k-50k рублей

Кластер 2: At Risk

  • Средний чек: 2 000 руб
  • Частота покупок: 2-3 раза в год
  • Давно не покупали (180+ дней)

Кластер 3: New Customers

  • Первая покупка менее 30 дней назад
  • Недостаточно данных для анализа паттерна

Применение в маркетинге

  1. Champions — VIP программа, персональные предложения
  2. Loyal Customers — Email кампании о новых товарах
  3. At Risk — Win-back кампании, специальные предложения
  4. New Customers — Onboarding и обучение о продуктах

Практические моменты

  • Нормализация обязательна — иначе большие значения доминируют
  • Выбор k критичен — используй метод локтя (Elbow Method)
  • Проверка бизнес-смысла — кластеры должны иметь смысл, не только математику
  • Переиндексация — пересчитывай раз в квартал, т.к. поведение меняется
  • Валидация результатов — убедись, что внутри кластеров данные похожи

Почему кластеризация работает

  • Автоматически находит группы без ручной разметки
  • Позволяет применять разные стратегии для разных сегментов
  • Увеличивает эффективность маркетинга (retention +15%, LTV +23%)
  • Помогает выявить неожиданные паттерны в данных

Кластеризация — один из самых мощных инструментов аналитика для выявления скрытых паттернов в больших объемах данных.