GH GambleHub

هندسة الميزات واختيار الميزات

1) الغرض والمبادئ

الهدف: بناء سمات ثابتة وقابلة للتفسير واقتصادية متفق عليها بين الإنترنت وغير المتصل بالإنترنت.

المبادئ:
  • نقطة في الوقت: يتم حساب الميزات من البيانات المتاحة في وقت الحل، دون المستقبل (منع التسرب).
  • المجال أولاً: تعكس الميزات ميكانيكا الأعمال (الودائع والجلسات وأنواع الألعاب و RG/AML).
  • إعادة الاستخدام والعقود: إصدارات متجر الميزات والمالكين والصيغ و SLOs.
  • إدراك التكلفة: نحن نعتبر أن زمن الوصول وتكلفة الحوسبة/التخزين → تتحقق فقط.
  • إمكانية الرصد: رصد الانجراف/الاستقرار/المعايرة ؛ اختبار التعادل عبر الإنترنت/خارج الإنترنت.

2) التصنيف المميز لـ iGaming

RFM/behavioral: recency/wrequency/financial by windows (10 m/1h/1d/7d/30d).
الجلسة: المدد والتوقف المؤقت وتغييرات الجهاز/ASN وسرعة العمل.
المالية: الودائع/السحوبات/استرداد التكاليف، أسهم طرق الدفع، تطبيع العملات الأجنبية.
الألعاب: ملفات تعريف النوع، تقلب المزود، مجموعات RTP، سلسلة الفوز.
التسويق: القنوات/UTM، استجابات الحملة، التشبع/التهدئة.
RG/AML: حدود، أعلام الاستبعاد الذاتي، أنماط السرعة، إعادة استخدام BIN/IP.
Geo/time: التقويمات/العطلات المحلية، ساعة الحزام، المساء/الليل.
الرسم البياني: روابط المستخدم-بطاقة-الجهاز-ip، المركزية/المكونات، حلقات الاحتيال.
NLP/النصوص: مواضيع ونبرة التذاكر/الدردشات ؛ الشكاوى الرئيسية.
التشغيل: أخطاء التأخر/المزود، استقرار الجلسة (لنماذج SRE).


3) النوافذ والمجمعات (نقطة زمنية)

النوافذ النموذجية: 10 م/1 ساعة/24 ساعة/7 د/30 د. لكل نافذة - عد/مجموع/متوسط/std/last/max/min، النسبة والمعدل.

نموذج SQL (ودائع 30d، بدون مستقبل):
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) الترميزات الفئوية

One-Hot/Hashing: للفئات النادرة/عالية الكاردينال (الألعاب ومقدمي الخدمات).
ترميز الهدف (TE): متوسطات الهدف مع k-fold/leave-one-out ومكافحة التسرب المدركة للوقت.
WOE/IV (تسجيل المخاطر): صناديق رتيبة مع التحكم والاستقرار الرابع.

TE (cseudocode، مع العلم بالوقت):
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) التطبيع والتوسع

Min-max/Storust/Z-score - بواسطة نافذة التدريب ؛ حفظ المعلمات في القطع الأثرية.
سجل التحويلات للذيول الطويلة/الرهان.
Box-Cox/Yeo-Johnson - عندما يكون التماثل مطلوبًا.


6) السمات المؤقتة والموسمية

التقويم: يوم الأسبوع، الساعة، عطلة السوق (المرجع التقويم)، يوم الدفع.
التردد: متوسطات متحركة/إكسبون. (EMA), deltas (t − t-1).
على أساس الحدث: الوقت منذ الوديعة/الفوز/الخسارة الأخيرة، «التبريد».


7) ميزات الرسم البياني (الاحتيال/AML)

الرؤوس: المستخدم/البطاقة/الجهاز/المرجع. الحواف: المعاملات/الجلسات/الخصائص المشتركة.
الميزة: حجم المكون، الدرجة، الطمأنينة، الحفلة، الثلاثيات، الظهور مرة أخرى.
النمط: تقوم الدفعة الليلية ببناء رسم بياني → التضمين/المركزية → ذاكرة التخزين المؤقت عبر الإنترنت.


