Możliwości uczenia maszynowego w usłudze Azure Synapse Analytics
Usługa Azure Synapse Analytics oferuje różne możliwości uczenia maszynowego. Ten artykuł zawiera omówienie sposobu stosowania usługi Machine Learning w kontekście usługi Azure Synapse.
To omówienie obejmuje różne możliwości usługi Synapse związane z uczeniem maszynowym z perspektywy procesu nauki o danych.
Możesz zapoznać się z typowym procesem nauki o danych. Jest to dobrze znany proces, który następuje w większości projektów uczenia maszynowego.
Na wysokim poziomie proces zawiera następujące kroki:
- Informacje biznesowe (nie zostały omówione w tym artykule)
- Pozyskiwanie danych i ich analiza
- Modelowanie
- Wdrażanie modelu i ocenianie
W tym artykule opisano możliwości uczenia maszynowego usługi Azure Synapse w różnych aparatach analitycznych z perspektywy procesu nauki o danych. Dla każdego kroku procesu nauki o danych podsumowane są możliwości usługi Azure Synapse, które mogą pomóc.
Pozyskiwanie danych i ich analiza
Większość projektów uczenia maszynowego obejmuje dobrze ustalone kroki, a jednym z tych kroków jest uzyskanie dostępu do danych i zrozumienie ich.
Źródło danych i potoki
Dzięki usłudze Azure Data Factory natywnie zintegrowanej części usługi Azure Synapse dostępny jest zaawansowany zestaw narzędzi do pozyskiwania danych i potoków aranżacji danych. Dzięki temu można łatwo tworzyć potoki danych w celu uzyskiwania dostępu do danych i przekształcania ich w format, który może być używany na potrzeby uczenia maszynowego. Dowiedz się więcej o potokach danych w usłudze Synapse.
Przygotowywanie i eksploracja/wizualizacja danych
Ważną częścią procesu uczenia maszynowego jest zrozumienie danych przez eksplorację i wizualizacje.
W zależności od miejsca przechowywania danych usługa Synapse oferuje zestaw różnych narzędzi do eksplorowania i przygotowywania ich do analizy i uczenia maszynowego. Jednym z najszybszych sposobów rozpoczęcia eksploracji danych jest użycie platformy Apache Spark lub bezserwerowych pul SQL bezpośrednio przez dane w usłudze Data Lake.
Platforma Apache Spark dla usługi Azure Synapse oferuje możliwości przekształcania, przygotowywania i eksplorowania danych na dużą skalę. Te pule platformy Spark oferują narzędzia, takie jak PySpark/Python, Scala i .NET do przetwarzania danych na dużą skalę. Korzystając z zaawansowanych bibliotek wizualizacji, można ulepszyć środowisko eksploracji danych, aby lepiej zrozumieć dane. Dowiedz się więcej na temat eksplorowania i wizualizowania danych w usłudze Synapse przy użyciu platformy Spark.
Bezserwerowe pule SQL umożliwiają eksplorowanie danych przy użyciu języka TSQL bezpośrednio w usłudze Data Lake. Bezserwerowe pule SQL oferują również wbudowane wizualizacje w programie Synapse Studio. Dowiedz się więcej o sposobie eksplorowania danych za pomocą bezserwerowych pul SQL.
Modelowanie
W usłudze Azure Synapse trenowanie modeli uczenia maszynowego można wykonywać w pulach platformy Apache Spark za pomocą narzędzi takich jak PySpark/Python, Scala lub .NET.
Trenowanie modeli w pulach platformy Spark za pomocą biblioteki MLlib
Modele uczenia maszynowego można wytrenować za pomocą różnych algorytmów i bibliotek. Biblioteka MLlib platformy Spark oferuje skalowalne algorytmy uczenia maszynowego, które mogą pomóc w rozwiązywaniu większości klasycznych problemów z uczeniem maszynowym. Aby zapoznać się z samouczkiem dotyczącym trenowania modelu przy użyciu biblioteki MLlib w usłudze Synapse, zobacz Tworzenie aplikacji uczenia maszynowego przy użyciu bibliotek MLlib platformy Apache Spark i usługi Azure Synapse Analytics.
Oprócz bibliotek MLlib popularne biblioteki, takie jak Scikit Learn , mogą również służyć do tworzenia modeli. Aby uzyskać szczegółowe informacje na temat sposobu instalowania bibliotek w pulach platformy Synapse Spark, zobacz Zarządzanie bibliotekami platformy Apache Spark w usłudze Azure Synapse Analytics .
Trenowanie modeli za pomocą zautomatyzowanego uczenia maszynowego w usłudze Azure Machine Learning
Innym sposobem trenowania modeli uczenia maszynowego, które nie wymagają znacznie wcześniejszej znajomości uczenia maszynowego, jest użycie zautomatyzowanego uczenia maszynowego. Zautomatyzowane uczenie maszynowe to funkcja, która automatycznie trenuje zestaw modeli uczenia maszynowego i umożliwia użytkownikowi wybranie najlepszego modelu na podstawie określonych metryk. Dzięki bezproblemowej integracji z usługą Azure Machine Learning z usługi Azure Synapse Notebooks użytkownicy mogą łatwo korzystać z zautomatyzowanego uczenia maszynowego w usłudze Synapse z przekazywaniem uwierzytelniania firmy Microsoft Entra. Oznacza to, że wystarczy wskazać obszar roboczy usługi Azure Machine Learning i nie trzeba wprowadzać żadnych poświadczeń. W samouczku Trenowanie modelu w języku Python za pomocą zautomatyzowanego uczenia maszynowego opisano sposób trenowania modeli przy użyciu zautomatyzowanego uczenia maszynowego usługi Azure Machine Learning w pulach platformy Spark usługi Synapse.
Ostrzeżenie
- Od 29 września 2023 r. usługa Azure Synapse przestanie obsługiwać oficjalne środowiska uruchomieniowe platformy Spark 2.4. Po 29 września 2023 r. nie będziemy zwracać się do żadnych biletów pomocy technicznej związanych z platformą Spark 2.4. W przypadku usterek lub poprawek zabezpieczeń platformy Spark 2.4 nie będzie dostępny potok wydania. Użycie platformy Spark 2.4 po dacie redukcji pomocy technicznej jest podejmowane na własne ryzyko. Zdecydowanie odradzamy jego dalsze wykorzystanie ze względu na potencjalne obawy dotyczące zabezpieczeń i funkcjonalności.
- W ramach procesu wycofywania dla platformy Apache Spark 2.4 chcemy powiadomić Cię, że rozwiązanie AutoML w usłudze Azure Synapse Analytics również będzie przestarzałe. Obejmuje to zarówno interfejs niskiego kodu, jak i interfejsy API używane do tworzenia wersji próbnych rozwiązania AutoML za pomocą kodu.
- Należy pamiętać, że funkcje rozwiązania AutoML były dostępne wyłącznie za pośrednictwem środowiska uruchomieniowego platformy Spark 2.4.
- W przypadku klientów, którzy chcą nadal korzystać z funkcji automatycznego uczenia maszynowego, zalecamy zapisanie danych na koncie usługi Azure Data Lake Storage Gen2 (ADLSg2). Z tego miejsca możesz bezproblemowo uzyskać dostęp do środowiska automatycznego uczenia maszynowego za pośrednictwem usługi Azure Machine Learning (AzureML). Więcej informacji na temat tego obejścia jest dostępne tutaj.
Wdrażanie modelu i ocenianie
Modele, które zostały wytrenowane w usłudze Azure Synapse lub poza usługą Azure Synapse, można łatwo używać do oceniania wsadowego. Obecnie w usłudze Synapse istnieją dwa sposoby uruchamiania oceniania wsadowego.
Funkcja PREDICT języka TSQL w pulach SQL usługi Synapse umożliwia uruchamianie przewidywań w miejscu, w którym znajdują się dane. Ta zaawansowana i skalowalna funkcja umożliwia wzbogacanie danych bez przenoszenia danych z magazynu danych. Wprowadzono nowe środowisko modelu uczenia maszynowego z przewodnikiem w programie Synapse Studio , w którym można wdrożyć model ONNX z rejestru modeli usługi Azure Machine Learning w pulach SQL usługi Synapse na potrzeby oceniania wsadowego przy użyciu funkcji PREDICT.
Inną opcją dla modeli uczenia maszynowego oceniania wsadowego w usłudze Azure Synapse jest wykorzystanie pul platformy Apache Spark dla usługi Azure Synapse. W zależności od bibliotek używanych do trenowania modeli można użyć środowiska kodu do uruchamiania oceniania wsadowego.
SynapseML
SynapseML (wcześniej znany jako MMLSpark) to biblioteka typu open source, która upraszcza tworzenie wysoce skalowalnych potoków uczenia maszynowego (ML). Jest to ekosystem narzędzi używanych do rozszerzania platformy Apache Spark w kilku nowych kierunkach. Usługa SynapseML łączy kilka istniejących struktur uczenia maszynowego i nowe algorytmy firmy Microsoft w jeden, skalowalny interfejs API, który można używać w językach Python, R, Scala, .NET i Java. Aby dowiedzieć się więcej, zobacz najważniejsze funkcje usługi SynapseML.