Jak działa usługa Azure Machine Learning

Ukończone

Korzystanie z usługi Azure Machine Learning wymaga konta platformy Azure i subskrypcji platformy Azure. Subskrypcja ma standardowe i bezpłatne warstwy cenowe oraz udostępnia punkt końcowy i klucz subskrypcji w celu uzyskania dostępu do usługi.

Dostęp do usługi Azure Machine Learning można uzyskać w chmurze lub na komputerze lokalnym za pomocą zestawu SDK (Software Development Kit), interfejsu API REST i rozszerzenia interfejsu wiersza polecenia (CLI). Jeśli wolisz korzystać z opcji niskich lub braków kodu, usługa Azure Machine Learning Studio może służyć do szybkiego trenowania i wdrażania modeli uczenia maszynowego.

Usługa Azure Machine Learning zarządza wszystkimi zasobami potrzebnymi do cyklu życia uczenia maszynowego w obszarze roboczym. Przestrzenie robocze mogą być współdzielone przez wiele osób i zawierają elementy takie jak zasoby obliczeniowe dostępne dla notatników, klastrów szkoleniowych oraz potoków. Obszary robocze to również kontenery logiczne dla magazynów danych i repozytorium dla modeli i innych elementów w cyklu życia modelu.

cyklu życia usługi Azure Machine Learning.

Jak tworzyć modele uczenia maszynowego

Modele można tworzyć przy użyciu zestawu SDK, zaimportowanego ze struktur uczenia maszynowego lub bez kodu przy użyciu usługi Azure Machine Learning Studio. Po nawiązaniu połączenia z obszarem roboczym można wybrać różne środowiska programistyczne ze wstępnie załadowanymi pakietami zawierającymi wyselekcjonowane środowiska dla popularnych platform, takich jak TensorFlow i PyTorch. Docelowe obiekty obliczeniowe można następnie wybrać, aby uruchomić skrypt trenowania lokalnie lub na maszynie wirtualnej w celu utworzenia modelu. Cele obliczeniowe w usłudze Azure Machine Learning mogą automatycznie skalować zadania w górę i zarządzać nimi w celu wydajnego używania zasobów procesora GPU i procesora CPU.

Stan przebiegów można rejestrować i monitorować natywnie za pośrednictwem zestawu SDK, usługi Azure Monitor i usługi Azure Machine Learning Studio lub instalowania pakietów do uruchamiania bibliotek MLFlow i TensorBoard. Można wyświetlić wizualizację przebiegów trenowania w Azure Studio lub obszarze roboczym, aby szczegółowo analizować wyniki i metryki.

W poniższym przykładzie zobaczymy, jak można dostosować wizualizację usługi Azure Machine Learning Studio w celu dodawania wykresów, porównywania danych i stosowania filtrów w celu lepszego analizowania wyników i metryk.

Zrzut ekranu przedstawiający wizualizowanie modelu w usłudze Azure Machine Learning Studio.

Eksperymenty

Aby wytrenować model w usłudze Azure Machine Learning, należy uruchomić eksperyment— czyli po uruchomieniu skryptu szkoleniowego, który może generować metryki i dane wyjściowe śledzone. Możesz uruchomić ten sam eksperyment wiele razy z różnymi hiperparametrami, danymi, kodem lub ustawieniami. Obszar roboczy przechowuje historię wszystkich przebiegów trenowania, w tym dzienniki, metryki, dane wyjściowe i migawkę skryptów w środowisku. W projekcie współpracy dzienniki eksperymentów to doskonały sposób na przejrzenie i śledzenie postępu. Mogą pokazać, kto publikuje lub zmienia modele, dlaczego wprowadzono zmiany oraz kiedy modele zostały wdrożone lub używane w środowisku produkcyjnym.

Rurociągi

