Uruchamianie eksperymentów uczenia maszynowego (ML) w chmurze może obejmować wiele usług i składników. Możliwość strukturyzacji, automatyzacji i śledzenia eksperymentów ML jest niezbędna do szybkiego tworzenia modeli ML. Dzięki najnowszym postępom w dziedzinie zautomatyzowanego uczenia maszynowego (AutoML), a mianowicie obszaru ML dedykowanego automatyzacji procesów ML, możesz budować dokładne modele podejmowania decyzji bez konieczności posiadania głębokiej wiedzy na temat ML. W tym poście przyjrzymy się AutoGluon, frameworkowi AutoML o otwartym kodzie źródłowym, który pozwala budować dokładne modele ML za pomocą zaledwie kilku linijek Pythona.
AWS oferuje szeroki zakres usług do zarządzania i uruchamiania przepływów pracy ML, co pozwala wybrać rozwiązanie na podstawie Twoich umiejętności i aplikacji. Na przykład, jeśli już używasz Funkcje kroków AWS Aby zorkiestrować komponenty aplikacji rozproszonych, możesz użyć tej samej usługi do tworzenia i automatyzacji przepływów pracy ML. Inne narzędzia MLOps oferowane przez AWS obejmują Rurociągi Amazon SageMaker, który umożliwia budowanie modeli ML w Studio Amazon SageMaker z funkcjami MLOps (takimi jak kompatybilność CI/CD, monitorowanie modeli i zatwierdzanie modeli). Narzędzia open source, takie jak Przepływ powietrza Apache—dostępne w AWS przez Przepływy pracy zarządzane przez Amazon dla Apache Airflow-i KubeFlow, a także rozwiązania hybrydowe są również obsługiwane. Na przykład możesz zarządzać pozyskiwaniem i przetwarzaniem danych za pomocą funkcji Step Functions, jednocześnie ucząc i wdrażając modele ML za pomocą SageMaker Pipelines.
W tym poście pokazujemy, jak nawet programiści bez doświadczenia w ML mogą łatwo budować i utrzymywać najnowocześniejsze modele ML przy użyciu AutoGluon na Amazon Sage Maker i Step Functions do organizowania komponentów przepływu pracy.
Po omówieniu algorytmu AutoGluon przedstawiamy definicje przepływu pracy wraz z przykładami oraz samouczek kodu które możesz zastosować do własnych danych.
AutoGluon
AutoGluon to platforma AutoML o otwartym kodzie źródłowym, która przyspiesza wdrażanie ML poprzez trenowanie dokładnych modeli ML za pomocą zaledwie kilku linijek kodu w Pythonie. Chociaż ten post koncentruje się na danych tabelarycznych, AutoGluon pozwala również trenować najnowocześniejsze modele klasyfikacji obrazów, wykrywania obiektów i klasyfikacji tekstu. Tabelaryczny AutoGluon tworzy i łączy różne modele, aby znaleźć optymalne rozwiązanie.
Zespół AutoGluon w AWS wydał papier który przedstawia zasady, które tworzą bibliotekę:
- Prostota – Możesz tworzyć modele klasyfikacji i regresji bezpośrednio z surowych danych bez konieczności ich analizy lub wykonywania inżynierii funkcji
- Krzepkość – Cały proces szkolenia powinien zakończyć się sukcesem, nawet jeśli niektóre z poszczególnych modeli zawiodą
- Przewidywalny czas – Możesz uzyskać optymalne efekty w czasie, który chcesz zainwestować na trening
- Odporność na awarie – Szkolenie można przerwać i wznowić w dowolnym momencie, co optymalizuje koszty, jeśli proces przebiega na obrazach punktowych w chmurze
Aby uzyskać więcej informacji na temat algorytmu, zapoznaj się z papier wydany przez zespół AutoGluon w AWS.
Po zainstalowaniu Pakiet AutoGluon i jego zależności, trenowanie modelu jest tak proste, jak napisanie trzech linijek kodu:
Zespół AutoGluon udowodnił siłę tego frameworka, docierając do pierwszej dziesiątki liderów w wielu zawodach Kaggle.
Omówienie rozwiązania
Używamy Step Functions do wdrożenia przepływu pracy ML, który obejmuje szkolenie, ocenę i wdrażanie. Projekt potoku umożliwia szybkie i konfigurowalne eksperymenty, modyfikując parametry wejściowe, które są podawane do potoku w czasie wykonywania.
Potok można skonfigurować w celu zaimplementowania różnych przepływów pracy, takich jak:
- Wytrenuj nowy model ML i przechowuj go w rejestrze modeli SageMaker, jeśli w tym momencie nie jest potrzebne żadne wdrożenie
- Wdróż wstępnie wytrenowany model ML w trybie online (Punkt końcowy SageMaker) lub offline (Transformacja wsadowa SageMaker) wnioskowanie
- Uruchom kompletny potok, aby trenować, oceniać i wdrażać model ML od podstaw
Rozwiązania składają się z ogólnego maszyna stanowa (patrz poniższy diagram), który organizuje zestaw akcji do uruchomienia na podstawie zestawu parametrów wejściowych.
Kroki maszyny stanowej są następujące:
- Pierwszym etapem
IsTraining
decyduje, czy używamy wstępnie wytrenowanego modelu, czy trenujemy model od podstaw. W przypadku korzystania ze wstępnie wytrenowanego modelu automat stanu przechodzi do kroku 7. - Gdy wymagany jest nowy model ML,
TrainSteps
wyzwala drugą maszynę stanów, która wykonuje wszystkie niezbędne czynności i zwraca wynik do aktualnej maszyny stanów. Omówimy bardziej szczegółowo maszynę stanu treningu w następnej sekcji. - Po zakończeniu szkolenia
PassModelName
przechowuje nazwę zadania szkoleniowego w określonej lokalizacji kontekstu automatu stanów do ponownego użycia w następujących stanach. - Jeśli wybrano fazę oceny,
IsEvaluation
przekierowuje maszynę stanów do gałęzi oceny. W przeciwnym razie przechodzi do kroku 7. - Faza oceny jest następnie wdrażana przy użyciu AWS Lambda funkcja wywoływana przez
ModelValidation
krok. Funkcja Lambda pobiera osiągi modelu w zestawie testowym i porównuje je z konfigurowanym przez użytkownika progiem określonym w parametrach wejściowych. Poniższy kod jest przykładem wyników oceny: - Jeśli ocena modelu w
EvaluationResults
zakończy się pomyślnie, maszyna stanu kontynuuje wykonywanie ewentualnych kroków wdrażania. Jeśli model działa poniżej kryteriów zdefiniowanych przez użytkownika, automat stanów zatrzymuje się i wdrażanie jest pomijane. - Jeśli wybrano wdrożenie,
IsDeploy
uruchamia maszynę trzeciego stanu przezDeploySteps
, które opiszemy w dalszej części tego wpisu. Jeśli wdrożenie nie jest potrzebne, automat stanów zatrzymuje się w tym miejscu.
Zestaw próbek parametrów wejściowych jest dostępny na GitHub repo.
Treningowa maszyna stanu
Maszyna stanów do uczenia nowego modelu ML przy użyciu AutoGluon składa się z dwóch kroków, jak pokazano na poniższym diagramie. Pierwszym krokiem jest zadanie szkoleniowe SageMaker, które tworzy model. Drugi zapisuje wpisy w rejestrze modeli SageMaker.
Te kroki można uruchomić automatycznie jako część głównego automatu stanu lub jako samodzielny proces.
Maszyna stanu wdrożenia
Przyjrzyjmy się teraz maszynie stanów dedykowanej fazie wdrażania (patrz poniższy diagram). Jak wspomniano wcześniej, architektura obsługuje wdrażanie zarówno w trybie online, jak i offline. Pierwsza polega na wdrożeniu punktu końcowego SageMaker, podczas gdy druga uruchamia zadanie transformacji wsadowej SageMaker.
Etapy wdrożenia są następujące:
ChoiceDeploymentMode
analizuje parametry wejściowe, aby określić, który tryb wdrażania jest potrzebny, i kieruje maszynę stanów do odpowiedniej gałęzi.- Jeśli wybrano punkt końcowy,
EndpointConfig
krok określa jego konfigurację, natomiastCreateEndpoint
rozpoczyna proces przydzielania wymaganych zasobów obliczeniowych. Ta alokacja może potrwać kilka minut, więc maszyna stanu zatrzymuje się oWaitForEndpoint
i używa funkcji Lambda do odpytywania stanu punktu końcowego. - Podczas konfigurowania punktu końcowego
ChoiceEndpointStatus
wraca doWaitForEndpoint
stan, w przeciwnym razie nadal alboDeploymentFailed
orDeploymentSucceeded
. - Jeśli wybrano wdrożenie w trybie offline, automat stanów uruchamia zadanie transformacji wsadowej programu SageMaker, po czym automat stanów zatrzymuje się.
Wnioski
Ten post przedstawia łatwy w użyciu potok do organizowania przepływów pracy AutoML i umożliwia szybkie eksperymenty w chmurze, co pozwala na dokładne rozwiązania ML bez konieczności posiadania zaawansowanej wiedzy ML.
Zapewniamy ogólny potok, a także dwa modułowe, które w razie potrzeby umożliwiają oddzielne przeprowadzenie szkolenia i wdrożenia. Co więcej, rozwiązanie jest w pełni zintegrowane z SageMaker, korzystając z jego funkcji i zasobów obliczeniowych.
Zacznij teraz z tym samouczek kodu aby wdrożyć zasoby przedstawione w tym poście na swoim koncie AWS i przeprowadzić pierwsze eksperymenty AutoML.
O autorach
Federica Piccininiego jest architektem głębokiego uczenia się w laboratorium Amazon Machine Learning Solutions. Pasjonuje się uczeniem maszynowym, wyjaśnialną sztuczną inteligencją i MLOps. Koncentruje się na projektowaniu potoków ML dla klientów AWS. Poza pracą lubi sport i pizzę.
Paolo Irrera jest analitykiem danych w laboratorium Amazon Machine Learning Solutions Lab, gdzie pomaga klientom w rozwiązywaniu problemów biznesowych za pomocą uczenia maszynowego i możliwości chmury. Posiada tytuł doktora w dziedzinie widzenia komputerowego Telecom ParisTech w Paryżu.
- Coinsmart. Najlepsza w Europie giełda bitcoinów i kryptowalut.
- Platoblockchain. Web3 Inteligencja Metaverse. Wzmocniona wiedza. DARMOWY DOSTĘP.
- CryptoJastrząb. Radar Altcoin. Bezpłatna wersja próbna.
- Źródło: https://aws.amazon.com/blogs/machine-learning/manage-automl-workflows-with-aws-step-functions-and-autogluon-on-amazon-sagemaker/
- "
- 10
- 100
- 7
- a
- zdolność
- O nas
- Konto
- dokładny
- w poprzek
- działania
- adres
- Przyjęcie
- zaawansowany
- postępy
- AI
- algorytm
- Wszystkie kategorie
- przydział
- Pozwalać
- pozwala
- już
- Chociaż
- Amazonka
- w czasie rzeczywistym sprawiają,
- Zastosowanie
- aplikacje
- Aplikuj
- architektura
- POWIERZCHNIA
- zautomatyzować
- zautomatyzowane
- automatycznie
- Automatyzacja
- dostępny
- AWS
- jest
- poniżej
- budować
- biznes
- Może uzyskać
- możliwości
- wybrany
- klasyfikacja
- Chmura
- kod
- zgodność
- Konkursy
- kompletny
- składniki
- komputer
- computing
- systemu
- ciągły
- Odpowiedni
- Koszty:
- Stwórz
- tworzy
- Kryteria
- Aktualny
- Stan aktulany
- Klientów
- dane
- naukowiec danych
- dedykowane
- głęboko
- rozwijać
- wdrażanie
- Wdrożenie
- opisać
- Wnętrze
- projektowanie
- detal
- detale
- Wykrywanie
- deweloperzy
- oprogramowania
- różne
- bezpośrednio
- dystrybuowane
- z łatwością
- łatwy w użyciu
- umożliwiać
- Umożliwia
- Punkt końcowy
- niezbędny
- oceniać
- ewaluację
- przykład
- przykłady
- ekspertyza
- FAST
- Cecha
- Korzyści
- i terminów, a
- koncentruje
- następujący
- następujący sposób
- Framework
- od
- funkcjonować
- Funkcje
- Ogólne
- mający
- pomaga
- tutaj
- posiada
- W jaki sposób
- HTTPS
- Hybrydowy
- obraz
- zdjęcia
- wdrożenia
- realizacja
- realizowane
- zawierać
- indywidualny
- wkład
- zainstalować
- zintegrowany
- IT
- Praca
- wiedza
- laboratorium
- firmy
- nauka
- Biblioteka
- linie
- lokalizacja
- Popatrz
- maszyna
- uczenie maszynowe
- utrzymać
- zarządzanie
- zarządzane
- wzmiankowany
- ML
- model
- modele
- Modułowa
- monitorowanie
- jeszcze
- wielokrotność
- mianowicie
- niezbędny
- potrzeba
- Następny
- oferowany
- Oferty
- nieaktywny
- Online
- Inne
- Inaczej
- ogólny
- własny
- Paryż
- część
- namiętny
- spektakle
- wykonywania
- faza
- Pizza
- w.
- teraźniejszość
- prezenty
- problemy
- wygląda tak
- procesów
- przetwarzanie
- zapewniać
- zasięg
- Surowy
- wydany
- wymagany
- Zasoby
- Efekt
- Resume
- powraca
- run
- taki sam
- Naukowiec
- wybrany
- usługa
- Usługi
- zestaw
- kilka
- pokazać
- umiejętności
- So
- rozwiązanie
- Rozwiązania
- kilka
- SPORTOWE
- Spot
- standalone
- rozpoczęty
- rozpocznie
- Stan
- state-of-the-art
- Zjednoczone
- Rynek
- sklep
- sklep
- jest determinacja.
- udany
- Utrzymany
- podpory
- zespół
- Telecom
- test
- Połączenia
- trzy
- próg
- Przez
- czas
- narzędzia
- Top
- w kierunku
- śledzić
- Pociąg
- Trening
- Przekształcać
- posługiwać się
- wizja
- czy
- Podczas
- w ciągu
- bez
- Praca
- przepływów pracy
- pisanie
- Twój