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

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

Процесс на примере k-means:

  1. Задаётся K — число кластеров
  2. Случайно выбираются K центроидов
  3. Каждый объект относится к ближайшему центроиду
  4. Центроиды пересчитываются как средние точки своего кластера
  5. Шаги 3–4 повторяются до сходимости

Алгоритмы кластеризации

Алгоритм Как работает Когда использовать
K-means Делит по расстоянию до центроидов Сегментация пользователей по RFM, AOV
DBSCAN Группирует плотные области Выявление аномалий и outlier-сегментов
Иерархическая Строит дерево вложенных кластеров Таксономия ассортимента, анализ категорий
Gaussian Mixture Вероятностная принадлежность к кластеру Мягкая сегментация: пользователь может принадлежать нескольким кластерам

Применение в e-commerce

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

Кластер 1: высокий LTV, покупают редко, большой чек — «осознанные»
Кластер 2: частые покупки, низкий AOV — «браузеры»
Кластер 3: один раз купили, исчезли — «разовые»
Кластер 4: акционные покупки — «охотники за скидками»

Каждый кластер требует своей стратегии персонализации.

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

Совет: не интерпретируйте кластеры механически. k-means даёт математические группы — их бизнес-смысл расшифровывают аналитики. Всегда валидируйте кластеры: «Что общего у этих 50 000 пользователей?»

Ограничения

  • K-means чувствителен к масштабу признаков — нужна нормализация данных перед кластеризацией
  • Кластеры нестабильны при случайной инициализации — используйте k-means++ или несколько запусков
  • Оптимальное K — не всегда очевидно, метод локтя даёт ориентир, но не ответ
  • Кластеры — снимок в момент времени; поведение пользователей меняется, кластеры нужно обновлять