GH GambleHub

Поведінкові сигнали

Поведінкові сигнали

Поведінкові сигнали - це «телеметрія» взаємодії користувача з продуктом: події, контекст і часові ряди, з яких ми виводимо намір, інтерес, якість трафіку, ризик і цінність. Надійний контур роботи з сигналами: інструментування → збір → очищення → нормалізація → ознакоутворення → використання в рішеннях → моніторинг та етика.

1) Що вважати поведінковими сигналами

Сесії: старт/стоп, тривалість, число екранів, глибина, повтори на добу, «тихі» сесії.
Кліки/тач/скролл: щільність кліків, швидкість прокрутки, глибина, зупинки (scroll-stops).
Dwell-time: час на екрані/елементі, активний час (idle фільтр).
Навігація/взаємозв'язок екранів: послідовності, петлі, rage-навігування.
Введення/форми: швидкість заповнення, виправлення, таб-навігування, paste rate.
Мікро-інтеракції: ховери, розкриття, перемикачі, сортування/фільтри.
Контент/пошук: запити, CTR, CTCVR, збереження, «відкласти на потім».
Техніка: device/browser, FPS/статус батареї, помилки, latency, мережі (IP/ASN), офлайн/онлайн.
Час/контекст: година/день/локальний календар, гео-патерни (без точної геолокації, якщо не потрібно).
Негативний зворотний зв'язок: приховати, скарга, відписка, відмова від куки/персоналізації.

2) Інструментування та схема подій

Канонічна схема (мінімум):

event_id, user_id, session_id, ts_utc, type, screen/page, element, value, duration_ms,
device_id, platform, app_version, locale, referrer, ip_hash, asn, experiment_id, schema_version

Принципи: ідемпотентність (dedup по'( source_id, checksum)'), UTC-час, версія схем, стабільні ключі ідентичності, мінімізація PII (хеші/токени).

3) Очищення і антибот

Headless/automation прапори: WebDriver/puppeteer сигнатури, відсутні призначені для користувача жести.
Аномальна швидкість: надлюдські кліки/скролл, «ідеальні» інтервали.
Мережа: центри дата-хостингу, відомі проксі/VPN ASN.
Повторюваність патерну: однакові траєкторії і послідовності.
QA/внутрішні: списки тест-акаунтів/пристроїв.
Фрод: device/IP-граф (один девайс → багато акаунтів, гео-velocity).

4) Нормалізація та Point-in-Time (PIT)

Тимчасові вікна: 5 хвилин/1 година/24 години/7 днів; Експон. згладжування.
Сезонність: day-of-week, hour-of-day, святкові прапори.
PIT-зрізи: всі ознаки будуються до часу оцінки; ніякої інформації з майбутнього.
Онлайн/офлайн паритет: однакові рецепти в feature store.

5) Якість і валідність сигналів

Coverage: частка сесій/екранів з повними подіями.
Freshness: лаг надходження.
Consistency: частки подій на користувача/сесію в «коридорах» (контроль викидів).
Увага: активний час/ідл-фільтр, scroll depth, зупинки.
Намір: переходи до глибоких дій (filtr→detal→tselevoye).
Достовірність: антибот-скор, довіра до девайсу/IP.

6) Ознакоутворення (feature engineering)

R/F: recency останнього інтеракту, частоти за вікна 7/30/90.
Dwell/scroll: медіани/квантилі, частка екранів з dwell ≥ X, глибина ≥ p%.
Послідовності: n-грами, марківські переходи, патерни «каяття» (back-forth), run-length.
Стабільність пристрою: зміни девайса/браузера, entropy user-agents.
Якість кліку: ratio кліків до клікабельних елементів, rage-clicks.
Пошук/намір: довжина/уточнення запитів, dwell після пошуку, success rate.
Агрегації за ідентичностями: user_id, device_id, ip_hash, asn.
Гібриди: ембеддинги сесій (Doc2Vec/Transformer) → кластеризація/ранжування.

7) Сигнал → Дія: таблиця рішень

СигналиКонтекстДіяGuardrails
`rage_clicks≥3` или `latency_p95↑`онбордингпоказати допомогу/полегшену формуzhaloby≤Kh
`scroll_depth<25%` & `dwell<3с`контентперебудувати блоки/стислий списокSLA UI
`search_refine≥2` & `no_success`пошукпідказки/фасети, fallback-каталогCTR не ↓
`bot_score≥τ`будь-якийдеградуючий досвід/капча/банFPR антибот ≤ 0. 5%
'session_runlength↑'ночамиRGм'які нагадування/паузаFPR≤1%

Гістерезис і кулдауни обов'язкові, щоб не «блимати» підказками.

8) Псевдо-SQL/рецепти

A. Активний час і глибина скролла

sql
WITH ev AS (
SELECT user_id, session_id, page, ts,
SUM(CASE WHEN event='user_active' THEN duration_ms ELSE 0 END) AS active_ms,
MAX(CASE WHEN event='scroll' THEN depth_pct ELSE 0 END)     AS max_depth
FROM raw_events
WHERE ts BETWEEN:from AND:to
GROUP BY 1,2,3,4
)
SELECT user_id, session_id,
AVG(active_ms) AS avg_dwell_ms,
PERCENTILE_CONT(0. 5) WITHIN GROUP (ORDER BY max_depth) AS scroll_median
FROM ev
GROUP BY 1,2;

