Udostępnij za pośrednictwem


Trenowanie za pomocą projektów MLflow w usłudze Azure Machine Learning (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 Learning do śledzenia. Możesz przesyłać zadania i śledzić je tylko za pomocą usługi Azure Machine Learning lub migrować przebiegi do chmury w celu całkowitego uruchomienia w usłudze Azure Machine Learning Compute.

Ostrzeżenie

MLproject Obsługa plików (MLflow Projects) w usłudze Azure Machine Learning 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 Learning.

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

Wymagania wstępne

  • Zainstaluj pakiet zestawu MLflow SDK mlflow i wtyczkę usługi Azure Machine Learning azureml-mlflow dla biblioteki MLflow w następujący sposób:

    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. Ten pakiet jest zalecany dla użytkowników, którzy potrzebują głównie funkcji śledzenia i rejestrowania MLflow bez importowania pełnego zestawu funkcji, w tym wdrożeń.

  • Tworzenie obszaru roboczego usługi Azure Machine Learning. Aby utworzyć obszar roboczy, zobacz Tworzenie zasobów, które należy rozpocząć. Przejrzyj uprawnienia dostępu potrzebne do wykonywania operacji MLflow w obszarze roboczym.

  • Aby przeprowadzić zdalne śledzenie lub śledzić eksperymenty uruchomione poza usługą Azure Machine Learning, skonfiguruj rozwiązanie MLflow, aby wskazywało identyfikator URI śledzenia obszaru roboczego usługi Azure Machine Learning. Aby uzyskać więcej informacji na temat łączenia platformy MLflow z obszarem roboczym, zobacz Konfigurowanie biblioteki MLflow dla usługi Azure Machine Learning.

  • Korzystanie z usługi Azure Machine Learning 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 Learning, musisz skonfigurować rozwiązanie MLflow, aby wskazywało identyfikator URI śledzenia obszaru roboczego usługi Azure Machine Learning. Instrukcje można znaleźć w temacie Configure MLflow for Azure Machine Learning (Konfigurowanie platformy MLflow dla usługi Azure Machine Learning).

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

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

  1. azureml-mlflow Dodaj pakiet jako zależność 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 Learning Studio.

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

W tym przykładzie pokazano, jak przesyłać projekty MLflow jako zadanie uruchomione w środowisku obliczeniowym usługi Azure Machine Learning.

  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 Learning do wskazanego środowiska obliczeniowego.

    backend_config.json

    {
        "COMPUTE": "cpu-cluster"
    }
    
    
  2. azureml-mlflow Dodaj pakiet jako zależność 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 Learning są zawsze uruchamiane w kontekście środowisk, parametr env_manager jest ignorowany.

    Wyświetlanie przebiegów i metryk w usłudze Azure Machine Learning 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.

    Obraz przedstawiający sposób usuwania grupy zasobów platformy Azure.

  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

Notesy MLflow z usługą Azure Machine Learning pokazują i rozszerzają 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