Co to jest Azure Machine Learning?
Azure Machine Learning to usługa w chmurze służąca do przyspieszania cyklu życia projektu uczenia maszynowego (ML) i zarządzania nim. Specjaliści ds. uczenia maszynowego, analitycy danych i inżynierowie mogą używać ich w codziennych przepływach pracy do trenowania i wdrażania modeli oraz zarządzania operacjami uczenia maszynowego (MLOps).
Model można utworzyć w usłudze Machine Learning lub użyć modelu utworzonego na podstawie platformy typu open source, takiej jak PyTorch, TensorFlow lub scikit-learn. Narzędzia MLOps ułatwiają monitorowanie, ponowne trenowanie i ponowne wdrażanie modeli.
Napiwek
Bezpłatna wersja próbna! Jeśli nie masz subskrypcji platformy Azure, przed rozpoczęciem utwórz bezpłatne konto. Wypróbuj bezpłatną lub płatną wersję usługi Azure Machine Learning. Możesz uzyskać środki do wydania na usługi platformy Azure. Nawet po ich wyczerpaniu możesz zachować konto i korzystać z bezpłatnych usług platformy Azure. Karta kredytowa nie zostanie obciążona, chyba że jawnie zmienisz ustawienia i poprosisz o jej obciążenie.
Dla kogo jest usługa Azure Machine Learning?
Uczenie maszynowe jest przeznaczone dla osób i zespołów wdrażających metodykę MLOps w organizacji w celu wprowadzenia modeli uczenia maszynowego do środowiska produkcyjnego w bezpiecznym i podlegającym inspekcji środowisku produkcyjnym.
Analitycy danych i inżynierowie uczenia maszynowego mogą używać narzędzi do przyspieszania i automatyzowania codziennych przepływów pracy. Deweloperzy aplikacji mogą używać narzędzi do integrowania modeli z aplikacjami lub usługami. Deweloperzy platform mogą używać niezawodnego zestawu narzędzi wspieranych przez trwałe interfejsy API usługi Azure Resource Manager do tworzenia zaawansowanych narzędzi uczenia maszynowego.
Przedsiębiorstwa działające w chmurze platformy Microsoft Azure mogą używać znanych zabezpieczeń i kontroli dostępu opartej na rolach dla infrastruktury. Projekt można skonfigurować tak, aby uniemożliwić dostęp do chronionych danych i wybrać operacje.
Produktywność dla wszystkich użytkowników w zespole
Projekty uczenia maszynowego często wymagają zespołu z zróżnicowanym zestawem umiejętności do tworzenia i konserwacji. Usługa Machine Learning ma narzędzia, które ułatwiają:
Współpraca z zespołem za pośrednictwem udostępnionych notesów, zasobów obliczeniowych, bezserwerowych zasobów obliczeniowych, danych i środowisk
Opracowywanie modeli w celu zapewnienia sprawiedliwości i możliwości wyjaśnienia, śledzenia i inspekcji w celu spełnienia wymagań dotyczących pochodzenia i zgodności inspekcji
Szybkie i łatwe wdrażanie modeli uczenia maszynowego na dużą skalę oraz efektywne zarządzanie nimi za pomocą metodyki MLOps
Uruchamianie obciążeń uczenia maszynowego w dowolnym miejscu z wbudowanym ładem, zabezpieczeniami i zgodnością
Narzędzia platformy zgodne z wymaganiami
Każda osoba w zespole uczenia maszynowego może użyć swoich preferowanych narzędzi, aby wykonać zadanie. Niezależnie od tego, czy uruchamiasz szybkie eksperymenty, dostrajanie hiperparametrów, potoki konstrukcyjne, czy zarządzasz wnioskowaniami, możesz użyć znanych interfejsów, takich jak:
- Azure Machine Learning Studio
- Zestaw PYTHON SDK (wersja 2)
- Interfejs wiersza polecenia platformy Azure (wersja 2)
- Interfejsy API REST usługi Azure Resource Manager
W miarę udoskonalania modelu i współpracy z innymi osobami w pozostałej części cyklu programowania usługi Machine Learning możesz udostępniać i znajdować zasoby, zasoby i metryki dla projektów w interfejsie użytkownika usługi Machine Learning Studio.
Studio
Usługa Machine Learning Studio oferuje wiele środowisk tworzenia w zależności od typu projektu i poziomu poprzedniego środowiska uczenia maszynowego bez konieczności instalowania niczego.
Notesy: pisanie i uruchamianie własnego kodu na zarządzanych serwerach Jupyter Notebook, które są bezpośrednio zintegrowane w programie Studio. Możesz też otworzyć notesy w programie VS Code w internecie lub na pulpicie.
Wizualizowanie metryk uruchamiania: analizowanie i optymalizowanie eksperymentów za pomocą wizualizacji.
Projektant usługi Azure Machine Learning: użyj projektanta do trenowania i wdrażania modeli uczenia maszynowego bez konieczności pisania kodu. Przeciągnij i upuść zestawy danych i składniki, aby utworzyć potoki uczenia maszynowego.
Interfejs użytkownika zautomatyzowanego uczenia maszynowego: dowiedz się, jak tworzyć zautomatyzowane eksperymenty uczenia maszynowego za pomocą łatwego w użyciu interfejsu.
Etykietowanie danych: użyj etykietowania danych usługi Machine Learning, aby efektywnie koordynować projekty etykietowania obrazów lub etykietowania tekstu.
Praca z maszynami LLM i generowaniem sztucznej inteligencji
Usługa Azure Machine Learning zawiera narzędzia ułatwiające tworzenie aplikacji generowania sztucznej inteligencji obsługiwanych przez duże modele językowe (LLMs). Rozwiązanie obejmuje katalog modeli, przepływ monitów i zestaw narzędzi, które usprawniają cykl opracowywania aplikacji sztucznej inteligencji.
Zarówno usługa Azure Machine Learning Studio, jak i usługa Azure AI Studio umożliwiają pracę z usługami LLM. Skorzystaj z tego przewodnika, aby określić , którego studia należy użyć.
Wykaz modeli
Wykaz modeli w usłudze Azure Machine Learning Studio to centrum do odnajdywania i używania szerokiej gamy modeli, które umożliwiają tworzenie aplikacji generujących sztuczną inteligencję. Wykaz modeli zawiera setki modeli od dostawców modeli, takich jak usługa Azure OpenAI, Mistral, Meta, Cohere, Nvidia, Hugging Face, w tym modele trenowane przez firmę Microsoft. Modele od dostawców innych niż Microsoft są produktami innych niż Microsoft, zgodnie z definicją w warunkach produktu firmy Microsoft i podlegają warunkom dostarczonym z modelem.
Przepływ monitu
Przepływ monitów usługi Azure Machine Learning to narzędzie programistyczne zaprojektowane w celu usprawnienia całego cyklu tworzenia aplikacji sztucznej inteligencji obsługiwanych przez duże modele językowe (LLMs). Przepływ monitów zapewnia kompleksowe rozwiązanie, które upraszcza proces tworzenia prototypów, eksperymentowania, iteracji i wdrażania aplikacji wykorzystujących sztuczną inteligencję.
Gotowość i bezpieczeństwo przedsiębiorstwa
Usługa Machine Learning integruje się z platformą w chmurze platformy Azure w celu dodania zabezpieczeń do projektów uczenia maszynowego.
Integracje zabezpieczeń obejmują:
- Sieci wirtualne platformy Azure z sieciowymi grupami zabezpieczeń.
- Usługa Azure Key Vault, w której można zapisywać wpisy tajne zabezpieczeń, takie jak informacje o dostępie dla kont magazynu.
- Usługa Azure Container Registry skonfigurowana za siecią wirtualną.
Aby uzyskać więcej informacji, zobacz Samouczek: konfigurowanie bezpiecznego obszaru roboczego.
Integracje platformy Azure dla kompletnych rozwiązań
Inne integracje z usługami platformy Azure obsługują projekt uczenia maszynowego od końca do końca. To na przykład:
- Usługa Azure Synapse Analytics, która służy do przetwarzania i przesyłania strumieniowego danych za pomocą platformy Spark.
- Usługa Azure Arc, w której można uruchamiać usługi platformy Azure w środowisku Kubernetes.
- Opcje magazynu i bazy danych, takie jak Azure SQL Database i Azure Blob Storage.
- aplikacja systemu Azure Service, której można użyć do wdrażania aplikacji opartych na uczeniu maszynowym i zarządzania nimi.
- Usługa Microsoft Purview, która umożliwia odnajdywanie i katalogowania zasobów danych w całej organizacji.
Ważne
Usługa Azure Machine Learning nie przechowuje ani nie przetwarza danych poza regionem, w którym wdrażasz.
Przepływ pracy projektu uczenia maszynowego
Zazwyczaj modele są opracowywane w ramach projektu z celem i celami. Projekty często obejmują więcej niż jedną osobę. Podczas eksperymentowania z danymi, algorytmami i modelami programowanie jest iteracyjne.
Cykl życia projektu
Cykl życia projektu może się różnić w zależności od projektu, ale często wygląda jak ten diagram.
Obszar roboczy organizuje projekt i umożliwia współpracę wielu użytkowników pracujących w kierunku wspólnego celu. Użytkownicy w obszarze roboczym mogą łatwo udostępniać wyniki swoich przebiegów z eksperymentowania w interfejsie użytkownika programu Studio. Mogą też używać zasobów w wersji dla zadań, takich jak środowiska i odwołania do magazynu.
Aby uzyskać więcej informacji, zobacz Zarządzanie obszarami roboczymi usługi Azure Machine Learning.
Gdy projekt jest gotowy do operacji, praca użytkowników może zostać zautomatyzowana w potoku uczenia maszynowego i wyzwolona zgodnie z harmonogramem lub żądaniem HTTPS.
Modele można wdrażać w zarządzanym rozwiązaniu wnioskowania, zarówno w przypadku wdrożeń w czasie rzeczywistym, jak i wsadowych, abstrakcji zarządzania infrastrukturą zwykle wymaganego do wdrażania modeli.
Szkolenie modeli
W usłudze Azure Machine Learning możesz uruchomić skrypt szkoleniowy w chmurze lub utworzyć model od podstaw. Klienci często korzystają z modeli utworzonych i wytrenowanych w strukturach typu open source, aby umożliwić im operacjonalizacja w chmurze.
Otwartość i międzyoperacyjność
Analitycy danych mogą używać modeli w usłudze Azure Machine Learning utworzonych w typowych strukturach języka Python, takich jak:
- PyTorch
- TensorFlow
- scikit-learn
- XGBoost
- LightGBM
Obsługiwane są również inne języki i struktury:
- R
- .NET
Aby uzyskać więcej informacji, zobacz Integracja typu open source z usługą Azure Machine Learning.
Automatyczne wybieranie cech i algorytmów
W powtarzalnym, czasochłonnym procesie, w klasycznym uczeniu maszynowym, analitycy danych używają wcześniejszego doświadczenia i intuicji do wybierania odpowiednich cech danych i algorytmu do trenowania. Zautomatyzowane uczenie maszynowe (AutoML) przyspiesza ten proces. Można go używać za pomocą interfejsu użytkownika usługi Machine Learning Studio lub zestawu SDK języka Python.
Aby uzyskać więcej informacji, zobacz Co to jest zautomatyzowane uczenie maszynowe?.
Optymalizacja hiperparametrów
Optymalizacja hiperparametrów lub dostrajanie hiperparametrów może być żmudnym zadaniem. Usługa Machine Learning może zautomatyzować to zadanie dla dowolnych sparametryzowanych poleceń z niewielką modyfikacją definicji zadania. Wyniki są wizualizowane w studio.
Aby uzyskać więcej informacji, zobacz Dostosowywanie hiperparametrów.
Trenowanie rozproszone z wieloma węzłami
Efektywność trenowania na potrzeby uczenia głębokiego, a czasami klasyczne zadania trenowania uczenia maszynowego mogą zostać znacząco ulepszone za pośrednictwem trenowania rozproszonego w wielu węzłach. Klastry obliczeniowe usługi Azure Machine Learning i bezserwerowe zasoby obliczeniowe oferują najnowsze opcje procesora GPU.
Obsługiwane za pośrednictwem usługi Azure Machine Learning Kubernetes, klastrów obliczeniowych usługi Azure Machine Learning i bezserwerowych obliczeń:
- PyTorch
- TensorFlow
- MPI
Możesz użyć dystrybucji MPI dla struktury Horovod lub niestandardowej logiki wielowęźleowej. Platforma Apache Spark jest obsługiwana za pośrednictwem bezserwerowych obliczeń Spark i dołączonej puli platformy Spark usługi Synapse Spark, która korzysta z klastrów Spark usługi Azure Synapse Analytics.
Aby uzyskać więcej informacji, zobacz Trenowanie rozproszone za pomocą usługi Azure Machine Learning.
Żenujące trenowanie równoległe
Skalowanie projektu uczenia maszynowego może wymagać skalowania żenującego trenowania modelu równoległego. Ten wzorzec jest typowy dla scenariuszy, takich jak zapotrzebowanie na prognozowanie, gdzie model może być trenowany dla wielu sklepów.
Wdrażanie modeli
Aby przenieść model do środowiska produkcyjnego, należy wdrożyć model. Zarządzane punkty końcowe usługi Azure Machine Learning określają wymaganą infrastrukturę dla oceniania modelu wsadowego lub w czasie rzeczywistym (online) (wnioskowanie).
Ocenianie w czasie rzeczywistym i wsadowe (wnioskowanie)
Ocenianie wsadowe lub wnioskowanie wsadowe polega na wywołaniu punktu końcowego z odwołaniem do danych. Punkt końcowy wsadowy uruchamia zadania asynchronicznie w celu równoległego przetwarzania danych w klastrach obliczeniowych i przechowywania danych w celu dalszej analizy.
Ocenianie w czasie rzeczywistym lub wnioskowanie online polega na wywoływaniu punktu końcowego z co najmniej jednym wdrożeniem modelu i odbieraniu odpowiedzi niemal w czasie rzeczywistym za pośrednictwem protokołu HTTPS. Ruch może być podzielony na wiele wdrożeń, co pozwala na testowanie nowych wersji modelu przez przekierowanie pewnej ilości ruchu początkowo i zwiększenie po ustanowieniu nowego modelu.
Aby uzyskać więcej informacji, zobacz:
- Wdrażanie modelu za pomocą zarządzanego punktu końcowego w czasie rzeczywistym
- Używanie punktów końcowych wsadowych do oceniania
Metodyka MLOps: Metodyka DevOps na potrzeby uczenia maszynowego
Metodyka DevOps dla modeli uczenia maszynowego, często nazywana metodyką MLOps, to proces tworzenia modeli w środowisku produkcyjnym. Cykl życia modelu od trenowania do wdrożenia musi być możliwy do inspekcji, jeśli nie można go odtworzyć.
Cykl życia modelu uczenia maszynowego
Dowiedz się więcej o metodyce MLOps w usłudze Azure Machine Learning.
Integracje umożliwiające mlops
Uczenie maszynowe jest tworzone z myślą o cyklu życia modelu. Możesz przeprowadzić inspekcję cyklu życia modelu w dół do określonego zatwierdzenia i środowiska.
Oto niektóre kluczowe funkcje umożliwiające metodyce MLOps:
git
integracja.- Integracja platformy MLflow.
- Planowanie potoków uczenia maszynowego.
- Integracja usługi Azure Event Grid dla wyzwalaczy niestandardowych.
- Łatwość użycia z narzędziami ciągłej integracji/ciągłego wdrażania, takimi jak GitHub Actions lub Azure DevOps.
Usługa Machine Learning obejmuje również funkcje monitorowania i inspekcji:
- Artefakty zadań, takie jak migawki kodu, dzienniki i inne dane wyjściowe.
- Pochodzenie między zadaniami i zasobami, takimi jak kontenery, dane i zasoby obliczeniowe.
Jeśli używasz platformy Apache Airflow, pakiet airflow-provider-azure-machinelearning jest dostawcą, który umożliwia przesyłanie przepływów pracy do usługi Azure Machine Learning z platformy Apache AirFlow.
Powiązana zawartość
Rozpocznij korzystanie z usługi Azure Machine Learning: