Przygotuj dane z Databricks do uczenia maszynowego za pomocą Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Wyszukiwanie pionowe. AI.

Przygotuj dane z Databricks do uczenia maszynowego za pomocą Amazon SageMaker Data Wrangler

Zespoły zajmujące się analizą danych i inżynierią danych spędzają znaczną część swojego czasu na etapie przygotowywania danych w cyklu życia uczenia maszynowego (ML), wykonując etapy selekcji, czyszczenia i transformacji danych. Jest to niezbędny i ważny etap każdego przepływu pracy ML w celu wygenerowania znaczących spostrzeżeń i prognoz, ponieważ złe lub niskiej jakości dane znacznie zmniejszają znaczenie uzyskanych spostrzeżeń.

Zespoły inżynierii danych są tradycyjnie odpowiedzialne za pozyskiwanie, konsolidację i przekształcanie surowych danych do wykorzystania w dalszej części procesu. Analitycy danych często muszą wykonać dodatkowe przetwarzanie danych na potrzeby przypadków użycia ML specyficznych dla domeny, takich jak język naturalny i szeregi czasowe. Na przykład niektóre algorytmy ML mogą być wrażliwe na brakujące wartości, rzadkie cechy lub wartości odstające i wymagają szczególnej uwagi. Nawet w przypadkach, gdy zbiór danych jest w dobrym stanie, badacze danych mogą chcieć przekształcić rozkłady cech lub utworzyć nowe funkcje, aby zmaksymalizować wnioski uzyskane z modeli. Aby osiągnąć te cele, badacze danych muszą polegać na zespołach zajmujących się inżynierią danych, aby uwzględnić żądane zmiany, co skutkuje zależnością i opóźnieniami w procesie opracowywania modelu. Alternatywnie zespoły zajmujące się analizą danych mogą zdecydować się na wewnętrzne przygotowanie danych i inżynierię funkcji, korzystając z różnych paradygmatów programowania. Wymaga to jednak inwestycji czasu i wysiłku w instalację i konfigurację bibliotek i frameworków, co nie jest rozwiązaniem idealnym, ponieważ ten czas można lepiej wykorzystać na optymalizację wydajności modelu.

Pogromca danych Amazon SageMaker upraszcza proces przygotowywania danych i inżynierii funkcji, skracając czas potrzebny na agregację i przygotowanie danych do ML z tygodni do minut, zapewniając pojedynczy interfejs wizualny dla analityków danych w celu wybierania, czyszczenia i eksplorowania zbiorów danych. Data Wrangler oferuje ponad 300 wbudowanych transformacji danych, które pomagają normalizować, przekształcać i łączyć funkcje bez pisania kodu. Możesz importować dane z wielu źródeł danych, np Usługa Amazon Simple Storage (Amazon S3), Amazonka Atena, Amazonka Przesunięcie ku czerwieni, Snowflake. Teraz możesz także skorzystać Pamięci danych jako źródło danych w Data Wrangler, aby łatwo przygotować dane dla ML.

Platforma Databricks Lakehouse łączy najlepsze elementy jezior danych i hurtowni danych, aby zapewnić niezawodność, dobre zarządzanie i wydajność hurtowni danych z otwartością, elastycznością i obsługą uczenia maszynowego jezior danych. Dzięki Databricks jako źródłu danych dla Data Wrangler możesz teraz szybko i łatwo łączyć się z Databricks, interaktywnie wysyłać zapytania do danych przechowywanych w Databricks przy użyciu SQL i przeglądać dane przed importem. Ponadto możesz łączyć swoje dane w Databricks z danymi przechowywanymi w Amazon S3 oraz danymi przesyłanymi do zapytań za pośrednictwem Amazon Athena, Amazon Redshift i Snowflake, aby utworzyć odpowiedni zestaw danych dla Twojego przypadku użycia ML.

W tym poście przekształcamy zbiór danych Lending Club Loan za pomocą Amazon SageMaker Data Wrangler do wykorzystania w szkoleniu modelu ML.

Omówienie rozwiązania

Poniższy diagram ilustruje naszą architekturę rozwiązania.

Przygotuj dane z Databricks do uczenia maszynowego za pomocą Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Wyszukiwanie pionowe. AI.

Zbiór danych Lending Club Loan zawiera pełne dane dotyczące wszystkich pożyczek udzielonych w latach 2007–2011, w tym bieżący status pożyczki i najnowsze informacje o płatnościach. Zawiera 39,717 22 wierszy, 3 kolumny funkcji i XNUMX etykiety celów.

