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

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

W poniższej tabeli przedstawiono każde środowisko projektowe omówione w tym artykule wraz z zaletami i wadami.

Środowisko Zalety Wady
Środowisko lokalne Pełna kontrola nad środowiskiem projektistycznym i zależnościami. Uruchom polecenie za pomocą dowolnego wybranego narzędzia kompilacji, środowiska lub środowiska IDE. Rozpoczęcie 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.
Data Science Virtual Machine (DSVM) Podobnie jak w przypadku wystąpienia obliczeniowego opartego na chmurze (język Python i zestaw SDK są wstępnie zainstalowane), ale z innymi popularnymi narzędziami do nauki o danych i uczeniu maszynowym. Łatwe skalowanie i łączenie z innymi niestandardowymi narzędziami i przepływami pracy. Wolniejsze środowisko rozpoczynania 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 dotyczące notesów 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 (maszyna wirtualna może zostać zatrzymana, gdy nie jest używana w celu uniknięcia opłat). Zobacz szczegóły cennika.
Azure Databricks Idealne rozwiązanie do uruchamiania przepływów pracy uczenia maszynowego na dużą skalę na skalowalnej platformie Apache Spark. Overkill dla eksperymentalnego uczenia maszynowego lub eksperymentów na mniejszą skalę i przepływów pracy. Dodatkowe koszty związane z usługą Azure Databricks. Zobacz szczegóły cennika.

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

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

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

Wymagania wstępne

Tylko maszyny wirtualne 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 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 łączy się z obszarem roboczym.

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

  • Azure Portal

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

    Zrzut ekranu przedstawiający stronę przeglądu obszaru roboczego z wybranym plikiem config.json.

  • Azure Machine Learning Python SDK

    Utwórz skrypt w celu nawiązania połączenia z obszarem roboczym usługi Azure Machine Learning i użyj write_config metody w celu wygenerowania pliku i zapisania go jako pliku .azureml/config.json. Pamiętaj, aby zastąpić subscription_idciąg ,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 środowisko zdalnej 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 rozwiązania 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ę powłoki 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. Zobacz przewodnik Wprowadzenie do usługi Azure Machine Learning w języku Python , aby rozpocząć pracę.

Notesy programu Jupyter

Podczas uruchamiania lokalnego serwera Jupyter Notebook zaleca się utworzenie jądra IPython dla środowiska wirtualnego języka Python. Pomaga to zapewnić oczekiwane zachowanie jądra i importowania 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ć Visual Studio Code do programowania:

  1. Zainstaluj Visual Studio Code.

  2. Zainstaluj rozszerzenie usługi Azure Machine Learning Visual Studio Code (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 jej obsługi 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 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 pozycję Utwórz zasoby, 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.

Porada

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

Oprócz serwera Jupyter Notebook i narzędzia JupyterLab można używać wystąpień obliczeniowych w funkcji zintegrowanego notesu wewnątrz Azure Machine Learning studio.

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

Maszyna wirtualna do analizy danych

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 Azure Machine Learning SDK
  • 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 Jupyter Notebook

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

Ważne

Jeśli planujesz używać maszyny wirtualnej Nauka o danych jako celu obliczeniowego dla zadań szkoleniowych 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 Azure Portal, aby utworzyć maszynę DSVM z systemem Ubuntu lub Windows.

    • Tworzenie maszyny wirtualnej Nauka o danych przy użyciu szablonów usługi ARM.

    • Używanie 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 systemu 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 z systemem Windows Nauka o danych:

      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ć Visual Studio Code i rozszerzenia usługi Azure Machine Learning Visual Studio Code do interakcji z usługą Azure Machine Learning.

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

Następne kroki