Autopilot Amazon SageMaker, niskokodowa usługa uczenia maszynowego (ML), która automatycznie buduje, trenuje i dostraja najlepsze modele ML na podstawie danych tabelarycznych, jest teraz zintegrowana z Rurociągi Amazon SageMaker, pierwsza specjalnie zaprojektowana usługa ciągłej integracji i ciągłego dostarczania (CI/CD) dla ML. Umożliwia to automatyzację kompleksowego przepływu budowania modeli ML przy użyciu Autopilota i integrowanie modeli z kolejnymi krokami CI/CD.
Jak dotąd, aby uruchomić eksperyment Autopilota w Pipelines, trzeba zbudować przepływ pracy budowania modelu, pisząc niestandardowy kod integracji z Pipelines Lambda or Przetwarzanie kroki. Aby uzyskać więcej informacji, zobacz Przenieś modele Amazon SageMaker Autopilot ML z eksperymentów do produkcji za pomocą Amazon SageMaker Pipelines.
Dzięki obsłudze Autopilota jako natywnego kroku w Pipelines możesz teraz dodać zautomatyzowany krok szkoleniowy (AutoMLKrok) w Pipelines i wywołaj eksperyment Autopilota z Tryb treningu zespołowego. Na przykład, jeśli tworzysz przepływ pracy szkolenia i oceny ML dla przypadku użycia wykrywania oszustw za pomocą Pipelines, możesz teraz uruchomić eksperyment autopilota przy użyciu kroku AutoML, który automatycznie uruchamia wiele prób, aby znaleźć najlepszy model w danym wejściowym zbiorze danych . Po utworzeniu najlepszego modelu przy użyciu Krok modelu, jego wydajność można ocenić na podstawie danych testowych za pomocą Krok transformacji oraz Etap przetwarzania dla niestandardowego skryptu oceny w Pipelines. Ostatecznie model można zarejestrować w rejestrze modeli SageMaker przy użyciu pliku Krok modelu w połączeniu z Krok warunkowy.
W tym poście pokazujemy, jak utworzyć kompleksowy przepływ pracy ML w celu trenowania i oceny modelu ML wygenerowanego przez SageMaker przy użyciu nowo uruchomionego kroku AutoML w Pipelines i zarejestrowania go w rejestrze modeli SageMaker. Model ML o najlepszej wydajności można wdrożyć w punkcie końcowym SageMaker.
Przegląd zbioru danych
Korzystamy z ogólnodostępnych Zestaw danych o dochodach ze spisu ludności UCI z 1994 r przewidzieć, czy dana osoba ma roczny dochód większy niż 50,000 50 USD rocznie. To jest binarny problem klasyfikacji; opcje zmiennej docelowej dochodu to albo XNUMX tys.
Zestaw danych zawiera 32,561 16,281 wierszy do uczenia i sprawdzania poprawności oraz 15 XNUMX wierszy do testowania, z których każdy zawiera XNUMX kolumn. Obejmuje to informacje demograficzne o osobach i class
jako kolumna docelowa wskazująca klasę dochodów.
Nazwa kolumny | Opis |
wiek | Ciągły |
klasa pracy | Prywatny, samozatrudniony, niezarejestrowany, samozatrudniony, rząd federalny, samorząd lokalny, rząd stanowy, bez wynagrodzenia, nigdy niepracujący |
fnlwgt | Ciągły |
Edukacja | Licencjat, Some-college, 11th, HS-grad, Prof-school, Assoc-acdm, Assoc-voc, 9th, 7th-8th, 12th, Masters, 1st-4th, 10th, Doctorate, 5th-6th, Preschool |
edukacja-numer | Ciągły |
stan cywilny | Żonaty-małżonek-cywilny, rozwiedziony, nigdy nie żonaty, w separacji, owdowiały, żonaty-małżonek-nieobecny, żonaty-AF-małżonek |
zawód | Wsparcie techniczne, Naprawa rzemieślnicza, Inne usługi, Sprzedaż, Kierownik wykonawczy, Specjalizacja prof., Handlowcy-sprzątający, Inspektorzy maszyn, Adm-biuro, Rolnictwo-rybołówstwo, Transport-przeprowadzki, Priv-house-serv, Służba ochronna, Siły Zbrojne |
związek | Żona, Własne dziecko, Mąż, Poza rodziną, Dalszy krewny, Stan wolny |
wyścig | Biały, mieszkaniec Azji-Pac-Islander, Amer-Indian-Eskimo, inny, czarny |
seks | Kobieta, mężczyzna |
zysk kapitałowy | Ciągły |
strata kapitału | Ciągły |
godzin na tydzień | Ciągły |
ojczyźnie | Stany Zjednoczone, Kambodża, Anglia, Portoryko, Kanada, Niemcy, odległe Stany Zjednoczone (Guam-USVI-etc), Indie, Japonia, Grecja, południe, Chiny, Kuba, Iran, Honduras, Filipiny, Włochy, Polska, Jamajka , Wietnam, Meksyk, Portugalia, Irlandia, Francja, Dominikana, Laos, Ekwador, Tajwan, Haiti, Kolumbia, Węgry, Gwatemala, Nikaragua, Szkocja, Tajlandia, Jugosławia, Salwador, Trynadad i Tobago, Peru, Hong, Holandia-Holandia |
klasa | Klasa dochodowa, albo 50 tys |
Omówienie rozwiązania
Używamy Pipelines do orkiestracji różnych kroki rurociągu wymagane do szkolenia modelu autopilota. Tworzymy i prowadzimy m.in Eksperyment z autopilotem jako część kroku AutoML zgodnie z opisem w tym samouczku.
Ten kompleksowy proces szkolenia autopilota wymaga wykonania następujących kroków:
- Utwórz i monitoruj zadanie szkolenia autopilota za pomocą
AutoMLStep
. - Utwórz model SageMaker za pomocą
ModelStep
. Ten krok pobiera najlepsze metadane modelu i artefakty renderowane przez rozwiązanie Autopilot w poprzednim kroku. - Oceń przeszkolony model autopilota na testowym zestawie danych przy użyciu
TransformStep
. - Porównaj dane wyjściowe z poprzedniego uruchomienia
TransformStep
przy użyciu rzeczywistych etykiet docelowychProcessingStep
. - Zarejestruj model ML w Rejestr modeli SageMaker za pomocą
ModelStep
, jeśli wcześniej uzyskana metryka oceny przekracza określony próg wConditionStep
. - Wdróż model ML jako punkt końcowy SageMaker do celów testowych.
Architektura
Poniższy diagram architektury ilustruje różne etapy potoku niezbędne do spakowania wszystkich kroków w powtarzalny, zautomatyzowany i skalowalny potok szkoleniowy SageMaker Autopilot. Pliki danych są odczytywane z zasobnika S3, a kroki potoku są wywoływane sekwencyjnie.
Opis przejścia
Ten post zawiera szczegółowe wyjaśnienie kroków potoku. Przeglądamy kod i omawiamy komponenty każdego kroku. Aby wdrożyć rozwiązanie, zapoznaj się z sekcją przykładowy notatnik, który zawiera instrukcje krok po kroku dotyczące implementowania przepływu pracy Autopilot MLOps przy użyciu potoków.
Wymagania wstępne
Spełnij następujące wymagania wstępne:
Gdy zestaw danych jest gotowy do użycia, musimy skonfigurować potoki, aby ustanowić powtarzalny proces automatycznego tworzenia i uczenia modeli ML przy użyciu rozwiązania Autopilot. Używamy SDK SageMakera do programowego definiowania, uruchamiania i śledzenia kompleksowego potoku szkoleniowego ML.
Kroki rurociągu
W poniższych sekcjach przechodzimy przez różne etapy potoku SageMaker, w tym szkolenie AutoML, tworzenie modelu, wnioskowanie wsadowe, ocenę i warunkową rejestrację najlepszego modelu. Poniższy diagram ilustruje cały przepływ potoku.
Krok szkolenia AutoML
An Obiekt AutoML jest używany do definiowania przebiegu zadania szkoleniowego Autopilota i może być dodany do potoku SageMaker przy użyciu AutoMLStep
class, jak pokazano w poniższym kodzie. Należy określić tryb treningu zespołowego, ale inne parametry można dostosować w razie potrzeby. Na przykład, zamiast pozwolić, aby zadanie AutoML automatycznie wnioskowało o ML typ problemu i obiektywna metryka, można je zakodować na stałe, określając problem_type
i job_objective
parametry przekazane do obiektu AutoML.
Krok tworzenia modelu
Krok AutoML zajmuje się generowaniem różnych kandydatów na modele ML, łączeniem ich i uzyskiwaniem najlepszego modelu ML. Artefakty i metadane modelu są automatycznie zapisywane i można je uzyskać, wywołując metodę get_best_auto_ml_model()
metoda na etapie szkolenia AutoML. Można ich następnie użyć do stworzenia modelu SageMaker w ramach kroku Model:
Transformacja wsadowa i etapy oceny
Używamy Obiekt transformatora dla wnioskowanie partii na testowym zbiorze danych, który następnie można wykorzystać do celów ewaluacyjnych. Prognozy danych wyjściowych są porównywane z rzeczywistymi lub podstawowymi etykietami prawdy przy użyciu funkcji metryk Scikit-learn. Oceniamy nasze wyniki na podstawie Wynik F1. Metryki wydajności są zapisywane w pliku JSON, do którego odwołuje się podczas rejestrowania modelu w kolejnym kroku.
Etapy rejestracji warunkowej
W tym kroku rejestrujemy nasz nowy model Autopilota w rejestrze modeli SageMaker, jeśli przekroczy on predefiniowany próg metryki oceny.
Utwórz i uruchom potok
Po zdefiniowaniu kroków łączymy je w potok SageMaker:
Kroki są uruchamiane w kolejności sekwencyjnej. Potok wykonuje wszystkie kroki zadania AutoML przy użyciu rozwiązania Autopilot i potoków do szkolenia, oceny modelu i rejestracji modelu.
Możesz wyświetlić nowy model, przechodząc do rejestru modeli w konsoli Studio i otwierając go AutoMLModelPackageGroup
. Wybierz dowolną wersję zadania szkoleniowego, aby wyświetlić obiektywne wskaźniki dotyczące Jakość modelu patka.
Możesz zobaczyć raport wyjaśnialności na stronie Wyjaśnialność aby zrozumieć prognozy modelu.
Aby wyświetlić leżący u podstaw eksperyment Autopilota dla wszystkich modeli utworzonych w AutoMLStep
, przejdź do AutoML stronę i wybierz nazwę zadania.
Wdróż model
Po ręcznym sprawdzeniu wydajności modelu ML możemy wdrożyć nasz nowo utworzony model w punkcie końcowym SageMaker. W tym celu możemy uruchomić komórki w notatniku, które tworzą punkt końcowy modelu przy użyciu konfiguracji modelu zapisanej w rejestrze modeli SageMaker.
Należy zauważyć, że ten skrypt jest udostępniany do celów demonstracyjnych, ale zaleca się stosowanie bardziej niezawodnego potoku ciągłej integracji/ciągłego wdrażania na potrzeby wdrożenia produkcyjnego na potrzeby wnioskowania ML. Aby uzyskać więcej informacji, patrz Tworzenie, automatyzowanie, zarządzanie i skalowanie przepływów pracy ML przy użyciu Amazon SageMaker Pipelines.
Podsumowanie
W tym poście opisano łatwe w użyciu podejście potoku ML do automatycznego uczenia tabelarycznych modeli ML (AutoML) przy użyciu rozwiązania Autopilot, Pipelines i Studio. AutoML poprawia wydajność praktyków ML, przyspieszając ścieżkę od eksperymentowania ML do produkcji bez potrzeby posiadania rozległej wiedzy specjalistycznej ML. Przedstawiamy odpowiednie kroki potoku potrzebne do tworzenia, oceny i rejestracji modelu ML. Zacznij od wypróbowania przykładowy notatnik do trenowania i wdrażania własnych niestandardowych modeli AutoML.
Aby uzyskać więcej informacji na temat autopilota i potoków, zobacz Zautomatyzuj tworzenie modeli za pomocą Amazon SageMaker Autopilot i Rurociągi Amazon SageMaker.
Szczególne podziękowania dla wszystkich, którzy przyczynili się do uruchomienia: Shenghua Yue, John He, Ao Guo, Xinlu Tu, Tian Qin, Yanda Hu, Zhankui Lu i Dewen Qi.
O autorach
Janisza Anand jest starszym menedżerem produktu w zespole SageMaker Low/No Code ML, w skład którego wchodzi SageMaker Autopilot. Lubi kawę, jest aktywny i spędza czas z rodziną.
Marcelo Aberle jest inżynierem ML w AWS AI. On pomaga Laboratorium rozwiązań Amazon ML klienci budują skalowalne systemy i frameworki ML(-Ops). W wolnym czasie lubi piesze i rowerowe wycieczki po Zatoce San Francisco.
Geremiego Cohena jest architektem rozwiązań w AWS, gdzie pomaga klientom w tworzeniu najnowocześniejszych rozwiązań w chmurze. W wolnym czasie lubi krótkie spacery po plaży, zwiedzanie zatoki z rodziną, naprawianie rzeczy w domu, niszczenie rzeczy wokół domu i grillowanie.
Shenghua Yue jest inżynierem rozwoju oprogramowania w Amazon SageMaker. Koncentruje się na budowaniu narzędzi i produktów ML dla klientów. Poza pracą lubi spędzać czas na świeżym powietrzu, uprawiać jogę i wędrować.
- Zaawansowane (300)
- AI
- ai sztuka
- generator sztuki ai
- masz robota
- Amazon Sage Maker
- Autopilot Amazon SageMaker
- Rurociągi Amazon SageMaker
- sztuczna inteligencja
- certyfikacja sztucznej inteligencji
- sztuczna inteligencja w bankowości
- robot sztucznej inteligencji
- roboty sztucznej inteligencji
- oprogramowanie sztucznej inteligencji
- Uczenie maszynowe AWS
- blockchain
- konferencja blockchain ai
- pomysłowość
- sztuczna inteligencja konwersacyjna
- konferencja kryptograficzna
- Dall's
- głęboka nauka
- google to
- uczenie maszynowe
- MLOps
- plato
- Platon Ai
- Analiza danych Platona
- Gra Platona
- PlatoDane
- platogaming
- skala ai
- składnia
- zefirnet