Trenowanie za pomocą projektów MLflow w usłudze Azure Machine Edukacja (wersja zapoznawcza)

Z tego artykułu dowiesz się, jak przesyłać zadania szkoleniowe za pomocą projektów MLflow korzystających z obszarów roboczych usługi Azure Machine Edukacja do śledzenia. Możesz przesyłać zadania i śledzić je tylko za pomocą usługi Azure Machine Edukacja lub migrować przebiegi do chmury w celu całkowitego uruchomienia na maszynie azure Edukacja Compute.

Ostrzeżenie

MLproject Obsługa plików (MLflow Projects) w usłudze Azure Machine Edukacja zostanie w pełni wycofana we wrześniu 2026 r. Biblioteka MLflow jest nadal w pełni obsługiwana i nadal jest zalecanym sposobem śledzenia obciążeń uczenia maszynowego w usłudze Azure Machine Edukacja.

W miarę kontynuowania korzystania z platformy MLflow zalecamy przejście z MLproject plików do usługi Azure Machine Edukacja Jobs przy użyciu interfejsu wiersza polecenia platformy Azure lub zestawu AZURE Machine Edukacja SDK dla języka Python (wersja 2). Aby uzyskać więcej informacji na temat zadań usługi Azure Machine Edukacja, zobacz Track ML experiments and models with MLflow (Śledzenie eksperymentów i modeli uczenia maszynowego za pomocą platformy MLflow).

Projekty MLflow umożliwiają organizowanie i opisywanie kodu w celu umożliwienia uruchamiania go przez innych analityków danych (lub zautomatyzowanych narzędzi). Projekty MLflow za pomocą usługi Azure Machine Edukacja umożliwiają śledzenie przebiegów trenowania i zarządzanie nimi w obszarze roboczym.

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.

Dowiedz się więcej o integracji usług MLflow i Azure Machine Edukacja.

Wymagania wstępne

  • Zainstaluj pakiet mlflow zestawu MLflow SDK i wtyczkę usługi Azure Machine Edukacja dla platformy MLflowazureml-mlflow.

    pip install mlflow azureml-mlflow
    

    Napiwek

    Możesz użyć mlflow-skinny pakietu, który jest lekkim pakietem MLflow bez magazynu SQL, serwera, interfejsu użytkownika lub zależności nauki o danych. mlflow-skinny jest zalecany dla użytkowników, którzy potrzebują głównie możliwości śledzenia i rejestrowania MLflow bez importowania pełnego zestawu funkcji, w tym wdrożeń.

  • Obszar roboczy usługi Azure Machine Learning. Możesz go utworzyć, wykonując czynności opisane w samouczku Tworzenie zasobów uczenia maszynowego.

  • Jeśli wykonujesz zdalne śledzenie (czyli śledzenie eksperymentów uruchomionych poza usługą Azure Machine Edukacja), skonfiguruj rozwiązanie MLflow, aby wskazywało identyfikator URI śledzenia obszaru roboczego usługi Azure Machine Edukacja. Aby uzyskać więcej informacji na temat łączenia platformy MLflow z obszarem roboczym, zobacz Configure MLflow for Azure Machine Edukacja (Konfigurowanie platformy MLflow dla usługi Azure Machine Edukacja).

  • Korzystanie z usługi Azure Machine Edukacja jako zaplecza dla projektów MLflow wymaga pakietu azureml-core:

    pip install azureml-core
    

Nawiązywanie połączenia z obszarem roboczym

Jeśli pracujesz poza usługą Azure Machine Edukacja, musisz skonfigurować bibliotekę MLflow tak, aby wskazywała identyfikator URI śledzenia obszaru roboczego usługi Azure Machine Edukacja. Instrukcje można znaleźć w temacie Configure MLflow for Azure Machine Edukacja (Konfigurowanie platformy MLflow dla usługi Azure Machine Edukacja).

Śledzenie projektów MLflow w obszarach roboczych usługi Azure Machine Edukacja

