MLOps: إدارة النموذج والنشر والانتشار والمراقبة باستخدام التعلم الآلي من Microsoft Azure الإصدار 1

ينطبق على:ملحق Azure CLI ml v1Python SDK azureml v1

في هذه المقالة، تعرف على كيفية تطبيق ممارسات عمليات التعلم الآلي (MLOps) في Azure التعلم الآلي لغرض إدارة دورة حياة النماذج الخاصة بك. يمكن أن يؤدي تطبيق ممارسات MLOps إلى تحسين جودة حلول التعلم الآلي واتساقها.

هام

العناصر الموجودة في هذه المقالة التي تم وضع علامة عليها ك "معاينة" موجودة حاليا في المعاينة العامة. تتوفر نسخة الإصدار الأولي دون اتفاقية مستوى الخدمة، ولا يوصى به لأحمال عمل الإنتاج. بعض الميزات ربما لا تكون مدعمة أو بها بعض القدرات المقيدة. لمزيد من المعلومات، راجع ⁧⁩شروط الاستخدام التكميلية لمعاينات Microsoft Azure⁧⁩.

ما هو MLOps؟

يستند التعلم الآلي من Microsoft Azure إلى مبادئ وممارسات DevOps التي تزيد من كفاءة مهام سير العمل. على سبيل المثال، التكامل المستمر والتسليم والنشر. يطبق MLOps هذه المبادئ على عملية التعلم الآلي، بهدف:

  • التجريب والتطوير السريع للنماذج
  • نشر أسرع للنماذج في الإنتاج
  • ضمان الجودة وتعقب دورة حياة البيانات بشكل شامل

MLOps في التعلم الآلي من Microsoft Azure

يوفر التعلم الآلي من Microsoft Azure قدرات MLOps التالية:

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

لمزيد من المعلومات حول MLOps، راجع DevOps للتعلم الآلي.

إنشاء البنية الأساسية لبرنامج ربط العمليات التجارية للتعلم الآلي من Microsoft Azure القابلة للاستنساخ

استخدم مسارات التعلم الآلي من التعلم الآلي من Microsoft Azure لتجميع جميع الخطوات في عملية تدريب النموذج.

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

إذا كنت تستخدم Designer لإنشاء مسارات التعلم الآلي، يمكنك في أي وقت النقر فوق "..." في الجزء العلوي الأيمن من صفحة Designer ثم تحديد Clone. استنساخ المسار الخاص بك يسمح لك لإعادة تصميم المسار الخاص بك دون أن تفقد الإصدارات القديمة الخاصة بك.

إنشاء بيئات برامج قابلة لإعادة الاستخدام

باستخدام بيئات التعلم الآلي من Microsoft Azure، يمكنك تعقب تبعيات برامج مشاريعك وإعادة إنتاجها أثناء تطورها. يمكنك استخدام البيئات للتأكد من أن البنيات قابلة للتكرار دون تكوينات البرامج اليدوية.

تصف البيئات تبعيات pip وConda لمشاريعك، ويمكن استخدامها لكل من تدريب النماذج ونشرها. لمزيد من المعلومات، راجع ما هي بيئات التعلم الآلي من Microsoft Azure.

تسجيل النماذج وحزمها وتوزيعها من أي مكان

تسجيل نماذج التعلم الآلي من Microsoft Azure وتعقبها

Model registrationيمكنك تخزين نماذجك وإصدارها في سحابة Azure، في مساحة العمل الخاصة بك. يسهل تسجيل النموذج تنظيم النماذج المدربة وتعقبها.

تلميح

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

يتم تحديد النماذج المسجلة بالاسم والإصدار. في كل مرة تقوم فيها بتسجيل نموذج يحمل نفس اسم نموذج موجود، يقوم السجل بزيادة الإصدار. يمكن توفير المزيد من علامات بيانات التعريف أثناء التسجيل. يتم استخدام هذه العلامات بعد ذلك عند البحث عن نموذج. يدعم التعلم الآلي من Microsoft Azure أي نموذج يمكن تحميله باستخدام Python 3.5.2 أو إصدار أعلى.

تلميح

يمكنك أيضاً تسجيل النماذج المدربة خارج التعلم الآلي من Microsoft Azure.

لا يمكنك حذف نموذج مسجل يتم استخدامه في عملية توزيع نشطة. لمزيد من المعلومات، راجع قسم تسجيل النموذج في توزيع النماذج.

