ما هو مخزن الميزات؟

تشرح هذه الصفحة ما هو مخزن الميزات والفوائد التي يوفرها، والمزايا المحددة لمخزن ميزات Databricks.

مخزن الميزات هو مستودع مركزي يمكن علماء البيانات من العثور على الميزات ومشاركتها ويضمن أيضا استخدام نفس التعليمات البرمجية المستخدمة لحساب قيم الميزة لتدريب النموذج والاستدلال عليه.

يستخدم التعلم الآلي البيانات الموجودة لبناء نموذج للتنبؤ بالنتائج المستقبلية. في جميع الحالات تقريبا، تتطلب البيانات الأولية المعالجة المسبقة والتحويل قبل أن يمكن استخدامها لبناء نموذج. تسمى هذه العملية هندسة الميزات، وتسمى مخرجات هذه العملية الميزات - الكتل الإنشائية للنموذج.

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

لماذا تستخدم Databricks Feature Store؟

مخزن ميزات Databricks متكامل تماما مع المكونات الأخرى ل Azure Databricks.

  • إمكانية الاكتشاف. تتيح لك واجهة مستخدم 'متجر الميزات'، التي يمكن الوصول إليها من مساحة عمل Databricks، استعراض الميزات الموجودة والبحث فيها.
  • دورة حياة البيانات. عند إنشاء جدول ميزات في Azure Databricks، يتم حفظ مصادر البيانات المستخدمة لإنشاء جدول الميزات ويمكن الوصول إليها. لكل ميزة في جدول الميزات، يمكنك أيضا الوصول إلى النماذج ودفاتر الملاحظات والمهام ونقاط النهاية التي تستخدم الميزة.
  • التكامل مع تسجيل النماذج وتقديمها. عند استخدام ميزات من 'متجر الميزات' لتدريب نموذج، يتم حزم النموذج ببيانات تعريف الميزة. عند استخدام النموذج لتسجيل الدفعات أو الاستدلال عبر الإنترنت، فإنه يسترد الميزات تلقائيا من Feature Store. لا يحتاج المتصل إلى معرفة ذلك أو تضمين منطق للبحث عن ميزات أو الانضمام إليها لتسجيل بيانات جديدة. وهذا يجعل نشر النموذج والتحديثات أسهل بكثير.
  • عمليات البحث في نقطة زمنية. يدعم Feature Store السلاسل الزمنية وحالات الاستخدام المستندة إلى الحدث التي تتطلب تصحيحا في نقطة زمنية.

هندسة الميزات في كتالوج Unity

باستخدام Databricks Runtime 13.3 LTS وما فوق، إذا تم تمكين مساحة العمل الخاصة بك ل Unity Catalog، يصبح كتالوج Unity مخزن الميزات الخاص بك. يمكنك استخدام أي جدول Delta أو Delta Live Table في كتالوج Unity مع مفتاح أساسي كجدول ميزات لتدريب النموذج أو الاستدلال. يوفر كتالوج Unity اكتشاف الميزات والحوكمة والنسب والوصول عبر مساحة العمل.

كيف يعمل Databricks Feature Store؟

يتبع سير عمل التعلم الآلي النموذجي باستخدام Feature Store هذا المسار:

  1. اكتب التعليمات البرمجية لتحويل البيانات الأولية إلى ميزات وإنشاء Spark DataFrame يحتوي على الميزات المطلوبة.
  2. بالنسبة لمساحات العمل التي تم تمكينها ل Unity Catalog، اكتب DataFrame كجدول ميزة في كتالوج Unity. إذا لم يتم تمكين مساحة العمل الخاصة بك للكتالوج Unity، فاكتب DataFrame كجدول ميزات في مخزن ميزات مساحة العمل.
  3. تدريب نموذج باستخدام ميزات من مخزن الميزات. عند القيام بذلك، يخزن النموذج مواصفات الميزات المستخدمة للتدريب. عند استخدام النموذج للاستدلال، فإنه ينضم تلقائيا إلى الميزات من جداول الميزات المناسبة.
  4. سجل النموذج في Model Registry.

يمكنك الآن استخدام النموذج لإجراء تنبؤات على بيانات جديدة.

بالنسبة لحالات استخدام الدفعات، يسترد النموذج تلقائيا الميزات التي يحتاجها من 'متجر الميزات'.

سير عمل 'متجر الميزات' لحالات استخدام التعلم الآلي الدفعي.

بالنسبة لحالات الاستخدام في الوقت الحقيقي، انشر الميزات إلى متجر عبر الإنترنت أو استخدم جدولا عبر الإنترنت.

في وقت الاستدلال، يقرأ النموذج الميزات المحسوبة مسبقا من المتجر عبر الإنترنت ويربطها بالبيانات المقدمة في طلب العميل إلى نقطة نهاية خدمة النموذج.

تدفق مخزن الميزات لنماذج التعلم الآلي التي يتم تقديمها.

بدء استخدام 'متجر الميزات'

راجع المقالات التالية لبدء استخدام 'متجر الميزات':

عند استخدام هندسة الميزات في كتالوج Unity، يهتم كتالوج Unity بمشاركة جداول الميزات عبر مساحات العمل، ويمكنك استخدام امتيازات كتالوج Unity للتحكم في الوصول إلى جداول الميزات. الارتباطات التالية مخصصة لمتجر ميزات مساحة العمل فقط:

أنواع البيانات المعتمدة

تدعم هندسة الميزات في كتالوج Unity ومتجر ميزات مساحة العمل أنواع بيانات PySpark التالية:

  • IntegerType
  • FloatType
  • BooleanType
  • StringType
  • DoubleType
  • LongType
  • TimestampType
  • DateType
  • ShortType
  • ArrayType
  • BinaryType [1]
  • DecimalType [1]
  • MapType [1]

[1] BinaryType، DecimalTypeو، و MapType مدعومة في جميع إصدارات هندسة الميزات في كتالوج Unity وفي Workspace Feature Store v0.3.5 أو أعلى.

تدعم أنواع البيانات المذكورة أعلاه أنواع الميزات الشائعة في تطبيقات التعلم الآلي. على سبيل المثال:

  • يمكنك تخزين المتجهات الكثيفة والموترات والتضمينات ك ArrayType.
  • يمكنك تخزين المتجهات المتناثرة والموترات والتضمينات ك MapType.
  • يمكنك تخزين النص ك StringType.

عند النشر إلى المتاجر عبر الإنترنت، ArrayTypeMapType يتم تخزين الميزات بتنسيق JSON.

تعرض واجهة مستخدم 'متجر الميزات' بيانات التعريف على أنواع بيانات الميزات:

مثال على أنواع البيانات المعقدة

مزيد من المعلومات

لمزيد من المعلومات حول أفضل الممارسات لاستخدام 'متجر الميزات'، نزل الدليل الشامل إلى مخازن الميزات.