Logo GH

Семплювання та репрезентативність

Семплювання та репрезентативність

Семплювання - це вибір підмножини спостережень для вимірювань, експериментів і навчання моделей. Репрезентативність означає, що висновки з вибірки масштабуються на цільову популяцію без систематичної помилки. Нижче - як спроектувати вибірку, оцінити її якість і скорегувати зміщення.

1) Базові поняття

Популяція: цільовий набір об'єктів (всі користувачі/сесії/транзакції).
Рамка вибірки (sampling frame): список/механізм, з якого реально відбираємо (важливо виявити покриття і «дірки»).
Одиниця відбору: користувач, сесія, подія, транзакція, пристрій.
Репрезентативність: збіг розподілів ключових ознак у вибірці та популяції (з допуском випадкової помилки).
Випадкова vs систематична помилка: дисперсія оцінок проти зміщення (bias).

2) Види семплювання

2. 1 Ймовірнісні (кращі)

SRS (проста випадкова): рівна ймовірність відбору.
Стратифікована: розбивка популяції на страти (країна/канал/платформа), потім SRS всередині страт → нижче дисперсія і краще покриття.
Кластерна: відбір груп (дні/сервери/магазини); дешево, але вище внутрішньокластерна кореляція.
Систематична: кожен k-й елемент після випадкового старту (потрібні «несинхронні» дані).
PPS (probability proportional to size): ймовірність ∝ розміру юніта (наприклад, обсяг трафіку партнера).

2. 2 Неймовірні (з обережністю)

Зручності/добровольці: швидкі опитування, логи «клікаючих» → ризик селекційного зміщення.
Квотна/сніговий ком: корисно в нішевих групах, але потрібна подальша калібрування.

3) Джерела зміщень

Покриття (coverage): частина популяції відсутня в рамці (наприклад, iOS-дані при забороні трекінгу).
Селекція: механізм відбору пов'язаний з цільовою змінною (активні частіше потрапляють).
Невиборка (nonresponse): невідповідні систематично відрізняються.
Ті, що вижили (survivorship): ігнорування минулих/заблокованих.
Лейбл-зміщення: галасливі мітки, проксі-ярлики, «ручні» коригування.
Лики: використання майбутньої інфи при формуванні вибірки/фіч.

4) Розмір вибірки і потужність

4. 1 Наближення

Для частки (p) з точністю (e) і довірою (1-\alpha):
[
n \approx \frac{z_{\alpha/2}^2, p(1-p)}{e^2}
]

Консервативно беремо (p = 0 {.} 5). Коригуйте на кінцеву популяцію при необхідності.

Для середнього з відомою (\sigma):
[
n \approx \left(\frac{z_{\alpha/2},\sigma}{e}\right)^2
]

4. 2 Дизайн-ефект і ефективний розмір

Design Effect: (\mathrm {Deff} = 1 + (m-1 )\rho), де (m) - розмір кластера, (\rho) - внутрішньокластерна кореляція.
Ефективний розмір: (n_\text{eff}=n/\mathrm{Deff}). Кластерні/зважені дизайни часто вимагають більшого (n).

4. 3 A/B і MDE

Для бінарної метрики при симетричних групах:
[
n_{\text{на группу}} \approx \frac{2(z_{1-\alpha/2}+z_{1-\beta})^2, \bar{p}(1-\bar{p})}{\mathrm{MDE}^2}
]

де (\bar {p}) - базовий рівень, MDE - мінімально детектований ефект.
Враховуйте сезонність та інтерференцію (spillover), застосовуйте CUPED/коваріати для зниження дисперсії.

5) Ваги і калібрування (робимо вибірку «схоже» на популяцію)

Дизайн-ваги: (w_i=1/\pi_i) (зворотна ймовірність відбору).
Пост-стратифікація і raking: підганяємо зважені маргіналі (країна/платформа/стать-вік тощо) до відомих часток.
Калібрування (calibration weighting): мінімізуємо відхилення ваг при точному збігу з контрольними тоталами.
Бутстреп/реплікації: коректна оцінка дисперсій при вагах.
Діагностика: ESS (effective sample size), розкид ваг (CV, p95/p5), порівняння до/після за ключовими ознаками.

6) Імбаланс класів і рідкісні події

Стратифікований відбір за таргетом: oversample рідкісний клас, але завжди використовуйте коригування порогу/ваг при навчанні.
Cost-sensitive learning: зважені лоси замість синтетики.
SMOTE/ADASYN: обережно - ризик витоків/артефактів; тримайте суворі тимчасові/групові спліти.
Оцінка: PR-AUC, Recall@FPR≤x%; калібрування ймовірностей.

7) Потокові та великі дані

Reservoir sampling: утримуємо репрезентативний піднабір з потоку невідомої довжини.
Семплінг подій: пропорційно частоті/важливості; для рідкісних - тригерні буфери.
Лічильники та ескізи: Bloom/Count-Min для частот/унікальності; для аналітики - комбінуйте з періодичним точним підрахунком.
De-dup та ідемпотентність: ключі подій, вікна дедуплікації.

8) Часові та просторові аспекти

Time-based sampling: фіксовані вікна (rolling), point-in-time коректність.
Cluster/geo-sampling: кластеризація по вузлах/регіонах; враховуйте просторову автокореляцію.
Сезонність/ритм: репрезентативне покриття годин/днів тижня/свят.