هام

عند استخدام خيار التصفية حسب Tags في صفحة النماذج في استوديو التعلم الآلي من Microsoft Azure، بدلاً من استخدام TagName : TagValueالعملاء TagName=TagValue يجب استخدام (بدون مساحة)

حزم النماذج وتصحيحها

قبل توزيع نموذج في الإنتاج، يتم حزمه في صورة Docker. في معظم الحالات، يحدث إنشاء الصورة تلقائيًا في الخلفية أثناء التوزيع. يمكنك تحديد الصورة يدوياً.

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

لمزيد من المعلومات، راجع توزيع النماذج واستكشاف أخطاء عمليات التوزيع وإصلاحها.

تحويل النماذج وتحسينها

قد يؤدي تحويل النموذج إلى Open Neural Network Exchange (ONNX) إلى تحسين الأداء. في المتوسط، يمكن أن يؤدي التحويل إلى ONNX إلى زيادة في الأداء بمقدار الضعف.

لمزيد من المعلومات حول ONNX مع التعلم الآلي من Microsoft Azure، راجع إنشاء نماذج التعلم الآلي وتسريعها.

استخدام النماذج

يتم نشر نماذج التعلم الآلي المدربة كخدمات ويب في السحابة أو محلياً. تستخدم عمليات التوزيع وحدة المعالجة المركزية أو GPU للاستدلال. يمكنك أيضاً استخدام نماذج من Power BI.

عند استخدام نموذج كخدمة ويب، فإنك توفر العناصر التالية:

  • النماذج المستخدمة لتسجيل البيانات المرسلة إلى الخدمة أو الجهاز.
  • برنامج نصي للإدخال. يقبل هذا البرنامج النصي الطلبات، ويستخدم النماذج لتسجيل البيانات، ويرجع استجابة.
  • بيئة التعلم الآلي من Microsoft Azure التي تصف تبعيات pip وConda المطلوبة من قبل نموذج(نماذج) وإدخال البرنامج النصي.
  • البرنامج النصي للإدخال وأي أصول إضافية مثل النصوص والبيانات وما إلى ذلك، والتي يتطلبها النموذج (النماذج) والبرنامج النصي للإدخال.

يمكنك أيضاً توفير تكوين النظام الأساسي للنشر المستهدف. على سبيل المثال، نوع عائلة الجهاز الظاهري والذاكرة المتوفرة وعدد الذاكرات الأساسية عند النشر إلى خدمة Azure Kubernetes.

عند إنشاء الصورة، تتم أيضاً إضافة المكونات التي يطلبها Azure Machine Learning. على سبيل المثال، الأصول اللازمة لتشغيل خدمة الويب.

تسجيل الدفعات

يتم دعم تسجيل الدفعات من خلال مسارات التعلم الآلي. لمزيد من المعلومات، راجع توقعات الدفعات على البيانات الضخمة.

خدمات الويب في الوقت الحقيقي

يمكنك استخدام نماذجك في خدمات الويب مع أهداف الحوسبة التالية:

  • مثيل حاوية Azure
  • Azure Kubernetes Service
  • بيئة التطوير المحلية

لنشر النموذج كخدمة ويب، يجب توفير العناصر التالية:

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

لمزيد من المعلومات، راجع توزيع النماذج.

التحليلات

يدعم Microsoft Power BI استخدام نماذج التعلم الآلي لتحليلات البيانات. لمزيد من المعلومات، راجع تكامل التعلم الآلي من Microsoft Azure في Power BI (معاينة).

التقاط بيانات الإدارة المطلوبة لـ MLOps

يمنحك Azure التعلم الآلي القدرة على تتبع سجل التدقيق الشامل لجميع أصول التعلم الآلي باستخدام بيانات التعريف.

  • يتكامل Azure التعلم الآلي مع Git لتعقب المعلومات حول المستودع / الفرع / الالتزام الذي جاءت منه التعليمات البرمجية الخاصة بك.
  • تساعدك مجموعات بيانات Azure التعلم الآلي على تعقب بيانات الإصدار وملف التعريف وإصدارها.
  • قابلية التفسير تسمح لك بشرح نماذجك، وتلبية التوافق التنظيمي، وفهم كيفية وصول النماذج إلى نتيجة لإدخال معين.
  • يخزن Azure التعلم الآلي Run history لقطة من التعليمات البرمجية والبيانات والحسابات المستخدمة لتدريب نموذج.
  • يلتقط Azure التعلم الآلي Model Registry جميع بيانات التعريف المرتبطة بالنموذج الخاص بك (التي قامت التجربة بتدريبه، حيث يتم نشره، إذا كانت عمليات النشر الخاصة به سليمة).
  • التكامل مع Azure يتيح لك العمل على الأحداث في دورة حياة التعلم الآلي. على سبيل المثال، أحداث تسجيل النموذج والنشر وانجراف البيانات والتدريب (التشغيل).

