Sdílet prostřednictvím


Trénujte s projekty MLflow ve službě Azure Machine Learning (Preview)

V tomto článku se dozvíte, jak odesílat trénovací úlohy pomocí projektů MLflow, které ke sledování používají pracovní prostory Azure Machine Learning. Úlohy můžete odesílat a sledovat je jenom pomocí služby Azure Machine Learning nebo migrovat spuštění do cloudu, aby běžela úplně ve službě Azure Machine Learning Compute.

Upozorňující

MLproject Podpora souborů (projektů MLflow) ve službě Azure Machine Learning bude v září 2026 plně vyřazena. MLflow je stále plně podporovaný a stále se doporučuje sledovat úlohy strojového učení ve službě Azure Machine Learning.

Při používání MLflow doporučujeme přejít ze MLproject souborů na úlohy Azure Machine Learning pomocí Azure CLI nebo sady Azure Machine Learning SDK pro Python (v2). Další informace o úlohách Azure Machine Learning najdete v tématu Sledování experimentů a modelů ML pomocí MLflow.

Projekty MLflow umožňují uspořádat a popsat kód, aby ho ostatní datoví vědci (nebo automatizované nástroje) mohli spouštět. Projekty MLflow se službou Azure Machine Learning umožňují sledovat a spravovat trénovací běhy ve vašem pracovním prostoru.

Důležité

Tato funkce je v současné době ve verzi Public Preview. Tato verze Preview je poskytována bez smlouvy o úrovni služeb a nedoporučujeme ji pro produkční úlohy. Některé funkce se nemusí podporovat nebo mohou mít omezené možnosti.

Další informace najdete v dodatečných podmínkách použití pro verze Preview v Microsoft Azure.

Přečtěte si další informace o integraci MLflow a Azure Machine Learning.

Požadavky

  • Nainstalujte balíček MLflow SDK mlflow a modul plug-in Azure Machine Learning azureml-mlflow pro MLflow následujícím způsobem:

    pip install mlflow azureml-mlflow
    

    Tip

    Můžete použít mlflow-skinny balíček, což je jednoduchý balíček MLflow bez závislostí sql Storage, serveru, uživatelského rozhraní nebo datových věd. Tento balíček se doporučuje uživatelům, kteří primárně potřebují funkce sledování a protokolování MLflow bez importu celé sady funkcí, včetně nasazení.

  • Vytvořte pracovní prostor Azure Machine Learning. Pokud chcete vytvořit pracovní prostor, přečtěte si téma Vytvoření prostředků, které potřebujete, abyste mohli začít. Zkontrolujte přístupová oprávnění , která potřebujete k provádění operací MLflow ve vašem pracovním prostoru.

  • Pokud chcete provádět vzdálené sledování nebo sledovat experimenty spuštěné mimo Azure Machine Learning, nakonfigurujte MLflow tak, aby odkazovali na identifikátor URI sledování pracovního prostoru Azure Machine Learning. Další informace o připojení MLflow k pracovnímu prostoru najdete v tématu Konfigurace MLflow pro Azure Machine Learning.

  • Použití služby Azure Machine Learning jako back-endu pro projekty MLflow vyžaduje balíček azureml-core:

    pip install azureml-core
    

Připojení k pracovnímu prostoru

Pokud pracujete mimo Azure Machine Learning, musíte nakonfigurovat MLflow tak, aby odkazoval na identifikátor URI sledování pracovního prostoru Azure Machine Learning. Pokyny najdete v tématu Konfigurace MLflow pro Azure Machine Learning.

Sledování projektů MLflow v pracovních prostorech Azure Machine Learning

Tento příklad ukazuje, jak odesílat projekty MLflow a sledovat je ve službě Azure Machine Learning.

  1. Přidejte balíček jako závislost pip do konfiguračního azureml-mlflow souboru prostředí, abyste mohli sledovat metriky a klíčové artefakty v pracovním prostoru.

    conda.yaml

    name: mlflow-example
    channels:
      - defaults
    dependencies:
      - numpy>=1.14.3
      - pandas>=1.0.0
      - scikit-learn
      - pip:
        - mlflow
        - azureml-mlflow
    
  2. Odešlete místní spuštění a ujistěte se, že jste nastavili parametr backend = "azureml", který přidává podporu automatického sledování, zachycení modelu, souborů protokolu, snímků a tištěných chyb ve vašem pracovním prostoru. V tomto příkladu předpokládáme, že projekt MLflow, který se pokoušíte spustit, je ve stejné složce, kterou právě používáte. uri="."

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

    Prohlédněte si spuštění a metriky v studio Azure Machine Learning.

Trénovat projekty MLflow v úlohách Azure Machine Learning

Tento příklad ukazuje, jak odeslat projekty MLflow jako úlohu běžící na výpočetních prostředcích služby Azure Machine Learning.

  1. Vytvořte objekt konfigurace back-endu, v tomto případě budeme indikovat COMPUTE. Tento parametr odkazuje na název vzdáleného výpočetního clusteru, který chcete použít ke spuštění projektu. Pokud COMPUTE je projekt k dispozici, automaticky se odešle jako úloha Azure Machine Learning do uvedeného výpočetního prostředí.

    backend_config.json

    {
        "COMPUTE": "cpu-cluster"
    }
    
    
  2. Přidejte balíček jako závislost pip do konfiguračního azureml-mlflow souboru prostředí, abyste mohli sledovat metriky a klíčové artefakty v pracovním prostoru.

    conda.yaml

    name: mlflow-example
    channels:
      - defaults
    dependencies:
      - numpy>=1.14.3
      - pandas>=1.0.0
      - scikit-learn
      - pip:
        - mlflow
        - azureml-mlflow
    
  3. Odešlete místní spuštění a ujistěte se, že jste nastavili parametr backend = "azureml", který přidává podporu automatického sledování, zachycení modelu, souborů protokolu, snímků a tištěných chyb ve vašem pracovním prostoru. V tomto příkladu předpokládáme, že projekt MLflow, který se pokoušíte spustit, je ve stejné složce, kterou právě používáte. uri="."

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

    Poznámka:

    Vzhledem k tomu, že úlohy Azure Machine Learning se vždy spouštějí v kontextu prostředí, env_manager parametr se ignoruje.

    Prohlédněte si spuštění a metriky v studio Azure Machine Learning.

Vyčištění prostředků

Pokud nemáte v úmyslu používat protokolované metriky a artefakty ve vašem pracovním prostoru, možnost je odstranit jednotlivě, momentálně není dostupná. Místo toho odstraňte skupinu prostředků, která obsahuje účet úložiště a pracovní prostor, takže vám nebudou účtovány žádné poplatky:

  1. Úplně nalevo na webu Azure Portal vyberte Skupiny prostředků.

    Obrázek znázorňující, jak odstranit skupinu prostředků Azure

  2. V seznamu vyberte skupinu prostředků, kterou jste vytvořili.

  3. Vyberte Odstranit skupinu prostředků.

  4. Zadejte název skupiny prostředků. Poté vyberte Odstranit.

Příklady poznámkových bloků

MLflow s poznámkovými bloky Azure Machine Learning ukazuje a rozšiřuje koncepty uvedené v tomto článku.

Poznámka:

Komunitní úložiště příkladů využívajících mlflow najdete na adrese https://github.com/Azure/azureml-examples.

Další kroky