„Zamiast skupiać się na kodzie, firmy powinny skupić się na opracowywaniu systematycznych praktyk inżynieryjnych w celu ulepszania danych w sposób niezawodny, wydajny i systematyczny. Innymi słowy, firmy muszą przejść od podejścia skoncentrowanego na modelu do podejścia skoncentrowanego na danych”. – Andrzej Ng
Podejście oparte na sztucznej inteligencji oparte na danych obejmuje budowanie systemów sztucznej inteligencji z wysokiej jakości danymi obejmującymi przygotowanie danych i inżynierię funkcji. Może to być żmudne zadanie obejmujące gromadzenie danych, wykrywanie, profilowanie, oczyszczanie, strukturyzację, przekształcanie, wzbogacanie, sprawdzanie poprawności i bezpieczne przechowywanie danych.
Pogromca danych Amazon SageMaker jest usługą w Studio Amazon SageMaker który zapewnia kompleksowe rozwiązanie do importowania, przygotowywania, przekształcania, udostępniania i analizowania danych przy niewielkim lub zerowym kodowaniu. Możesz zintegrować przepływ przygotowania danych Data Wrangler z przepływami pracy uczenia maszynowego (ML), aby uprościć wstępne przetwarzanie danych i inżynierię funkcji, szybciej przygotowując dane do produkcji bez konieczności tworzenia kodu PySpark, instalowania Apache Spark lub uruchamiania klastrów.
W przypadku scenariuszy, w których musisz dodać własne niestandardowe skrypty do transformacji danych, możesz napisać logikę transformacji w Pandas, PySpark, PySpark SQL. Data Wrangler obsługuje teraz biblioteki NLTK i SciPy do tworzenia niestandardowych transformacji w celu przygotowania danych tekstowych do uczenia maszynowego i przeprowadzania optymalizacji ograniczeń.
Możesz napotkać scenariusze, w których musisz dodać własne niestandardowe skrypty do transformacji danych. Dzięki funkcji niestandardowej transformacji Data Wrangler możesz napisać logikę transformacji w Pandas, PySpark, PySpark SQL.
W tym poście omawiamy, jak napisać niestandardową transformację w NLTK, aby przygotować dane tekstowe dla ML. Udostępnimy również kilka przykładów niestandardowej transformacji kodu przy użyciu innych popularnych platform, takich jak NLTK, NumPy, SciPy i scikit-learn, a także AWS AI Services. Na potrzeby tego ćwiczenia używamy tzw Zbiór danych Titanica, popularny zestaw danych w społeczności ML, który został teraz dodany jako przykładowy zbiór danych w ramach Data Wranglera.
Omówienie rozwiązania
Data Wrangler zapewnia ponad 40 wbudowanych konektorów do importowania danych. Po zaimportowaniu danych możesz zbudować analizę danych i przekształcenia, korzystając z ponad 300 wbudowanych przekształceń. Następnie można wygenerować uprzemysłowione potoki, aby przekazać funkcje Usługa Amazon Simple Storage (Amazonka S3) lub Sklep funkcji Amazon SageMaker. Poniższy diagram przedstawia kompleksową architekturę wysokiego poziomu.
Wymagania wstępne
Data Wrangler to funkcja dostępna w SageMaker Studio Amazon SageMaker. Możesz śledzić proces dołączania do Studio aby rozkręcić środowisko Studio i notebooki. Chociaż możesz wybrać jedną z kilku metod uwierzytelniania, najprostszym sposobem na utworzenie domeny Studio jest skorzystanie z Instrukcje szybkiego startu. Szybki start używa tych samych ustawień domyślnych, co standardowa konfiguracja programu Studio. Możesz także wybrać opcję dołączania za pomocą Centrum tożsamości AWS IAM (następca AWS Single Sign-On) w celu uwierzytelnienia (patrz Włączenie do domeny Amazon SageMaker za pomocą IAM Identity Center).
Zaimportuj zestaw danych Titanica
Uruchom środowisko Studio i utwórz nowe Przepływ danych Wranglera. Możesz zaimportować własny zestaw danych lub użyć przykładowego zestawu danych (Titanic), jak pokazano na poniższym zrzucie ekranu. Data Wrangler umożliwia importowanie zestawów danych z różnych źródeł danych. W naszym przypadku użycia importujemy przykładowy zestaw danych z zasobnika S3.
Po zaimportowaniu w przepływie danych będą widoczne dwa węzły (węzeł źródłowy i węzeł typu danych). Data Wrangler automatycznie identyfikuje typ danych dla wszystkich kolumn w zbiorze danych.
Niestandardowe transformacje za pomocą NLTK
Do przygotowania danych i inżynierii funkcji za pomocą Data Wrangler możesz użyć ponad 300 wbudowanych transformacji lub zbudować własne niestandardowe transformacje. Niestandardowe transformacje można zapisać jako osobne kroki w Data Wrangler. Stają się częścią pliku .flow w Data Wrangler. Funkcja transformacji niestandardowej obsługuje języki Python, PySpark i SQL jako różne kroki we fragmentach kodu. Po wygenerowaniu plików notesu (.ipynb) z pliku .flow lub gdy plik .flow jest używany jako przepisy, niestandardowe fragmenty kodu transformacji są zachowywane bez konieczności wprowadzania jakichkolwiek zmian. Ten projekt Data Wrangler pozwala niestandardowym transformacjom stać się częścią zadania SageMaker Processing w celu przetwarzania ogromnych zestawów danych z niestandardowymi transformacjami.
Zbiór danych Titanica ma kilka funkcji (nazwa i home.dest), które zawierają informacje tekstowe. Używamy NLTK aby podzielić kolumnę nazwiska i wyodrębnić nazwisko oraz wydrukować częstotliwość występowania nazwisk. NLTK to wiodąca platforma do tworzenia programów w języku Python do pracy z danymi w języku ludzkim. Zapewnia łatwe w użyciu interfejsy do ponad 50 korpusów i zasobów leksykalnych takich jak WordNet, wraz z zestawem bibliotek przetwarzania tekstu do klasyfikacji, tokenizacji, stemmingu, tagowania, parsowania i wnioskowania semantycznego oraz opakowań dla przemysłowych bibliotek przetwarzania języka naturalnego (NLP).
Aby dodać nową transformację, wykonaj następujące kroki:
- Wybierz znak plus i wybierz Dodaj transformację.
- Dodaj Dodaj krok i wybierz Niestandardowa transformacja.
Możesz utworzyć niestandardową transformację za pomocą Pandas, PySpark, funkcji zdefiniowanych przez użytkownika w języku Python i SQL PySpark.
- Dodaj Python (pandy) i dodaj następujący kod, aby wyodrębnić nazwisko z kolumny nazwy:
- Dodaj Podgląd aby przejrzeć wyniki.
Poniższy zrzut ekranu pokazuje last_name
kolumna wyciągnięta.
- Dodaj kolejny niestandardowy krok przekształcania, aby zidentyfikować rozkład częstotliwości nazwisk, używając następującego kodu:
- Dodaj Podgląd aby przejrzeć wyniki częstotliwości.
Niestandardowe transformacje za pomocą usług AWS AI
Wstępnie wyszkolone usługi sztucznej inteligencji AWS zapewniają gotową inteligencję dla Twoich aplikacji i przepływów pracy. Usługi AWS AI łatwo integrują się z Twoimi aplikacjami, aby rozwiązać wiele typowych przypadków użycia. Możesz teraz używać możliwości usług AWS AI jako niestandardowego kroku transformacji w Data Wrangler.
Amazon Comprehend wykorzystuje NLP do wydobywania spostrzeżeń na temat treści dokumentów. Rozwija spostrzeżenia, rozpoznając jednostki, frazy kluczowe, język, nastroje i inne wspólne elementy w dokumencie.
Używamy Amazon Comprehend, aby wyodrębnić jednostki z kolumny nazwy. Wykonaj następujące kroki:
- Dodaj niestandardowy krok transformacji.
- Dodaj Python (pandy).
- Wprowadź następujący kod, aby wyodrębnić jednostki:
- Dodaj Podgląd i wizualizować wyniki.
Dodaliśmy teraz trzy niestandardowe transformacje w Data Wrangler.
- Dodaj Przepływ danych do wizualizacji przepływu danych od końca do końca.
Niestandardowe transformacje za pomocą NumPy i SciPy
numpy to biblioteka typu open source dla języka Python, oferująca wszechstronne funkcje matematyczne, generatory liczb losowych, procedury algebry liniowej, transformaty Fouriera i wiele innych. SciPy to biblioteka Python typu open source używana do obliczeń naukowych i technicznych, zawierająca moduły do optymalizacji, algebry liniowej, integracji, interpolacji, funkcji specjalnych, szybkiej transformaty Fouriera (FFT), przetwarzania sygnałów i obrazów, solwerów i innych.
Niestandardowe transformacje Data Wrangler umożliwiają łączenie Pythona, PySpark i SQL jako różnych kroków. W poniższym przepływie narzędzia Data Wrangler różne funkcje z pakietów Python, NumPy i SciPy są stosowane w zestawie danych Titanica w wielu krokach.
Transformacje NumPy
Kolumna opłat w zbiorze danych Titanica zawiera opłaty za wejście na pokład różnych pasażerów. Histogram kolumny taryfy przedstawia rozkład równomierny, z wyjątkiem ostatniego przedziału. Stosując transformacje NumPy, takie jak logarytm lub pierwiastek kwadratowy, możemy zmienić rozkład (jak pokazuje transformacja pierwiastkowa).
Zobacz następujący kod:
Transformacje SciPy
Funkcje SciPy, takie jak z-score, są stosowane jako część niestandardowej transformacji w celu standaryzacji rozkładu taryf ze średnią i odchyleniem standardowym.
Zobacz następujący kod:
Optymalizacja ograniczeń za pomocą NumPy i SciPy
Niestandardowe transformacje Data Wrangler mogą obsługiwać zaawansowane transformacje, takie jak optymalizacja ograniczeń, stosowanie funkcji optymalizacji SciPy i łączenie SciPy z NumPy. W poniższym przykładzie taryfa jako funkcja wieku nie wykazuje żadnego zauważalnego trendu. Jednak optymalizacja ograniczeń może przekształcić taryfę jako funkcję wieku. Warunek ograniczający w tym przypadku jest taki, że nowa taryfa łączna pozostaje taka sama jak stara opłata łączna. Niestandardowe transformacje Data Wrangler umożliwiają uruchomienie funkcji optymalizacji SciPy w celu określenia optymalnego współczynnika, który może przekształcić taryfę jako funkcję wieku w warunkach ograniczeń.
Definicję optymalizacji, definicję celu i wiele ograniczeń można wymienić jako różne funkcje podczas formułowania optymalizacji ograniczeń w niestandardowej transformacji Data Wrangler przy użyciu SciPy i NumPy. Niestandardowe transformacje mogą również zapewniać różne metody rozwiązywania problemów, które są dostępne w ramach pakietu optymalizacji SciPy. Nową przekształconą zmienną można wygenerować mnożąc optymalny współczynnik z oryginalną kolumną i dodać do istniejących kolumn Data Wranglera. Zobacz następujący kod:
Funkcja niestandardowej transformacji Data Wrangler ma interfejs użytkownika umożliwiający wyświetlanie wyników funkcji optymalizacji SciPy, takich jak wartość optymalnego współczynnika (lub wielu współczynników).
Niestandardowe przekształcenia za pomocą scikit-learn
nauka-scikit to moduł Pythona do uczenia maszynowego zbudowany na bazie SciPy. Jest to biblioteka ML typu open source, która obsługuje uczenie nadzorowane i nienadzorowane. Zapewnia również różne narzędzia do dopasowywania modeli, wstępnego przetwarzania danych, wyboru modeli, oceny modeli i wiele innych narzędzi.
Dyskretyzacja
Dyskretyzacja (inaczej znany jako kwantyzacja or binowanie) umożliwia podział cech ciągłych na wartości dyskretne. Niektóre zestawy danych z cechami ciągłymi mogą odnieść korzyści z dyskretyzacji, ponieważ dyskretyzacja może przekształcić zbiór danych o atrybutach ciągłych w zbiór zawierający tylko atrybuty nominalne. Dyskretyzowane funkcje zakodowane na gorąco mogą sprawić, że model będzie bardziej wyrazisty, przy jednoczesnym zachowaniu możliwości interpretacji. Na przykład wstępne przetwarzanie za pomocą dyskretyzatora może wprowadzić nieliniowość do modeli liniowych.
W poniższym kodzie używamy KBinsDiscretizer
aby zdyskretyzować kolumnę wieku na 10 pojemników:
Możesz zobaczyć wydrukowane krawędzie pojemnika na poniższym zrzucie ekranu.
Kodowanie na gorąco
Wartości w kolumnach Zaokrętowany są wartościami kategorialnymi. Dlatego musimy reprezentować te ciągi jako wartości liczbowe, aby przeprowadzić naszą klasyfikację za pomocą naszego modelu. Możemy to również zrobić za pomocą jednej transformacji kodowania na gorąco.
Zaokrętowany ma trzy wartości: S, C i Q. Reprezentujemy je za pomocą liczb. Zobacz następujący kod:
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.
Data Wrangler automatycznie zapisuje przepływ danych co 60 sekund. Aby uniknąć utraty pracy, zapisz przepływ danych przed wyłączeniem narzędzia Data Wrangler.
- Aby zapisać przepływ danych w Studio, wybierz filet, A następnie wybierz Zapisz przepływ danych Wranglera.
- 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 pokazaliśmy, jak możesz wykorzystać niestandardowe transformacje w Data Wrangler. Wykorzystaliśmy biblioteki i framework w kontenerze Data Wrangler, aby rozszerzyć wbudowane możliwości transformacji danych. Przykłady w tym poście reprezentują podzbiór używanych ram. Transformacje w przepływie Data Wrangler można teraz skalować do potoku dla DataOps.
Aby dowiedzieć się więcej o korzystaniu z przepływów danych w Data Wrangler, zobacz Twórz i używaj przepływu danych Wrangler i Cennik Amazon SageMaker. Aby rozpocząć korzystanie z Data Wranglera, zobacz Przygotuj dane ML za pomocą Amazon SageMaker Data Wrangler. Aby dowiedzieć się więcej o Autopilocie i AutoML w SageMaker, odwiedź Zautomatyzuj tworzenie modeli za pomocą Amazon SageMaker Autopilot.
O autorach
Meenakshisundaram Tandavarayan jest starszym specjalistą AI/ML z AWS. Pomaga zaawansowanym technologicznie klientom strategicznym w ich podróży związanej z AI i ML. Jego pasją jest sztuczna inteligencja oparta na danych.
Sovik Kumar Nath jest architektem rozwiązań AI/ML w AWS. Posiada bogate doświadczenie w kompleksowych projektach i rozwiązaniach dla uczenia maszynowego; analityka biznesowa w zakresie analityki finansowej, operacyjnej i marketingowej; opieka zdrowotna; łańcuch dostaw; i IoT. Poza pracą Sovik lubi podróżować i oglądać filmy.
Abigail jest inżynierem rozwoju oprogramowania w Amazon SageMaker. Pasjonuje się pomaganiem klientom w przygotowaniu ich danych w DataWrangler oraz budowaniu rozproszonych systemów uczenia maszynowego. W wolnym czasie Abigail lubi podróżować, wędrować, jeździć na nartach i piec.
- Dystrybucja treści i PR oparta na SEO. Uzyskaj wzmocnienie już dziś.
- Platoblockchain. Web3 Inteligencja Metaverse. Wzmocniona wiedza. Dostęp tutaj.
- Wybijanie przyszłości w Adryenn Ashley. Dostęp tutaj.
- Źródło: https://aws.amazon.com/blogs/machine-learning/authoring-custom-transformations-in-amazon-sagemaker-data-wrangler-using-nltk-and-scipy/
- :ma
- :Jest
- $W GÓRĘ
- 1
- 10
- 100
- 7
- 8
- 9
- a
- O nas
- Konta
- w dodatku
- Dodatkowy
- adres
- zaawansowany
- Po
- Ages
- AI
- Usługi AI
- AI / ML
- Wszystkie kategorie
- pozwala
- wzdłuż
- Chociaż
- Amazonka
- Amazon Comprehend
- Amazon Sage Maker
- Pogromca danych Amazon SageMaker
- analiza
- analityka
- w czasie rzeczywistym sprawiają,
- i
- Andrew
- Inne
- każdy
- Apache
- Aplikacja
- aplikacje
- stosowany
- Stosowanie
- podejście
- architektura
- SĄ
- AS
- At
- atrybuty
- Uwierzytelnianie
- autor
- autoring
- automatycznie
- AutoML
- dostępny
- AWS
- BE
- bo
- stają się
- być
- zanim
- korzyści
- BIN
- abordaż
- przynieść
- budować
- Budowanie
- wybudowany
- wbudowany
- biznes
- by
- CAN
- możliwości
- walizka
- Etui
- pewien
- łańcuch
- zmiana
- Zmiany
- Dodaj
- klasyfikacja
- kod
- Kodowanie
- kolekcja
- Kolumna
- kolumny
- połączyć
- łączenie
- wspólny
- społeczność
- Firmy
- kompletny
- zrozumieć
- wszechstronny
- computing
- warunek
- Warunki
- Potwierdzać
- Wady
- Ograniczenia
- zawierać
- Pojemnik
- zawartość
- ciągły
- mógłby
- Para
- Stwórz
- zwyczaj
- Klientów
- dane
- analiza danych
- Przygotowywanie danych
- sterowane danymi
- zbiory danych
- Domyślnie
- wykazać
- Wnętrze
- projekty
- Ustalać
- rozwijanie
- oprogramowania
- rozwija się
- odchylenie
- różne
- odkrycie
- dyskutować
- dystrybuowane
- 分配
- dokument
- dokumenty
- Nie
- domena
- na dół
- z łatwością
- łatwy w użyciu
- wydajny
- bądź
- Elementy
- koniec końców
- inżynier
- Inżynieria
- wzbogacanie
- podmioty
- jednostka
- Środowisko
- ewaluację
- Każdy
- przykład
- przykłady
- Z wyjątkiem
- Ćwiczenie
- Przede wszystkim system został opracowany
- doświadczenie
- ekspresyjny
- rozciągać się
- rozległy
- Szerokie doświadczenie
- wyciąg
- FAST
- szybciej
- Cecha
- Korzyści
- Opłaty
- kilka
- filet
- Akta
- budżetowy
- dopasowywanie
- pływ
- Przepływy
- Skupiać
- skupienie
- obserwuj
- następujący
- W razie zamówieenia projektu
- formułowanie
- Framework
- Ramy
- Darmowy
- Częstotliwość
- od
- zabawa
- funkcjonować
- Funkcje
- Generować
- wygenerowane
- generatory
- otrzymać
- uchwyt
- Have
- he
- opieki zdrowotnej
- pomoc
- pomaga
- hi-tech
- na wysokim szczeblu
- Strona główna
- W jaki sposób
- Jednak
- HTML
- http
- HTTPS
- człowiek
- ICON
- identyfikuje
- zidentyfikować
- tożsamość
- obraz
- importować
- ważny
- importowanie
- poprawy
- in
- W innych
- Informacja
- spostrzeżenia
- zainstalować
- przykład
- integrować
- integracja
- Inteligencja
- interfejsy
- przedstawiać
- Internet przedmiotów
- IT
- Praca
- podróż
- jpg
- Klawisz
- znany
- język
- Nazwisko
- prowadzący
- UCZYĆ SIĘ
- nauka
- biblioteki
- Biblioteka
- lubić
- mało
- utraty
- maszyna
- uczenie maszynowe
- Utrzymywanie
- robić
- wiele
- Marketing
- masywny
- matematyczny
- Może..
- wzmiankowany
- metody
- może
- minut
- ML
- model
- modele
- Moduł
- Moduły
- jeszcze
- ruch
- Kino
- wielokrotność
- mnożenie
- Nazwa
- Nazwy
- Naturalny
- Przetwarzanie języka naturalnego
- Potrzebować
- Nowości
- Następny
- nlp
- węzeł
- węzły
- notatnik
- numer
- z naszej
- tępy
- cel
- of
- oferuje
- Stary
- on
- Onboard
- Wprowadzenie
- ONE
- koncepcja
- open source
- operacyjny
- Optymalny
- optymalizacja
- Optymalizacja
- zamówienie
- oryginalny
- Inne
- Inaczej
- ludzkiej,
- zewnętrzne
- koniec
- własny
- pakiet
- Pakiety
- pandy
- część
- namiętny
- wykonać
- Zwroty
- rurociąg
- Platforma
- plato
- Analiza danych Platona
- PlatoDane
- plus
- Popularny
- Post
- praktyki
- Przygotować
- przetwarzanie
- Produkcja
- Profilowanie
- Programy
- zapewniać
- zapewnia
- cel
- Naciskać
- Python
- jakość
- Szybki
- przypadkowy
- Surowy
- rzetelny
- szczątki
- reprezentować
- odpowiedź
- Efekt
- powrót
- przeglądu
- korzeń
- run
- s
- sagemaker
- taki sam
- Przykładowy zbiór danych
- Zapisz
- scenariusze
- naukowy
- nauka-scikit
- skrypty
- sekund
- bezpiecznie
- wybór
- senior
- oddzielny
- usługa
- Usługi
- w panelu ustawień
- ustawienie
- Share
- powinien
- pokazać
- pokazane
- Targi
- zamknąć
- zamknięcie
- znak
- Signal
- Prosty
- upraszczać
- pojedynczy
- Tworzenie
- rozwoju oprogramowania
- rozwiązanie
- Rozwiązania
- kilka
- Źródło
- Źródła
- Iskra
- specjalny
- specjalista
- Spin
- dzielić
- Kwadratowa
- standard
- początek
- rozpoczęty
- statystyki
- Ewolucja krok po kroku
- Cel
- przechowywanie
- przechowywania
- Strategiczny
- strukturyzacja
- studio
- taki
- apartament
- Dostawa
- łańcuch dostaw
- podpory
- systemy
- stół
- Brać
- biorąc
- Zadanie
- Techniczny
- że
- Połączenia
- Źródło
- ich
- w związku z tym
- Te
- trzy
- czas
- do
- żeton
- tokenizacja
- Żetony
- narzędzia
- Top
- Kwota produktów:
- Przekształcać
- Transformacja
- przemiany
- przekształcony
- transformatorowy
- Podróżowanie
- Trend
- ui
- dla
- posługiwać się
- przypadek użycia
- używany
- Użytkowe
- wartość
- Wartości
- różnorodny
- Odwiedzić
- oglądania
- Droga..
- sposoby
- DOBRZE
- który
- Podczas
- będzie
- w
- w ciągu
- bez
- słowa
- Praca
- przepływów pracy
- napisać
- napisany
- You
- Twój
- zefirnet