8) ميزات NLP (الدعم/الدردشة/المراجعات)

أساسية: المواضيع، والمشاعر، والطول، وتواتر الشكاوى.
متقدم: تضمين (جملة-BERT) → متوسط التذاكر لكل نافذة.
PII: ما قبل وما بعد الإخفاء (البريد الإلكتروني، PAN، الهواتف) حسب السياسة.


9) Geo/ASN والأجهزة

IP→Geo/ASN: نقوم بالتخزين المؤقت والتحديث ؛ لا تقدم طلبات متزامنة عبر الإنترنت بدون مهلة/مخبأ.
الميزات: ثبات ASN/DeviceID، تردد التحول، المسافة بين عمليات تسجيل الدخول.


10) مكافحة التسرب والتسوية عبر الإنترنت/خارج الإنترنت

انضم في الوقت المناسب، ولا توجد أحداث مستقبلية في النوافذ/الملصقات.
رمز تحويل واحد (مكتبة) غير متصل بالإنترنت وعبر الإنترنت.
اختبار التكافؤ: في العينة T، نقارن قيم الميزة عبر الإنترنت مع غير متصل بالإنترنت (MAE/MAPE).

ميزة مواصفات YAML:
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) اختيار الميزة

11. 1 مرشح

التباين/الارتباط: إزالة الثوابت،ρ>0. 95 نسخة مكررة.
Mutual Information (MI) - Range nonlinear relations.
IV/KS (الخطر): بالنسبة للأهداف الثنائية في مكافحة غسل الأموال/النمو الحقيقي.

11. 2 غلاف

RFE/Sequential FS: on small groups/logistic regression.
اختيار الاستقرار: الاستقرار في أخذ عينات bootstrap.

11. 3 مضمنة

L1/Lasso/ElasticNet: نادرة.
الأشجار/الفريق العامل المعني بالتنمية المستدامة: الأهمية/فريق العمل المعني بالتنمية المستدامة للاختيار والتفسير التجاري.
مجموعة لاسو: اختيار المجموعة (مجموعات من سمات سلة المهملات لمتغير واحد).

خط الأنابيب (رسم تخطيطي):
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) الاستقرار والانجراف والمعايرة

الانجراف: PSI/KS للميزات والسرعة ؛ عند تجاوز العتبات.
الاستقرار: راقب TE/WOE «الهش» (الكاردينالية/التحولات).
المعايرة: بلات/إيزوتونيك ؛ تقارير الموثوقية.
تحليل الشرائح: الأسواق/مقدمو/الأجهزة - المقاييس والتكلفة المتوقعة للأخطاء.


13) هندسة التكاليف والأداء

التكلفة لكل ميزة (CPF): ميزانية نموذج وحدة المعالجة المركزية/IO/الشبكة/التخزين →.
التجسيد: ثقيل غير متصل بالإنترنت، خفيف على الإنترنت ؛ TTL/مخبأ للميزات الساخنة.
عمليات البحث عن بُعد: async + cache فقط ؛ p95 <20-30 ms على الميزة عبر الإنترنت.
رد التكاليف: حساب تكلفة الميزة/الاستدلال حسب الأمر.


14) متجر الميزات (نواة الاتساق)

السجل: الاسم، الصيغة، المالك، SLO، الاختبارات، الإصدارات.
التزامن عبر الإنترنت/غير متصل: رمز تحويل واحد، اختبار المساواة.
السجلات/عمليات مراجعة الحسابات: من الذي غير الصيغة ؛ على المقاييس النموذجية.


15) أمثلة

ClickHouse: مجاميع الرهان الدقيقة:
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;
انخفاض مكافحة الارتباط (فكرة SQL):
sql
-- вычислить корреляции и удалить пары с     ρ    >0.95, сохранив более «дешевую» фичу
WOE binning (رسم تخطيطي):
python bins = monotonic_binning(x, y, max_bins=10)
woe = compute_woe(bins)
iv = compute_iv(bins)

16) العمليات و RACI