9) Off-policy/лігві дані і каузальність

IPS (inverse propensity): (w_i=1/\pi(a_ix_i)) для корекції лог-семплів під нову політику.
DR-оцінки: Doubly Robust для зниження зсуву і дисперсії.
Транспортованість: перенесення результатів між ринками/каналами - перевіряйте збіг коваріат (covariate shift).
Label shift: (P (y)) змінюється при стабільному (P (xy)); використовуйте ЕМ/перекалібрування.

10) Діагностика репрезентативності

Порівняння маргіналей: таблиці популяція vs вибірка за ключовими ознаками.
Баланс коваріат: SMD (standardized mean difference), Love plots.
Щільності/квантилі: KS-тести, quantile-plots, PSI.
Атестація моделі: стабілізація метрик на out-of-time і out-of-domain зрізах.
ESS і ваги: низький ESS сигналізує про високу дисперсію оцінок.

11) Анти-патерни

«Семплім тільки активних вчора» → втрата холодних/сплячих.
Усереднювати відсотки «середнім за сегментами» без ваг.
Змішувати рівні агрегації (події і користувачі) в одній вибірці.
Випадковий відбір після фільтрів, що залежать від таргета (selection on the outcome).
Cross-val без групових/тимчасових сплітів при залежних даних.
Застосовувати SMOTE до розбиття на train/val (витік).

12) Приватні сценарії (кейси)

Опитування гравців: стратифікація по країні/платформі/віку; пост-стратифікація до часток MAU; контроль nonresponse зміщення.
Логи для EDA: Систематичний 1:N семпл подій + повне покриття рідкісних типів.
Фрод-детект: таргет-стратифікація, cost-sensitive лоси, оцінка по PR-AUC і Recall@FPR≤x%.
A/B з обмеженим трафіком: обчислення MDE, продовження за power-правилами, CUPED.
Off-policy оцінка промо: IPS/DR з обмеженням ваг (trimming), перевірка перекриття підтримок.

13) Шаблони артефактів

План семплювання (template)

Мета/популяція:

Рамка вибірки: джерела, покриття/діри

Одиниця відбору: користувач/сесія/подія

Дизайн: страти (country, platform), частки, спосіб відбору

Розмір (n): розрахунок, припущення (α, power, MDE), Deff

Вагова схема: дизайн-ваги, пост-стратифікація (контрольні тотали)

Календар: покриття днів/годин/свят

Якість: тести покриття, nonresponse-план, процедури контакту

Ризики: селекція, інтерференція, privacy/PII

Власники та контроль: хто рахує/зберігає/версіонує

Паспорт зважування (template)

Базові ваги: (w_i=1/\pi_i)

Калібрування: цілі (country, platform, age), метод (raking), допуски

Обмеження: trimming w ∈ [w_min, w_max]

Діагностика: ESS, CV (w), SMD до/після

Використання: які звіти/моделі застосовують ваги

Версії: v1→v2, дата, власники

14) Приватність та етика

Privacy by Design: мінімізація полів, агрегації, псевдонімізація.
Диференціальна приватність: рандомізація/субсемплювання як посилення приватності (privacy amplification).
Справедливість: перевіряйте різницю помилок/ваг за чутливими атрибутами; не допускайте «невидимості» груп.

15) Чек-лист перед запуском

  • Рамка вибірки описана; виявлено та задокументовано «дірки» покриття
  • Обраний дизайн (страти/кластери), розраховані (n), Deff, MDE
  • Налаштовані дизайн-ваги і план калібрування (контрольні тотали узгоджені)
  • Визначені тимчасові вікна/сезонність; є plan по nonresponse
  • Спліти валідації враховують час/групи; Немає витоків
  • Метрики якості: ESS, SMD, PSI, бутстреп-інтервали
  • Документація та версії; права доступу та privacy-контури перевірені

Міні-глосарій

Deff: множник, що збільшує дисперсію оцінок через дизайн.
ESS: ефективний розмір вибірки після зважування.
IPS/DR: методи зважування для off-policy/лігвих даних.
SMD: стандартизована різниця середніх (баланс коваріат).
Reservoir sampling: підтримка випадкового семпла з потоку.

Підсумок

Репрезентативність - це не «пощастило зі семплом», а спроектований процес: коректна рамка, продуманий дизайн відбору, достатній розмір, зважування і калібрування, чесні спліти і сувора діагностика. Дотримуючись описаних практик, ви знижуєте зміщення, підвищуєте переносимість висновків і отримуєте надійні рішення для продукту, маркетингу, ризиків і ML.

Contact

Зв’яжіться з нами

Звертайтеся з будь-яких питань або за підтримкою.Ми завжди готові допомогти!

Telegram
@Gamble_GC
Розпочати інтеграцію

Email — обов’язковий. Telegram або WhatsApp — за бажанням.

Ваше ім’я необов’язково
Email необов’язково
Тема необов’язково
Повідомлення необов’язково
Telegram необов’язково
@
Якщо ви вкажете Telegram — ми відповімо й там, додатково до Email.
WhatsApp необов’язково
Формат: +код країни та номер (наприклад, +380XXXXXXXXX).

Натискаючи кнопку, ви погоджуєтесь на обробку даних.