W tym przykładzie pokazano, jak przesyłać projekty MLflow i śledzić je w usłudze Azure Machine Edukacja.

  1. azureml-mlflow Dodaj pakiet jako zależność pip do pliku konfiguracji środowiska, aby śledzić metryki i kluczowe artefakty w obszarze roboczym.

    conda.yaml

    name: mlflow-example
    channels:
      - defaults
    dependencies:
      - numpy>=1.14.3
      - pandas>=1.0.0
      - scikit-learn
      - pip:
        - mlflow
        - azureml-mlflow
    
  2. Prześlij przebieg lokalny i upewnij się, że ustawiono parametr backend = "azureml", który dodaje obsługę automatycznego śledzenia, przechwytywania modelu, plików dziennika, migawek i błędów drukowanych w obszarze roboczym. W tym przykładzie założono, że projekt MLflow, który próbujesz uruchomić, znajduje się w tym samym folderze, uri="."w którym obecnie znajdujesz się .

    mlflow run . --experiment-name  --backend azureml --env-manager=local -P alpha=0.3
    

    Wyświetlanie przebiegów i metryk w usłudze Azure Machine Edukacja Studio.

Trenowanie projektów MLflow w zadaniach usługi Azure Machine Edukacja

W tym przykładzie pokazano, jak przesyłać projekty MLflow jako zadanie uruchomione w usłudze Azure Machine Edukacja obliczeń.

  1. Utwórz obiekt konfiguracji zaplecza, w tym przypadku wskażemy wartość COMPUTE. Ten parametr odwołuje się do nazwy zdalnego klastra obliczeniowego, którego chcesz użyć do uruchamiania projektu. Jeśli COMPUTE jest obecny, projekt zostanie automatycznie przesłany jako zadanie usługi Azure Machine Edukacja do wskazanego środowiska obliczeniowego.

    backend_config.json

    {
        "COMPUTE": "cpu-cluster"
    }
    
    
  2. azureml-mlflow Dodaj pakiet jako zależność pip do pliku konfiguracji środowiska, aby śledzić metryki i kluczowe artefakty w obszarze roboczym.

    conda.yaml

    name: mlflow-example
    channels:
      - defaults
    dependencies:
      - numpy>=1.14.3
      - pandas>=1.0.0
      - scikit-learn
      - pip:
        - mlflow
        - azureml-mlflow
    
  3. Prześlij przebieg lokalny i upewnij się, że ustawiono parametr backend = "azureml", który dodaje obsługę automatycznego śledzenia, przechwytywania modelu, plików dziennika, migawek i błędów drukowanych w obszarze roboczym. W tym przykładzie założono, że projekt MLflow, który próbujesz uruchomić, znajduje się w tym samym folderze, uri="."w którym obecnie znajdujesz się .

    mlflow run . --backend azureml --backend-config backend_config.json -P alpha=0.3
    

    Uwaga

    Ponieważ zadania usługi Azure Machine Edukacja są zawsze uruchamiane w kontekście środowisk, parametr env_manager jest ignorowany.

    Wyświetlanie przebiegów i metryk w usłudze Azure Machine Edukacja Studio.

Czyszczenie zasobów

Jeśli nie planujesz używania zarejestrowanych metryk i artefaktów w obszarze roboczym, możliwość ich usunięcia indywidualnie jest obecnie niedostępna. Zamiast tego usuń grupę zasobów zawierającą konto magazynu i obszar roboczy, aby nie ponosić żadnych opłat:

  1. W witrynie Azure Portal na końcu z lewej strony wybierz pozycję Grupy zasobów.

    Image showing how to delete an Azure resource group.

  2. Wybierz utworzoną grupę zasobów z listy.

  3. Wybierz pozycję Usuń grupę zasobów.

  4. Wpisz nazwę grupy zasobów. Następnie wybierz Usuń.

Przykładowe notesy

Biblioteka MLflow z notesami usługi Azure Machine Edukacja demonstruje i rozwija koncepcje przedstawione w tym artykule.

Uwaga

Repozytorium przykładów oparte na społeczności przy użyciu biblioteki mlflow można znaleźć na stronie https://github.com/Azure/azureml-examples.

Następne kroki