Pipeline to przepływ pracy pełnego zadania uczenia maszynowego, który może obejmować przygotowanie danych, szkolenie, testowanie i wdrażanie. Rurociągi mają wiele zastosowań. Możesz utworzyć potok, który trenuje modele, tworzy przewidywania w czasie rzeczywistym lub taki, który czyści tylko dane. Ponieważ każdy krok w ścieżce jest niezależny, wiele osób może jednocześnie pracować nad różnymi krokami w ramach tej samej ścieżki. Azure Machine Learning Pipelines może zaoszczędzić czas, uruchamiając ponownie tylko te kroki, których dane wejściowe uległy zmianie — znacząco zmniejszając czas wykonywania, jeśli wystarczy, że dopasujesz hiperparametry lub inne kroki. Obie usługi Azure Data Factory i Azure Pipelines udostępniają gotowe potoki dla Azure Machine Learning, dzięki czemu można skoncentrować się na uczeniu maszynowym zamiast zajmować się infrastrukturą.

Zasoby danych

Zasoby danych można tworzyć na podstawie magazynów danych, publicznych adresów URL i zestawów danych Usługi Azure Open. Tworząc zasób danych, odwołujesz się do lokalizacji źródła danych — dlatego dane z zestawów szkoleniowych i potoków będą przechowywane bez zmiany oryginalnych danych. Zasoby danych można następnie rejestrować, wersjonować, monitorować i sprawdzać w celu umożliwienia szybkiego ponownego użycia i udostępniania między zespołami, rolami i eksperymentami. Przechowywanie wersji powtarzalnych eksperymentów jest również możliwe, co umożliwia lepszą analizę wydajności danych i wydajności modelu.

Usługa Azure Machine Learning może okresowo sprawdzać nowo przechowywane dane przy użyciu odświeżania przyrostowego , umożliwia automatyczne aktualizowanie zasobów danych po dodaniu nowych danych do magazynu danych. T

Etykietowania

etykietowania danych to scentralizowane miejsce do tworzenia i monitorowania zadań etykietowania oraz zarządzania nimi. Wszystkie projekty etykietowania danych można administrować za pośrednictwem pulpitu nawigacyjnego usługi Azure Machine Learning Studio lub obszaru roboczego, w którym członkowie zespołu mogą wyświetlać postępy i pomagać w projektach etykietowania wspólnego. W tym miejscu może odbywać się etykietowanie pętli human-in-the-loop, dzięki czemu członkowie zespołu mogą ręcznie dodawać tagi do trenowania modeli etykietowania uczenia maszynowego. Po przesłaniu wystarczającej liczby etykiet model klasyfikacji jest używany do przewidywania tagów. Członkowie zespołu mogą następnie akceptować lub odrzucać wystąpienia danych oznaczonych tagiem uczenia maszynowego, aby pomóc w wytrenowaniu dokładności modelu etykietowania. W końcu model będzie mógł oznaczać dane bez pomocy.

Poniżej przedstawiono przykład zadania etykietowania w toku w usłudze Azure Machine Learning Studio.

zrzut ekranu przedstawiający etykietowanie danych usługi Azure Machine Learning Studio.

Wdrażanie modeli uczenia maszynowego

Usługa Azure Machine Learning może pakować i uruchamiać modele w kontenerach platformy Docker na potrzeby wdrażania. Te kontenery są oddzielone od skryptu uruchamiania, dzięki czemu można szybko zamienić lub zaktualizować modele przy użyciu ulepszonych, pozostawiając skrypt niezmodyfikowany.

Model można również pobrać do formatu Open Neural Network Exchange (ONNX), który zapewnia szeroką elastyczność w potencjalnych platformach wdrażania i urządzeniach, takich jak iOS, Android i Linux.

Usługa Azure Machine Learning udostępnia wstępnie spakowane obrazy kontenerów, które obejmują stabilne środowiska ze wstępnie załadowanymi pakietami i ustawieniami języka Python. Te obrazy kontenerów ułatwiają wdrażanie w popularnych platformach uczenia maszynowego, takich jak TensorFlow i PyTorch przy minimalnej konfiguracji.