Ta architektura referencyjna ilustruje sposób użycia usługi Azure Stack Edge w celu rozszerzenia szybkiego wnioskowania uczenia maszynowego z chmury do scenariuszy lokalnych lub brzegowych. Usługa Azure Stack Hub oferuje możliwości platformy Azure, takie jak obliczenia, magazyn, sieć i przyspieszone sprzętowo uczenie maszynowe w dowolnej lokalizacji brzegowej.
Architektura
Pobierz plik programu Visio z tą architekturą.
Przepływ pracy
Architektura składa się z następujących kroków:
- Azure Machine Learning. Usługa Machine Learning umożliwia tworzenie, trenowanie, wdrażanie i zarządzanie modelami uczenia maszynowego w środowisku opartym na chmurze. Modele te mogą następnie być wdrażane w usługach platformy Azure, w tym (ale nie tylko) w usługach Azure Container Instances, Azure Kubernetes Service (AKS) i Azure Functions.
- Azure Container Registry. Container Registry to usługa, która tworzy rejestr platformy Docker i zarządza nim. Usługa Container Registry tworzy, przechowuje obrazy kontenerów platformy Docker i zarządza nimi oraz może przechowywać konteneryzowane modele uczenia maszynowego.
- Azure Stack Edge. Azure Stack Edge to urządzenie do przetwarzania brzegowego przeznaczone do wnioskowania uczenia maszynowego na brzegu sieci. Dane są wstępnie przetworzone na brzegu przed transferem na platformę Azure. Usługa Azure Stack Edge zawiera sprzęt przyspieszania obliczeniowego zaprojektowany w celu zwiększenia wydajności wnioskowania sztucznej inteligencji na brzegu sieci.
- Dane lokalne. Lokalne dane odwołują się do wszystkich danych używanych w trenowaniu modelu uczenia maszynowego. Dane mogą znajdować się w dowolnym rozwiązaniu magazynu lokalnego, w tym wdrożeniach usługi Azure Arc.
Składniki
Szczegóły scenariusza
Potencjalne przypadki użycia
To rozwiązanie jest idealne dla branży telekomunikacyjnej. Typowe zastosowania do rozszerzania wnioskowania obejmują następujące elementy:
- Uruchamianie lokalnego, szybkiego wnioskowania uczenia maszynowego względem danych podczas pozyskiwania i znacznego zużycia sprzętu lokalnego.
- Tworzenie długoterminowych rozwiązań badawczych, w których istniejące dane lokalne są czyszczone i używane do generowania modelu. Model jest następnie używany zarówno lokalnie, jak i w chmurze; jest regularnie trenowany po nadejściu nowych danych.
- Twórz aplikacje oprogramowania, które muszą wnioskować o użytkownikach, zarówno w lokalizacji fizycznej, jak i w trybie online.
Zalecenia
Pozyskiwanie, przekształcanie i przesyłanie danych przechowywanych lokalnie
Usługa Azure Stack Edge może przekształcić dane pochodzące z magazynu lokalnego przed przesłaniem tych danych na platformę Azure. Ta transformacja jest wykonywana przez urządzenie usługi Azure IoT Edge wdrożone na urządzeniu Azure Stack Edge. Te urządzenia usługi IoT Edge są skojarzone z zasobem usługi Azure IoT Hub na platformie Azure w chmurze.
Każdy moduł usługi IoT Edge jest kontenerem platformy Docker, który wykonuje określone zadanie w przepływie pracy pozyskiwania, przekształcania i transferu. Na przykład moduł usługi IoT Edge może zbierać dane z udziału lokalnego usługi Azure Stack Edge i przekształcać dane w format gotowy do uczenia maszynowego. Następnie moduł przesyła przekształcone dane do udziału w chmurze usługi Azure Stack Edge. Możesz dodawać niestandardowe lub wbudowane moduły do urządzenia usługi IoT Edge lub opracowywać niestandardowe moduły usługi IoT Edge.
Uwaga
Moduły usługi IoT Edge są rejestrowane jako obrazy kontenerów platformy Docker w usłudze Container Registry.
W zasobie usługi Azure Stack Edge na platformie Azure w chmurze udział w chmurze jest wspierany przez zasób konta usługi Azure Blob Storage. Wszystkie dane w udziale w chmurze zostaną automatycznie przekazane do skojarzonego konta magazynu. Możesz zweryfikować transformację i transfer danych, instalowania udziału lokalnego lub w chmurze albo przechodząc przez konto usługi Azure Storage.
Trenowanie i wdrażanie modelu
Po przygotowaniu i przechowywaniu danych w usłudze Blob Storage możesz utworzyć zestaw danych usługi Machine Learning łączący się z usługą Azure Storage. Zestaw danych reprezentuje pojedynczą kopię danych w magazynie, do którego bezpośrednio odwołuje się usługa Machine Learning.
Możesz użyć interfejsu wiersza polecenia usługi Machine Learning, zestawu R SDK, zestawu SDK języka Python, projektanta lub programu Visual Studio Code, aby skompilować skrypty wymagane do wytrenowania modelu.
Po zakończeniu trenowania i gotowości modelu do wdrożenia można wdrożyć go w różnych usługach platformy Azure, w tym między innymi:
- Azure Container Registry. Modele można wdrożyć w prywatnym rejestrze platformy Docker, takim jak Usługa Azure Container Registry, ponieważ są to obrazy kontenerów platformy Docker.
- Azure Container Instances. Obraz kontenera platformy Docker modelu można wdrożyć bezpośrednio w grupie kontenerów.
- Azure Kubernetes Service. Usługa Azure Kubernetes Service umożliwia automatyczne skalowanie obrazu kontenera platformy Docker modelu na potrzeby wdrożeń produkcyjnych na dużą skalę.
- Usługa Azure Functions. Możesz spakować model do uruchamiania bezpośrednio w wystąpieniu funkcji .
- Azure Machine Learning. Do trenowania i wnioskowania modeli można używać wystąpień obliczeniowych, zarządzanych stacji roboczych programistycznych opartych na chmurze. Możesz również podobnie wdrożyć model na lokalnych urządzeniach usługi IoT Edge i Azure Stack Edge .
Uwaga
W przypadku tej architektury referencyjnej model jest wdrażany w usłudze Azure Stack Edge w celu udostępnienia modelu do wnioskowania lokalnego. Model jest również wdrażany w usłudze Container Registry, aby upewnić się, że model jest dostępny do wnioskowania w najszerszej gamie usług platformy Azure.
Wnioskowanie z nowo wdrożonym modelem
Usługa Azure Stack Edge może szybko uruchamiać modele uczenia maszynowego lokalnie na danych przy użyciu wbudowanego sprzętu przyspieszania obliczeniowego. To obliczenie odbywa się całkowicie na brzegu. Wynikiem jest szybki wgląd w szczegółowe dane przy użyciu sprzętu, który jest bliżej źródła danych niż region chmury publicznej.
Ponadto usługa Azure Stack Edge nadal przesyła dane do usługi Machine Learning w celu ciągłego ponownego trenowania i ulepszania przy użyciu potoku uczenia maszynowego skojarzonego z modelem, który jest już uruchomiony na danych przechowywanych lokalnie.
Kwestie wymagające rozważenia
Te zagadnienia implementują filary struktury Azure Well-Architected Framework, która jest zestawem wytycznych, które mogą służyć do poprawy jakości obciążenia. Aby uzyskać więcej informacji, zobacz Microsoft Azure Well-Architected Framework.
Dostępność
- Rozważ umieszczenie zasobu usługi Azure Stack Edge w tym samym regionie świadczenia usługi Azure co inne usługi platformy Azure, które będą do niego uzyskiwać dostęp. Aby zoptymalizować wydajność przekazywania, rozważ umieszczenie konta usługi Azure Blob Storage w regionie, w którym urządzenie ma najlepsze połączenie sieciowe.
- Rozważ usługę Azure ExpressRoute , aby uzyskać stabilne, nadmiarowe połączenie między urządzeniem a platformą Azure.
Możliwości zarządzania
- Administratorzy mogą sprawdzić, czy źródło danych z magazynu lokalnego zostało prawidłowo przeniesione do zasobu usługi Azure Stack Edge. Mogą sprawdzić, instalowania udziału plików bloku komunikatów serwera (SMB)/sieciowego systemu plików (NFS) lub łączenia się ze skojarzonym kontem usługi Blob Storage przy użyciu Eksplorator usługi Azure Storage.
- Zestawy danych usługi Machine Learning umożliwiają odwołowanie się do danych w usłudze Blob Storage podczas trenowania modelu. Odwoływanie się do magazynu eliminuje konieczność osadzania wpisów tajnych, ścieżek danych lub parametry połączenia w skryptach szkoleniowych.
- W obszarze roboczym usługi Machine Learning zarejestruj i śledź modele uczenia maszynowego, aby śledzić różnice między modelami w różnych punktach w czasie. Podobnie można dublować metadane przechowywania wersji i śledzenia w tagach używanych dla obrazów kontenerów platformy Docker, które są wdrażane w usłudze Container Registry.
DevOps
- Zapoznaj się z podejściem do zarządzania cyklem życia metodyki MLOps na potrzeby uczenia maszynowego. Na przykład użyj usługi GitHub lub Azure Pipelines, aby utworzyć proces ciągłej integracji, który automatycznie trenuje i ponownie trenuje model. Trenowanie może zostać wyzwolone po wypełnieniu zestawu danych nowymi danymi lub wprowadzeniu zmian w skryptach szkoleniowych.
- Obszar roboczy usługi Azure Machine Learning automatycznie rejestruje obrazy kontenerów platformy Docker i zarządza nimi na potrzeby modeli uczenia maszynowego i modułów usługi IoT Edge.
Optymalizacja kosztów
Optymalizacja kosztów dotyczy sposobów zmniejszenia niepotrzebnych wydatków i poprawy wydajności operacyjnej. Aby uzyskać więcej informacji, zobacz Omówienie filaru optymalizacji kosztów.
- Koszty możesz szacować za pomocą kalkulatora cen platformy Azure.
- Cennik usługi Azure Stack Edge jest obliczany jako subskrypcja miesięczna z jednorazową opłatą za wysyłkę.
- Usługa Azure Machine Learning wdraża również usługi Container Registry, Azure Storage i Azure Key Vault, które generują dodatkowe koszty. Aby uzyskać więcej informacji, zobacz How Azure Machine Learning works: Architecture and concepts (Jak działa usługa Azure Machine Learning: architektura i pojęcia).
- Cennik usługi Azure Machine Learning obejmuje opłaty za maszyny wirtualne używane do trenowania modelu w chmurze publicznej.
Następne kroki
Dokumentacja produktu
Moduły microsoft Learn:
- Wprowadzenie do sztucznej inteligencji na platformie Azure
- Praca z danymi w usłudze Azure Machine Learning