مسارات التعلم الآلي من Microsoft Azure
بصفتك عالم بيانات، ستعمل في المقام الأول باستخدام التعلم الآلي من Microsoft Azure لتدريب النماذج وإدارتها. بعد التجريب، يجب تحويل عملك إلى تعليمة Python برمجية للإنتاج للسماح بالأتمتة باستخدام مسارات Azure (DevOps) أو إجراءات GitHub.
التجربة في التعلم الآلي من Microsoft Azure
يوفر التعلم الآلي من Microsoft Azure مجموعة من الميزات التي تساعدك على تنظيم عملك. على سبيل المثال، يمكنك تنفيذ ما يلي باستخدام التعلم الآلي من Microsoft Azure:
- تسجيل مجموعات البيانات لإعادة استخدام البيانات المُخزّّنة في مستودع بيانات بسهولة.
- تدريب نموذج على مثيلات الحوسبة أو المجموعات عن بُعد اعتماداً على متطلباتك.
- تعقب جميع البرامج النصية التي تم تنفيذها باستخدام التجارب لمقارنة عملك بسهولة.
- تسجيل النماذج المُدرّبة ونشر نموذج لاستهلاك الدفعات أو الاستهلاك في الوقت الحقيقي.
تتكون معظم أعمالك كعالم بيانات من التجريب: اختبار تكوينات مختلفة لتدريب النماذج ومراجعة مقاييس الأداء لتحديد النموذج الذي سيتم نشره إلى الإنتاج.
بافتراض أنك تجرب في دفتر ملاحظات Jupyter (.ipynb من الملفات)، ستحتاج إلى تحويل التجربة إلى تعليمة Python برمجية للإنتاج، عن طريق:
- إزالة جميع التعليمات البرمجية غير الأساسية.
- إعادة بناء التعليمات البرمجية إلى دوال.
- الجمع بين الدالات ذات الصلة في برامج Python النصية (
.pyمن الملفات). - إنشاء اختبارات الوحدة لكل برنامج Python نصي.
- يمكنك إنشاء مسار لتجميع البرامج النصية في سير عمل يمكن أتمتته.
بمجرد أن تصبح تعليمتك البرمجية جاهزة للإنتاج، يمكنك أتمتة تنفيذ البرامج النصية باستخدام مسار التعلم الآلي من Microsoft Azure.
إنشاء مسارات للتعلم الآلي من Microsoft Azure
يوجد مفهوم المسار في مختلف الأدوات، حيث يوفر غالباً طريقة لتجميع المهام بترتيب معين. الميزة الأساسية للمسار هي أنه يمكنك جدولته أو تحفيز تشغيله.
يتم إنشاء مسار التعلم الآلي من Microsoft Azure داخل مساحة عمل التعلم الآلي من Microsoft Azure. لإنشاء مسار، يمكنك تعريف الخطوات باستخدام برامج Python النصية.
وبشكل اختياري، يمكنك إنشاء مسار باستخدام مكونات التعلم الآلي من Microsoft Azure. عند إنشاء مكون، يتم تخزين البرنامج النصي باستخدام بيانات التعريف باعتباره بيئة ضرورية في مساحة عمل التعلم الآلي من Microsoft Azure. يمكن مشاركة المكونات واستخدامها من قِبل أي شخص داخل مساحة العمل نفسها، مما ييسّر على الآخرين إنشاء مسارات جديدة بسرعة بناءً على عملك.
لإنشاء مسار يمكن استخدامه للأتمتة، يُوصى بتعريف مهمة مسار في YAML يمكن تشغيلها باستخدام أمر في واجهة سطر أوامر (الإصدار الثاني).
يحتاج ملف YAML الذي يعرّف المسار إلى تحديد المعلومات التالية:
- ما يجب تشغيله: الخطوات المُعرّفة على أنها برامج Python نصية أو مكونات.
- كيفية تشغيله: أية مدخلات أو مخرجات يُفترض أن تتوقعها المكونات.
- مكان تشغيله: الحساب المطلوب لتنفيذ التعليمة البرمجية (عادةً ما يكون نظام مجموعة حساب التعلم الآلي من Microsoft Azure).
على سبيل المثال، قد يتم تعريف مسار يأخذ البيانات الأولية كمدخل ويحولها ويدرب نموذجاً في ملف pipeline-job.yml بالشكل التالي:
$schema: https://azuremlschemas.azureedge.net/latest/pipelineJob.schema.json
type: pipeline
display_name: nyc-taxi-pipeline-example
experiment_name: nyc-taxi-pipeline-example
jobs:
transform-job:
type: command
raw_data:
type: uri_folder
path: ./data
outputs:
transformed_data:
mode: rw_mount
code: src/transform
environment: azureml:AzureML-sklearn-0.24-ubuntu18.04-py37-cpu@latest
compute: azureml:cpu-cluster
command: >-
python transform.py
--raw_data ${{inputs.raw_data}}
--transformed_data ${{outputs.transformed_data}}
train-job:
type: command
inputs:
training_data: ${{parent.jobs.transform-job.outputs.transformed_data}}
outputs:
model_output:
mode: rw_mount
test_data:
mode: rw_mount
code: src/train
environment: azureml:AzureML-sklearn-0.24-ubuntu18.04-py37-cpu@latest
compute: azureml:cpu-cluster
command: >-
python train.py
--training_data ${{inputs.training_data}}
--test_data ${{outputs.test_data}}
--model_output ${{outputs.model_output}}
لتشغيل المسار داخل التعلم الآلي من Microsoft Azure، يمكنك استخدام الأمر التالي في واجهة سطر الأوامر:
az ml job create --file pipeline-job.yml
بمجرد انتهاء المسار من التنفيذ، يمكنك مراجعة المسار وخطواته التي تم تنفيذها في مساحة عمل التعلم الآلي من Microsoft Azure.
تلميح
تعرّف على كيفية إنشاء مسار في التعلم الآلي من Microsoft Azure باستخدام واجهة سطؤ الأوامر (الإصدار الثاني)
عند تحويل أحمال عمل التعلم الآلي إلى برامج Python نصية ومهام مجموعة داخل مسار، يصبح نموذجك جاهزاً للإنتاج. يتيح لك تحديد المسار في ملف YAML أتمتة التدريب وإعادة التدريب عن طريق تحفيز تشغيل المسار باستخدام واجهة سطر الأوامر (الإصدار الثاني). يمكنك تشغيل أمر في واجهة سطر أوامر، بالإشارة إلى ملف YAML للمسار، من مسارات Azure (DevOps) أو إجراءات GitHub.