W zależności od jakości i złożoności danych naukowcy zajmujący się danymi poświęcają od 45 do 80% czasu na zadania związane z przygotowaniem danych. Oznacza to, że przygotowanie i czyszczenie danych zabiera cenny czas na pracę z prawdziwymi danymi naukowymi. Po przeszkoleniu modelu uczenia maszynowego (ML) przy użyciu przygotowanych danych i przygotowaniu do wdrożenia, naukowcy zajmujący się danymi muszą często ponownie napisać przekształcenia danych używane do przygotowywania danych do wnioskowania ML. Może to wydłużyć czas potrzebny na wdrożenie użytecznego modelu, który może wnioskować i oceniać dane na podstawie ich nieprzetworzonego kształtu i formy.
W części 1 tej serii pokazaliśmy, w jaki sposób Data Wrangler umożliwia ujednolicone przygotowanie danych i szkolenie modeli doświadczenie z Autopilot Amazon SageMaker za pomocą kilku kliknięć. W drugiej i ostatniej części tej serii skupiamy się na funkcji, która obejmuje i wykorzystuje ponownie Pogromca danych Amazon SageMaker przekształcenia, takie jak imputery brakujących wartości, kodery porządkowe lub kodery jednoaktywne i inne, wraz z modelami autopilota do wnioskowania ML. Ta funkcja umożliwia automatyczne wstępne przetwarzanie nieprzetworzonych danych z ponownym użyciem funkcji Data Wrangler przekształca się w momencie wnioskowania, co dodatkowo skraca czas potrzebny do wdrożenia wytrenowanego modelu w środowisku produkcyjnym.
Omówienie rozwiązania
Data Wrangler skraca czas agregowania i przygotowywania danych dla ML z tygodni do minut, a Autopilot automatycznie tworzy, trenuje i dostraja najlepsze modele ML na podstawie Twoich danych. Dzięki Autopilotowi nadal zachowujesz pełną kontrolę i widoczność swoich danych i modelu. Obie usługi mają na celu zwiększenie produktywności praktyków ML i skrócenie czasu uzyskania korzyści.
Poniższy diagram ilustruje naszą architekturę rozwiązania.
Wymagania wstępne
Ponieważ ten post jest drugim z dwuczęściowej serii, upewnij się, że pomyślnie przeczytałeś i zaimplementowałeś Część 1 przed kontynuowaniem.
Eksportuj i trenuj model
W części 1, po przygotowaniu danych dla ML, omówiliśmy, w jaki sposób można wykorzystać zintegrowane środowisko Data Wrangler do analizowania zestawów danych i łatwego tworzenia wysokiej jakości modeli ML w Autopilocie.
Tym razem ponownie używamy integracji Autopilot, aby wytrenować model na podstawie tego samego uczącego zestawu danych, ale zamiast wykonywać wnioskowanie zbiorcze, wykonujemy wnioskowanie w czasie rzeczywistym na podstawie Amazon Sage Maker punkt końcowy wnioskowania, który jest dla nas tworzony automatycznie.
Oprócz wygody zapewnianej przez automatyczne wdrażanie punktów końcowych, pokazujemy również, jak można wdrożyć wszystkie transformacje funkcji Data Wrangler jako szeregowy potok wnioskowania SageMaker. Umożliwia to automatyczne wstępne przetwarzanie nieprzetworzonych danych z ponownym użyciem funkcji Data Wrangler przekształca się w momencie wnioskowania.
Należy zauważyć, że ta funkcja jest obecnie obsługiwana tylko w przypadku przepływów modułu Data Wrangler, które nie korzystają z przekształceń łączenia, grupowania, łączenia i szeregów czasowych.
Możemy użyć nowej integracji Data Wrangler z Autopilotem, aby bezpośrednio trenować model z interfejsu użytkownika przepływu danych Data Wrangler.
- Wybierz znak plus obok Skaluj wartości węzeł i wybierz Trenuj model.
- W razie zamówieenia projektu Lokalizacja Amazon S3, określić Usługa Amazon Simple Storage (Amazon S3) lokalizacja, w której SageMaker eksportuje Twoje dane.
Jeśli domyślnie zostanie wyświetlona ścieżka do głównego zasobnika, Data Wrangler tworzy pod nim unikalny podkatalog eksportu — nie musisz modyfikować domyślnej ścieżki głównej, chyba że chcesz. Autopilot używa tej lokalizacji do automatycznego uczenia modelu, oszczędzając czas od konieczności zdefiniowania lokalizacji wyjściowej przepływu Data Wrangler, a następnie zdefiniowania lokalizacji wejściowej danych treningowych autopilota. Zapewnia to bardziej płynne wrażenia. - Dodaj Eksportuj i trenuj aby wyeksportować przekształcone dane do Amazon S3.
Gdy eksport się powiedzie, nastąpi przekierowanie do Utwórz eksperyment autopilota strona, z Dane wejściowe Lokalizacja S3 jest już wypełniona dla Ciebie (została wypełniona wynikami z poprzedniej strony). - W razie zamówieenia projektu Nazwa eksperymentu, wprowadź nazwę (lub zachowaj nazwę domyślną).
- W razie zamówieenia projektu celwybierz Wynik jako kolumna, którą chcesz przewidzieć.
- Dodaj Dalej: Metoda szkolenia.
Jak opisano w poście Amazon SageMaker Autopilot jest do ośmiu razy szybszy dzięki nowemu trybowi treningu zespołowego obsługiwanemu przez AutoGluon, możesz pozwolić Autopilotowi wybrać tryb uczenia automatycznie na podstawie rozmiaru zestawu danych lub wybrać tryb uczenia ręcznie w celu optymalizacji zestawiania lub hiperparametrów (HPO).
Szczegóły każdej opcji są następujące:
- Samochody – Autopilot automatycznie wybiera tryb asemblacji lub HPO na podstawie rozmiaru zestawu danych. Jeśli zestaw danych jest większy niż 100 MB, Autopilot wybiera HPO; w przeciwnym razie wybiera zespół.
- Kompletowanie – Autopilot wykorzystuje AutoGluon technika asemblingowa do trenowania kilku modeli podstawowych i łączenia ich przewidywań za pomocą łączenia modeli w optymalny model predykcyjny.
- Optymalizacja hiperparametrów – Autopilot znajduje najlepszą wersję modelu, dostrajając hiperparametry przy użyciu techniki optymalizacji Bayesa i uruchamiając zadania szkoleniowe w zestawie danych. HPO wybiera algorytmy najbardziej odpowiednie dla Twojego zbioru danych i wybiera najlepszy zakres hiperparametrów w celu dostrojenia modeli. W naszym przykładzie pozostawiamy domyślny wybór Samochody.
- Dodaj Dalej: Wdrożenie i ustawienia zaawansowane aby kontynuować.
- Na Wdrożenie i ustawienia zaawansowane stronie, wybierz opcję wdrożenia.
Ważne jest, aby bardziej szczegółowo zapoznać się z opcjami wdrażania; to, co wybierzemy, będzie miało wpływ na to, czy transformacje, które wykonaliśmy wcześniej w Data Wranglerze, zostaną uwzględnione w potoku wnioskowania:- Automatycznie wdrażaj najlepszy model z transformacjami z Data Wrangler – Dzięki tej opcji wdrażania, gdy przygotowujesz dane w Data Wrangler i trenujesz model przez wywołanie Autopilota, wyszkolony model jest wdrażany wraz ze wszystkimi funkcjami Data Wrangler przekształca się jako Szeregowy potok wnioskowania SageMaker. Umożliwia to automatyczne wstępne przetwarzanie nieprzetworzonych danych z ponownym użyciem funkcji Data Wrangler przekształca się w momencie wnioskowania. Należy zauważyć, że punkt końcowy wnioskowania oczekuje, że format danych będzie w tym samym formacie, co podczas importowania do przepływu Data Wrangler.
- Automatycznie wdrażaj najlepszy model bez transformacji z Data Wrangler – Ta opcja wdraża punkt końcowy w czasie rzeczywistym, który nie używa transformacji Data Wrangler. W takim przypadku przed wnioskowaniem należy zastosować do danych przekształcenia zdefiniowane w przepływie Data Wrangler.
- Nie wdrażaj automatycznie najlepszego modelu – Należy użyć tej opcji, jeśli nie chcesz w ogóle tworzyć punktu końcowego wnioskowania. Jest to przydatne, jeśli chcesz wygenerować najlepszy model do późniejszego użycia, na przykład wnioskowanie zbiorcze uruchamiane lokalnie. (Jest to opcja wdrożenia, którą wybraliśmy w części 1 serii). Należy zauważyć, że po wybraniu tej opcji utworzony model (od najlepszego kandydata Autopilota za pośrednictwem pakietu SageMaker SDK) zawiera transformację funkcji Data Wrangler jako szeregowy potok wnioskowania SageMaker.
Do tego postu używamy Automatycznie wdrażaj najlepszy model z transformacjami z Data Wrangler opcja.
- W razie zamówieenia projektu Opcja wdrożenia, Wybierz Automatycznie wdrażaj najlepszy model z transformacjami z Data Wrangler.
- Pozostałe ustawienia pozostaw jako domyślne.
- Dodaj Dalej: Przejrzyj i utwórz aby kontynuować.
Na Przejrzyj i utwórz zobaczymy podsumowanie ustawień wybranych dla naszego eksperymentu Autopilot. - Dodaj Utwórz eksperyment aby rozpocząć proces tworzenia modelu.
Zostaniesz przekierowany na stronę z opisem stanowiska pracy Autopilot. Modele pokazują się na modele zakładka podczas ich generowania. Aby potwierdzić, że proces został zakończony, przejdź do Profil pracy tab i poszukaj Completed
wartość dla Rynek pole.
Możesz wrócić do tej strony z opisem stanowiska pracy autopilota w dowolnym momencie od Studio Amazon SageMaker:
- Dodaj Eksperymenty i próby na Zasoby SageMaker rozwijane menu.
- Wybierz nazwę utworzonego zadania autopilota.
- Wybierz (kliknij prawym przyciskiem myszy) eksperyment i wybierz Opisz zadanie AutoML.
Zobacz szkolenie i wdrożenie
Gdy Autopilot zakończy eksperyment, możemy wyświetlić wyniki szkolenia i zbadać najlepszy model na stronie opisu stanowiska pracy Autopilot.
Wybierz (kliknij prawym przyciskiem myszy) model oznaczony Najlepszy modeli wybierz Otwórz w szczegółach modelu.
Połączenia Wydajność Zakładka wyświetla kilka modeli testów pomiarowych, w tym macierz pomyłek, obszar pod krzywą precyzji/przywołania (AUCPR) oraz obszar pod krzywą charakterystyki pracy odbiornika (ROC). Ilustrują one ogólną wydajność walidacji modelu, ale nie mówią nam, czy model będzie dobrze uogólniał. Nadal musimy przeprowadzać oceny na niewidocznych danych testowych, aby zobaczyć, jak dokładnie model wykonuje prognozy (w tym przykładzie przewidujemy, czy dana osoba będzie miała cukrzycę).
Wykonywanie wnioskowania względem punktu końcowego w czasie rzeczywistym
Utwórz nowy notatnik SageMaker, aby przeprowadzić wnioskowanie w czasie rzeczywistym w celu oceny wydajności modelu. Wprowadź następujący kod do notatnika, aby uruchomić wnioskowanie w czasie rzeczywistym w celu weryfikacji:
Po skonfigurowaniu kodu do uruchamiania w notesie musisz skonfigurować dwie zmienne:
endpoint_name
payload_str
Skonfiguruj nazwę_punktu końcowego
endpoint_name
reprezentuje nazwę punktu końcowego wnioskowania w czasie rzeczywistym, które zostało dla nas utworzone automatycznie. Zanim go ustawimy, musimy znaleźć jego nazwę.
- Dodaj Punkty końcowe na Zasoby SageMaker rozwijane menu.
- Zlokalizuj nazwę punktu końcowego, który ma nazwę utworzonego zadania autopilota z dołączonym do niego losowym ciągiem.
- Wybierz (kliknij prawym przyciskiem myszy) eksperyment i wybierz Opisz punkt końcowy.
Połączenia Szczegóły punktu końcowego pojawi się strona. - Podświetl pełną nazwę punktu końcowego i naciśnij Ctrl + C skopiować go do schowka.
- Wprowadź tę wartość (upewnij się, że jest cytowana) dla
endpoint_name
w notatniku wniosków.
Skonfiguruj payload_str
Notebook jest dostarczany z domyślnym ciągiem ładunku payload_str
którego możesz użyć do przetestowania punktu końcowego, ale możesz swobodnie eksperymentować z różnymi wartościami, takimi jak te z testowego zestawu danych.
Aby pobrać wartości z testowego zbioru danych, postępuj zgodnie z instrukcjami w Część 1 aby wyeksportować testowy zestaw danych do Amazon S3. Następnie w konsoli Amazon S3 możesz go pobrać i wybrać wiersze, aby użyć pliku z Amazon S3.
Każdy wiersz w testowym zbiorze danych ma dziewięć kolumn, przy czym ostatnia kolumna to outcome
wartość. W przypadku tego kodu notatnika upewnij się, że używasz tylko jednego wiersza danych (nigdy nagłówka CSV) dla payload_str
. Upewnij się również, że wysyłasz tylko payload_str
z ośmioma kolumnami, z których usunięto wartość wynikową.
Na przykład, jeśli pliki testowego zestawu danych wyglądają jak poniższy kod i chcemy przeprowadzić wnioskowanie w czasie rzeczywistym pierwszego wiersza:
Ustawiliśmy payload_str
do 10,115,0,0,0,35.3,0.134,29
. Zwróć uwagę, jak pominęliśmy outcome
wartość 0
na końcu.
Jeśli przypadkowo wartość docelowa zestawu danych nie jest pierwszą ani ostatnią wartością, po prostu usuń wartość z nienaruszoną strukturą przecinka. Załóżmy na przykład, że przewidujemy słupek, a nasz zestaw danych wygląda jak następujący kod:
W tym przypadku ustawiamy payload_str
do 85,,20
.
Gdy notebook jest uruchamiany z poprawnie skonfigurowanym payload_str
i endpoint_name
wartości, otrzymasz odpowiedź CSV z powrotem w formacie outcome
(0 lub 1), confidence
(0-1).
Sprzątanie
Aby upewnić się, że nie poniesiesz opłat związanych z samouczkiem po ukończeniu tego samouczka, pamiętaj o zamknięciu aplikacji Data Wrangler (https://docs.aws.amazon.com/sagemaker/latest/dg/data-wrangler-shut-down.html), a także wszystkie instancje notatek używane do wykonywania zadań wnioskowania. Punkty końcowe wnioskowania utworzone za pomocą automatycznego pilotażu powinny zostać usunięte, aby zapobiec dodatkowym opłatom.
Wnioski
W tym poście pokazaliśmy, jak zintegrować przetwarzanie danych z inżynierią i budowaniem modeli za pomocą Data Wranglera i Autopilota. Opierając się na części 1 serii, podkreśliliśmy, w jaki sposób można łatwo trenować, dostrajać i wdrażać model w punkcie końcowym wnioskowania w czasie rzeczywistym za pomocą Autopilota bezpośrednio z interfejsu użytkownika Data Wrangler. Oprócz wygody zapewnianej przez automatyczne wdrażanie punktów końcowych, pokazaliśmy również, w jaki sposób można wdrożyć wszystkie transformacje funkcji Data Wrangler jako szeregowy potok wnioskowania SageMaker, zapewniając automatyczne wstępne przetwarzanie nieprzetworzonych danych, z ponownym użyciem funkcji Data Wrangler transformacje w czas wnioskowania.
Rozwiązania niskokodowe i AutoML, takie jak Data Wrangler i Autopilot, eliminują potrzebę posiadania głębokiej wiedzy o kodowaniu w celu tworzenia niezawodnych modeli ML. Zacznij korzystać z Data Wranglera już dziś, aby przekonać się, jak łatwo jest budować modele ML za pomocą Autopilota.
O autorach
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.
Pradeepa Reddy'ego jest starszym menedżerem produktu w zespole SageMaker Low/No Code ML, który obejmuje SageMaker Autopilot, SageMaker Automatic Model Tuner. Poza pracą Pradeep lubi czytać, biegać i geekować z komputerami wielkości dłoni, takimi jak raspberry pi, i innymi technologiami automatyki domowej.
Dr John He jest starszym inżynierem rozwoju oprogramowania w Amazon AI, gdzie koncentruje się na uczeniu maszynowym i przetwarzaniu rozproszonym. Posiada tytuł doktora na CMU.
- AI
- ai sztuka
- generator sztuki ai
- masz robota
- Amazon Sage Maker
- Autopilot Amazon SageMaker
- Pogromca danych 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
- plato
- Platon Ai
- Analiza danych Platona
- Gra Platona
- PlatoDane
- platogaming
- skala ai
- składnia
- zefirnet