كيفية عمل Azure التعلم الآلي: الموارد والأصول

ينطبق على:ملحق ML Azure CLI v2 (الحالي)Python SDK azure-ai-ml v2 (الحالي)

تنطبق هذه المقالة على الإصدار الثاني من Azure التعلم الآلي CLI وPython SDK (v2). لاطلاع على لإصدار الأول (v1)، راجع كيف يعمل التعلم الآلي من Microsoft Azure: البنية والمفاهيم (v1)

يتضمن التعلم الآلي من Microsoft Azure العديد من الموارد والأصول لتمكينك من تنفيذ مهام التعلم الآلي. هذه الموارد والأصول مطلوبة لتشغيل أي مهمة.

  • الموارد: الإعداد أو موارد البنية الأساسية اللازمة لتشغيل سير عمل التعلّم الآلي. تتضمن الموارد ما يلي:
  • الأصول: تم إنشاؤها باستخدام أوامر Azure التعلم الآلي أو كجزء من تشغيل التدريب/تسجيل النقاط. يتم إصدار الأصول ويمكن تسجيلها في مساحة عمل Azure التعلم الآلي. وتشمل ما يلي:

يوفر هذا المستند نظرة شاملة سريعة على هذه الموارد والأصول.

المتطلبات الأساسية

لاستخدام أمثلة التعليمات البرمجية ل Python SDK في هذه المقالة:

  1. تثبيت Python SDK v2

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

    # import required libraries
    from azure.ai.ml import MLClient
    from azure.ai.ml.entities import Workspace
    from azure.identity import DefaultAzureCredential
    
    # Enter details of your subscription
    subscription_id = "<SUBSCRIPTION_ID>"
    resource_group = "<RESOURCE_GROUP>"
    
    # get a handle to the subscription (use this if you haven't created a workspace yet)
    ml_client = MLClient(DefaultAzureCredential(), subscription_id, resource_group)
    
    # all other examples in this article require the connection to include workspace name
    workspace_name = "<WORKSPACE_NAME>"
    ml_client = ml_client = MLClient(DefaultAzureCredential(), subscription_id, resource_group, workspace_name)
    

مساحة عمل

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

إنشاء مساحة عمل

لإنشاء مساحة عمل باستخدام Python SDK v2، يمكنك استخدام التعليمات البرمجية الآتية:

ينطبق على: Python SDK azure-ai-ml v2 (الحالي)

# specify the workspace details
ws = Workspace(
    name="my_workspace",
    location="eastus",
    display_name="My workspace",
    description="This example shows how to create a workspace",
    tags=dict(purpose="demo"),
)

ml_client.workspaces.begin_create(ws) # use MLClient to connect to the subscription and resource group and create workspace

يعرض دفتر ملاحظات Jupyter هذا المزيد من الطرق لإنشاء مساحة عمل Azure التعلم الآلي باستخدام SDK v2.

Compute

الحساب هو مورد حساب محدد حيث تقوم بآداء مهمتك أو استضافة نقطة النهاية. يدعم Azure التعلم الآلي الأنواع التالية من الحوسبة:

  • مثيل الحساب - بيئة تطوير مدارة ومكونة بالكامل على السحابة. يمكنك استخدام المثيل كحساب تدريب أو استدلال للتطوير والاختبار. انه تماما مثل الجهاز الظاهري على السحابة.
  • مجموعة الحساب - هي بنية أساسية مدارة للحساب تسمح لك بإنشاء مجموعة من عقد حساب CPU أو GPU بسهولة على السحابة.
  • الحوسبة بلا خادم - مجموعة حساب يمكنك الوصول إليها بسرعة. عند استخدام الحوسبة بلا خادم، لا تحتاج إلى إنشاء نظام المجموعة الخاص بك. يتم إلغاء تحميل جميع إدارة دورة حياة الحساب إلى Azure التعلم الآلي.
  • مجموعة الاستدلال - تستخدم لتوزيع نماذج التعلم الآلي المدربة إلى Azure Kubernetes Service. يمكنك إنشاء مجموعة Azure Kubernetes Service (AKS) من مساحة عمل Azure التعلم الآلي، أو إرفاق مجموعة AKS موجودة.
  • الحساب المرفق - يمكنك إرفاق موارد الحساب الخاصة بك لمساحة العمل واستخدامها للتدريب والاستدلال.

إنشاء حساب

لإنشاء نظام مجموعة حساب باستخدام Python SDK v2، يمكنك استخدام التعليمات البرمجية التالية:

ينطبق على: Python SDK azure-ai-ml v2 (الحالي)

