إعداد بيئة تطوير باستخدام Azure Databricks وAutoML في التعلم الآلي من Microsoft Azure

تعرف على كيفية تكوين بيئة تطوير في Azure Machine Learning الذي يستخدم Azure Databricks وML الآلي.

تعد Azure Databricks مثالية لتشغيل مهام سير عمل التعلم الآلي المكثفة على نطاق واسع على النظام الأساسي Apache Spark القابل لتغيير الحجم في سحابة Azure. يوفر بيئة تعاونية تعتمد على Notebook مع وحدة معالجة مركزية أو مجموعة حوسبة مستندة إلى GPU.

للحصول على معلومات بشأن بيئات تطوير التعلم الآلي الأخرى، راجع إعداد بيئة تطوير Python.

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

Azure Machine Learning Workspace. لإنشاء واحدة، استخدم الخطوات الواردة في مقالة إنشاء موارد مساحة العمل.

مجموعات بيانات Azure مع Azure Machine Learning وAutoML

تتكامل Azure Databricks مع Azure Machine Learning وإمكانيات AutoML الخاصة به.

يمكنك استخدام Azure Databricks:

قم بإعداد مجموعة Databricks

أنشئ مجموعة قوالب البيانات. تنطبق بعض الإعدادات فقط إذا قمت بتثبيت SDK للتعلم الآلي على Databricks.

يستغرق إنشاء المجموعة بضع دقائق.

استخدم الإعدادات التالية:

إعداد ينطبق على القيمة
اسم المجموعة always yourclustername
نسخة Databricks Runtime always 9.1 LTS
إصدار Python always 3
نوع العامل
(يحدد الحد الأقصى لعدد التكرارات المتزامنة)
التعلم الآلي التلقائي
only
يفضل ذاكرة VM المحسّنة
Workers always 2 أو أعلى
تفعيل التحجيم التلقائي التعلم الآلي التلقائي
only
Uncheck

انتظر حتى يتم تشغيل نظام المجموعة قبل المضي قدماً.

إضافة SDK التعلم الآلي من Microsoft Azure إلى Databricks

بمجرد تشغيل المجموعة، أنشئ مكتبة لإرفاق حزمة التعلم الآلي من Microsoft Azure SDK المناسبة إلى مجموعتك.

لاستخدام التعلم الآلي التلقائي، انتقل إلى إضافة SDK التعلم الآلي من Microsoft Azure باستخدام AutoML.

  1. انقر بزر الماوس الأيمن فوق مجلد مساحة العمل الحالي حيث تريد تخزين المكتبة. حدد Create>Library.

    تلميح

    إذا كان لديك إصدار SDK قديم، فقم بإلغاء تحديده من المكتبات المثبتة في المجموعة وانتقل إلى سلة المهملات. قم بتثبيت إصدار SDK الجديد وأعد تشغيل المجموعة. إذا كانت هناك مشكلة بعد إعادة التشغيل، فافصل المجموعة وأعد توصيلها.

  2. حدد الخيار التالي (لا يتم دعم عمليات تثبيت SDK أخرى)

    إضافات حزمة SDK المصدر اسم PyPi
    ل Databricks قم بتحميل Python Egg أو PyPI azureml-sdk[databricks]

    تحذير

    لا يمكن تثبيت أي إضافات SDK أخرى. اختر فقط خيار [databricks].

    • لا تحدد Attach automatically to all clusters.
    • حدد Attach بجوار اسم المجموعة الخاصة بك.
  3. راقب بحثاً عن الأخطاء حتى تتغير الحالة إلى مرفق، الأمر الذي قد يستغرق عدة دقائق. إذا فشلت هذه الخطوة:

    حاول إعادة تشغيل المجموعة الخاصة بك عن طريق:

    1. في الجزء الأيسر، حدد Clusters.
    2. في الجدول، حدد اسم المجموعة الخاصة بك.
    3. في علامة التبويب Libraries، حدد Restart.

    يبدو التثبيت الناجح كما يلي:

Azure Machine Learning SDK لأدوات البيانات

إضافة SDK التعلم الآلي من Microsoft Azure باستخدام AutoML إلى Databricks

إذا تم إنشاء نظام المجموعة باستخدام Databricks Runtime 7.3 LTS (وليس ML)، فقم بتشغيل الأمر التالي في الخلية الأولى من دفتر الملاحظات لتثبيت Azure Machine Learning SDK.

%pip install --upgrade --force-reinstall -r https://aka.ms/automl_linux_requirements.txt

إعدادات تكوين AutoML

في تكوين AutoML، عند استخدام Azure Databricks، أضف المعلمات التالية:

  • يعتمد max_concurrent_iterations على عدد العقد العاملة في مجموعتك.
  • spark_context=sc يعتمد على سياق spark الافتراضي.

أجهزة الكمبيوتر المحمولة التعلم الآلي التي تعمل مع Azure Databricks

حاول:

استكشاف الأخطاء وإصلاحها

  • Databricks تلغي التعلم الآلي المؤتمت: عند استخدام إمكانات التعلم الآلي على Azure Databricks، لإلغاء تشغيل وبدء تشغيل تجربة جديدة، أعد تشغيل مجموعة Azure Databricks.

  • Databricks >10 تكرارات للتعلم الآلي المؤتمت: في إعدادات التعلم الآلي، إذا كان لديك أكثر من 10 تكرارات، فاضبط show_output to False عند إرسال التشغيل.

  • أداة Databricks لـ التعلم الآلي SDK والتعلم الآلي المؤتمت: أداة Azure Machine Learning SDK غير مدعومة في مفكرة Databricks لأن أجهزة الكمبيوتر المحمولة لا يمكنها تحليل أدوات HTML. يمكنك عرض عنصر واجهة المستخدم في المدخل باستخدام تعليمة Python البرمجية هذه في خلية دفتر ملاحظات Azure Databricks:

    displayHTML("<a href={} target='_blank'>Azure Portal: {}</a>".format(local_run.get_portal_url(), local_run.id))
    
  • فشل عند تثبيت الحزم

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

    psutil cryptography==1.5 pyopenssl==16.0.0 ipython==2.2.0
    

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

  • Import error: cannot import name Timedelta from pandas._libs.tslibs: إذا رأيت هذا الخطأ عند استخدام التعلم الآلي، فقم بتشغيل السطرين التاليين في دفتر ملاحظاتك:

    %sh rm -rf /databricks/python/lib/python3.7/site-packages/pandas-0.23.4.dist-info /databricks/python/lib/python3.7/site-packages/pandas
    %sh /databricks/python/bin/pip install pandas==0.23.4
    
  • خطأ في الاستيراد: لا توجد وحدة باسم "pandas.core.indexes": إذا رأيت هذا الخطأ عند استخدام التعلم الآلي :

    1. قم بتشغيل هذا الأمر لتثبيت حزمتين في مجموعة Azure Databricks:

      scikit-learn==0.19.1
      pandas==0.22.0
      
    2. افصل المجموعة ثم أعد توصيلها بالكمبيوتر الدفتري.

    إذا لم تؤد هذه الخطوات إلى حل المشكلة، فحاول إعادة تشغيل نظام المجموعة.

  • FailToSendFeather: إذا رأيت خطأ FailToSendFeather عند قراءة البيانات على مجموعة Azure Databricks، فارجع إلى الحلول التالية:

    • ترقية حزمة azureml-sdk[automl] إلى أحدث إصدار.
    • أضف azureml-dataprep الإصدار 1.1.8 أو إصدار أحدث.
    • أضف pyarrow الإصدار 0.11 أو أعلى.

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