Aby przekształcić nasze dane za pomocą Data Wrangler, wykonujemy następujące kroki wysokiego poziomu:

  1. Pobierz i podziel zestaw danych.
  2. Utwórz przepływ Data Wrangler.
  3. Importuj dane z Databricks do Data Wrangler.
  4. Importuj dane z Amazon S3 do Data Wrangler.
  5. Dołącz do danych.
  6. Zastosuj przekształcenia.
  7. Eksportuj zbiór danych.

Wymagania wstępne

W poście założono, że masz działający klaster Databricks. Jeśli Twój klaster działa na platformie AWS, sprawdź, czy masz skonfigurowane następujące elementy:

Konfiguracja kostek danych

Obserwuj Bezpieczny dostęp do zasobników S3 przy użyciu profili instancji dla wymaganych AWS Zarządzanie tożsamością i dostępem (IAM), zasady zasobnika S3 i konfiguracja klastra Databricks. Upewnij się, że klaster Databricks jest skonfigurowany przy użyciu odpowiedniego pliku Instance Profile, wybrane w opcjach zaawansowanych, aby uzyskać dostęp do żądanego segmentu S3.

Przygotuj dane z Databricks do uczenia maszynowego za pomocą Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Wyszukiwanie pionowe. AI.

Po uruchomieniu klastra Databricks z wymaganym dostępem do Amazon S3 możesz pobrać plik JDBC URL z klastra Databricks, aby Data Wrangler mógł się z nim połączyć.

Pobierz adres URL JDBC

Aby pobrać adres URL JDBC, wykonaj następujące kroki:

  1. W Databricks przejdź do interfejsu użytkownika klastrów.
  2. Wybierz swój klaster.
  3. Na systemu kartę, wybierz Opcje zaawansowane.
  4. Pod Opcje zaawansowane, Wybierz JDBC/ODBC patka.
  5. Skopiuj adres URL JDBC.
    Przygotuj dane z Databricks do uczenia maszynowego za pomocą Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Wyszukiwanie pionowe. AI.

Pamiętaj o zastąpieniu dostępu osobistego żeton w adresie URL.

Konfiguracja Data Wranglera

W tym kroku założono, że masz dostęp do przykładu Amazon SageMaker Studio Amazon SageMakeri użytkownikiem Studio.

Aby zezwolić na dostęp do połączenia Databricks JDBC z Data Wrangler, użytkownik Studio wymaga następujących uprawnień:

  • secretsmanager:PutResourcePolicy

Wykonaj poniższe kroki, aby zaktualizować rolę wykonywania uprawnień przypisaną do użytkownika Studio z powyższymi uprawnieniami, jako użytkownik administracyjny uprawnień.

  1. W konsoli IAM wybierz role w okienku nawigacji.
  2. Wybierz rolę przypisaną do użytkownika Studio.
  3. Dodaj Dodaj uprawnienia.
  4. Dodaj Utwórz politykę inline.
  5. W obszarze Usługa wybierz Menedżer tajemnic.
  6. On Akcjewybierz Poziom dostępu.
  7. Dodaj Zarządzanie uprawnieniami.
  8. Dodaj PutResourcePolicy.
  9. W razie zamówieenia projektu Zasobywybierz Konkretny nastepnie: Dowolny na tym koncie.
    Przygotuj dane z Databricks do uczenia maszynowego za pomocą Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Wyszukiwanie pionowe. AI.

Pobierz i podziel zestaw danych

Możesz zacząć od pobranie zbioru danych. W celach demonstracyjnych podzieliliśmy zbiór danych, kopiując kolumny funkcji id, emp_title, emp_length, home_owner, annual_inc stworzyć drugi pożyczki_2.csv plik. Usuwamy wyżej wymienione kolumny z oryginalnego pliku pożyczek, z wyjątkiem id kolumnę i zmień nazwę oryginalnego pliku na pożyczki_1.csv. Prześlij plik pożyczki_1.csv złożyć do Pamięci danych aby utworzyć tabelę loans_1 i pożyczki_2.csv w wiadrze S3.

Utwórz przepływ Data Wrangler

Aby uzyskać informacje na temat wymagań wstępnych Data Wrangler, zobacz Zacznij korzystać z Data Wranglera.

Zacznijmy od utworzenia nowego przepływu danych.

  1. Na konsoli Studio w filet menu, wybierz Nowości.
  2. Dodaj Przepływ danych Wranglera.
  3. Zmień nazwę przepływu według potrzeb.
    Przygotuj dane z Databricks do uczenia maszynowego za pomocą Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Wyszukiwanie pionowe. AI.