cluster_basic = AmlCompute(
    name="basic-example",
    type="amlcompute",
    size="STANDARD_DS3_v2",
    location="westus",
    min_instances=0,
    max_instances=2,
    idle_time_before_scale_down=120,
)
ml_client.begin_create_or_update(cluster_basic)

يعرض دفتر ملاحظات Jupyter هذا مزيدا من الطرق لإنشاء حساب باستخدام SDK v2.

مخزن بيانات

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

  • حاوية Azure Blob
  • مشاركة ملف Azure
  • Azure Data Lake
  • Azure Data Lake Gen2

إنشاء مجموعة بيانات

لإنشاء مخزن بيانات باستخدام Python SDK v2، يمكنك استخدام التعليمات البرمجية الآتية:

ينطبق على: Python SDK azure-ai-ml v2 (الحالي)

import AzureBlobDatastore

blob_datastore1 = AzureBlobDatastore(
    name="blob_example",
    description="Datastore pointing to a blob container.",
    account_name="mytestblobstore",
    container_name="data-container",
    credentials={
        "account_key": "XXXxxxXXXxXXXXxxXXXXXxXXXXXxXxxXxXXXxXXXxXXxxxXXxxXXXxXxXXXxxXxxXXXXxxxxxXXxxxxxxXXXxXXX"
    },
)
ml_client.create_or_update(blob_datastore1)

يعرض دفتر ملاحظات Jupyter هذا مزيدا من الطرق لإنشاء مخازن بيانات باستخدام SDK v2.

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

النموذج

تتكون نماذج Azure التعلم الآلي من الملف (الملفات) الثنائية التي تمثل نموذج التعلم الآلي وأي بيانات تعريف مقابلة. يمكن إنشاء النماذج من دليل أو ملف محلي أو بعيد. بالنسبة للمواقع البعيدة يتم دعم مواقع https وwasbs وazureml. سيتم تعقب النموذج الذي أنشأ في مساحة العمل تحت الاسم والإصدار المحددين. يدعم Azure التعلم الآلي ثلاثة أنواع من تنسيق التخزين للنماذج:

  • custom_model
  • mlflow_model
  • triton_model

إنشاء نموذج في سجل النماذج

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

لمزيد من المعلومات حول كيفية إنشاء نماذج في السجل، راجع العمل مع النماذج في Azure التعلم الآلي.

البيئة

بيئات التعلم الآلي من Microsoft Azure عبارة عن تغليف للبيئة التي تحدث فيها مهمة التعلّم الآلي. وهي تحدد حزم البرمجيات ومتغيرات البيئة وإعدادات البرامج حول البرامج النصية للتدريب والتسجيل. تدار البيئات ويتم إصدارها داخل مساحة عمل التعلم الآلي من Microsoft Azure. تُمكّن البيئات سير عمل التعلّم الآلي القابل للتكرار والتدقيق والمتنقل عبر مجموعة متنوعة من الحسابات.

أنواع البيئة

يدعم Azure التعلم الآلي نوعين من البيئات: منسق ومخصص.

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

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

  • صورة docker
  • صورة docker أساسية مع conda YAML لمزيد من التخصيص
  • سياق بناء docker

إنشاء بيئة مخصصة ل Azure التعلم الآلي

لإنشاء بيئة باستخدام Python SDK v2، راجع إنشاء بيئة.

يقدم دفتر ملاحظات Jupyter هذا مزيدا من الطرق لإنشاء بيئات مخصصة باستخدام SDK v2.

بيانات

يتيح لك التعلم الآلي من Microsoft Azure العمل مع أنواع مختلفة من البيانات:

  • معرفات URI (موقع في التخزين المحلي/السحابي)
    • uri_folder
    • uri_file
  • الجداول (تجريد بيانات جدولي)
    • mltable
  • الاوليات
    • string
    • boolean
    • number

بالنسبة لمعظم السيناريوهات، ستستخدم URIs (uri_folder و uri_file) - وهو موقع في التخزين يمكن تعيينه بسهولة إلى نظام الملفات لعقدة حساب في مهمة عن طريق إدخال التخزين أو تنزيله إلى العقدة.

mltable هو تجريد للبيانات المجدولة التي ستستخدم لمهام AutoML ومهام Parallel وبعض السيناريوهات المتقدمة. في حال كنت قد بدأت للتو في استخدام التعلم الآلي من Microsoft Azure ولا تستخدم AutoML، فإننا نشجعك بشدة على البدء في استخدام URLs.

المكون

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

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