تدريب النماذج باستخدام التعلم الآلي من Microsoft Azure (الإصدار 1)

ينطبق على:Python SDK azureml v1

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

  • SDK لـ Python لنظام التعلم الآلي من Azure: يوفر Python SDK عدة طرق لتدريب النماذج، ولكل منها قدرات مختلفة.

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

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

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

Python SDK

يسمح لك SDK لـ Python لنظام التعلم الآلي من Azure بإنشاء وتشغيل مهام سير عمل التعلم الآلي باستخدام خدمة التعلم الآلي من Azure. يمكنك التفاعل مع الخدمة من جلسة عمل Python تفاعلية أو دفاتر ملاحظات Jupyter أو Visual Studio Code أو بيئة تطوير متكامل أخرى.

تكوين التشغيل

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

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

Automated Machine Learning

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

تلميح

بالإضافة إلى Python SDK، يمكنك أيضاً استخدام التعلم الآلي التلقائي من خلال استوديو التعلم الآلي من Azure.

مسار التعلم الآلي

يمكن أن تستخدم مسارات التعلم الآلي أساليب التدريب المذكورة سابقاً. تتعلق المسارات بشكل أكبر بإنشاء سير عمل، لذا فهي تشمل أكثر من مجرد تدريب النماذج. في المسارات، يمكنك تدريب نموذج باستخدام التعلم الآلي التلقائي أو تكوينات التشغيل.

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

تتكون دورة حياة تدريب Azure من:

  1. ضغط الملفات في مجلد المشروع، مع تجاهل تلك المحددة في ‎.amlignore أو ‎.gitignore
  2. توسيع نطاق نظام مجموعة الحساب
  3. إنشاء ملف dockerfile أو تنزيله إلى عقدة الحساب
    1. يحسب النظام تجزئة من:
    2. يستخدم النظام هذه التجزئة كمفتاح في البحث عن مساحة عمل لسجل حاوية Azure (ACR)
    3. إذا لم يتم العثور عليه، فإنه يبحث عن تطابق في ACR العمومي
    4. إذا لم يتم العثور عليه، يقوم النظام بإنشاء صورة جديدة (والتي سيتم تخزينها مؤقتاً وتسجيلها مع ACR لمساحة العمل)
  4. تنزيل ملف المشروع المضغوط إلى تخزين مؤقت على عقدة الحساب
  5. إلغاء ضغط ملف المشروع
  6. تنفيذ عقدة الحساب لـ python <entry script> <arguments>
  7. حفظ السجلات وملفات النموذج والملفات الأخرى المكتوبة إلى ./outputs لحساب التخزين المقترن بمساحة العمل
  8. تقليل حجم الحساب، بما في ذلك إزالة التخزين المؤقت

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

مصمم التعلم الآلي من Azure

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

Azure CLI

تعد CLI للتعلم الآلي بمثابة ملحق لـ Azure CLI. توفر أوامر CLI عبر الأنظمة الأساسية للعمل مع نظام التعلم الآلي من Azure. عادة ما تستخدم CLI لأتمتة المهام، مثل تدريب نماذج التعلم الآلي.

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

تعرف على كيفية تكوين تشغيل تدريب.