Сегментация данных
Сегментация данных
Сегментация — это разделение множества объектов (пользователей, транзакций, продуктов, событий) на однородные группы для таргетинга, персонификации, анализа и управления рисками. Хорошая сегментация повышает маржинальность, снижает издержки и делает решения объяснимыми.
1) Цели и постановки
Маркетинг и рост: персонализированные офферы, частота контактов, анти-спам-политика.
Монетизация: прайс-дискриминация, бандлы, VIP-обслуживание.
Риск и комплаенс: уровни контроля, триггеры KYC/AML, скоринг подозрительных паттернов.
Продукт и опыт: онбординг по сценариям, рекомендации контента/игр, динамические лимиты.
Операции: приоритизация поддержки, распределение лимитов и квот.
Формулируем единицу сегментации (пользователь/сессия/мерчант), горизонт (7/30/90 дней), частоту пересчета (онлайн/ежедневно/еженедельно) и целевые KPI.
2) Таксономия сегментов
Демография/гео: страна, язык, платформа.
Поведенческие: активность, частота, глубина, время суток, любимые категории.
Ценностные (value-based): ARPU/ARPPU, LTV-квантили, маржинальность.
Стадийные: онбординг, зрелые, «спящие», возвращенные.
RFM: Recency, Frequency, Monetary с бинами/квантилями.
Когортные: по дате регистрации/первой оплаты/источнику.
Риск-сегменты: chargeback-risk, bonus-abuse-risk, аномальная активность.
Жизненный цикл: propensity-to-churn, propensity-to-buy, next-best-action.
Контекстные: устройство/канал/региональные правила.
3) Данные и подготовка
Point-in-time корректность: признаки считаются из доступного «прошлого».
Агрегаты по окнам: 7/30/90-дневные суммы/частоты/квантили.
Нормализация: робаст-скейлинг (median/MAD), лог-преобразования для длинных хвостов.
Категории: one-hot/target/hash; контроль «редких» значений.
Качество: пропуски, дубликаты, дрейф схем, синхронизация временных зон.
Семантика: явные бизнес-правила (например, ≥1 депозита) до ML-сегментации.
4) Методы сегментации
4.1. Правила и пороги (white-box)
Простые условия: «VIP, если LTV ≥ X и частота ≥ Y».
Плюсы: объяснимо, быстро внедряется как политика.
Минусы: хрупкость при дрейфе, сложность поддержки при росте числа правил.
4.2. Кластеризация (unsupervised)
k-means/k-medoids: быстрый бейзлайн на числовых фичах.
GMM: мягкие принадлежности, вероятностные сегменты.
HDBSCAN/DBSCAN: кластеры произвольной формы + «шум» как аномалии.
Спектральные/EM на смешанных типах: для сложных геометрий.
Feature learning → cluster: сначала эмбеддинги (autoencoder/transformer), затем кластеризация в латентном пространстве.
4.3. Супервайз-сегментация (target-driven)
Обучаем модель на целевом KPI (например, LTV/риск), а сегменты строим по квантилям предсказаний, SHAP-профилям и деревьям решений.
Плюсы: сегменты «привязаны» к бизнес-цели, легко проверять uplift.
Минусы: риск «подгонки»; нужна строгая валидация.
4.4. Частотные мотивы и правила
RFM-матрицы, ассоциативные правила (support/lift), частые последовательности (PrefixSpan) — особенно для продуктовой навигации и бандлов.
4.5. Графовые/сетевые сегменты
Сообщества по связям (устройства, платежные методы, рефералы); GNN для обогащения признаков.
5) Выбор подхода: быстрая матрица
6) Оценка качества сегментации
Внутренние метрики (без эталона):- Silhouette / Davies–Bouldin / Calinski–Harabasz: компактность и разделимость.
- Стабильность: Jaccard/ARI между перезапусками/бутстрэпом.
- Информативность: межсегментная дисперсия ключевых фич.
- Гомогенность по KPI: различия в LTV/конверсии/риске между сегментами.
- Actionability: доля сегментов, по которым различается отклик на интервенции.
- Uplift/A/B: прирост при сегментном таргетинге vs общий таргетинг.
- Охват: % пользователей в «действуемых» сегментах (не только «шум»).
7) Валидация и устойчивость
Temporal CV: проверка стабильности сегментов по времени (rolling окна).
Групповая валидация: не смешивать пользователeй/устройства между train/val.
Репликация: запуск на соседних рынках/каналах.
Дрейф: PSI/JS-div по фичам и распределению сегментов; пороги на алерты.
Стабильные сиды/инициализация: чтобы сравнивать версии сегментации.
8) Интерпретируемость
Паспорта сегментов: описание правил/центроидов, ключевые фичи (top-SHAP/permutation), портрет аудитории, KPI-профиль.
Визуализация: UMAP/t-SNE с цветами сегментов, «решетка» метрик по сегментам.
Правила для активации: человеческие лэйблы («High-Value Infrequent», «Risky Newcomers»).
9) Операционное внедрение
Фичестор: единые функции расчета признаков онлайн/офлайн.
Рескоринг: SLA и частота (онлайн при входе, раз в сутки, при событии).
API/батч-экспорт: ID пользователя → сегмент/вероятность/метки времени.
Версионирование: `SEG_MODEL_vX`, контракт данных, дата «заморозки» обучающей выборки.
Политики: для каждого сегмента — правила действия (оффер/лимиты/приоритет поддержки).
Fail-safe: дефолтный сегмент при деградации (нет фич/таймауты).
10) Эксперименты и принятие решений
A/B/n по сегментам: тестируем разные офферы/лимиты на одной и той же сетке сегментов.
Uplift-оценка: эффект таргетинга vs контроль (Qini/AUUC, uplift@k).
Budget allocation: распределяем бюджет по сегментам по маржинальности/риск-лимитам.
Guardrails: FPR/FNR для риск-сегментов, частота контактов и усталость аудитории.
11) Этика, приватность, комплаенс
Минимизация данных: используем необходимый минимум, псевдонимизация.
Справедливость: сравниваем ошибки и «жесткость» политик по чувствительным сегментам; исключаем Protected Attributes из правил, либо применяем fairness-коррекции.
Право на объяснение: документируем логику присвоения сегмента.
Аудит: лог версий, входных фич, решений и результатов кампаний по сегментам.
12) Шаблоны артефактов
Паспорт сегмента
Код/версия: `SEG_HVIF_v3`
Описание: «Высокая ценность, редкая активность»
Критерии/центр: `LTV_quantile ≥ 0.9`, `Recency_days ∈ [15,45]`, `Frequency_30d ∈ [1,3]`
Размер/охват: 4.8% пользователей (последние 30 дней)
KPI-профиль: ARPPU ↑ 2.4× от медианы, Churn-risk средний
Рекомендации: мягкие ре-энгейдж-офферы, кросс-селл премиум-товаров, лимит частоты 1/7д
Риски: переизбыточные скидки → «привыкание»
Владелец: CRM/Monetization
Дата/валидность: 2025-10-15; пересмотр раз в квартал
Контракт сегментации
Источник фич: `fs.user_activity_v5`
Расписание: ночной батч 02:00 UTC; онлайн-апдейт при событии `purchase`
Сервис: `segmentor.api/v1/score` (p95 ≤ 120 мс)
Логи: `seg_scoring_log` (фичи-хэш, версия, скор, сегмент)
Алерты: доля «UNKNOWN» > 2%; PSI по ключевым фичам > 0.2; дисбаланс сегментов > 10 п.п. за сутки
13) Чек-лист перед релизом
- Согласованы цели и KPI влияния сегментации
- Определена единица, окна и частота пересчета
- Есть бейзлайн (rule-based) и ML-вариант; сравнение uplift
- Документация сегментов + визуализации и человеческие лэйблы
- Настроены A/B, guardrails и алерты дрейфа
- Версионирование, контракты данных, рунибуки на инциденты
- Политики действий по каждому сегменту и default-fallback
Итог
Сегментация — это не «разовая кластеризация», а контур управления: корректные данные и окна, прозрачные сегменты, связка с KPI, строгая валидация, операционные SLO и мониторинг дрейфа. Добавляйте сложность (эмбеддинги, графы, супервайз-подход) только там, где это дает измеримый uplift и остается объяснимым для бизнеса и комплаенса.