MLflow a Azure Machine Learning

PLATÍ PRO:Rozšíření Azure CLI ml v2 (aktuální)Python SDK azure-ai-ml v2 (aktuální)

MLflow je opensourcová architektura navržená pro správu kompletního životního cyklu strojového učení. Její schopnost trénovat a obsluhovat modely na různých platformách umožňuje používat konzistentní sadu nástrojů bez ohledu na to, kde jsou vaše experimenty spuštěné: ať už jsou místně na vašem počítači, ve vzdáleném cílovém výpočetním objektu, na virtuálním počítači nebo na výpočetní instanci azure Učení.

Pracovní prostory azure machine Učení jsou kompatibilní s MLflow, což znamená, že pracovní prostory Azure Machine Učení můžete používat stejným způsobem jako server MLflow. Tato kompatibilita má následující výhody:

  • Azure Machine Učení nehostuje instance serveru MLflow pod kapotou. Pracovní prostor může místo toho mluvit jazykem rozhraní API MLflow.
  • Pracovní prostory Azure Machine Učení můžete použít jako sledovací server pro jakýkoli kód MLflow bez ohledu na to, jestli běží na Učení Azure Machine. MLflow stačí nakonfigurovat tak, aby odkazovali na pracovní prostor, kde by mělo dojít ke sledování.
  • Můžete spustit jakoukoli trénovací rutinu, která používá MLflow v Azure Machine Učení beze změny.

Tip

Na rozdíl od sady Azure Machine Učení SDK verze 1 neexistuje žádná funkce protokolování v sadě SDK verze 2. Pro protokolování doporučujeme použít MLflow, aby vaše trénovací rutiny byly nezávislé na cloudu a přenosné – odebrání jakékoli závislosti, kterou váš kód má na počítači Azure Machine Učení.

Sledování pomocí MLflow

Azure Machine Učení používá sledování MLflow k protokolování metrik a ukládání artefaktů pro experimenty. Když jste připojení ke službě Azure Machine Učení, veškeré sledování prováděné pomocí MLflow je materializováno v pracovním prostoru, na kterém pracujete. Další informace o tom, jak nastavit experimenty tak, aby používaly MLflow ke sledování experimentů a trénovacích rutin, najdete v tématu Metriky protokolu, parametry a soubory pomocí MLflow. MLflow můžete také použít k dotazování a porovnání experimentů a spuštění.

MLflow v Azure Machine Učení poskytuje způsob, jak centralizovat sledování. MLflow můžete připojit k pracovním prostorům Azure Machine Učení i v případě, že pracujete místně nebo v jiném cloudu. Pracovní prostor poskytuje centralizované, zabezpečené a škálovatelné umístění pro ukládání trénovacích metrik a modelů.

Použití MLflow ve službě Azure Machine Učení zahrnuje tyto možnosti:

Příklady poznámkových bloků

Sledování pomocí MLflow v R

Podpora MLflow v R má následující omezení:

  • Sledování MLflow je omezené na sledování metrik experimentů, parametrů a modelů na úlohách Učení Azure Machine.
  • Interaktivní trénování pro RStudio, Posit (dříve RStudio Workbench) nebo poznámkové bloky Jupyter s jádry R se nepodporuje.
  • Správa modelů a registrace se nepodporují pomocí sady MLflow R SDK. Místo toho k registraci a správě modelů použijte azure Machine Učení CLI nebo studio Azure Machine Learning.

Pokud se chcete dozvědět více o používání klienta pro sledování MLflow se službou Azure Machine Učení, podívejte se na příklady v modelech Trénování R pomocí Azure Machine Učení CLI (v2).

Sledování pomocí MLflow v Javě

Podpora MLflow v Javě má následující omezení:

  • Sledování MLflow je omezené na sledování metrik experimentů a parametrů v úlohách azure machine Učení.
  • Artefakty a modely nelze sledovat pomocí sady Java SDK MLflow. Místo toho použijte Outputs složku v úlohách spolu s metodou mlflow.save_model k ukládání modelů (nebo artefaktů), které chcete zachytit.

Pokud se chcete dozvědět víc o použití klienta pro sledování MLflow se službou Azure Machine Učení, podívejte se na příklad Javy, který používá klienta pro sledování MLflow se službou Azure Machine Učení.

Modelové registry pomocí MLflow

Azure Machine Učení podporuje MLflow pro správu modelů. Tato podpora představuje pohodlný způsob, jak podporovat celý životní cyklus modelu pro uživatele, kteří jsou obeznámeni s klientem MLflow.

Další informace o správě modelů pomocí rozhraní API MLflow ve službě Azure Machine Učení najdete v tématu Správa registrů modelů ve službě Azure Machine Učení pomocí MLflow.

Příklad poznámkového bloku

Nasazení modelu pomocí MLflow

Modely MLflow můžete nasadit do služby Azure Machine Učení a využít vylepšené prostředí při používání modelů MLflow. Azure Machine Učení podporuje nasazení modelů MLflow do koncových bodů v reálném čase i dávkových koncových bodů bez nutnosti zadat prostředí nebo bodovací skript. Nasazení se podporuje pomocí sady SDK MLflow, Azure Machine Učení CLI, sady Azure Machine Učení SDK pro Python nebo studio Azure Machine Learning.

Další informace o nasazení modelů MLflow do azure Machine Učení pro odvozování v reálném čase i dávkovém odvozování najdete v tématu Pokyny pro nasazení modelů MLflow.

Příklady poznámkových bloků

Školení s projekty MLflow (Preview)

Důležité

Položky označené (Preview) v tomto článku jsou aktuálně ve verzi Public Preview. Verze Preview je poskytována bez smlouvy o úrovni služeb a nedoporučuje se 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.

Úlohy trénování můžete odesílat do služby Azure Machine Učení pomocí projektů MLflow (Preview). Úlohy můžete odesílat místně pomocí služby Azure Machine Učení tracking nebo migrovat úlohy do cloudu prostřednictvím služby Azure Machine Učení compute.

Informace o odesílání trénovacích úloh pomocí projektů MLflow, které ke sledování používají pracovní prostory Azure Machine Učení, najdete v tématu Trénování modelů strojového učení pomocí projektů MLflow a Azure Machine Učení.

Příklady poznámkových bloků

MLflow SDK, Azure Machine Učení v2 a možnosti studio Azure Machine Learning

V následující tabulce jsou uvedeny operace, které jsou možné, pomocí jednotlivých klientských nástrojů dostupných v životním cyklu strojového učení.

Funkce MLflow SDK Azure Machine Učení CLI/SDK Studio Azure Machine Learning
Sledování a protokolování metrik, parametrů a modelů
Načtení metrik, parametrů a modelů 1
Odeslání trénovacích úloh {2
Odesílání trénovacích úloh pomocí datových prostředků Azure Machine Učení
Odesílání trénovacích úloh pomocí kanálů strojového učení
Správa experimentů a spuštění
Správa modelů MLflow {3
Správa modelů bez MLflow
Nasazení modelů MLflow do služby Azure Machine Učení (Online &Batch) {4
Nasazení modelů bez MLflow do azure Machine Učení

Poznámka: