GH GambleHub

Feature Engineering we alamatlary saýlamak

1) Bellenilmegi we ýörelgeleri

Maksat: oflayn we onlaýn arasynda ylalaşylan durnukly, düşündirilýän we tygşytly alamatlary döretmek.

Ýörelgeler:
  • Point-in-time: fiçler çözgüt tapylanda elýeterli bolan maglumatlardan gelejeksiz (anti-leakage) hasaplanýar.
  • Domain-first: fiçleri iş mehanikleri (depozitler, sessiýalar, oýun resanrlary, RG/AML) görkezýär.
  • Reuse & Contracts: Feature Store-daky wersiýalar, eýeler, formulalar we SLO.
  • Cost-aware: latency hasaplaýarys we hasaplamagyň/saklamagyň bahasy → diňe öwezini dolýan zady materiallaşdyrýarys.
  • Observability: monitorim dreýf/durnuklylyk/kalibrlemek; online/offline ekwiwalentlik synagy.

2) iGaming üçin alamatlaryň taksonomiýasy

RFM/özüni alyp baryş: penjireler boýunça recency/frequency/monetary (10m/1h/1d/7d/30d).
Sessiýa: dowamlylygy, arakesmeleri, enjam çalşygy/ASN, hereket tizligi.
Maliýe: goýumlar/netijeler/çarjbekler, töleg usullarynyň paýlary, FX-kadalaşma.
Oýun: reanr profilleri, üpjün edijileriň üýtgewsizligi, RTP-klasterler, win-streak.
Marketing: kanallar/UTM, kampaniýalara jogap, saturation/cooldown.
RG/AML: çäkler, öz-özüni aýyrmagyň baýdaklary, velocity-patternler, BIN/IP-ni gaýtadan ulanmak.
Geo/wagt: ýerli senenamalar/baýramçylyklar, guşakly sagat, agşam/gije.
Grafiki: user-card-device-ip baglanyşyklary, merkezler/komponentler, frodyň "halkalary".
NLP/tekstler: biletleriň/söhbetdeşlikleriň mowzuklary we äheňleri; esasy şikaýatlar.
Operasiýa: sessiýalaryň durnuklylygy (SRE modelleri üçin).


3) Penjireler we agregatlar (nokat wagty)

Adaty penjireler: 10m/1h/24h/7d/30d. Her penjire üçin - count/sum/mean/std/last/max/min, ratio we rate.

SQL şablon (30d depozitler, gelejeksiz):
sql
SELECT u.user_pseudo_id, t.asof,
SUM(CASE WHEN e.type='deposit'
AND e.event_time>=t.asof - INTERVAL '30' DAY
AND e.event_time< t.asof THEN e.amount_base ELSE 0 END) AS dep_30d,
COUNT(CASE WHEN e.type='bet'
AND e.event_time>=t.asof - INTERVAL '7' DAY
AND e.event_time< t.asof THEN 1 END) AS bets_7d
FROM silver.fact_events e
JOIN (SELECT user_pseudo_id, DATE(event_time) AS asof
FROM silver.fact_events GROUP BY 1,2) t USING(user_pseudo_id)
JOIN dim.users_scd u ON u.user_pseudo_id=t.user_pseudo_id
AND t.asof >= u.valid_from AND (u.valid_to IS NULL OR t.asof < u.valid_to)
GROUP BY 1,2;

4) Kategoriýa kodlaşdyrmalary

One-Hot/Hashing: seýrek/ýokary-kardinal kategoriýalar üçin (oýunlar, üpjün edijiler).
Target Encoding (TE): k-fold/leave-one-out we time-aware tekizlemek (anti-leakage).
WOE/IV (töwekgelçilik-skoring): IV we durnuklylyga gözegçilik edýän monoton binalar.

TE (psevdokod, wagt-aware):
python for fold in time_folds:
train_idx, val_idx = split_by_time(fold)
te_map = target_mean(train[["provider_id","label"]])
val["provider_te"] = val["provider_id"].map(te_map).fillna(global_mean)

5) Kadalaşmak we skeyling

Min-max/Robust/Z-score - okuw penjiresi boýunça; parametrleri artefaktlarda saklaýarys.
Summalaryň/stawkalaryň uzyn guýruklary üçin log-öwrülişikler.
Box-Cox/Yeo-Johnson - simmetrizasiýa zerur bolanda.


6) Wagtlaýyn we möwsümleýin şowlulyklar

Senenama: hepdäniň güni, sagat, bazar baýramçylygy (ref. calendar), pay-day.
Ýygylygy: süýşýän orta/ekspon. tekizlemek (EMA), deltas (t − t-1).
Event-based: soňky goýumdan/ýeňişden/ýitirişden, "sowatmakdan" wagt.


7) Graf alamatlary (frod/AML)

Üstleri: user/card/device/ip. Gapyrgalar: geleşikler/sessiýalar/bilelikdäki alamatlar.
Fiçler: komponentleriň ululygy, degree, betweenness, pagerank, triads, gaýtalanma.
Şablon: gijeki batch grafik gurýar → embeddings/merkezler → online kesiş.


8) NLP-çiçek (sapport/söhbetdeşlikler/rebyu)

Esasy: TF-IDF/NMF mowzuklar, sentiment, uzynlyk, şikaýatlaryň ýygylygy.
Ösen: embeddingler (Sentence-BERT) → penjireden tiketler boýunça ortaça.
PII: syýasatlar boýunça goşmaça we post-maskalama (email, PAN, telefonlar).


9) Geo/ASN we enjamlar

IP → Geo/ASN: kesmek we täzelemek; Wagt/kesişsiz onlaýn synply soraglara ýol bermäň.
Fiçler: ASN/DeviceID durnuklylygy, çalşyk ýygylygy, loginleriň arasyndaky aralyk.


10) Anti-Leakage we online/offline utgaşdyrmak

Point-in-time join, penjirelerde/belliklerde geljekdäki wakalar ýok.
Awtonom we onlaýn üçin bir transformasiýa kody (library).
Ekwiwalentlik synagy: T nusgasynda, onlaýn bahalary awtonom (MAE/MAPE) bilen deňeşdirýäris.

YAML-speka fiçleri:
yaml name: deposits_sum_10m owner: ml-risk slo: {latency_ms_p95: 20, availability: 0.999}
offline:
source: silver.payments transform: "SUM(amount_base) OVER 10m BY user_pseudo_id"
online:
compute: "streaming_window: 10m"
tests:
- compare_online_offline_max_abs_diff: 0.5

11) Alamatlary saýlamak (feature selection)

11. 1 Filter

Üýtgeýiş/korrelýasiýa: konstantlary aýyrýarys,ρ>0. 95 dublikat.
Mutual Information (MI): Linear däl baglanyşyklary tertipleşdirmek.
IV/KS (töwekgelçilik): AML/RG-de binar nyşanlar üçin.

11. 2 Wrapper

RFE/Sequential FS: kiçi toplumlarda/logistika regressiýasynda.
Stability Selection: butstrep-sampling döwründe durnuklylyk.

11. 3 Embedded

L1/Lasso/ElasticNet: seýrek.
Agaçlar/GBDT: importance/SHAP saýlamak we iş düşündiriş üçin.
Group Lasso: toparlaýyn saýlama (bir üýtgeýän bin-fich toplumlary).

Pipline (eskiz):
python
X = preprocess(raw)        # one-hot/TE/scale
X = drop_const_and_corr(X, thr=0.95)
rank_mi = mutual_info_rank(X, y)
keep1 = topk(rank_mi, k=200)
model = LGBMClassifier(...)
model.fit(X[keep1], y)
shap_vals = shap.TreeExplainer(model).shap_values(X[keep1])
keep2 = stable_topk_by_shap(shap_vals, k=60, bootstrap=20)
final = keep2

12) Durnuklylyk, süýşmek we kalibrlemek

Drift: PSI/KS şekilleri we tizligi boýunça; çäklerden geçende alertler.
Durnuklylyk: "gowşak" TE/WOE-ni yzarlaýarys (kardinallyk/üýtgeşiklik).
Kalibrlemek: Platt/Isotonic; reliability hasabatlary.
Slice-analiz: bazarlar/üpjün edijiler/enjamlar - metrikleriň we ýalňyşlyklaryň garaşylýan bahasynyň bençmarklary.


13) Cost-in engineeringenerçilik we öndürijilik

Cost per Feature (CPF): CPU/IO/tor/saklamak → model üçin býudjet.
Materializasiýa: agyr offline, ýeňil online; Gyzgyn surat üçin TTL/keş.
Uzak lookups: diňe async + keş; p95 <20-30 ms onlaýn çeňňek üçin.
Çargeback: toparlar boýunça fich/inferens bahasyny hasaba almak.


14) Feature Store (ylalaşygyň özeni)

Reýestr: ady, formulasy, eýesi, SLO, synaglary, wersiýalary.
Online/Offline sinhronizasiýasy: bir üýtgeşiklik kody, deňlik synagy.
Logi/audit: formulany kim üýtgetdi; wersiýanyň modeliň metrikasyna täsiri.


15) Mysallar

