Przepływ uczenia maszynowego i usługa Azure Machine Learning
DOTYCZY: Rozszerzenie interfejsu wiersza polecenia platformy Azure w wersji 2 (current)Zestaw PYTHON SDK azure-ai-ml v2 (bieżąca)
MLflow to platforma typu open source przeznaczona do zarządzania pełnym cyklem życia uczenia maszynowego. Możliwość trenowania i obsługi modeli na różnych platformach umożliwia korzystanie ze spójnego zestawu narzędzi niezależnie od tego, gdzie działają eksperymenty: czy lokalnie na komputerze, na zdalnym obiekcie docelowym obliczeniowym, na maszynie wirtualnej, czy w wystąpieniu obliczeniowym usługi Azure Machine Edukacja.
Obszary robocze usługi Azure Machine Edukacja są zgodne z platformą MLflow, co oznacza, że można używać obszarów roboczych usługi Azure Machine Edukacja w taki sam sposób, jak w przypadku używania serwera MLflow. Ta zgodność ma następujące zalety:
- Usługa Azure Machine Edukacja nie hostuje wystąpień serwera MLflow pod maską. Obszar roboczy może mówić o języku interfejsu API MLflow.
- Obszary robocze usługi Azure Machine Edukacja można używać jako serwera śledzenia dla dowolnego kodu MLflow, niezależnie od tego, czy działa on na platformie Azure Machine Edukacja, czy nie. Wystarczy skonfigurować rozwiązanie MLflow tak, aby wskazywał obszar roboczy, w którym powinno nastąpić śledzenie.
- Możesz uruchomić dowolną procedurę trenowania, która używa biblioteki MLflow w usłudze Azure Machine Edukacja bez żadnych zmian.
Napiwek
W przeciwieństwie do zestawu Azure Machine Edukacja SDK w wersji 1 nie ma funkcji rejestrowania w zestawie SDK w wersji 2. Zalecamy używanie biblioteki MLflow do rejestrowania, aby procedury trenowania nie są niezależne od chmury i przenośne — usuwając wszelkie zależności, które twój kod ma w usłudze Azure Machine Edukacja.
Śledzenie za pomocą biblioteki MLflow
Usługa Azure Machine Edukacja używa śledzenia MLflow do rejestrowania metryk i przechowywania artefaktów dla eksperymentów. Po nawiązaniu połączenia z usługą Azure Machine Edukacja wszystkie śledzenie wykonywane przy użyciu biblioteki MLflow jest zmaterializowane w obszarze roboczym, nad którym pracujesz. Aby dowiedzieć się więcej na temat konfigurowania eksperymentów w celu używania biblioteki MLflow do śledzenia eksperymentów i procedur szkoleniowych, zobacz Log metrics, parameters i files with MLflow (Metryki dzienników, parametry i pliki za pomocą biblioteki MLflow). Możesz również użyć biblioteki MLflow do wykonywania zapytań i porównywania eksperymentów i przebiegów.
Rozwiązanie MLflow w usłudze Azure Machine Edukacja umożliwia scentralizowanie śledzenia. Możesz połączyć platformę MLflow z obszarami roboczymi usługi Azure Machine Edukacja nawet wtedy, gdy pracujesz lokalnie lub w innej chmurze. Obszar roboczy zapewnia scentralizowaną, bezpieczną i skalowalną lokalizację do przechowywania metryk trenowania i modeli.
Korzystanie z platformy MLflow w usłudze Azure Machine Edukacja obejmuje następujące możliwości:
- Śledzenie eksperymentów i modeli uczenia maszynowego działających lokalnie lub w chmurze.
- Śledzenie eksperymentów uczenia maszynowego w usłudze Azure Databricks.
- Śledzenie eksperymentów uczenia maszynowego w usłudze Azure Synapse Analytics.
Przykładowe notesy
- Trenowanie i śledzenie klasyfikatora XGBoost za pomocą biblioteki MLflow: przedstawia sposób śledzenia eksperymentów przy użyciu biblioteki MLflow, modeli dzienników i łączenia wielu smaków w potoki.
- Trenowanie i śledzenie klasyfikatora XGBoost za pomocą biblioteki MLflow przy użyciu uwierzytelniania jednostki usługi: przedstawia sposób śledzenia eksperymentów przy użyciu biblioteki MLflow z zasobów obliczeniowych uruchomionych poza usługą Azure Machine Edukacja. W przykładzie pokazano, jak uwierzytelniać się w usłudze Azure Machine Edukacja przy użyciu jednostki usługi.
- Optymalizacja hiperparametrów przy użyciu funkcji HyperOpt i zagnieżdżonych przebiegów w bibliotece MLflow: pokazuje, jak używać przebiegów podrzędnych w usłudze MLflow do wykonywania optymalizacji hiperparametrów dla modeli przy użyciu popularnej biblioteki
Hyperopt
. W przykładzie pokazano, jak przesyłać metryki, parametry i artefakty z przebiegów podrzędnych do przebiegów nadrzędnych. - Rejestrowanie modeli za pomocą platformy MLflow: pokazuje, jak używać koncepcji modeli zamiast artefaktów za pomocą biblioteki MLflow. W przykładzie pokazano również, jak tworzyć modele niestandardowe.
- Zarządzanie przebiegami i eksperymentami za pomocą platformy MLflow: przedstawia sposób wykonywania zapytań dotyczących eksperymentów, przebiegów, metryk, parametrów i artefaktów z usługi Azure Machine Edukacja przy użyciu biblioteki MLflow.
Śledzenie za pomocą biblioteki MLflow w języku R
Obsługa platformy MLflow w języku R ma następujące ograniczenia:
- Śledzenie platformy MLflow jest ograniczone do śledzenia metryk eksperymentów, parametrów i modeli w zadaniach usługi Azure Machine Edukacja.
- Interaktywne szkolenie w programie RStudio, Posit (dawniej RStudio Workbench) lub notesach Jupyter z jądrami języka R nie jest obsługiwane.
- Zarządzanie modelami i rejestracja nie są obsługiwane przy użyciu zestawu MLflow R SDK. Zamiast tego użyj interfejsu wiersza polecenia usługi Azure Machine Edukacja lub narzędzia Azure Machine Edukacja Studio do rejestracji i zarządzania modelem.
Aby dowiedzieć się więcej na temat korzystania z klienta śledzenia MLflow w usłudze Azure Machine Edukacja, zapoznaj się z przykładami w temacie Trenowanie modeli języka R przy użyciu interfejsu wiersza polecenia usługi Azure Machine Edukacja (wersja 2).
Śledzenie za pomocą biblioteki MLflow w języku Java
Obsługa biblioteki MLflow w języku Java ma następujące ograniczenia:
- Śledzenie platformy MLflow jest ograniczone do śledzenia metryk eksperymentów i parametrów w usłudze Azure Machine Edukacja zadań.
- Artefakty i modele nie mogą być śledzone przy użyciu zestawu SDK języka Java MLflow. Zamiast tego użyj
Outputs
folderu w zadaniach wraz zmlflow.save_model
metodą , aby zapisać modele (lub artefakty), które chcesz przechwycić.
Aby dowiedzieć się więcej na temat korzystania z klienta śledzenia MLflow w usłudze Azure Machine Edukacja, zapoznaj się z przykładem języka Java korzystającym z klienta śledzenia MLflow za pomocą usługi Azure Machine Edukacja.
Rejestry modeli za pomocą biblioteki MLflow
Usługa Azure Machine Edukacja obsługuje rozwiązanie MLflow do zarządzania modelami. Ta obsługa stanowi wygodny sposób obsługi całego cyklu życia modelu dla użytkowników, którzy znają klienta MLflow.
Aby dowiedzieć się więcej na temat zarządzania modelami przy użyciu interfejsu API platformy MLflow w usłudze Azure Machine Edukacja, zobacz Zarządzanie rejestrami modeli w usłudze Azure Machine Edukacja przy użyciu biblioteki MLflow.
Przykładowy notes
- Zarządzanie rejestrami modeli za pomocą biblioteki MLflow: pokazuje, jak zarządzać modelami w rejestrach przy użyciu biblioteki MLflow.
Wdrażanie modelu za pomocą biblioteki MLflow
Modele MLflow można wdrożyć w usłudze Azure Machine Edukacja i korzystać z ulepszonego środowiska podczas korzystania z modeli MLflow. Usługa Azure Machine Edukacja obsługuje wdrażanie modeli MLflow zarówno w czasie rzeczywistym, jak i wsadowych punktów końcowych bez konieczności określania środowiska lub skryptu oceniania. Wdrażanie jest obsługiwane przy użyciu zestawu MLflow SDK, interfejsu wiersza polecenia usługi Azure Machine Edukacja, zestawu SDK usługi Azure Machine Edukacja dla języka Python lub usługi Azure Machine Edukacja Studio.
Aby dowiedzieć się więcej na temat wdrażania modeli MLflow na maszynie azure Edukacja na potrzeby wnioskowania w czasie rzeczywistym i wsadowego, zobacz Wytyczne dotyczące wdrażania modeli MLflow.
Przykładowe notesy
- Wdrażanie platformy MLflow w punktach końcowych online: przedstawia sposób wdrażania modeli w formacie MLflow w punktach końcowych online przy użyciu zestawu MLflow SDK.
- Wdrażanie platformy MLflow w punktach końcowych online z bezpiecznym wdrożeniem: przedstawia sposób wdrażania modeli w formacie MLflow w punktach końcowych online przy użyciu zestawu MLflow SDK z postępowym wdrażaniem modeli. W przykładzie pokazano również wdrożenie wielu wersji modelu w tym samym punkcie końcowym.
- Wdrażanie platformy MLflow w usługach internetowych (V1): przedstawia sposób wdrażania modeli w formacie MLflow w usługach internetowych (ACI/AKS v1) przy użyciu zestawu MLflow SDK.
- Wdrażanie modeli wytrenowanych w usłudze Azure Databricks w usłudze Azure Machine Edukacja za pomocą biblioteki MLflow: przedstawia sposób trenowania modeli w usłudze Azure Databricks i wdrażania ich w usłudze Azure Machine Edukacja. W tym przykładzie opisano również sposób obsługi przypadków, w których chcesz również śledzić eksperymenty z wystąpieniem platformy MLflow w usłudze Azure Databricks.
Trenowanie przy użyciu projektów MLflow (wersja zapoznawcza)
Ważne
Elementy oznaczone (wersja zapoznawcza) w tym artykule są obecnie dostępne w publicznej wersji zapoznawczej. Wersja zapoznawcza jest udostępniana bez umowy dotyczącej poziomu usług i nie jest zalecana 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.
Zadania szkoleniowe można przesyłać do usługi Azure Machine Edukacja przy użyciu projektów MLflow (wersja zapoznawcza). Zadania można przesyłać lokalnie za pomocą usługi Azure Machine Edukacja śledzenia lub migrowania zadań do chmury za pośrednictwem usługi Azure Machine Edukacja obliczeniowych.
Aby dowiedzieć się, jak przesyłać zadania szkoleniowe za pomocą projektów MLflow korzystających z obszarów roboczych usługi Azure Machine Edukacja do śledzenia, zobacz Trenowanie modeli uczenia maszynowego przy użyciu projektów MLflow i usługi Azure Machine Edukacja.
Przykładowe notesy
- Śledzenie projektu MLflow w obszarach roboczych usługi Azure Machine Edukacja.
- Trenowanie i uruchamianie projektu MLflow w usłudze Azure Machine Edukacja zadań.
Zestaw MLflow SDK, usługa Azure Machine Edukacja w wersji 2 i możliwości usługi Azure Machine Edukacja Studio
W poniższej tabeli przedstawiono operacje, które są możliwe, przy użyciu każdego z narzędzi klienckich dostępnych w cyklu życia uczenia maszynowego.
Funkcja | MLflow SDK | Interfejs wiersza polecenia/zestaw SDK usługi Azure Machine Edukacja | Azure Machine Learning Studio |
---|---|---|---|
Śledzenie i rejestrowanie metryk, parametrów i modeli | ✓ | ||
Pobieranie metryk, parametrów i modeli | ✓ | 1 | ✓ |
Przesyłanie zadań szkoleniowych | •2 | ✓ | ✓ |
Przesyłanie zadań szkoleniowych przy użyciu zasobów danych usługi Azure Machine Edukacja | ✓ | ✓ | |
Przesyłanie zadań szkoleniowych za pomocą potoków uczenia maszynowego | ✓ | ✓ | |
Zarządzanie eksperymentami i przebiegami | ✓ | ✓ | ✓ |
Zarządzanie modelami MLflow | •3 | ✓ | ✓ |
Zarządzanie modelami innych niż MLflow | ✓ | ✓ | |
Wdrażanie modeli MLflow w usłudze Azure Machine Edukacja (Online i Batch) | •4 | ✓ | ✓ |
Wdrażanie modeli innych niż MLflow w usłudze Azure Machine Edukacja | ✓ | ✓ |
Uwaga
- 1 Można pobrać tylko artefakty i modele.
- 2 Możliwe przy użyciu projektów MLflow (wersja zapoznawcza).
- 3 Niektóre operacje mogą nie być obsługiwane. Aby uzyskać szczegółowe informacje, zobacz Zarządzanie rejestrami modeli w usłudze Azure Machine Edukacja przy użyciu biblioteki MLflow.
- 4 Wdrożenie modeli MLflow na potrzeby wnioskowania wsadowego przy użyciu zestawu MLflow SDK nie jest obecnie możliwe. Alternatywnie zobacz Wdrażanie i uruchamianie modeli MLflow w zadaniach platformy Spark.
Powiązana zawartość
- Od artefaktów do modeli w narzędziu MLflow.
- Konfigurowanie platformy MLflow dla usługi Azure Machine Edukacja.
- Migrowanie rejestrowania z zestawu SDK w wersji 1 do biblioteki MLflow
- Śledzenie eksperymentów i modeli uczenia maszynowego za pomocą biblioteki MLflow.
- Rejestrowanie modeli MLflow.
- Wskazówki dotyczące wdrażania modeli MLflow.