Alternatywnie możesz utworzyć nowy przepływ danych z poziomu Launchera.

  • W konsoli Studio wybierz Studio Amazon SageMaker w okienku nawigacji.
  • Dodaj Nowy przepływ danych.
    Przygotuj dane z Databricks do uczenia maszynowego za pomocą Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Wyszukiwanie pionowe. AI.

Utworzenie nowego przepływu może zająć kilka minut. Po utworzeniu przepływu zostanie wyświetlony komunikat Importuj daty strona.

Importuj dane z Databricks do Data Wrangler

Następnie konfigurujemy Databricks (JDBC) jako źródło danych w Data Wrangler. Aby zaimportować dane z Databricks, musimy najpierw dodać Databricks jako źródło danych.

  1. Na Importuj daty kartę przepływu Data Wrangler, wybierz Dodaj źródło danych.
  2. Z menu rozwijanego wybierz Kostki danych (JDBC).
    Przygotuj dane z Databricks do uczenia maszynowego za pomocą Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Wyszukiwanie pionowe. AI.

Na Importuj dane z Databricks stronie, wpisz szczegóły swojego klastra.

  1. W razie zamówieenia projektu Nazwa zestawu danych, wprowadź nazwę, której chcesz używać w pliku przepływu.
  2. W razie zamówieenia projektu Kierowca, wybierz sterownik com.simba.spark.jdbc.Driver.
  3. W razie zamówieenia projektu URL JDBCwprowadź uzyskany wcześniej adres URL klastra Databricks.

Adres URL powinien przypominać następujący format jdbc:spark://<serve- hostname>:443/default;transportMode=http;ssl=1;httpPath=<http- path>;AuthMech=3;UID=token;PWD=<personal-access-token>.

  1. W edytorze zapytań SQL określ następującą instrukcję SQL SELECT:
    select * from loans_1

Jeśli podczas przesyłania danych do Databricks wybrałeś inną nazwę tabeli, zastąp odpowiednio pożyczki_1 w powyższym zapytaniu SQL.

W Zapytanie SQL sekcji w Data Wrangler, możesz wysyłać zapytania do dowolnej tabeli połączonej z bazą danych JDBC Databricks. Wstępnie wybrane Włącz próbkowanie ustawienie domyślnie pobiera pierwsze 50,000 XNUMX wierszy zestawu danych. W zależności od rozmiaru zbioru danych odznaczenie Włącz próbkowanie może skutkować dłuższym czasem importu.

  1. Dodaj run.

Uruchomienie zapytania daje podgląd zbioru danych Databricks bezpośrednio w Data Wrangler.
Przygotuj dane z Databricks do uczenia maszynowego za pomocą Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Wyszukiwanie pionowe. AI.

  1. Dodaj import.
    Przygotuj dane z Databricks do uczenia maszynowego za pomocą Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Wyszukiwanie pionowe. AI.

Data Wrangler zapewnia elastyczność konfiguracji wielu jednoczesnych połączeń z jednym klastrem Databricks lub z wieloma klastrami, jeśli jest to wymagane, umożliwiając analizę i przygotowanie połączonych zestawów danych.

Zaimportuj dane z Amazon S3 do Data Wrangler

Następnie zaimportujmy plik loan_2.csv plik z Amazon S3.

  1. Na karcie Import wybierz Amazon S3 jako źródło danych.
    Przygotuj dane z Databricks do uczenia maszynowego za pomocą Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Wyszukiwanie pionowe. AI.
  2. Przejdź do zasobnika S3 dla pliku loan_2.csv plik.

Po wybraniu pliku CSV można wyświetlić podgląd danych.

  1. W Szczegóły okienko, wybierz Zaawansowana konfiguracja upewnić się Włącz próbkowanie jest wybrany i USTĘP jest wybrany do Ogranicznik.
  2. Dodaj import.
    Przygotuj dane z Databricks do uczenia maszynowego za pomocą Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Wyszukiwanie pionowe. AI.

Po loans_2.csv zestaw danych został pomyślnie zaimportowany, interfejs przepływu danych wyświetla źródła danych Databricks JDBC i Amazon S3.

Przygotuj dane z Databricks do uczenia maszynowego za pomocą Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Wyszukiwanie pionowe. AI.

Dołącz do danych

Teraz, gdy zaimportowaliśmy dane z Databricks i Amazon S3, połączmy zbiory danych przy użyciu wspólnej kolumny unikalnego identyfikatora.

  1. Na Przepływ danych tab, dla Typy danych, wybierz znak plus dla loans_1.
  2. Dodaj Dołącz do rejestru.
    Przygotuj dane z Databricks do uczenia maszynowego za pomocą Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Wyszukiwanie pionowe. AI.
  3. Wybierz loans_2.csv plik jako Prawa zestaw danych.
  4. Dodaj Konfigurowanie aby ustawić kryteria łączenia.
    Przygotuj dane z Databricks do uczenia maszynowego za pomocą Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Wyszukiwanie pionowe. AI.
  5. W razie zamówieenia projektu Imięwprowadź nazwę połączenia.
  6. W razie zamówieenia projektu Typ połączeniawybierz Wewnętrzny dla tego posta.
  7. Wybierz id kolumna, do której chcesz dołączyć.
  8. Dodaj Aplikuj aby wyświetlić podgląd połączonego zbioru danych.
  9. Dodaj Dodaj aby dodać go do przepływu danych.
    Przygotuj dane z Databricks do uczenia maszynowego za pomocą Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Wyszukiwanie pionowe. AI.

Zastosuj przekształcenia

Data Wrangler zawiera ponad 300 wbudowanych transformacji, które nie wymagają kodowania. Użyjmy wbudowanych transformacji, aby przygotować zestaw danych.

Upuść kolumnę

Najpierw usuwamy nadmiarową kolumnę ID.

  1. W połączonym węźle wybierz znak plus.
  2. Dodaj Dodaj transformację.
    Przygotuj dane z Databricks do uczenia maszynowego za pomocą Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Wyszukiwanie pionowe. AI.
  3. Pod Transformuje, wybierać + Dodaj krok.
  4. Dodaj Zarządzaj kolumnami.
  5. W razie zamówieenia projektu Przekształcaćwybierz Upuść kolumnę.
  6. W razie zamówieenia projektu Kolumny do upuszczenia, wybierz kolumnę id_0.
  7. Dodaj Podgląd.
    Przygotuj dane z Databricks do uczenia maszynowego za pomocą Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Wyszukiwanie pionowe. AI.
  8. Dodaj Dodaj.

Formatuj ciąg

Zastosujmy formatowanie ciągu, aby usunąć symbol procentu z pliku int_rate i revol_util kolumny.

  1. Na Dane karta, pod Przekształca sięwybierz + Dodaj krok.
    Przygotuj dane z Databricks do uczenia maszynowego za pomocą Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Wyszukiwanie pionowe. AI.
  2. Dodaj Formatuj ciąg.
  3. W razie zamówieenia projektu Przekształcaćwybierz Usuń znaki z prawej strony.

Data Wrangler umożliwia zastosowanie wybranej transformacji w wielu kolumnach jednocześnie.

  1. W razie zamówieenia projektu Kolumny wejściowewybierz int_rate i revol_util.
  2. W razie zamówieenia projektu Znaki do usunięcia, wchodzić %.
  3. Dodaj Podgląd.
    Przygotuj dane z Databricks do uczenia maszynowego za pomocą Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Wyszukiwanie pionowe. AI.
  4. Dodaj Dodaj.

Wyróżniaj tekst

Przejdźmy teraz do wektoryzacji verification_status, kolumna z funkcjami tekstowymi. Konwertujemy kolumnę tekstową na wektory częstotliwości odwrotnej częstotliwości dokumentu (TF-IDF), stosując wektoryzator zliczania i standardowy tokenizator, jak opisano poniżej. W razie potrzeby Data Wrangler zapewnia również opcję zabrania własnego tokenizera.

  1. Pod Transformatorywybierz + Dodaj krok.
  2. Dodaj Wyróżniaj tekst.
  3. W razie zamówieenia projektu Przekształcaćwybierz Wektoryzuj.
  4. W razie zamówieenia projektu Kolumny wejściowewybierz verification_status.
  5. Dodaj Podgląd.
    Przygotuj dane z Databricks do uczenia maszynowego za pomocą Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Wyszukiwanie pionowe. AI.
  6. Dodaj Dodaj.

Eksportuj zbiór danych

Po zastosowaniu wielu transformacji do różnych typów kolumn, w tym tekstowych, kategorialnych i liczbowych, jesteśmy gotowi do użycia przekształconego zestawu danych na potrzeby szkolenia modelu ML. Ostatnim krokiem jest wyeksportowanie przekształconego zbioru danych do Amazon S3. W Data Wranglerze masz do wyboru wiele opcji dalszego wykorzystania transformacji:

W tym poście korzystamy z Eksportuj dane opcja w Przekształcać view, aby wyeksportować przekształcony zbiór danych bezpośrednio do Amazon S3.

  1. Dodaj Eksportuj dane.
    Przygotuj dane z Databricks do uczenia maszynowego za pomocą Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Wyszukiwanie pionowe. AI.
  2. W razie zamówieenia projektu Lokalizacja S3wybierz Przeglądaj i wybierz wiadro S3.
  3. Dodaj Eksportuj dane.
    Przygotuj dane z Databricks do uczenia maszynowego za pomocą Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Wyszukiwanie pionowe. AI.

Sprzątać

Jeśli Twoja praca z Data Wranglerem dobiegła końca, wyłącz instancję Data Wranglera aby uniknąć ponoszenia dodatkowych opłat.

Wnioski

W tym poście omówiliśmy, jak szybko i łatwo skonfigurować i połączyć Databricks jako źródło danych w Data Wrangler, interaktywnie wysyłać zapytania do danych przechowywanych w Databricks przy użyciu języka SQL oraz wyświetlać podgląd danych przed importem. Dodatkowo sprawdziliśmy, jak możesz połączyć swoje dane w Databricks z danymi przechowywanymi w Amazon S3. Następnie zastosowaliśmy transformacje danych w połączonym zestawie danych, aby utworzyć potok przygotowania danych. Aby poznać więcej możliwości analizy Data Wrangler, w tym generowanie raportów dotyczących wycieków docelowych i błędów stronniczości, zapoznaj się z następującym postem na blogu Przyspiesz przygotowywanie danych za pomocą Amazon SageMaker Data Wrangler do przewidywania ponownej hospitalizacji pacjentów z cukrzycą.

Aby rozpocząć korzystanie z Data Wranglera, zobacz Przygotuj dane ML za pomocą Amazon SageMaker Data Wrangleri zobacz najnowsze informacje na temat Data Wranglera Strona produktu.


O autorach

Przygotuj dane z Databricks do uczenia maszynowego za pomocą Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Wyszukiwanie pionowe. AI.Bainsy jest architektem rozwiązań w AWS skupiającym się na AI/ML. Jego pasją jest pomaganie klientom we wprowadzaniu innowacji i osiąganiu celów biznesowych z wykorzystaniem sztucznej inteligencji i uczenia maszynowego. W wolnym czasie Roop lubi czytać i wędrować.

Przygotuj dane z Databricks do uczenia maszynowego za pomocą Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Wyszukiwanie pionowe. AI.Igor Alekseev jest architektem rozwiązań dla partnerów w AWS w zakresie danych i analiz. Igor współpracuje ze strategicznymi partnerami, pomagając im budować złożone architektury zoptymalizowane pod kątem AWS. Przed dołączeniem do AWS, jako Architekt Danych/Rozwiązań, zrealizował wiele projektów w Big Data, w tym kilka jezior danych w ekosystemie Hadoop. Jako Data Engineer był zaangażowany w zastosowanie AI/ML do wykrywania nadużyć i automatyzacji biura. Projekty Igora dotyczyły różnych branż, w tym komunikacji, finansów, bezpieczeństwa publicznego, produkcji i opieki zdrowotnej. Wcześniej Igor pracował jako full stack inżynier/tech lead.

Przygotuj dane z Databricks do uczenia maszynowego za pomocą Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Wyszukiwanie pionowe. AI.Huong Nguyen jest starszym menedżerem produktu w AWS. Kieruje doświadczeniem użytkownika w SageMaker Studio. Ma 13-letnie doświadczenie w tworzeniu produktów z obsesją na punkcie klientów i opartych na danych, zarówno dla przedsiębiorstw, jak i konsumentów. W wolnym czasie lubi czytać, przebywać na łonie natury i spędzać czas z rodziną.

Przygotuj dane z Databricks do uczenia maszynowego za pomocą Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Wyszukiwanie pionowe. AI.Henryk Wang jest inżynierem rozwoju oprogramowania w AWS. Niedawno dołączył do zespołu Data Wrangler po ukończeniu studiów na Uniwersytecie Kalifornijskim w Davis. Interesuje się nauką o danych i uczeniem maszynowym, a drukowanie 3D jest jego hobby.

Znak czasu:

Więcej z Uczenie maszynowe AWS