B. Rage-clicks / back-forth

sql
WITH clicks AS (
SELECT user_id, session_id, ts,
LAG(ts) OVER (PARTITION BY user_id, session_id ORDER BY ts) AS prev_ts,
element
FROM ui_events WHERE event='click'
),
rage AS (
SELECT user_id, session_id,
COUNT() FILTER (WHERE EXTRACT(EPOCH FROM (ts - prev_ts)) <= 0. 3) AS rage_clicks
FROM clicks GROUP BY 1,2
),
backforth AS (
SELECT user_id, session_id,
SUM(CASE WHEN action IN ('back','forward') THEN 1 ELSE 0 END) AS nav_bf
FROM nav_events GROUP BY 1,2
)
SELECT r. user_id, r. session_id, r. rage_clicks, b. nav_bf
FROM rage r JOIN backforth b USING (user_id, session_id);

C. антибот скор (ескіз)

sql
SELECT user_id, session_id,
(CASE WHEN headless OR webdriver THEN 1 ELSE 0 END)0. 4 +
(CASE WHEN asn_cat='hosting' THEN 1 ELSE 0 END)0. 2 +
(CASE WHEN click_interval_std < 50 THEN 1 ELSE 0 END)0. 2 +
(CASE WHEN scroll_speed_avg > 5000 THEN 1 ELSE 0 END)0. 2 AS bot_score
FROM telemetry_features;

D. послідовності n-грам

sql
-- Collect screen sequences and transition frequencies
SELECT screen_seq, COUNT() AS freq
FROM (
SELECT user_id, session_id,
STRING_AGG(screen, '→' ORDER BY ts) AS screen_seq
FROM nav_events
GROUP BY 1,2
) t
GROUP BY screen_seq
ORDER BY freq DESC
LIMIT 1000;

9) Поведінкові сигнали в ML/аналітиці

Схильності/персоналізація: CTR/CTCVR-модели, session embeddings, next-best-action.
Відтік/утримання: hazard-моделі, ознаки recency/частоти/послідовностей.
Антифрод: швидкість форм, гео-вело, device/IP-граф, шаблони «ферм».
Якість трафіку: «валідні перегляди», engaged sessions, негативний зворотний зв'язок.
A/B і каузальність: метрики уваги як посередники, але висновки - за інкрементом (ROMI/LTV, утримання).

10) Візуалізація

Sankey/step-bars: шляхи і drop-off.
Heatmaps: глибина скролла, карти кліків (знеособлено).
Cohort×age: як змінюються сигнали за віком когорти.
Bridge-графіки: внесок факторів (швидкість, скролл, помилки) у зміну конверсії.

11) Приватність, етика, RG/комплаєнс

PII-мінімізація: хеші ідентифікаторів, RLS/CLS, маскування при експорті.
Згода/прозорість: налаштування трекінгу, відмова - поважається; Логіка пояснюється.
RG: не використовувати сигнали для заохочення шкідливої поведінки; м'які нагадування/ліміти.
Fairness: перевірка відмінностей помилок/інтервенцій по групах; виключити неприпустимі ознаки.
Зберігання: терміни TTL для «сирих» подій, агрегації краще.

12) Спостережуваність і дрейф

Якість даних: coverage, дублікати, лаги, відсоток порожніх полів.
Сигнальний дрейф: PSI/KL за dwell/scroll/частотами; «нові» патерни.
Операційні: latency збору, p95 розрахунку ознак, частка фолбеків.
Guardrails: сплеск бот-скора, скарги, відписки; «стоп-кран» на агресивні інтервенції.

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

Сирі кліки без контексту/ідл-фільтра → помилкові «уваги».
Змішування одиниць (sessii↔polzovateli), TZ, вікон → непорівнянність.
Ліки з майбутнього (немає PIT) → переоцінка моделей.
Нультолерантність до шуму: жорсткі пороги без гістерезису → «миготіння».
Ігнор антибот/QA-фільтрів → завищені метрики.
Запис зайвих PII без причини → ризики і штрафи.

14) Чек-лист запуску контуру поведінкових сигналів

  • Схема подій (версії, UTC, ідемпотентність), мінімізація PII
  • Антибот/QA-фільтри, чорні/білі списки ASN/пристроїв
  • PIT-рецепти, вікна 5м/1ч/24ч/7д, online/offline паритет
  • Метрики якості: coverage, freshness, engagement валідатори
  • Ознаки R/F/dwell/scroll/послідовності/пошук, session embeddings
  • Decision tables: дії, гістерезис, кулдауни, guardrails
  • Дашборди та алерти дрейфу (PSI/KL), скарги/відписки, RG-індикатори
  • Документація: датасловар, паспорти сигналів/метрик, власники та рунібуки

Підсумок

Поведінкові сигнали дають цінність тільки в дисциплінованому контурі: коректне інструментування і PIT, очищення і антибот, стійкі ознаки і ясні політики дій, приватність і RG, спостережуваність і реакція на дрейф. Такий підхід переводить «кліки і скролли» в рішення, що підвищують конверсію, утримання і LTV - безпечно, прозоро і відтворювано.

Contact

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

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

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

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

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

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