Konfigurowanie środowiska projektowego języka Python dla usługi Azure Machine Learning (wersja 1)

DOTYCZY: Zestaw SDK języka Python w wersji 1

Dowiedz się, jak skonfigurować środowisko deweloperskie języka Python dla usługi Azure Machine Learning.

W poniższej tabeli przedstawiono każde środowisko programistyczne opisane w tym artykule wraz z zaletami i wadami.

Środowisko Plusy Minusy
Środowisko lokalne Pełna kontrola nad środowiskiem projektistycznym i zależnościami. Uruchom polecenie przy użyciu dowolnego wybranego narzędzia kompilacji, środowiska lub środowiska IDE. Rozpoczynanie pracy trwa dłużej. Wymagane pakiety ZESTAWU SDK muszą być zainstalowane, a środowisko musi być również zainstalowane, jeśli jeszcze go nie masz.
Maszyna wirtualna Nauka o danych (DSVM) Podobnie jak w przypadku wystąpienia obliczeniowego opartego na chmurze (środowisko Python i zestaw SDK są wstępnie zainstalowane), ale z innymi popularnymi narzędziami do nauki o danych i uczenia maszynowego. Łatwe skalowanie i łączenie z innymi niestandardowymi narzędziami i przepływami pracy. Wolniejsze środowisko pracy w porównaniu z wystąpieniem obliczeniowym opartym na chmurze.
Wystąpienie obliczeniowe usługi Azure Machine Learning Najprostszym sposobem rozpoczęcia pracy. Cały zestaw SDK jest już zainstalowany na maszynie wirtualnej obszaru roboczego, a samouczki notesu są wstępnie sklonowane i gotowe do uruchomienia. Brak kontroli nad środowiskiem projektistycznym i zależnościami. Dodatkowe koszty związane z maszyną wirtualną z systemem Linux (maszynę wirtualną można zatrzymać, gdy nie jest używana w celu uniknięcia opłat). Zobacz szczegółowe informacje o cenach.
Azure Databricks Idealne rozwiązanie do uruchamiania intensywnie korzystających z dużych przepływów pracy uczenia maszynowego na skalowalnej platformie Apache Spark. Overkill na potrzeby eksperymentalnego uczenia maszynowego lub eksperymentów i przepływów pracy o mniejszej skali. Dodatkowe koszty związane z usługą Azure Databricks. Zobacz szczegółowe informacje o cenach.

Ten artykuł zawiera również porady dotyczące użycia dla następujących narzędzi:

  • Notesy Jupyter Notebook: jeśli już używasz notesów Jupyter Notebook, zestaw SDK zawiera pewne dodatki, które należy zainstalować.

  • Visual Studio Code: Jeśli używasz programu Visual Studio Code, rozszerzenie Azure Machine Learning obejmuje rozbudowaną obsługę języka Python i funkcji, aby pracować z usługą Azure Machine Learning znacznie wygodniej i wydajniej.

Wymagania wstępne

Tylko maszyny lokalne i DSVM: tworzenie pliku konfiguracji obszaru roboczego

Plik konfiguracji obszaru roboczego to plik JSON, który informuje zestaw SDK, jak komunikować się z obszarem roboczym usługi Azure Machine Learning. Plik ma nazwę config.json i ma następujący format:

{
    "subscription_id": "<subscription-id>",
    "resource_group": "<resource-group>",
    "workspace_name": "<workspace-name>"
}

Ten plik JSON musi znajdować się w strukturze katalogów zawierającej skrypty języka Python lub notesy Jupyter Notebook. Może on znajdować się w tym samym katalogu, podkatalogu o nazwie .azuremllub w katalogu nadrzędnym.

Aby użyć tego pliku z kodu, użyj Workspace.from_config metody . Ten kod ładuje informacje z pliku i nawiązuje połączenie z obszarem roboczym.

Utwórz plik konfiguracji obszaru roboczego w jednej z następujących metod:

  • Azure Portal

    Pobierz plik: w witrynie Azure Portal wybierz pozycję Pobierz config.json w sekcji Przegląd obszaru roboczego.

    Zrzut ekranu przedstawiający stronę przeglądu obszaru roboczego z wybraną config.json pobierania.

  • Zestaw SDK języka Python usługi Azure Machine Learning

    Utwórz skrypt, aby połączyć się z obszarem roboczym usługi Azure Machine Learning i użyć write_config metody w celu wygenerowania pliku i zapisania go jako pliku .azureml/config.json. Pamiętaj, aby zastąpić subscription_idelement ,resource_group i workspace_name własnym.

    DOTYCZY: Zestaw SDK języka Python w wersji 1

    from azureml.core import Workspace
    
    subscription_id = '<subscription-id>'
    resource_group  = '<resource-group>'
    workspace_name  = '<workspace-name>'
    
    try:
        ws = Workspace(subscription_id = subscription_id, resource_group = resource_group, workspace_name = workspace_name)
        ws.write_config()
        print('Library configuration succeeded')
    except:
        print('Workspace not found')
    