ClickHouse: minutlyk nyrh agregatlary:
sql
CREATE MATERIALIZED VIEW mv_bets_1m
ENGINE = SummingMergeTree()
PARTITION BY toDate(event_time)
ORDER BY (toStartOfMinute(event_time), user_pseudo_id)
AS
SELECT toStartOfMinute(event_time) AS ts_min,
user_pseudo_id,
sum(stake_base) AS stake_sum_1m,
count() AS bets_1m
FROM stream.game_events
GROUP BY ts_min, user_pseudo_id;
Anti-correlation drop (SQL-ideýa):
sql
-- вычислить корреляции и удалить пары с     ρ    >0.95, сохранив более «дешевую» фичу
WOE binning (eskiz):
python bins = monotonic_binning(x, y, max_bins=10)
woe = compute_woe(bins)
iv = compute_iv(bins)

16) Amallar we RACI

R (Responsible): Data Eng (konweýerler/Feature Store), Data Science (surat/saýlama/metrika dizaýny).
A (Accountable): Head of Data / CDO.
C (Consulted): Compliance/DPO (PII, residency), Risk/AML/RG (düzgünler), SRE (SLO/bahasy), Security.
I (Informed): Önüm/Marketing/Amallar/Goldaw.


17) Ýol kartasy

MVP (3-5 hepde):

1. Point-in-time formulalary bilen iň gowy 50 surat (Payments/Gameplay) katalogy.

2. Feature Store v1 (online/offline) + ekwiwalentlik synagy.

3. Esasy saýlama: sabitler/korrelýasiýalar → MI → L1/SHAP shortlist (60-a çenli).

4. Dreýfiň monitoringi we kost-daşbord.

2-nji faza (5-10 hepde):
  • TE/WOE wagt-aware tassyklamaly, grafiki we senenama fiçleri.
  • Slice-analiz we fairness, ähtimallyklary kalibrlemek.
  • Agyr oflayn, onlaýn nagt, kwotalaryň materiallaşdyrylmagy.
3-nji faza (10-16 hepde):
  • CI-de awtogenerasiýa resminamalary, stability-selection.
  • "Gymmat we peýdasyz" sahnalaryň awto-deaktiwasiýasy (CPF ↑, goşant ↓).
  • A/B surat toplumlaryny deňeşdirmek, expected-cost hasabatlary.

18) Azyk önüminden öň çek-sanawy

  • Ähli çyzgylarda aýratynlyklar bar (owner, formula, wersiýa, SLO).
  • point-in-time we online/offline ekwiwalentlik synaglary geçirildi.
  • Saýlama tamamlandy: filter → embedded (SHAP/L1) → stability.
  • Sürüşme we reliability gözegçiligi sazlandy; bosagalar we alertler bar.
  • CPF/latency býudjetine laýyk gelýär; agyr fiçler materiallaşdyryldy.
  • PII syýasaty berjaý edildi (CLS/RLS, tokenizasiýa, rezidentlik).
  • Kataloga resminamalar we ulanyş mysallary goşuldy.

19) Anti-patternler we töwekgelçilikler

Leýkedj (geljekdäki wakalar/mahabatyň netijeleri).
Ylalaşylmadyk online/offline formulalar.
Hashing/TE-siz ýokary-kardinal kategoriýalardan artykmaç one-hot.
"Gadyrly" hiliň ölçelip bolmaýan ýokarlanmagy.
Slice/fairness derňewiň ýoklugy - gizlin zaýalanmalar.
TE/WOE wagt-aware cross-validation → gaýtadan taýýarlamak.


20) Jemleýji

"Feature Engineering" - dolandyrylýan düzgün-nyzam: nokat-in-wagt, işewürlik manysy, köpeltmek, gözegçilik we ykdysadyýet. Güýçli çeňňekler + berk saýlama (filter/wrapper/embedded) we ýeke-täk Aýratynlyk dükany, Net Revenue-i gowulandyrýan, peseldýän we RG-ni aç-açan we oňat goldaýan durnukly, düşündirilýän we arzan modelleri berýär.

Contact

Biziň bilen habarlaşyň

Islendik sorag ýa-da goldaw boýunça bize ýazyp bilersiňiz.Biz hemişe kömek etmäge taýýar.

Integrasiýany başlamak

Email — hökmany. Telegram ýa-da WhatsApp — islege görä.

Adyňyz obýýektiw däl / islege görä
Email obýýektiw däl / islege görä
Tema obýýektiw däl / islege görä
Habar obýýektiw däl / islege görä
Telegram obýýektiw däl / islege görä
@
Eger Telegram görkezen bolsaňyz — Email-den daşary şol ýerden hem jogap bereris.
WhatsApp obýýektiw däl / islege görä
Format: ýurduň kody we belgi (meselem, +993XXXXXXXX).

Düwmäni basmak bilen siz maglumatlaryňyzyň işlenmegine razylyk berýärsiňiz.