مخازن الميزات: Feast وTecton
مخازن الميزات الفورية مقابل غير المتصلة، وإصدارات الميزات، والربط حسب نقطة زمنية، وزمن الاستجابة
مخازن الميزات: Feast وTecton درس مجاني في Learn AI with Python على CoddyKit. هذا هو الدرس 3 من أصل 4. يمكنك قراءة الدرس كاملاً أدناه مجاناً — ثم تمرن عليه مباشرة في المتصفح باستخدام محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7. هذا الدرس جزء من مسار التعلم في Learn AI with Python، وتقدمك يتزامن عبر الويب وتطبيق CoddyKit. تتضمن دورة Learn AI with Python 4 دروس في المجموع.
مشكلة مخزن السمات
تعيد الفرق تنفيذ السمات نفسها مرارًا، كما تحسبها مسارات التدريب بطريقة مختلفة عن كود التقديم. ويعمل مخزن السمات على مركزة تعريفات السمات وإعادة استخدامها وتقديمها، مما يلغي العمل المكرر والانحراف بين التدريب والتقديم.
Feast وTecton
هناك مخزنا سمات رائدان:
- Feast: مفتوح المصدر وخفيف، ويتيح لكم توفير البنية التحتية الخاصة بكم
- Tecton: تجاري ومدار، ويضيف مسارات سمات متدفقة وحوكمة
ويشترك كلاهما في المفاهيم الأساسية للكيانات والسمات والمخازن غير المتصلة والمتصلة.
الكيانات وعروض السمات
الكيان هو الشيء الذي تصفه السمات، مثل مستخدم أو منتج. ويجمع عرض السمات السمات المرتبطة بكيان، ويشير إلى مصدر بيانات. وتُحفظ هذه التعريفات في الكود وتُضبط إصداراتها مثل أي عنصر آخر.
# A user entity with features:
# avg_purchase, days_since_signup, total_ordersfeast apply
يسجّل feast apply تعريفات الكيانات وعروض السمات لديكم في سجل مخزن السمات. وهذه هي الطريقة التي يعرف بها المخزن السمات الموجودة ومصدر بياناتها.
feast apply
# Registered entity user
# Registered feature view user_statsتجسيد السمات
يجب تحميل السمات إلى المخزن المتصل قبل التقديم. ويحسب تجسيد السمات قيم السمات حتى نقطة زمنية معينة، ثم يكتبها في المخزن المتصل (مثل Redis) لتكون جاهزة للقراءة بزمن استجابة منخفض.
feast materialize
يأخذ feast materialize تاريخ بداية وتاريخ نهاية، ويحمّل قيم السمات ضمن تلك الفترة إلى المخزن المتصل. وتشغّلونه وفق جدول زمني للحفاظ على حداثة السمات المتصلة.
feast materialize 2024-01-01T00:00:00 2024-01-31T00:00:00التقديم المتصل
في وقت الاستدلال، تجلبون أحدث السمات لكيانات محددة باستخدام get_online_features، مع تمرير entity_rows التي تحدد الكيانات المطلوب البحث عنها. ويعيد ذلك أحدث القيم خلال ميلي ثوانٍ.
from feast import FeatureStore
store = FeatureStore(repo_path=".")
features = store.get_online_features(
features=["user_stats:avg_purchase", "user_stats:total_orders"],
entity_rows=[{"user_id": 123}],
).to_dict()بناء بيانات التدريب
لأغراض التدريب، تدمجون قيم السمات مع التسميات التاريخية. ويقرأ مخزن السمات من المخزن غير المتصل ويعيد مجموعة بيانات محاذية للطابع الزمني لكل تسمية، مما يضمن تطابق مدخلات التدريب مع ما سيوفره التقديم.
training_df = store.get_historical_features(
entity_df=labels_df, # has user_id and event_timestamp
features=["user_stats:avg_purchase"],
).to_df()عمليات الربط عند نقطة زمنية
الضمان الأساسي لمخزن السمات هو الربط عند نقطة زمنية: إذ يجلب لكل تسمية تدريبية قيم السمات التي كانت معروفة عند الطابع الزمني للتسمية أو قبله فقط. ويمنع ذلك استخدام معلومات مستقبلية.
منع تسرّب البيانات
من دون صحة الربط عند نقطة زمنية، تخاطرون بحدوث تسرّب البيانات: أي التدريب على قيم سمات حُسبت بعد حدث التسمية، مما يضخم المقاييس غير المتصلة بالواقع ثم يؤدي إلى انهيار الأداء في الإنتاج. ويفرض مخزن السمات الصحة الزمنية تلقائيًا.
دورة الحياة الكاملة
تجمع دورة حياة مخزن السمات كل ذلك:
- يسجّل
feast applyالتعريفات - يحمّل
feast materializeالمخزن المتصل - يستخدم التدريب عمليات ربط عند نقطة زمنية من المخزن غير المتصل
- يقرأ التقديم القيم الحديثة عبر
get_online_features
اختبار سريع
اختبروا معرفتكم بمخزن السمات.
مراجعة
لقد تعلمتم مخازن السمات باستخدام Feast وTecton:
- يسجّل
feast applyالكيانات وعروض السمات - يحمّل
feast materializeالمخزن المتصل للتواريخ المحددة - يقدم
get_online_featuresقيمًا حديثة لـ entity_rows - تنشئ عمليات الربط عند نقطة زمنية بيانات تدريب خالية من التسرّب
الأسئلة الشائعة
هل درس «مخازن الميزات: Feast وTecton» مجاني؟
نعم — نص درس «مخازن الميزات: Feast وTecton» كامل متاح مجاناً هنا على الويب. لتمرينه بشكل تفاعلي (محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7) وفتح باقي دورة Learn AI with Python، انتقل إلى CoddyKit PRO. تتضمن دورة Learn AI with Python 4 دروس في المجموع.
ماذا ستتعلم في «مخازن الميزات: Feast وTecton»؟
مخازن الميزات الفورية مقابل غير المتصلة، وإصدارات الميزات، والربط حسب نقطة زمنية، وزمن الاستجابة تتمرن على Learn AI with Python مع أكواد عملية تشغلها مباشرة في المتصفح، ومدرس ذكاء اصطناعي متاح 24/7 يجيب على أسئلتك أثناء عملك.
هل أحتاج إلى خبرة سابقة لأبدأ Learn AI with Python؟
لا تُشترط خبرة سابقة. Learn AI with Python على CoddyKit منظم للمبتدئين حتى المتقدمين، لذا يمكنك البدء من هنا أو من البداية والتقدم بسرعتك الخاصة. هذا هو الدرس 3 من أصل 4.
كم من الوقت يستغرق درس «مخازن الميزات: Feast وTecton»؟
معظم دروس CoddyKit تستغرق حوالي 5–10 دقائق. كل منها موجز وتفاعلي، لذا تحرز تقدماً مستمراً وتستأنف من حيث توقفت عبر الويب والتطبيق.
هل يمكنني كتابة وتشغيل أكواد في درس Learn AI with Python هذا؟
نعم. كل درس في Learn AI with Python يتضمن محرر أكواد مدمج، لذا تكتب وتشغل أكواداً حقيقية مباشرة في متصفحك وتحصل على تعليقات فورية من الذكاء الاصطناعي — بدون إعداد محلي.
جميع الدروس في هذه الدورة
- أنماط بنية أنظمة الذكاء الاصطناعي
- مسارات تعلم آلي قابلة للتوسع باستخدام Airflow
- مخازن الميزات: Feast وTecton
- الرصد الشامل لأنظمة الذكاء الاصطناعي ومراقبتها