مشاركة البيانات عبر مساحات العمل باستخدام السجلات (معاينة)
يتيح لك سجل Azure التعلم الآلي التعاون عبر مساحات العمل داخل مؤسستك. باستخدام السجلات، يمكنك مشاركة النماذج والمكونات والبيئات والبيانات. تعد مشاركة البيانات مع السجلات حاليا ميزة معاينة. في هذه المقالة، ستتعرف على كيفية:
- إنشاء أصل بيانات في السجل.
- مشاركة أصل بيانات موجود من مساحة العمل إلى السجل
- استخدم أصل البيانات من السجل كمدخل إلى مهمة تدريب نموذج في مساحة عمل.
هام
تُعد هذه الميزة قيد الإصدار الأولي العام في الوقت الحالي. يجري توفير إصدار المعاينة هذا دون اتفاقية على مستوى الخدمة، ولا نوصي باستخدامه لأحمال عمل الإنتاج. بعض الميزات ربما لا تكون مدعمة أو بها بعض القدرات المقيدة.
لمزيد من المعلومات، راجع شروط الاستخدام التكميلية لمعاينات Microsoft Azure.
السيناريو الرئيسي الذي تمت معالجته عن طريق مشاركة البيانات باستخدام سجل Azure التعلم الآلي
قد تحتاج إلى مشاركة البيانات عبر فرق أو مشاريع أو مساحات عمل متعددة في موقع مركزي. لا تحتوي هذه البيانات على عناصر تحكم حساسة في الوصول ويمكن استخدامها على نطاق واسع في المؤسسة.
تتضمن الأمثلة ما يلي:
- يريد الفريق مشاركة مجموعة بيانات عامة تتم معالجتها مسبقا وجاهزة للاستخدام في التجارب.
- حصلت مؤسستك على مجموعة بيانات معينة لمشروع من مورد خارجي وتريد إتاحتها لجميع الفرق التي تعمل على مشروع.
- يريد الفريق مشاركة أصول البيانات عبر مساحات العمل في مناطق مختلفة.
في هذه السيناريوهات، يمكنك إنشاء أصل بيانات في سجل أو مشاركة أصل بيانات موجود من مساحة عمل إلى سجل. يمكن بعد ذلك استخدام أصل البيانات هذا عبر مساحات عمل متعددة.
السيناريوهات التي لم تتم معالجتها عن طريق مشاركة البيانات باستخدام سجل Azure التعلم الآلي
مشاركة البيانات الحساسة التي تتطلب تحكما دقيقا في الوصول. لا يمكنك إنشاء أصل بيانات في سجل لمشاركته مع مجموعة فرعية صغيرة من المستخدمين/مساحات العمل بينما يمكن الوصول إلى السجل من قبل العديد من المستخدمين الآخرين في المؤسسة.
مشاركة البيانات المتوفرة في التخزين الحالي التي يجب عدم نسخها أو كبيرة جدا أو باهظة الثمن بحيث لا يمكن نسخها. كلما تم إنشاء أصول البيانات في سجل، يتم استيعاب نسخة من البيانات في تخزين السجل بحيث يمكن نسخها نسخا متماثلا.
أنواع أصول البيانات التي يدعمها سجل التعلم الآلي Azure
تلميح
تحقق من السيناريوهات المتعارفة التالية عند تحديد ما إذا كنت تريد استخدام uri_file
أو uri_folder
أو mltable
للسيناريو الخاص بك.
يمكنك إنشاء ثلاثة أنواع من أصول البيانات:
نوع | V2 API | سيناريو متعارف عليه |
---|---|---|
ملف: الرجوع إلى ملف واحد | uri_file |
قراءة/كتابة ملف واحد - يمكن أن يحتوي الملف على أي تنسيق. |
المجلد: الرجوع إلى مجلد واحد | uri_folder |
يجب قراءة/كتابة دليل ملفات parquet/CSV في Pandas/Spark. التعلم العميق مع الصور والنص والصوت وملفات الفيديو الموجودة في دليل. |
الجدول: الرجوع إلى جدول بيانات | mltable |
لديك مخطط معقد يخضع للتغييرات المتكررة، أو تحتاج إلى مجموعة فرعية من البيانات الجدولية الكبيرة. |
المسارات التي يدعمها سجل التعلم الآلي Azure
عند إنشاء أصل بيانات، يجب تحديد معلمة مسار تشير إلى موقع البيانات. حاليا، المسارات المدعومة الوحيدة هي إلى المواقع على الكمبيوتر المحلي.
تلميح
"محلي" يعني التخزين المحلي للكمبيوتر الذي تستخدمه. على سبيل المثال، إذا كنت تستخدم كمبيوتر محمول، محرك الأقراص المحلي. إذا كان مثيل حساب Azure التعلم الآلي، فإن محرك الأقراص "المحلي" لمثيل الحساب.
المتطلبات الأساسية
قبل اتباع الخطوات الواردة في هذه المقالة، تأكد من توفر المتطلبات الأساسية التالية لديك:
الإلمام بسجلات Azure التعلم الآلي ومفاهيم البيانات في Azure التعلم الآلي.
سجل التعلم الآلي Azure لمشاركة البيانات. لإنشاء سجل، راجع التعرف على كيفية إنشاء سجل.
مساحة عمل للتعلم الآلي من Microsoft Azure. إذا لم يكن لديك واحدة، فاستخدم الخطوات الواردة في مقالة التشغيل السريع: إنشاء موارد مساحة العمل لإنشاء واحدة.
هام
يجب أن تكون منطقة Azure (الموقع) حيث تقوم بإنشاء مساحة العمل الخاصة بك في قائمة المناطق المدعومة لسجل Azure التعلم الآلي.
البيئة والمكون الذي تم إنشاؤه من مقالة كيفية مشاركة النماذج والمكونات والبيئات.
Azure CLI والملحق
ml
أو Azure التعلم الآلي Python SDK v2:لتثبيت Azure CLI والملحق، راجع تثبيت CLI (v2) وإعداده واستخدامه.
هام
تفترض أمثلة CLI في هذه المقالة أنك تستخدم Bash (أو متوافق). على سبيل المثال، من النظام الخاص بـ Linux أو نظام Windows الفرعي لـ Linux.
تفترض الأمثلة أيضا أنك قمت بتكوين الإعدادات الافتراضية ل Azure CLI بحيث لا تضطر إلى تحديد المعلمات للاشتراك أو مساحة العمل أو مجموعة الموارد أو الموقع. لتعيين الإعدادات الافتراضية، استخدم الأوامر التالية. استبدل المعلمات التالية بقيم التكوين:
- استبدل
<subscription>
بمعرف اشتراك Azure الخاص بك. - استبدل
<workspace>
بمساحة عمل التعلم الآلي من Azure. - استبدل
<resource-group>
بمجموعة موارد Azure التي تحتوي على مساحة العمل لديك. - استبدل
<location>
بمنطقة Azure التي تحتوي على مساحة العمل.
az account set --subscription <subscription> az configure --defaults workspace=<workspace> group=<resource-group> location=<location>
بإمكانك معرفة ما الإعدادات الافتراضية الحالية باستخدام الأمر
az configure -l
.- استبدل
مستودع أمثلة منسوخة
تستند أمثلة التعليمات البرمجية في هذه المقالة إلى nyc_taxi_data_regression
النموذج في مستودع الأمثلة. لاستخدام هذه الملفات على بيئة التطوير الخاصة بك، استخدم الأوامر التالية لاستنساخ المستودع وتغيير الدلائل إلى المثال:
git clone https://github.com/Azure/azureml-examples
cd azureml-examples
بالنسبة لمثال CLI، قم بتغيير الدلائل إلى cli/jobs/pipelines-with-components/nyc_taxi_data_regression
في النسخة المحلية من مستودع الأمثلة.
cd cli/jobs/pipelines-with-components/nyc_taxi_data_regression
إنشاء اتصال SDK
تلميح
هذه الخطوة مطلوبة فقط عند استخدام Python SDK.
إنشاء اتصال عميل بكل من مساحة عمل Azure التعلم الآلي والسجل. في المثال التالي، استبدل <...>
قيم العنصر النائب بالقيم المناسبة للتكوين الخاص بك. على سبيل المثال، معرف اشتراك Azure واسم مساحة العمل واسم السجل وما إلى ذلك:
ml_client_workspace = MLClient( credential=credential,
subscription_id = "<workspace-subscription>",
resource_group_name = "<workspace-resource-group",
workspace_name = "<workspace-name>")
print(ml_client_workspace)
ml_client_registry = MLClient(credential=credential,
registry_name="<REGISTRY_NAME>",
registry_location="<REGISTRY_REGION>")
print(ml_client_registry)
إنشاء بيانات في السجل
يتم استخدام أصل البيانات الذي تم إنشاؤه في هذه الخطوة لاحقا في هذه المقالة عند إرسال مهمة تدريب.
تلميح
يمكن استخدام نفس أمر az ml data create
CLI لإنشاء بيانات في مساحة عمل أو سجل. يؤدي تشغيل الأمر باستخدام --workspace-name
الأمر إلى إنشاء البيانات في مساحة عمل بينما يؤدي تشغيل الأمر مع --registry-name
إلى إنشاء البيانات في السجل.
يوجد مصدر البيانات في مستودع الأمثلة الذي نسخته سابقا. ضمن النسخة المحلية، انتقل إلى مسار الدليل التالي: cli/jobs/pipelines-with-components/nyc_taxi_data_regression
. في هذا الدليل، قم بإنشاء ملف YAML باسم data-registry.yml
واستخدم YAML التالي كمحتويات الملف:
$schema: https://azuremlschemas.azureedge.net/latest/data.schema.json
name: transformed-nyc-taxt-data
description: Transformed NYC Taxi data created from local folder.
version: 1
type: uri_folder
path: data_transformed/
path
تشير القيمة إلى data_transformed
الدليل الفرعي، الذي يحتوي على البيانات التي تتم مشاركتها باستخدام السجل.
لإنشاء البيانات في السجل، استخدم az ml data create
. في الأمثلة التالية، استبدل <registry-name>
باسم السجل الخاص بك.
az ml data create --file data-registry.yml --registry-name <registry-name>
إذا تلقيت خطأ بأن البيانات بهذا الاسم والإصدار موجودة بالفعل في السجل، يمكنك إما تحرير version
الحقل في data-registry.yml
أو تحديد إصدار مختلف على CLI يتجاوز قيمة الإصدار في data-registry.yml
.
# use shell epoch time as the version
version=$(date +%s)
az ml data create --file data-registry.yml --registry-name <registry-name> --set version=$version
تلميح
version=$(date +%s)
إذا لم يقم الأمر بتعيين $version
المتغير في بيئتك، فاستبدل $version
برقم عشوائي.
احفظ name
البيانات و version
من إخراج az ml data create
الأمر واستخدمها مع az ml data show
الأمر لعرض تفاصيل الأصل.
az ml data show --name transformed-nyc-taxt-data --version 1 --registry-name <registry-name>
تلميح
إذا استخدمت اسما أو إصدارا مختلفا للبيانات، فاستبدل --name
المعلمتين و --version
وفقا لذلك.
يمكنك أيضا استخدام az ml data list --registry-name <registry-name>
لسرد جميع أصول البيانات في السجل.
إنشاء بيئة ومكون في السجل
لإنشاء بيئة ومكون في السجل، استخدم الخطوات الواردة في مقالة كيفية مشاركة النماذج والمكونات والبيئات . يتم استخدام البيئة والمكون في مهمة التدريب في القسم التالي.
تلميح
يمكنك استخدام بيئة ومكون من مساحة العمل بدلا من استخدامهما من السجل.
تشغيل مهمة البنية الأساسية لبرنامج ربط العمليات التجارية في مساحة عمل باستخدام مكون من السجل
عند تشغيل مهمة البنية الأساسية لبرنامج ربط العمليات التجارية التي تستخدم مكونا وبيانات من سجل، تكون موارد الحوسبة محلية إلى مساحة العمل. في المثال التالي، تستخدم الوظيفة مكون تدريب Scikit Learn وأصل البيانات الذي تم إنشاؤه في الأقسام السابقة لتدريب نموذج.
إشعار
الجانب الرئيسي هو أن هذا المسار سيتم تشغيله في مساحة عمل باستخدام بيانات التدريب غير الموجودة في مساحة العمل المحددة. البيانات موجودة في سجل يمكن استخدامه مع أي مساحة عمل في مؤسستك. يمكنك تشغيل مهمة التدريب هذه في أي مساحة عمل لديك حق الوصول إليها دون القلق بشأن إتاحة بيانات التدريب في مساحة العمل هذه.
تحقق من أنك في cli/jobs/pipelines-with-components/nyc_taxi_data_regression
الدليل. قم بتحرير component
القسم في أسفل train_job
قسم من single-job-pipeline.yml
الملف للإشارة إلى مكون التدريب وضمن path
training_data
القسم للإشارة إلى أصل البيانات الذي تم إنشاؤه في الأقسام السابقة. يوضح المثال التالي الشكل الذي single-job-pipeline.yml
يبدو عليه بعد التحرير. <registry_name>
استبدل باسم السجل الخاص بك:
$schema: https://azuremlschemas.azureedge.net/latest/pipelineJob.schema.json
type: pipeline
display_name: nyc_taxi_data_regression_single_job
description: Single job pipeline to train regression model based on nyc taxi dataset
jobs:
train_job:
type: command
component: azureml://registries/<registry-name>/component/train_linear_regression_model/versions/1
compute: azureml:cpu-cluster
inputs:
training_data:
type: uri_folder
path: azureml://registries/<registry-name>/data/transformed-nyc-taxt-data/versions/1
outputs:
model_output:
type: mlflow_model
test_data:
تحذير
- قبل تشغيل مهمة البنية الأساسية لبرنامج ربط العمليات التجارية، تأكد من أن مساحة العمل التي ستقوم بتشغيل المهمة فيها موجودة في منطقة Azure التي يدعمها السجل الذي قمت بإنشاء البيانات فيه.
- تأكد من أن مساحة العمل تحتوي على نظام مجموعة حساب بالاسم
cpu-cluster
أو قم بتحريرcompute
الحقل تحتjobs.train_job.compute
باسم الحساب الخاص بك.
تشغيل مهمة البنية الأساسية لبرنامج ربط العمليات التجارية باستخدام az ml job create
الأمر .
az ml job create --file single-job-pipeline.yml
تلميح
إذا لم تقم بتكوين مساحة العمل الافتراضية ومجموعة الموارد كما هو موضح في قسم المتطلبات الأساسية، فستحتاج إلى تحديد --workspace-name
المعلمتين و --resource-group
للعمل az ml job create
.
لمزيد من المعلومات حول تشغيل المهام، راجع المقالات التالية:
مشاركة البيانات من مساحة العمل إلى السجل
توضح الخطوات التالية كيفية مشاركة أصل بيانات موجود من مساحة عمل إلى سجل.
أولا، إنشاء أصل بيانات في مساحة العمل. تأكد من أنك في cli/assets/data
الدليل. local-folder.yml
يتم استخدام الموجود في هذا الدليل لإنشاء أصل بيانات في مساحة العمل. البيانات المحددة في هذا الملف متوفرة في cli/assets/data/sample-data
الدليل. YAML التالي هو محتويات local-folder.yml
الملف:
$schema: https://azuremlschemas.azureedge.net/latest/data.schema.json
name: local-folder-example-titanic
description: Dataset created from local folder.
type: uri_folder
path: sample-data/
لإنشاء أصل البيانات في مساحة العمل، استخدم الأمر التالي:
az ml data create -f local-folder.yml
لمزيد من المعلومات حول إنشاء أصول البيانات في مساحة عمل، راجع كيفية إنشاء أصول البيانات.
يمكن مشاركة أصل البيانات الذي تم إنشاؤه في مساحة العمل إلى سجل. من السجل، يمكن استخدامه في مساحات عمل متعددة. لاحظ أننا نمرر والمعلمة --share_with_version
في وظيفة المشاركة--share_with_name
. هذه المعلمات اختيارية وإذا لم تقم بتمرير هذه البيانات سيتم مشاركتها بنفس الاسم والإصدار كما هو الحال في مساحة العمل.
يوضح المثال التالي استخدام أمر المشاركة لمشاركة أصل بيانات. استبدل <registry-name>
باسم السجل الذي ستتم مشاركة البيانات إليه.
az ml data share --name local-folder-example-titanic --version <version-in-workspace> --share-with-name <name-in-registry> --share-with-version <version-in-registry> --registry-name <registry-name>
الخطوات التالية
الملاحظات
https://aka.ms/ContentUserFeedback.
قريبًا: خلال عام 2024، سنتخلص تدريجيًا من GitHub Issues بوصفها آلية إرسال ملاحظات للمحتوى ونستبدلها بنظام ملاحظات جديد. لمزيد من المعلومات، راجعإرسال الملاحظات وعرضها المتعلقة بـ