Komputer lokalny lub zdalne środowisko maszyny wirtualnej

Środowisko można skonfigurować na komputerze lokalnym lub zdalnej maszynie wirtualnej, takiej jak wystąpienie obliczeniowe usługi Azure Machine Learning lub maszyna wirtualna Nauka o danych.

Aby skonfigurować lokalne środowisko programistyczne lub zdalną maszynę wirtualną:

  1. Tworzenie środowiska wirtualnego języka Python (virtualenv, conda).

    Uwaga

    Mimo że nie jest to wymagane, zaleca się używanie środowiska Anaconda lub Miniconda do zarządzania środowiskami wirtualnymi języka Python i instalowania pakietów.

    Ważne

    Jeśli korzystasz z systemu Linux lub macOS i używasz powłoki innej niż powłoka bash (na przykład zsh), podczas uruchamiania niektórych poleceń mogą wystąpić błędy. Aby obejść ten problem, użyj bash polecenia , aby uruchomić nową powłokę bash i uruchomić tam polecenia.

  2. Aktywuj nowo utworzone środowisko wirtualne języka Python.

  3. Zainstaluj zestaw SDK języka Python usługi Azure Machine Learning.

  4. Aby skonfigurować środowisko lokalne do korzystania z obszaru roboczego usługi Azure Machine Learning, utwórz plik konfiguracji obszaru roboczego lub użyj istniejącego.

Po skonfigurowaniu środowiska lokalnego możesz rozpocząć pracę z usługą Azure Machine Learning. Zapoznaj się z przewodnikiem wprowadzenie do języka Python w usłudze Azure Machine Learning, aby rozpocząć pracę.

Notesy programu Jupyter

Podczas uruchamiania lokalnego serwera notesu Jupyter Notebook zaleca się utworzenie jądra IPython dla środowiska wirtualnego języka Python. Pomaga to zapewnić oczekiwane zachowanie jądra i importu pakietów.

  1. Włączanie jądra IPython specyficznych dla środowiska

    conda install notebook ipykernel
    
  2. Utwórz jądro dla środowiska wirtualnego języka Python. Pamiętaj, aby zastąpić <myenv> ciąg nazwą środowiska wirtualnego języka Python.

    ipython kernel install --user --name <myenv> --display-name "Python (myenv)"
    
  3. Uruchamianie serwera Jupyter Notebook

Zobacz repozytorium notesów usługi Azure Machine Learning, aby rozpocząć pracę z usługami Azure Machine Learning i Jupyter Notebooks. Zobacz również repozytorium oparte na społeczności, AzureML-Examples.

Visual Studio Code

Aby użyć programu Visual Studio Code do programowania:

  1. Zainstalowanie programu Visual Studio Code.

  2. Zainstaluj rozszerzenie programu Visual Studio Code usługi Azure Machine Learning (wersja zapoznawcza).

    Ważne

    Ta funkcja jest obecnie w publicznej wersji zapoznawczej. Ta wersja zapoznawcza jest udostępniana bez umowy dotyczącej poziomu usług i nie zalecamy korzystania z niej w przypadku obciążeń produkcyjnych. Niektóre funkcje mogą być nieobsługiwane lub ograniczone.

    Aby uzyskać więcej informacji, zobacz Uzupełniające warunki korzystania z wersji zapoznawczych platformy Microsoft Azure.

Po zainstalowaniu rozszerzenia programu Visual Studio Code użyj go do:

Wystąpienie obliczeniowe usługi Azure Machine Learning

Wystąpienie obliczeniowe usługi Azure Machine Learning to bezpieczna, oparta na chmurze stacja robocza platformy Azure, która udostępnia analitykom danych serwer Jupyter Notebook, JupyterLab i w pełni zarządzane środowisko uczenia maszynowego.

Nie ma nic do zainstalowania ani skonfigurowania dla wystąpienia obliczeniowego.

Utwórz jeden w dowolnym momencie z poziomu obszaru roboczego usługi Azure Machine Learning. Podaj tylko nazwę i określ typ maszyny wirtualnej platformy Azure. Wypróbuj teraz tworzenie zasobów, aby rozpocząć pracę.

