Share via


Konfigurera en utvecklingsmiljö med Azure Databricks och AutoML i Azure Machine Learning

Lär dig hur du konfigurerar en utvecklingsmiljö i Azure Machine Learning som använder Azure Databricks och automatiserad ML.

Azure Databricks är idealiskt för att köra storskaliga intensiva maskininlärningsarbetsflöden på den skalbara Apache Spark-plattformen i Azure-molnet. Det ger en samarbetsbaserad notebook-miljö med ett CPU- eller GPU-baserat beräkningskluster.

Information om andra utvecklingsmiljöer för maskininlärning finns i Konfigurera Python-utvecklingsmiljö.

Förutsättning

Azure Machine Learning-arbetsyta. Använd stegen i artikeln Skapa arbetsyteresurser för att skapa en.

Azure Databricks med Azure Machine Learning och AutoML

Azure Databricks integreras med Azure Machine Learning och dess AutoML-funktioner.

Du kan använda Azure Databricks:

Konfigurera ett Databricks-kluster

Skapa ett Databricks-kluster. Vissa inställningar gäller endast om du installerar SDK för automatiserad maskininlärning i Databricks.

Det tar några minuter att skapa klustret.

Använd de här inställningarna:

Inställningen Gäller för Värde
Klusternamn alltid yourclustername
Databricks Runtime-version alltid 9.1 LTS
Python-version alltid 3
Arbetstyp
(avgör max antal samtidiga iterationer)
Automatisk ML
Bara
Minnesoptimerad virtuell dator föredras
Arbetstagare alltid 2 eller högre
Aktivera autoskalning Automatisk ML
Bara
Avmarkera

Vänta tills klustret körs innan du fortsätter.

Lägga till Azure Machine Learning SDK i Databricks

När klustret körs skapar du ett bibliotek för att koppla rätt Azure Machine Learning SDK-paket till klustret.

Om du vill använda automatiserad ML går du vidare till Lägg till Azure Machine Learning SDK med AutoML.

  1. Högerklicka på den aktuella arbetsytemappen där du vill lagra biblioteket. Välj Skapa>bibliotek.

    Tips

    Om du har en gammal SDK-version avmarkerar du den från klustrets installerade bibliotek och flyttar till papperskorgen. Installera den nya SDK-versionen och starta om klustret. Om det uppstår ett problem efter omstarten kopplar du från och kopplar från klustret igen.

  2. Välj följande alternativ (inga andra SDK-installationer stöds)

    Extra SDK-paket Källa PyPi-namn
    För Databricks Ladda upp Python Egg eller PyPI azureml-sdk[databricks]

    Varning

    Inga andra SDK-extrafunktioner kan installeras. Välj endast alternativet [databricks] .

    • Välj inte Anslut automatiskt till alla kluster.
    • Välj Anslut bredvid klusternamnet.
  3. Övervaka fel tills statusen ändras till Ansluten, vilket kan ta flera minuter. Om det här steget misslyckas:

    Prova att starta om klustret genom att:

    1. I den vänstra rutan väljer du Kluster.
    2. I tabellen väljer du klusternamnet.
    3. På fliken Bibliotek väljer du Starta om.

    En lyckad installation ser ut så här:

Azure Machine Learning SDK för Databricks

Lägga till Azure Machine Learning SDK med AutoML i Databricks

Om klustret skapades med Databricks Runtime 7.3 LTS (inte ML) kör du följande kommando i den första cellen i anteckningsboken för att installera Azure Machine Learning SDK.

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

AutoML-konfigurationsinställningar

När du använder Azure Databricks i AutoML-konfiguration lägger du till följande parametrar:

  • max_concurrent_iterations baseras på antalet arbetsnoder i klustret.
  • spark_context=sc baseras på standardkontexten för Spark.

ML-notebook-filer som fungerar med Azure Databricks

Prova:

Felsökning

  • Databricks avbryter en automatiserad maskininlärningskörning: Starta om Azure Databricks-klustret om du vill avbryta en körning och starta om en ny experimentkörning.

  • Databricks >10 iterationer för automatiserad maskininlärning: Om du har fler än 10 iterationer i inställningarna för automatiserad maskininlärning anger show_output du till False när du skickar körningen.

  • Databricks-widgeten för Azure Machine Learning SDK och automatiserad maskininlärning: Azure Machine Learning SDK-widgeten stöds inte i en Databricks-anteckningsbok eftersom notebook-filerna inte kan parsa HTML-widgetar. Du kan visa widgeten i portalen med hjälp av den här Python-koden i notebook-cellen i Azure Databricks:

    displayHTML("<a href={} target='_blank'>Azure Portal: {}</a>".format(local_run.get_portal_url(), local_run.id))
    
  • Fel vid installation av paket

    Azure Machine Learning SDK-installationen misslyckas på Azure Databricks när fler paket installeras. Vissa paket, till exempel psutil, kan orsaka konflikter. Du undviker installationsfel genom att installera paket genom att frysa biblioteksversionen. Det här problemet gäller Databricks och inte Azure Machine Learning SDK. Du kan också uppleva det här problemet med andra bibliotek. Exempel:

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

    Du kan också använda init-skript om du fortsätter att få installationsproblem med Python-bibliotek. Den här metoden stöds inte officiellt. Mer information finns i Klusteromfattande init-skript.

  • Importfel: det går inte att importera namnet Timedelta från pandas._libs.tslibs: Om du ser det här felet när du använder automatiserad maskininlärning kör du följande två rader i anteckningsboken:

    %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
    
  • Importfel: Ingen modul med namnet "pandas.core.indexes": Om du ser det här felet när du använder automatiserad maskininlärning:

    1. Kör det här kommandot för att installera två paket i ditt Azure Databricks-kluster:

      scikit-learn==0.19.1
      pandas==0.22.0
      
    2. Koppla från och koppla sedan klustret till anteckningsboken igen.

    Om de här stegen inte löser problemet kan du prova att starta om klustret.

  • FailToSendFeather: Om du ser ett FailToSendFeather fel när du läser data i Azure Databricks-klustret kan du läsa följande lösningar:

    • Uppgradera azureml-sdk[automl] paketet till den senaste versionen.
    • Lägg till azureml-dataprep version 1.1.8 eller senare.
    • Lägg till pyarrow version 0.11 eller senare.

Nästa steg