Навчання з учителем і без
1) Навіщо і коли
З учителем (Supervised): є мітка (лейбл) → прогнозуємо ймовірність/клас/значення. Використовуємо, коли зрозуміла «правильна відповідь» і є історія: churn, депозит в 7 днів, ризик RG/AML, ймовірність відгуку на оффер, прогноз LTV.
Без вчителя (Unsupervised): міток немає → знаходимо структури/кластери/аномалії/латентні фактори: сегментація гравців, колечки фроду, тематичні профілі ігор, виявлення провайдерських збоїв, стиснення ознак.
Правило вибору: якщо бізнес-рішення залежить від конкретного ймовірнісного прогнозу → supervised; якщо мета - відкрити невідомі патерни/сигнали або знизити розмірність даних → unsupervised. На практиці комбінуються.
2) Типові кейси iGaming
Supervised
Churn/реактивація: бінарна класифікація (піде/не піде), uplift-моделі для впливу.
Пропенсіті до депозиту/купівлі: ймовірність події в горизонті T.
RG/AML: ризик-скор, ймовірність структурування, підозріла сесія.
Антиаб'юз бонусів: ймовірність шахрайського використання промо.
Рекомендації (ранжування): ймовірність кліка/ставки на гру (listwise/pointwise).
Unsupervised
Сегментація гравців: k-means, GMM, HDBSCAN по RFM/поведінці/жанрам.
Аномалії: Isolation Forest, LOF, AutoEncoder на платежах/ігрових патернах.
Графовий аналіз: кластеризація в графі «гравець-девайс-карта-IP».
Зниження розмірності: PCA/UMAP для візуалізації та фіч-інжинірингу.
Тематичні моделі: NMF/LDL для описів ігор/чатів підтримки.
3) Дані та фічі
Point-in-time з'єднання, щоб виключити data leakage.
Вікна ознак: 10 хв/1 год/1 день/7 днів/30 днів (recency, frequency, monetary).
Контекст: ринок/юрисдикція/DST/свята, провайдер/жанр, пристрій/ASN.
Графові ознаки: кількість унікальних карт/IP/девайсів, центральності.
Нормалізація валют/часових поясів, SCD II для users/games/providers.
4) Алгоритми та метрики
З учителем
Алгоритми: LogReg, XGBoost/LightGBM/CatBoost, TabNet; для ранжування - LambdaMART/GBDT; часові ряди - Prophet/ETS/Gradient Boosted TS.
Метрики: ROC-AUC/PR-AUC, F1 @операционный поріг, KS (ризик), NDCG/MAP @K (рекомендації), MAPE/WAPE (прогнози), expected cost з вагами FP/FN.
Без вчителя
Кластеризація: k-means/GMM (число кластерів - elbow/silhouette), HDBSCAN (щільнісний).
Аномалії: Isolation Forest/LOF/AutoEncoder; метрики - precision @k на розмітці експертів, AUCPR на синтетичних аномаліях.
Розмірність: PCA/UMAP для фіч-конструювання та візуалізацій.
5) Комбіновані підходи
Semi-Supervised: псевдолейбли для частини немаркованих даних (self-training), consistency regularization.
Self-Supervised: контрастивні/масковані завдання (ембеддинги сесій/ігор) → використовують downstream в supervised.
Active Learning: система пропонує кандидатів на розмітку (максимум невизначеності/різноманітності) → економить працю експертів AML/RG.
Weak Supervision: евристики/правила/дистантна розмітка формують «слабкі» лейбли, потім калібруємо.
6) Процес: від офлайну до онлайнового сервінгу
1. Офлайн: збір/підготовка → split за часом/ринками → навчання/валідація → backtest.
2. Семантика метрик: єдині формули (наприклад, churn_30d) і фіксовані тимчасові вікна.
3. Feature Store: єдині формули фіч online/offline; тести відповідності.
4. Онлайн-сервінг: ендпоінти gRPC/REST, SLA по латентності, AB-роутинг/канарні релізи.
5. Моніторинг: дрейф даних/передбачень (PSI/KL), latency p95, помилка бізнес-метрик, алерти.
7) Приватність і комплаєнс
PII-мінімізація: псевдонімізація, ізоляція маппінгів, CLS/RLS.
Residency: окремі конвеєри/ключі шифрування по регіонах (EEA/UK/BR).
DSAR/RTBF: видаляємо/редагуємо фічі і логи; зберігаємо правові підстави винятків.
Legal Hold: заморожування артефактів розслідувань/звітності.
Fairness: аудит проксі-фіч, звіти впливу (SHAP), політика інтервенцій RG.
8) Економіка і продуктивність
Вартість обчислення фіч (cost/feature) та інференсу (cost/request).
Матеріалізація офлайн-агрегатів; онлайн - тільки критичні вікна.
Кеш дозволів/результатів скорингу на короткі TTL, асинхронні lookups з таймаутами.
Квоти і бюджети на реплеї/бектести; chargeback за командами/моделями.
9) Приклади (фрагменти)
9. 1 Point-in-time вибірка для churn_30d
sql
WITH base AS (
SELECT user_pseudo_id, DATE(event_time) AS asof
FROM silver. fact_events
GROUP BY user_pseudo_id, DATE(event_time)
),
feat AS (
SELECT b. user_pseudo_id, b. asof,
SUM(CASE WHEN e. type='deposit' AND e. event_time>=b. asof - INTERVAL '30' DAY
AND e. event_time<b. asof THEN amount_base ELSE 0 END) AS dep_30d,
COUNT(CASE WHEN e. type='bet' AND e. event_time>=b. asof - INTERVAL '7' DAY
AND e. event_time<b. asof THEN 1 END) AS bets_7d
FROM base b
JOIN silver. fact_events e USING (user_pseudo_id)
GROUP BY b. user_pseudo_id, b. asof
),
label AS (
SELECT f. user_pseudo_id, f. asof,
CASE WHEN NOT EXISTS (
SELECT 1 FROM silver. fact_events x
WHERE x.user_pseudo_id=f. user_pseudo_id
AND x.event_time>f. asof AND x.event_time<=f. asof + INTERVAL '30' DAY
) THEN 1 ELSE 0 END AS churn_30d
FROM feat f
)
SELECT FROM feat JOIN label USING (user_pseudo_id, asof);
9. 2 Аномалії платежів (псевдокод, Isolation Forest)
python
X = build_features (payments_last_7d) # sum/frequency/novelty/BIN/ASN/time model = IsolationForest (contamination = 0. 01). fit(X_train)
scores = -model. decision_function(X_test)
alerts = where (scores> THRESHOLD) # AML case candidates
9. 3 Сегментація k-means (RFM + жанри)
python
X = scale(np. c_[R, F, M, share_slots, share_live, share_sports])
km = KMeans(n_clusters=8, n_init=20, random_state=42). fit(X)
segments = km. labels_
9. 4 Вартісний поріг для бінарної моделі
python threshold = pick_by_expected_cost(scores, labels, cost_fp=5. 0, cost_fn=50. 0)
10) Оцінка, валідація та експерименти
Офлайн: temporal split (train/val/test за часом/ринками), backtesting, bootstrap довіри.
Онлайн: A/B/n, sequential tests, CUPED/диф-в-дифф.
Off-policy: IPS/DR для політик персоналізації.
Калібрування: Platt/Isotonic для коректних ймовірностей.
Контроль деградації: alerти по бізнес-метрикам і PR-AUC/KS.
11) RACI
R (Responsible): Data Science (моделі/експерименти), MLOps (платформа/сервінг), Data Eng (фічі/пайплайни).
A (Accountable): Head of Data/CDO.
C (Consulted): Compliance/DPO (PII/RG/AML), Security (KMS/секрети), SRE (SLO/вартість), Finance (ROI).
I (Informed): Продукт/Маркетинг/Операції/Підтримка.
12) Дорожня карта впровадження
MVP (4-6 тижнів):1. Каталог цілей/лейблів і сигналів (churn_30d, propensity_7d, risk_rg).
2. Feature Store v1 (5-10 фіч), базові моделі XGBoost, дашборди офлайн-метрик.
3. Сегментація k-means (8 кластерів) + опис сегментів; Isolation Forest для платежів.
4. Онлайновий сервінг з кешем, p95 <150 мс; A/B на 10-20% трафіку.
Фаза 2 (6-12 тижнів):- Active/Semi-Supervised для дефіциту лейблів (AML/RG), self-supervised ембеддинги ігор/сесій.
- Канарські релізи, дрейф-моніторинг, автоперетренування.
- Єдиний семантичний шар метрик і узгодження online/offline фіч.
- Графові ознаки і кільця фроду; uplift-моделі бонусів.
- Мульти-регіональний сервінг, квоти/chargeback; WORM-архів релізів.
- Fairness-аудит, стрес-тести, runbooks інцидентів.
13) Чек-лист перед продом
- Point-in-time вибірки і тести проти leakage.
- Калібрування ймовірностей; вибір порогу по expected cost.
- Картки моделей (owner, дані, метрики, ризики, fairness).
- Feature Store: тест відповідності online/offline.
- Моніторинг дрейфу/латентності/помилок, алерти і авто-ролбек.
- Політики PII/DSAR/RTBF/Legal Hold; логування знеособлене.
- План A/B і статистична потужність пораховані; runbook відкату готовий.
14) Анти-патерни
Змішання нових подій в лейбли (leakage) і відсутність point-in-time.
«Одна модель на все» замість доменної декомпозиції.
Нека лібровані ймовірності → невірні бізнес-пороги.
Політ «наосліп»: немає моніторингу дрейфу/якості в онлайні.
Переускладнення в онлайні (важкі external-join'и без кеша і таймаутів).
Сегменти без бізнес-інтерпретації і власника.
15) Підсумок
Навчання з учителем дає вимірний прогноз і управління ризиком/доходом; без вчителя - структуру і сигнали там, де міток немає. Їх поєднання (semi/self-supervised, active learning) при дисципліні даних (point-in-time, Feature Store), комплаєнсі і MLOps дає iGaming-платформі стійкий приріст Net Revenue, зниження фрода і своєчасні RG-інтервенції - з відтворюваністю, контролем вартості і готовністю до аудиту.