Aby dowiedzieć się więcej o wystąpieniach obliczeniowych, w tym o sposobie instalowania pakietów, zobacz Tworzenie wystąpienia obliczeniowego usługi Azure Machine Learning i zarządzanie nim.

Napiwek

Aby zapobiec naliczaniu opłat za nieużywane wystąpienie obliczeniowe, zatrzymaj wystąpienie obliczeniowe. Możesz też włączyć bezczynne zamykanie wystąpienia obliczeniowego.

Oprócz serwera Jupyter Notebook i programu JupyterLab można używać wystąpień obliczeniowych w zintegrowanej funkcji notesu w usłudze Azure Machine Learning Studio.

Możesz również użyć rozszerzenia programu Visual Studio Code usługi Azure Machine Learning, aby nawiązać połączenie ze zdalnym wystąpieniem obliczeniowym przy użyciu programu VS Code.

Data Science Virtual Machine

Maszyna wirtualna Nauka o danych to dostosowany obraz maszyny wirtualnej, którego można użyć jako środowiska programistycznego. Jest ona przeznaczona do pracy nad nauką o danych, która jest wstępnie skonfigurowanymi narzędziami i oprogramowaniem, takimi jak:

  • Pakiety, takie jak TensorFlow, PyTorch, Scikit-learn, XGBoost i Zestaw SDK usługi Azure Machine Learning
  • Popularne narzędzia do nauki o danych, takie jak autonomiczna platforma Spark i przechodzenie do szczegółów
  • Narzędzia platformy Azure, takie jak interfejs wiersza polecenia platformy Azure, narzędzie AzCopy i Eksplorator usługi Storage
  • Zintegrowane środowiska programistyczne (IDE), takie jak Visual Studio Code i PyCharm
  • Serwer Notesów Jupyter

Aby uzyskać bardziej kompleksową listę narzędzi, zobacz przewodnik dotyczący narzędzi Nauka o danych maszyn wirtualnych.

Ważne

Jeśli planujesz używać maszyny wirtualnej Nauka o danych jako celu obliczeniowego dla zadań trenowania lub wnioskowania, obsługiwana jest tylko wersja Ubuntu.

Aby użyć maszyny wirtualnej Nauka o danych jako środowiska programistycznego:

  1. Utwórz maszynę wirtualną Nauka o danych przy użyciu jednej z następujących metod:

    • Użyj witryny Azure Portal, aby utworzyć maszynę DSVM z systemem Ubuntu lub Windows .

    • Utwórz maszynę wirtualną Nauka o danych przy użyciu szablonów usługi ARM.

    • Korzystanie z interfejsu wiersza polecenia platformy Azure

      Aby utworzyć maszynę wirtualną z systemem Ubuntu Nauka o danych, użyj następującego polecenia:

      # create a Ubuntu Data Science VM in your resource group
      # note you need to be at least a contributor to the resource group in order to execute this command successfully
      # If you need to create a new resource group use: "az group create --name YOUR-RESOURCE-GROUP-NAME --location YOUR-REGION (For example: westus2)"
      az vm create --resource-group YOUR-RESOURCE-GROUP-NAME --name YOUR-VM-NAME --image microsoft-dsvm:linux-data-science-vm-ubuntu:linuxdsvmubuntu:latest --admin-username YOUR-USERNAME --admin-password YOUR-PASSWORD --generate-ssh-keys --authentication-type password
      

      Aby utworzyć maszynę DSVM z systemem Windows, użyj następującego polecenia:

      # create a Windows Server 2016 DSVM in your resource group
      # note you need to be at least a contributor to the resource group in order to execute this command successfully
      az vm create --resource-group YOUR-RESOURCE-GROUP-NAME --name YOUR-VM-NAME --image microsoft-dsvm:dsvm-windows:server-2016:latest --admin-username YOUR-USERNAME --admin-password YOUR-PASSWORD --authentication-type password
      
  2. Aktywuj środowisko conda zawierające zestaw SDK usługi Azure Machine Learning.

    • W przypadku maszyny wirtualnej z systemem Ubuntu Nauka o danych:

      conda activate py36
      
    • W przypadku maszyny wirtualnej Nauka o danych z systemem Windows:

      conda activate AzureML
      
  3. Aby skonfigurować maszynę wirtualną Nauka o danych do korzystania z obszaru roboczego usługi Azure Machine Learning, utwórz plik konfiguracji obszaru roboczego lub użyj istniejącego.

Podobnie jak w środowiskach lokalnych, można użyć programu Visual Studio Code i rozszerzenia programu Visual Studio Code usługi Azure Machine Learning do interakcji z usługą Azure Machine Learning.

Aby uzyskać więcej informacji, zobacz Nauka o danych Virtual Machines.

Następne kroki