R (مسؤول): Data Eng (خطوط الأنابيب/متجر الميزات)، Data Science (ميزة التصميم/الاختيار/المقاييس).
ألف (مسؤول): رئيس قسم البيانات/المدير التنفيذي.
جيم (استشاري): الامتثال/DPO (PII، الإقامة)، المخاطر/AML/RG (السياسة)، SRE (SLO/التكلفة)، الأمن.
I (معلومات): المنتج/التسويق/العمليات/الدعم.


17) خارطة طريق

أفضل لاعب (3-5 أسابيع):

1. فهرس لأفضل 50 ميزة (المدفوعات/طريقة اللعب) مع صيغ نقطة في الوقت المناسب.

2. ميزة متجر v1 (عبر الإنترنت/غير متصل بالإنترنت) + اختبار التكافؤ.

3. الاختيار الأساسي: الثوابت/الارتباطات → MI → L1/SHAP القائمة المختصرة (حتى 60 ميزة).

4. رصد ميزات الانجراف ولوحات التحكم في التكاليف.

المرحلة 2 (5-10 أسابيع):
  • TE/WOE مع التحقق من صحة الوقت والرسم البياني وميزات التقويم.
  • تحليل الشرائح والإنصاف، معايرة الاحتمالات.
  • تجسيد الميزات الثقيلة غير المتصلة بالإنترنت، المخبأ عبر الإنترنت، الحصص.
المرحلة 3 (10-16 أسبوعاً):
  • التوليد التلقائي للوثائق واختيار الاستقرار في CI.
  • التعطيل التلقائي للميزات «المكلفة وغير المجدية» (CPF↑، vklad↓).
  • مقارنة بين مجموعات الخصائص والتقارير المتوقعة والتكلفة.

18) قائمة مرجعية قبل البيع

  • جميع الميزات لها مواصفات (المالك، الصيغة، الإصدارات، SLO).
  • اجتاز اختبارات المعادلة عبر الإنترنت/بدون اتصال بالإنترنت.
  • فلتر → المدمج (SHAP/L1) → استقرار مكتمل.
  • رصد الانجراف وتكوين الموثوقية ؛ العتبات والتنبيهات هي.
  • تندرج الشراكة التعاونية المتعلقة بالغابات/زمن الانتقال في الميزانية ؛ تجسدت السمات الثقيلة.
  • تم الوفاء بسياسات PII (CLS/RLS، الترميز، الإقامة).
  • تمت إضافة حالات التوثيق والاستخدام إلى الكتالوج.

19) الأنماط والمخاطر المضادة

Lakage (الأحداث المستقبلية/ترويج ما بعد).
صيغ غير متسقة عبر الإنترنت/غير متصلة بالإنترنت.
زيادة المعروض من فئة واحدة ساخنة من الفئات عالية الكاردينال دون التجزئة/TE.
ميزات «باهظة الثمن» بدون زيادة قابلة للقياس في الجودة.
نقص تحليل الشرائح/الإنصاف - التدهور الخفي.
TE/WOE بدون التحقق المتبادل → إعادة التدريب.


20) خلاصة القول

Feature Engineering هو نظام منظم: نقطة في الوقت، وحس تجاري، وقابلية للتكرار، والمراقبة والاقتصاد. ميزات قوية + اختيار صارم (مرشح/غلاف/مدمج) ومتجر ميزات واحد يوفر نماذج مستقرة وقابلة للتفسير ورخيصة تعمل على تحسين صافي الإيرادات وتقليل الاحتيال ودعم RG - بشفافية وتوافقًا.

Contact

اتصل بنا

تواصل معنا لأي أسئلة أو دعم.نحن دائمًا جاهزون لمساعدتكم!

بدء التكامل

البريد الإلكتروني — إلزامي. تيليغرام أو واتساب — اختياري.

اسمك اختياري
البريد الإلكتروني اختياري
الموضوع اختياري
الرسالة اختياري
Telegram اختياري
@
إذا ذكرت تيليغرام — سنرد عليك هناك أيضًا بالإضافة إلى البريد الإلكتروني.
WhatsApp اختياري
الصيغة: رمز الدولة + الرقم (مثال: +971XXXXXXXXX).

بالنقر على الزر، فإنك توافق على معالجة بياناتك.