تلميح

بينما يتم التقاط بعض المعلومات حول النماذج ومجموعات البيانات تلقائياً، يمكنك إضافة المزيد من المعلومات باستخدام العلامات. عندما تبحث عن نماذج ومجموعات بيانات مسجلة في مساحة العمل، يمكنك استخدام العلامات كعامل تصفية.

يعد ربط مجموعة بيانات بنموذج مسجل خطوة اختيارية. للحصول على معلومات حول الرجوع إلى مجموعة بيانات عند تسجيل نموذج، راجع مرجع فئة النموذج.

إعلام الأحداث في دورة حياة التعلم الآلي وأتمتتها والتنبيه بها

ينشر Azure التعلم الآلي الأحداث الرئيسية إلى Azure Event Grid، والتي يمكن استخدامها لإعلام الأحداث وأتمتتها في دورة حياة التعلم الآلي. لمزيد من المعلومات، يرجى الاطلاع على هذا المستند.

مراقبة مشكلات التعلم الآلي التشغيلية

تمكّنك المراقبة من فهم البيانات التي يتم إرسالها إلى النموذج، والتوقعات التي يرجعها.

تساعدك هذه المعلومات على فهم كيفية استخدام النموذج. قد تكون بيانات الإدخال المجمعة مفيدة أيضاً في تدريب الإصدارات المستقبلية من النموذج.

لمزيد من المعلومات، راجع كيفية تمكين تجميع بيانات النموذج.

إعادة تدريب النموذج على البيانات الجديدة

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

لا توجد إجابة عالمية على "كيف أعمل أعرف ما إذا كان يجب إعادة التدريب؟" ولكن أدوات الأحداث والمراقبة التعلم الآلي Azure التي تمت مناقشتها مسبقا هي نقاط بداية جيدة للأتمتة. بعد أن تقرر إعادة التدريب، يجب عليك:

  • معالجة بياناتك مسبقاً باستخدام عملية تلقائية قابلة للتكرار
  • تدريب النموذج الجديد
  • مقارنة مخرجات النموذج الجديد بمخرجات النموذج القديم
  • استخدام معايير معرفة مسبقاً لاختيار ما إذا كان ينبغي استبدال النموذج القديم

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

إدارة دورة حياة التعلم الآلي

يمكنك استخدام GitHub وAzure Pipelines لإنشاء عملية تكامل مستمرة تقوم بتدريب نموذج. في سيناريو نموذجي، عندما يتحقق عالم البيانات من حدوث تغيير في مستودع Git لمشروع ما، يبدأ Azure Pipelines بتشغيل تدريب. يمكن بعد ذلك فحص نتائج التشغيل لمعرفة خصائص الأداء للنموذج المدرب. يمكنك أيضًا إنشاء مسار يوزع النموذج كخدمة ويب.

يسهل ملحق التعلم الآلي من Microsoft Azure العمل باستخدام Azure Pipelines. فهو يوفر التحسينات التالية على Azure Pipelines:

  • تمكين تحديد مساحة العمل عند تعرّف اتصال خدمة.
  • تمكين تشغيل مسارات الإصدار بواسطة النماذج المدربة التي تم إنشاؤها في مسار تدريبي.

لمزيد من المعلومات حول استخدام Azure Pipelines مع التعلم الآلي من Microsoft Azure، راجع الروابط التالية:

يمكنك أيضًا استخدام Azure Data Factory لإنشاء مسار استيعاب بيانات يقوم بإعداد البيانات للاستخدام مع التدريب. لمزيد من المعلومات، راجع مسار استيعاب البيانات.

الخطوات التالية

تعرف على المزيد من خلال قراءة الموارد التالية واستكشافها: