Pogromca danych Amazon SageMaker pomaga zrozumieć, agregować, przekształcać i przygotowywać dane do uczenia maszynowego (ML) za pomocą jednego interfejsu wizualnego. Zawiera ponad 300 wbudowanych transformacji danych, dzięki czemu możesz szybko normalizować, przekształcać i łączyć funkcje bez konieczności pisania kodu.
Praktycy nauki o danych generują, obserwują i przetwarzają dane w celu rozwiązywania problemów biznesowych, w których muszą przekształcać i wyodrębniać funkcje z zestawów danych. Przekształcenia, takie jak kodowanie porządkowe lub kodowanie jednokrotne, uczą kodowania w zestawie danych. Te zakodowane dane wyjściowe są określane jako wytrenowane parametry. Ponieważ zestawy danych zmieniają się w czasie, może być konieczne ponowne dopasowanie kodowania do wcześniej niewidocznych danych, aby przepływ transformacji był odpowiedni dla danych.
Z radością ogłaszamy funkcję refit wyuczonych parametrów, która pozwala na użycie poprzednio wyuczonych parametrów i ponowne dopasowanie ich zgodnie z potrzebami. W tym poście pokazujemy, jak korzystać z tej funkcji.
Przegląd funkcji remontu Data Wranglera
Zilustrujemy, jak ta funkcja działa, na poniższym przykładzie, zanim zagłębimy się w szczegóły funkcji wytrenowanych parametrów remontu.
Załóżmy, że Twój zbiór danych klientów ma funkcję kategoryczną dla country
reprezentowane jako ciągi, takie jak Australia
i Singapore
. Algorytmy ML wymagają danych liczbowych; dlatego te wartości kategoryczne muszą być zakodowane na wartości liczbowe. Kodowanie danych kategorycznych to proces tworzenia reprezentacji numerycznej dla kategorii. Na przykład, jeśli kraj kategorii ma wartości Australia
i Singapore
, możesz zakodować tę informację w dwóch wektorach: [1, 0] do reprezentowania Australia
i [0, 1] do reprezentowania Singapore
. Zastosowana tutaj transformacja to kodowanie na gorąco, a nowe zakodowane dane wyjściowe odzwierciedlają przeszkolone parametry.
Po przeszkoleniu modelu z czasem liczba klientów może się zwiększyć, a na liście krajów pojawią się bardziej wyraźne wartości. Nowy zbiór danych może zawierać inną kategorię, India
, który nie był częścią oryginalnego zestawu danych, co może wpłynąć na dokładność modelu. W związku z tym konieczne jest ponowne nauczenie modelu przy użyciu nowych danych, które zostały zebrane w czasie.
Aby rozwiązać ten problem, musisz odświeżyć kodowanie, aby uwzględnić nową kategorię i zaktualizować reprezentację wektorową zgodnie z najnowszym zestawem danych. W naszym przykładzie kodowanie powinno odzwierciedlać nową kategorię dla pliku country
, który jest India
. Powszechnie nazywamy ten proces odświeżania kodowania operacją remontu. Po wykonaniu operacji naprawy otrzymasz nowe kodowanie: Australia
: [1, 0, 0], Singapore
: [0, 1, 0] i India
: [0, 0, 1]. Ponowne dopasowanie kodowania one-hot, a następnie ponowne uczenie modelu w nowym zestawie danych skutkuje lepszymi prognozami jakości.
Funkcja wytrenowanych parametrów Refit w Data Wrangler jest przydatna w następujących przypadkach:
- Nowe dane są dodawane do zestawu danych – Ponowne uczenie modelu ML jest konieczne, gdy zbiór danych jest wzbogacany o nowe dane. Aby osiągnąć optymalne wyniki, musimy ponownie dopasować wytrenowane parametry do nowego zestawu danych.
- Szkolenie na pełnym zbiorze danych po wykonaniu inżynierii funkcji na przykładowych danych – W przypadku dużego zestawu danych próbka zestawu danych jest brana pod uwagę w celu nauczenia wyuczonych parametrów, które mogą nie reprezentować całego zestawu danych. Musimy ponownie nauczyć się wyuczonych parametrów na pełnym zbiorze danych.
Poniżej przedstawiono niektóre z najczęstszych przekształceń Data Wrangler wykonywanych na zestawie danych, które korzystają z opcji wytrenowanego parametru Refit:
Aby uzyskać więcej informacji o przekształceniach w Data Wranglerze, zobacz Przekształć dane.
W tym poście pokazujemy, jak przetwarzać te wytrenowane parametry na zestawach danych za pomocą Data Wrangler. Przepływów Data Wrangler można używać w zadaniach produkcyjnych do ponownego przetwarzania danych w miarę ich wzrostu i zmian.
Omówienie rozwiązania
W tym poście pokazujemy, jak korzystać z funkcji przeszkolonych parametrów Refit narzędzia Data Wrangler z publicznie dostępnym zestawem danych na Kaggle: Dane mieszkaniowe w USA z Zillow, nieruchomości na sprzedaż w Stanach Zjednoczonych. Ma ceny sprzedaży domów w różnych lokalizacjach geograficznych domów.
Poniższy diagram ilustruje architekturę wysokiego poziomu programu Data Wrangler przy użyciu funkcji wytrenowanych parametrów naprawy. Pokazujemy również wpływ na jakość danych bez wytrenowanego parametru refit i na końcu zestawiamy wyniki.
Przepływ pracy obejmuje następujące kroki:
- Wykonaj eksploracyjną analizę danych – Utwórz nowy przepływ w Data Wranglerze, aby rozpocząć eksploracyjną analizę danych (EDA). Importuj dane biznesowe, aby zrozumieć, oczyścić, agregować, przekształcać i przygotowywać dane do szkolenia. Odnosić się do Poznaj możliwości Amazon SageMaker Data Wrangler z przykładowymi zestawami danych aby uzyskać więcej informacji na temat wykonywania EDA z Data Wrangler.
- Utwórz zadanie przetwarzania danych – Ten krok eksportuje wszystkie przekształcenia wykonane w zestawie danych jako plik przepływu przechowywany w skonfigurowanym Usługa Amazon Simple Storage (Amazon S3) lokalizacja. Zadanie przetwarzania danych z plikiem przepływu wygenerowanym przez Data Wrangler stosuje przekształcenia i wyuczone parametry wyuczone na zbiorze danych. Po zakończeniu zadania przetwarzania danych pliki wyjściowe są przesyłane do lokalizacji Amazon S3 skonfigurowanej w węźle docelowym. Pamiętaj, że opcja przebudowy jest domyślnie wyłączona. Jako alternatywę dla natychmiastowego wykonania zadania przetwarzania, możesz również zaplanować zadanie przetwarzania za pomocą kilku kliknięć za pomocą Data Wrangler – Create Job do uruchamiania w określonych godzinach.
- Utwórz zadanie przetwarzania danych za pomocą funkcji przeszkolonego parametru ponownego dopasowania – Podczas tworzenia zadania wybierz nową funkcję wytrenowanego parametru przebudowy, aby wymusić ponowne uczenie wyuczonych parametrów na pełnym lub wzmocnionym zbiorze danych. Zgodnie z konfiguracją lokalizacji Amazon S3 do przechowywania pliku przepływu zadanie przetwarzania danych tworzy lub aktualizuje nowy plik przepływu. Jeśli skonfigurujesz tę samą lokalizację Amazon S3, co w kroku 2, zadanie przetwarzania danych zaktualizuje plik przepływu wygenerowany w kroku 2, którego można użyć do utrzymania zgodności przepływu z danymi. Po zakończeniu zadania przetwarzania pliki wyjściowe są przesyłane do skonfigurowanego zasobnika S3 węzła docelowego. Zaktualizowanego przepływu można użyć w całym zbiorze danych dla produkcyjnego przepływu pracy.
Wymagania wstępne
Zanim zaczniesz, prześlij zbiór danych do zasobnika S3, a następnie zaimportuj go do Data Wrangler. Aby uzyskać instrukcje, zobacz Importuj dane z Amazon S3.
Przejdźmy teraz przez kroki wymienione na diagramie architektury.
Wykonaj EDA w Data Wranglerze
Aby wypróbować funkcję przeszkolonych parametrów, skonfiguruj następującą analizę i transformację w Data Wrangler. Pod koniec konfigurowania EDA Data Wrangler tworzy plik przepływu przechwycony z przeszkolonymi parametrami ze zbioru danych.
- Utwórz nowy przepływ w Amazon SageMaker Data Wrangler do eksploracyjnej analizy danych.
- Zaimportuj dane biznesowe, które przesłałeś do Amazon S3.
- Możesz wyświetlić podgląd danych i opcji wyboru typu pliku, ogranicznika, próbkowania itd. W tym przykładzie używamy Pierwszy K opcja próbkowania dostarczona przez Data Wrangler w celu zaimportowania pierwszych 50,000 XNUMX rekordów ze zbioru danych.
- Dodaj import.
- Po sprawdzeniu dopasowania typu danych zastosowanego przez Data Wrangler dodaj nową analizę.
- W razie zamówieenia projektu Typ analizywybierz Raport dotyczący jakości danych i statystyk.
- Dodaj Stwórz.
Raport dotyczący jakości danych i informacji zawiera krótkie podsumowanie zbioru danych z ogólnymi informacjami, takimi jak brakujące wartości, nieprawidłowe wartości, typy cech, liczba wartości odstających i inne. Możesz wybrać funkcje property_type
i city
do stosowania przekształceń w zbiorze danych w celu zrozumienia funkcji przeszkolonego parametru ponownego dopasowania.
Skupmy się na funkcji property_type
ze zbioru danych. W raporcie Szczegóły funkcji sekcji, możesz zobaczyć property_type
, która jest cechą kategoryczną, oraz sześć unikalnych wartości pochodzących z 50,000 XNUMX próbkowanego zestawu danych przez Data Wrangler. Pełny zbiór danych może zawierać więcej kategorii dla funkcji property_type
. W przypadku funkcji z wieloma unikalnymi wartościami możesz preferować kodowanie porządkowe. Jeśli funkcja ma kilka unikalnych wartości, można zastosować metodę kodowania z jednym gorącym elementem. W tym przykładzie włączamy kodowanie one-hot property_type
.
Podobnie dla city
funkcji, która jest typem danych tekstowych z dużą liczbą unikalnych wartości, zastosujmy do tej funkcji kodowanie porządkowe.
- Przejdź do przepływu Data Wrangler, wybierz znak plus i wybierz Dodaj transformację.
- Wybierz Koduj kategorycznie opcja przekształcania cech kategorycznych.
Z raportu jakości danych i statystyk, funkcja property_type
pokazuje sześć unikalnych kategorii: CONDO
, LOT
, MANUFACTURED
, SINGLE_FAMILY
, MULTI_FAMILY
, TOWNHOUSE
.
- W razie zamówieenia projektu Przekształcaćwybierz Kodowanie na gorąco.
Po zastosowaniu kodowania one-hot na funkcji property_type
, możesz wyświetlić podgląd wszystkich sześciu kategorii jako oddzielnych funkcji dodanych jako nowe kolumny. Pamiętaj, że w celu wygenerowania tego podglądu z Twojego zbioru danych pobrano próbkę 50,000 XNUMX rekordów. Podczas uruchamiania zadania przetwarzania narzędzia Data Wrangler z tym przepływem te przekształcenia są stosowane do całego zestawu danych.
- Dodaj nową transformację i wybierz Koduj kategorycznie zastosować transformację do funkcji
city
, który ma większą liczbę unikalnych wartości tekstowych kategorii. - Aby zakodować tę cechę w reprezentacji numerycznej, wybierz Kodowanie porządkowe dla Przekształcać.
- Wybierz Podgląd tej transformacji.
Widać, że kategoryczna cecha city
jest mapowany na wartości porządkowe w kolumnie wyjściowej e_city
.
- Dodaj ten krok, wybierając Aktualizacja.
- Możesz ustawić miejsce docelowe na Amazon S3, aby przechowywać zastosowane przekształcenia w zestawie danych, aby wygenerować dane wyjściowe jako plik CSV.
Data Wrangler przechowuje przepływ pracy zdefiniowany w interfejsie użytkownika jako plik przepływu i przesyła go do lokalizacji Amazon S3 skonfigurowanego zadania przetwarzania danych. Ten plik przepływu jest używany podczas tworzenia zadań przetwarzania Data Wrangler w celu zastosowania transformacji na większych zestawach danych lub do przekształcenia nowych danych zbrojenia w celu ponownego uczenia modelu.
Uruchom zadanie przetwarzania danych Data Wrangler bez włączonej naprawy
Teraz możesz zobaczyć, jak opcja Refit wykorzystuje wytrenowane parametry w nowych zestawach danych. Na potrzeby tej demonstracji definiujemy dwa zadania przetwarzania Data Wrangler działające na tych samych danych. Pierwsze zadanie przetwarzania nie umożliwi naprawy; do drugiej obróbki używamy refit. Na koniec porównujemy efekty.
- Dodaj Utwórz pracę aby zainicjować zadanie przetwarzania danych za pomocą Data Wrangler.
- W razie zamówieenia projektu Nazwa pracy, Wpisz imię.
- Pod Wytrenowane parametry, nie wybieraj Remont.
- Dodaj Skonfiguruj zadanie.
- Skonfiguruj parametry zadania, takie jak typy wystąpień, rozmiar woluminu i lokalizacja Amazon S3 do przechowywania pliku przepływu wyjściowego.
- Data Wrangler tworzy plik przepływu w lokalizacji S3 pliku przepływu. Przepływ używa transformacji do uczenia parametrów, a później użyjemy opcji Refit, aby ponownie nauczyć tych parametrów.
- Dodaj Stwórz.
Poczekaj na zakończenie zadania przetwarzania danych, aby zobaczyć przekształcone dane w zasobniku S3 skonfigurowanym w węźle docelowym.
Uruchom zadanie przetwarzania danych Data Wrangler z włączonym remontem
Utwórzmy kolejne zadanie przetwarzania włączone z włączoną funkcją przeszkolonego parametru ponownego dopasowania. Ta opcja wymusza wyuczone parametry ponownie nauczone w całym zestawie danych. Po zakończeniu tego zadania przetwarzania danych tworzony jest plik przepływu lub aktualizowany do skonfigurowanej lokalizacji Amazon S3.
- Dodaj Utwórz pracę.
- W razie zamówieenia projektu Nazwa pracy, Wpisz imię.
- W razie zamówieenia projektu Wytrenowane parametry, Wybierz Remont.
- Jeśli wybierzesz Wyświetl wszystkie, możesz przejrzeć wszystkie wytrenowane parametry.
- Dodaj Skonfiguruj zadanie.
- Wprowadź lokalizację pliku przepływu Amazon S3.
- Dodaj Stwórz.
Poczekaj na zakończenie zadania przetwarzania danych.
Odwołaj się do skonfigurowanego zasobnika S3 w węźle docelowym, aby wyświetlić dane wygenerowane przez zadanie przetwarzania danych wykonujące zdefiniowane transformacje.
Eksportuj do kodu Pythona do uruchamiania zadań przetwarzania Data Wrangler
Alternatywnie do uruchamiania zadań przetwarzania za pomocą opcji Utwórz zadanie w narzędziu Data Wrangler można wyzwolić zadania przetwarzania danych przez wyeksportowanie przepływu narzędzia Data Wrangler do notatnika Jupyter. Data Wrangler generuje notatnik Jupyter z danymi wejściowymi, wyjściowymi, konfiguracjami zadań przetwarzania i kodem do sprawdzania statusu zadań. Możesz zmienić lub zaktualizować parametry zgodnie z wymaganiami transformacji danych.
- Wybierz znak plusa obok finału Przekształcać węzeł.
- Dodaj Export do i Amazon S3 (przez notatnik Jupyter).
Możesz zobaczyć otwarty notatnik Jupyter z danymi wejściowymi, wyjściowymi, konfiguracjami zadań przetwarzania i kodem do sprawdzania stanu zadań.
- Aby wymusić opcję refit przeszkolonych parametrów za pomocą kodu, ustaw
refit
parametrTrue
.
Porównaj wyniki pracy związane z przetwarzaniem danych
Po zakończeniu zadań przetwarzania Data Wrangler należy utworzyć dwa nowe przepływy Data Wrangler z danymi wyjściowymi generowanymi przez zadania przetwarzania danych przechowywane w skonfigurowanym miejscu docelowym Amazon S3.
Możesz odwołać się do skonfigurowanej lokalizacji w folderze docelowym Amazon S3, aby przejrzeć wyniki zadań przetwarzania danych.
Aby sprawdzić wyniki zadania przetwarzania, utwórz dwa nowe przepływy Data Wrangler przy użyciu raportu jakości danych i wglądu w celu porównania wyników transformacji.
- Utwórz nowy przepływ w Amazon SageMaker Data Wrangler.
- Zaimportuj zadanie przetwarzania danych bez włączonego pliku wyjściowego z Amazon S3.
- Dodaj nową analizę.
- W razie zamówieenia projektu Typ analizywybierz Raport dotyczący jakości danych i statystyk.
- Dodaj Stwórz.
Powtórz powyższe kroki i utwórz nowy przepływ danych wrangler, aby przeanalizować dane wyjściowe zadania przetwarzania danych z włączoną opcją Refit.
Przyjrzyjmy się teraz wynikom przetwarzania zadań dla funkcji property_type
za pomocą raportów dotyczących jakości danych i statystyk. Przewiń do szczegółów funkcji na liście w raportach Dane i statystyki feature_type
.
Zadanie przetwarzania przeszkolonych parametrów ponownie dopasowało przeszkolone parametry w całym zbiorze danych i zakodowało nową wartość APARTMENT
z siedmioma odrębnymi wartościami w pełnym zbiorze danych.
Normalne zadanie przetwarzania zastosowało wytrenowane parametry przykładowego zestawu danych, które mają tylko sześć różnych wartości dla property_type
funkcja. Dla danych z feature_type
APARTMENT
The nieprawidłowa strategia obsługi Pomiń jest stosowany, a zadanie przetwarzania danych nie uczy się tej nowej kategorii. Kodowanie one-hot pominęło tę nową kategorię obecną w nowych danych, a kodowanie pomija tę kategorię APARTMENT
.
Skupmy się teraz na innej funkcji, city
. Zadanie przetwarzania parametrów wytrenowanych przez naprawę ponownie nauczyło się wszystkich wartości dostępnych dla city
funkcja, biorąc pod uwagę nowe dane.
Jak pokazano w Podsumowanie funkcji sekcji raportu, nowa kolumna zakodowanych funkcji e_city
ma 100% prawidłowych parametrów przy użyciu funkcji wytrenowanych parametrów naprawy.
W przeciwieństwie do tego normalne zadanie przetwarzania ma 82.4% brakujących wartości w nowej kolumnie zakodowanych funkcji e_city
. Zjawisko to jest spowodowane tym, że tylko przykładowy zestaw wyuczonych wyuczonych parametrów jest stosowany do pełnego zestawu danych, a zadanie przetwarzania danych nie stosuje żadnego ponownego dopasowania.
Poniższe histogramy przedstawiają porządkową zakodowaną cechę e_city
. Pierwszy histogram dotyczy obiektu przekształconego za pomocą opcji remontu.
Następny histogram dotyczy obiektu przekształconego bez opcji naprawy. Pomarańczowa kolumna pokazuje brakujące wartości (NaN) w raporcie dotyczącym jakości danych i statystyk. Nowe wartości, które nie są wyuczone z przykładowego zestawu danych, są zastępowane jako Not a Number (NaN) zgodnie z konfiguracją w interfejsie użytkownika Data Wrangler nieprawidłowa strategia obsługi.
Zadanie przetwarzania danych z wytrenowanym parametrem naprawczym ponownie nauczyło się property_type
i city
cechy uwzględniające nowe wartości z całego zbioru danych. Bez wytrenowanego parametru Refit zadanie przetwarzania danych używa tylko wstępnie wyuczonych parametrów próbkowanego zestawu danych. Następnie stosuje je do nowych danych, ale nowe wartości nie są brane pod uwagę przy kodowaniu. Będzie to miało wpływ na dokładność modelu.
Sprzątać
Gdy nie korzystasz z aplikacji Data Wrangler, ważne jest, aby zamknąć instancję, na której działa, aby uniknąć ponoszenia dodatkowych opłat.
Aby uniknąć utraty pracy, zapisz przepływ danych przed wyłączeniem aplikacji Data Wrangler.
- Aby zapisać przepływ danych w Studio Amazon SageMakerwybierz filet, A następnie wybierz Zapisz przepływ danych Wranglera. Data Wrangler automatycznie zapisuje przepływ danych co 60 sekund.
- Aby zamknąć instancję Data Wrangler, w Studio wybierz Uruchomione instancje i jądra.
- Pod DZIAŁAJĄCE APLIKACJE, wybierz ikonę zamknięcia obok aplikacji sagemaker-data-wrangler-1.0.
- Dodaj Wyłącz wszystko potwierdzać.
Data Wrangler działa na instancji ml.m5.4xlarge. Ta instancja znika z URUCHOMIONE INSTANCJE po zamknięciu aplikacji Data Wrangler.
Po zamknięciu aplikacji Data Wrangler musi ona zostać ponownie uruchomiona przy następnym otwarciu pliku przepływu Data Wrangler. Może to potrwać kilka minut.
Wnioski
W tym poście przedstawiliśmy omówienie funkcji przeszkolonego parametru w usłudze Data Wrangler. Dzięki tej nowej funkcji można przechowywać wyuczone parametry w przepływie Data Wrangler, a zadania przetwarzania danych używają wyuczonych parametrów do stosowania wyuczonych przekształceń w dużych zestawach danych lub zestawach danych wzmacniających. Możesz zastosować tę opcję do wektoryzacji obiektów tekstowych, danych liczbowych i obsługi wartości odstających.
Zachowywanie wytrenowanych parametrów podczas przetwarzania danych w cyklu życia ML upraszcza i redukuje etapy przetwarzania danych, wspiera solidną inżynierię funkcji oraz wspiera trenowanie modeli i wzmacnianie na nowych danych.
Zachęcamy do wypróbowania tej nowej funkcji w celu spełnienia wymagań dotyczących przetwarzania danych.
O autorach
Hariharana Suresha jest starszym architektem rozwiązań w AWS. Pasjonuje się bazami danych, uczeniem maszynowym oraz projektowaniem innowacyjnych rozwiązań. Przed dołączeniem do AWS, Hariharan był architektem produktów, specjalistą ds. implementacji podstawowej bankowości oraz programistą i pracował z organizacjami BFSI przez ponad 11 lat. Poza technologią lubi paralotniarstwo i jazdę na rowerze.
Santosz Kulkarni jest architektem rozwiązań dla przedsiębiorstw w Amazon Web Services, który współpracuje z klientami sportowymi w Australii. Pasjonuje się budowaniem rozproszonych aplikacji na dużą skalę do rozwiązywania problemów biznesowych, wykorzystując swoją wiedzę z zakresu AI/ML, big data i tworzenia oprogramowania.
Vishaala Kapoora jest starszym naukowcem z AWS AI. Pasjonuje go pomaganie klientom w zrozumieniu ich danych w Data Wrangler. W wolnym czasie jeździ na rowerze górskim, snowboardzie, spędza czas z rodziną.
Aniket Manjunath jest inżynierem oprogramowania w Amazon SageMaker. Pomaga wspierać Amazon SageMaker Data Wrangler i pasjonuje się rozproszonymi systemami uczenia maszynowego. Poza pracą lubi wędrować, oglądać filmy i grać w krykieta.
- AI
- ai sztuka
- generator sztuki ai
- masz robota
- Amazon Sage Maker
- 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
- Średni (200)
- uczenie maszynowe
- plato
- Platon Ai
- Analiza danych Platona
- Gra Platona
- PlatoDane
- platogaming
- skala ai
- składnia
- zefirnet