Oʻyinchilarni profillash
Oʻyinchilarni profillash
Profillash - bu boshqariladigan qarorlar qabul qilish uchun maʼlumotlar, xulq-atvor, qiymat va xatarlar orqali oʻyinchining tizimli tavsifidir: kontent va offerlarni personallashtirish, qayta faollashtirish, limitlar va RG, sapport va marketingni ustuvorlashtirish. Kalit - etika va komplayens: minimal PII, shaffof siyosatchilar, tushuntirish qobiliyati.
1) Qo’llanish maqsadi va zonasi
Mahsulot/UX: shaxsiy vitrinalar, boshlang’ich stsenariylar, o’qitish, murakkablikni cheklash.
Marketing/CRM: welcome/next-best-offer, kross-sell, chastota kaplari, «sokin soatlar».
Tavakkalchilik/komplayens: RG-indikatorlar, anomaliyalar, sanksiyalar/KS-step-ap (kamsitishsiz).
Monetizatsiya: «xom» konversiya bo’yicha emas, balki kutilayotgan qiymat (LTV) bo’yicha ustuvorlik.
Operatsiyalar: SLA-navbatlar, VIP-xizmat ko’rsatish, kanallar sig’imi.
2) Ma’lumotlar va o’xshashliklar
Voqealar: tashriflar/sessiyalar, kliplar, o’yinlar/stavkalar, depozitlar/xulosalar, kampaniyalarga javoblar.
Kontekst: platforma/OS/qurilma, geo/TZ, jalb qilish kanali, kalendar/iventlar.
Antibot/frod: headless/ASN/proxy, device/IP grafa signallari.
Identifikatsiyalar: user_id, e-mail/telefon, device_id, to’lov tokenlari; golden record, merge/split hikoyalari.
Sifati: UTCda saqlash, voqealarning idempotentligi, sxemalar versiyasi; Point-in-Time uchun
3) Belgilar va xulq-atvor patternlari
RFM: recency/chastota/pullik 7/30/90.
Sessiyalar: davomiyligi, chuqurligi, haftaning sutka/kun vaqti, «seriyalar» (run-length).
Kontent: sevimli toifalar/provayderlar, xilma-xillik/yangilik, «yopishish».
Moliya: depozitlar/o’rtacha chek, ARPPU/ARPU, xarajatlarning o’zgaruvchanligi.
RG signallari: anormal davomiylik/oraliqlar, tez-tez depozitlar, tungi faollik (guardrails kabi, maqsadli emas).
Reaksiyalar: pushlar/xatlar, javoblar, shikoyatlarni ochish/bosish.
Texnik: qurilmaning/IP barqarorligi, muhit o’zgarishi.
4) Profillash usullari
Qoidalar (rule-based): tez va tushunarli (masalan, «48 soat ikkinchi tashrifsiz yangi kelgan»).
RFM-gridlar: «yangilik × chastota × pullik» matritsalari (R-baketalar, F-baketalar, M-baketalar).
Klaster: k-means/Gauss/DBSCAN aralashmalari me’yorlashtirilgan xulq-atvor metrikalari bo’yicha.
Embeddingi: umumiy makonda user/item (MF/ikki minorali tarmoqlar) + «manfaatlar» ni klasterlash.
Moyillik (propensity): hodisa ehtimoli (depozit, takrorlash, churn) → xato qiymati bo’yicha qarorlar.
Uplift-yondashuv: intervensiyadan o’sish ehtimoli; зоны Persuadables/Sure/Lost/DnD.
5) Profil pasportlari va ustuvorlik
Profil pasporti (template)
Код: `P_R0-7_F3-9_M50-199_Casino-Mobile`
Ta’rifi: RFM-baketalar + dominant kontent + platforma
O’lchami, yangilanish chastotasi, o’rtacha LTV-kvantil
Tavakkalchilik va istisnolar (RG/komplayens), egasi, versiya
Tavsiya etiladigan harakatlar: policy (kanallar, kreativlar, kaplar, «sokin soatlar»)
Metriklar: uplift/ROMI, shikoyatlar/javoblar, fairness-diagnostika
6) Decision tables (eskiz)
Gisterezis: «miltillashni» istisno qilish uchun kirish chegarasi chiqish chegarasidan yuqori.
Mojarolar: ustuvor yo’nalishlar - xavfsizlik (RG/komplayens) → iqtisodiyot → UX.
7) Psevdo-SQL va retseptlar
A. RFM-baketlar
sql
WITH acts AS (
SELECT user_id,
MAX(ts) AS last_act,
COUNT() FILTER (WHERE ts > NOW()-INTERVAL '30 day') AS f_30d
FROM event_activity GROUP BY 1
),
spend AS (
SELECT user_id,
SUM(amount) FILTER (WHERE ts > NOW()-INTERVAL '90 day') AS m_90d
FROM fact_payments GROUP BY 1
)
SELECT a. user_id,
DATE_PART('day', NOW()-a. last_act) AS recency_days,
a. f_30d, s. m_90d,
CASE WHEN DATE_PART('day', NOW()-a. last_act)<=7 THEN 'R0-7'
WHEN DATE_PART('day', NOW()-a. last_act)<=30 THEN 'R8-30' ELSE 'R31+' END AS R_bucket,
CASE WHEN a. f_30d>=10 THEN 'F10+' WHEN a. f_30d>=3 THEN 'F3-9' ELSE 'F0-2' END AS F_bucket,
CASE WHEN s. m_90d>=200 THEN 'M200+' WHEN s. m_90d>=50 THEN 'M50-199' ELSE 'M0-49' END AS M_bucket
FROM acts a LEFT JOIN spend s USING(user_id);
B. Tarkibning ustun toifasi
sql
SELECT user_id,
category AS top_category
FROM (
SELECT user_id, category,
ROW_NUMBER() OVER (PARTITION BY user_id ORDER BY COUNT() DESC) AS rn
FROM event_content
WHERE ts > NOW() - INTERVAL '30 day'
GROUP BY 1,2
) t
WHERE rn=1;
S. Profil yigʻish
sql
SELECT u. user_id,
r. R_bucket, r. F_bucket, r. M_bucket, c. top_category, d. platform
FROM users u
LEFT JOIN rfm r USING(user_id)
LEFT JOIN top_content c USING(user_id)
LEFT JOIN devices d USING(user_id);
8) Shaxslashtirish va qadriyat bilan aloqa
LTV-tortish: profillarni kutilayotgan qiymatga ko’ra (LTV-kvantillari) tartiblang.
Next-best-action: faoliyat kutubxonasi (kontent, offerlar, kommunikatsiyalar) bilan profil aloqasi.
Reason codes: «nega buni taklif qilayotganimizni» ko’rsating.
9) Maxfiylik, axloq va RG
Minimal PII: tokenizatsiya, RLS/CLS, eksport qilishda niqoblash.
Fairness: mamlakatlar/platformalar bo’yicha ta’sir/xato farqlarini tekshirish; yo’l qo’yib bo’lmaydigan belgilarni istisno qilish (masalan, sezgir atributlar).
RG-tamoyillar: profillar zararli xatti-harakatlarni rag’batlantirmasligi kerak; chastota kapalari va «sokin soatlar» majburiy; foydalanuvchiga murojaat qilish yo’li.
Shaffoflik: «signal → profil → qaror → harakat → natija» jurnali, siyosatchi versiyasi.
10) Monitoring va dreyf
Profil sifati: asosiy fazalar bo’yicha taqsimotlarning barqarorligi (PSI/KL); «ixtisoslanmagan» ulushi.
Effekt: profillar ichidagi harakatlar boʻyicha uplift/ROMI; NNT, re-aktivatsiyalar konvertatsiyasi, LTV-delta.
Xavf-xatarlar: shikoyatlar/javoblar, RG-indikatorlar, FPR antibot/frod filtrlar.
SLO: profillarni soat 06:00 gacha yangilash, onlayn tasnifdagi latency ≤ 300 ms p95.
Runibuki: shikoyatlarning ko’payishi, ma’lumotlarning buzilishi (hodisalarning uzilishi), RG xavflarining ko’payishi.
11) Arxitektura va MLOps
Feature Store: PIT-retseptlar, TTL sessiyalari, onlayn/oflayn paritet.
Paypline: batch-profillarni yangilash + online scoring (propensity/uplift).
Orkestrator: idempotentlik, DLQ, rate-limit per user/channel, «sokin soatlar».
Hujjatlar: profillar/kampaniyalar pasportlari, changelog versiyalari, kirish auditi.
Folbeklar: safe-default profili (popular-safe), hodisalar sodir bo’lganda kontentni o’chirish.
12) Anti-patternlar
O’lchanadigan inkrementsiz «go’zallik uchun» profillar.
Birliklar va TZ aralashmasi, PIT yo’qligi → yuzlar va yolg’on xulosalar.
Ignor RG/etika, chastota kaplari - shikoyatlar/xavflar.
«O’rtacha» bo’limlarni yig’ish o’rniga.
Histerezisning yo’qligi → harakatlarning «miltillashi».
Tushunarsiz profillar (reason codes) - operatsion tartibsizlik.
13) Profillashni boshlash chek-varaqasi
- Tavsiflangan maqsadlar (UX/marketing/risk), KPI va guardrails
- Voqealar sxemalari, PIT fichlari, antibot/frod filtrlari faol
- RFM/xulq-atvor/kontent belgilari, embeddingi to’plangan
- Pasportli profillar (qoidalar/klasterlar/propensity/uplift) shakllantirildi
- Decision tables: gisterezis, kuldaunlar, ustuvorliklar, konflikt-matritsalar
- Monitoring: effekt (uplift/ROMI), xavf-xatarlar (shikoyatlar/RG), dreyf (PSI/KL)
- Orkestrator va kanallar: rate-limit, «sokin soatlar», DLQ, audit
- Hujjatlar: versiyalar/egalari/runibuki; folbek siyosati tayyor
Jami
O’yinchilarni profillash - bu yorliqlar emas, balki boshqariladigan tizim: sifatli ma’lumotlar va PIT-fichlar → mazmunli profillar (xulq-atvor/qadriyat/sezgirlik) → gisterezis va gardrails bilan harakatlar siyosati → ta’sir va drift monitoringi → qat’iy maxfiylik va RG. Bunday kontur o’zaro ta’sirni ahamiyatli, xavfsiz va o’lchovli darajada foydali qiladi.