Twórz losowe i warstwowe próbki danych za pomocą Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Wyszukiwanie pionowe. AI.

Twórz losowe i warstwowe próbki danych za pomocą Amazon SageMaker Data Wrangler

W tym poście przeprowadzimy Cię przez dwie techniki próbkowania w Pogromca danych Amazon SageMaker dzięki czemu możesz szybko tworzyć przepływy pracy dla swoich danych. Obejmujemy zarówno losowe, jak i warstwowe techniki próbkowania, aby pomóc w próbkowaniu danych w oparciu o konkretne wymagania.

Data Wrangler skraca czas potrzebny na agregację i przygotowanie danych do uczenia maszynowego (ML) z tygodni do minut. Możesz uprościć proces przygotowania danych i inżynierii funkcji oraz ukończyć każdy etap przepływu pracy przygotowania danych, w tym wybór danych, czyszczenie, eksplorację i wizualizację za pomocą jednego interfejsu wizualnego. Dzięki narzędziu do selekcji danych Data Wrangler możesz wybrać żądane dane z różnych źródeł danych i zaimportować je jednym kliknięciem. Data Wrangler zawiera ponad 300 wbudowanych przekształceń danych, dzięki czemu możesz szybko normalizować, przekształcać i łączyć funkcje bez konieczności pisania kodu. Dzięki szablonom wizualizacji Data Wrangler możesz szybko wyświetlić podgląd i sprawdzić, czy te przekształcenia zostały ukończone zgodnie z zamierzeniami, wyświetlając je w Studio Amazon SageMaker, pierwsze w pełni zintegrowane środowisko programistyczne (IDE) dla ML. Po przygotowaniu danych możesz budować w pełni zautomatyzowane przepływy pracy ML za pomocą Rurociągi Amazon SageMaker i zachowaj je do ponownego wykorzystania w Sklep funkcji Amazon SageMaker.

Co to jest pobieranie próbek i jak może pomóc

W analizie statystycznej całkowity zestaw obserwacji jest znany jako populacja. Podczas pracy z danymi często nie jest wykonalne obliczeniowo zmierzenie każdej obserwacji z populacji. Próbkowanie statystyczne to procedura, która pozwala zrozumieć Twoje dane, wybierając podzbiory z populacji.

Próbkowanie oferuje praktyczne rozwiązanie, które poświęca pewną dokładność na rzecz praktyczności i łatwości. Aby upewnić się, że próbka dobrze reprezentuje całą populację, można zastosować strategie próbkowania. Data Wrangler obsługuje dwie najpopularniejsze strategie: losowe pobieranie próbek i próbkowanie warstwowe.

Losowe pobieranie próbek

Jeśli masz duży zestaw danych, eksperymentowanie na tym zestawie danych może być czasochłonne. Data Wrangler zapewnia losowe próbkowanie, dzięki czemu możesz efektywnie przetwarzać i wizualizować swoje dane. Na przykład możesz chcieć obliczyć średnią liczbę zakupów dla klienta w określonym przedziale czasowym lub możesz chcieć obliczyć wskaźnik utraty subskrybenta. Możesz użyć losowej próbki, aby zwizualizować przybliżenia tych metryk.

Losowa próbka z Twojego zbioru danych jest wybierana tak, aby każdy element miał równe prawdopodobieństwo wyboru. Ta operacja jest wykonywana w wydajny sposób, odpowiedni dla dużych zestawów danych, więc zwracany rozmiar próbki jest w przybliżeniu rozmiarem żądanym, a niekoniecznie równym żądanemu rozmiarowi.

Możesz użyć losowego próbkowania, jeśli chcesz wykonać szybkie przybliżone obliczenia, aby zrozumieć swój zbiór danych. W miarę zwiększania się wielkości próbki próbka losowa może lepiej przybliżać cały zestaw danych, ale jeśli nie uwzględnisz wszystkich punktów danych, próbka losowa może nie zawierać wszystkich wartości odstających i przypadków brzegowych. Jeśli chcesz interaktywnie przygotować cały zestaw danych, możesz również przełączyć się na większy typ instancji.

Z reguły błąd próbkowania przy obliczaniu średniej populacji przy użyciu próby losowej ma tendencję do 0, gdy próba jest większa. Wraz ze wzrostem wielkości próby błąd zmniejsza się jako odwrotność pierwiastka kwadratowego wielkości próby. Im większa próbka, tym lepsze przybliżenie.

Próbkowanie warstwowe

W niektórych przypadkach populację można podzielić na warstwy lub wzajemnie wykluczające się segmenty, takie jak lokalizacja geograficzna w przypadku adresów, rok wydania utworów lub przedziały podatkowe w przypadku dochodów. Próbkowanie losowe to najpopularniejsza technika próbkowania, ale jeśli niektóre warstwy są rzadkie w Twojej populacji, możesz użyć próbkowania warstwowego w aplikacji Data Wrangler, aby upewnić się, że każda warstwa jest proporcjonalnie reprezentowana w próbce. Może to być przydatne, aby zmniejszyć błędy próbkowania, a także zapewnić uchwycenie przypadków skrajnych podczas eksperymentów.

W prawdziwym świecie nieuczciwe transakcje kartą kredytową są rzadkimi zdarzeniami i zazwyczaj stanowią mniej niż 1% danych. Gdybyśmy mieli próbkować losowo, często zdarza się, że próbka zawiera bardzo niewiele lub nie zawiera żadnych oszukańczych transakcji. W rezultacie podczas uczenia modelu mielibyśmy zbyt mało oszukańczych przykładów, aby nauczyć się dokładnego modelu. Możemy użyć próbkowania warstwowego, aby upewnić się, że mamy proporcjonalną reprezentację nieuczciwych transakcji.

W przypadku próbkowania warstwowego wielkość każdej warstwy w próbie jest proporcjonalna do wielkości warstw w populacji. Działa to poprzez podzielenie danych na warstwy na podstawie określonej kolumny, wybranie losowych próbek z każdej warstwy w odpowiedniej proporcji i połączenie tych próbek w warstwową próbkę populacji.

Próbkowanie warstwowe to przydatna technika, gdy chcesz zrozumieć, jak różne grupy w Twoich danych porównują się ze sobą, i chcesz mieć pewność, że każda grupa ma odpowiednią reprezentację.

Próbkowanie losowe podczas importowania z Amazon S3

W tej sekcji używamy losowego próbkowania z zestawem danych składającym się zarówno z fałszywych, jak i nieoszukańczych zdarzeń z naszego systemu wykrywania oszustw. Możesz pobieranie zbiór danych do śledzenia wraz z tym postem (Międzynarodowa licencja uznania autorstwa CC 4.0).

W chwili pisania tego tekstu możesz importować zestawy danych z Usługa Amazon Simple Storage (Amazonka S3), Amazonka Atena, Amazonka Przesunięcie ku czerwienii płatek śniegu. Nasz zbiór danych jest bardzo duży i zawiera 1 milion wierszy. W tym przypadku chcemy próbkować 1,0000 wierszy podczas importu z Amazon S3, aby przeprowadzić interaktywne eksperymenty w Data Wrangler.

  1. Otwórz SageMaker Studio i utwórz nowy przepływ Data Wrangler.
  2. Pod Importuj datywybierz Amazon S3.
    Twórz losowe i warstwowe próbki danych za pomocą Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Wyszukiwanie pionowe. AI.
  3. Wybierz zbiór danych do zaimportowania.
  4. W Szczegóły w okienku, podaj nazwę zestawu danych i typ pliku.
  5. W razie zamówieenia projektu Próbowaniewybierz Losowy.
  6. W razie zamówieenia projektu Wielkość próbki, wchodzić 10000.
  7. Dodaj import aby załadować zestaw danych do Data Wranglera.
    Twórz losowe i warstwowe próbki danych za pomocą Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Wyszukiwanie pionowe. AI.

Na stronie przepływu danych w aplikacji Data Wrangler można zwizualizować dwa odrębne kroki. Pierwszy krok wskazuje na ładowanie przykładowego zestawu danych na podstawie zdefiniowanej strategii próbkowania. Po załadowaniu danych Data Wrangler wykonuje automatyczne wykrywanie typów danych dla każdej kolumny w zestawie danych. Ten krok jest dodawany domyślnie dla wszystkich zestawów danych.

Możesz teraz przeglądać losowo próbkowane dane w aplikacji Data Wrangler, dodając analizę.

  1. Wybierz znak plus obok Typy danych i wybierz Analiza.
    Twórz losowe i warstwowe próbki danych za pomocą Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Wyszukiwanie pionowe. AI.
  2. W razie zamówieenia projektu Typ analizy¸ wybierz Wykres punktowy.
  3. Dodaj wyczyn_1 i wyczyn_2 Jeśli chodzi o Oś X i oś Y Y, Odpowiednio.
  4. W razie zamówieenia projektu Pokoloruj wedługwybierz jest_oszustwo.

Gdy nie masz nic przeciwko zestawowi danych, przejdź do dalszych przekształceń danych zgodnie z wymaganiami biznesowymi, aby przygotować dane do ML.

Na poniższym zrzucie ekranu możemy zaobserwować w naszej analizie transakcje nieuczciwe (ciemnoniebieskie) i niefałszywe (jasnoniebieskie).
Twórz losowe i warstwowe próbki danych za pomocą Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Wyszukiwanie pionowe. AI.

W następnej sekcji omówimy stosowanie próbkowania warstwowego, aby zapewnić, że przypadki oszustwa są wybierane proporcjonalnie.

Próbkowanie warstwowe z transformacją

Data Wrangler umożliwia próbkowanie przy imporcie, a także próbkowanie poprzez transformację. W tej sekcji omówimy użycie próbkowania warstwowego za pomocą transformacji po zaimportowaniu zestawu danych do Data Wrangler.

  1. Aby rozpocząć pobieranie próbek, na Przepływ danych wybierz znak plus obok importowanego zestawu danych i wybierz Dodaj transformację.
    Twórz losowe i warstwowe próbki danych za pomocą Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Wyszukiwanie pionowe. AI.

W chwili pisania tego tekstu Data Wrangler zapewnia więcej niż 300 wbudowanych transformacji. Oprócz wbudowanych przekształceń możesz napisać własne niestandardowe przekształcenia w Pandas lub PySpark.

  1. Z Dodaj transformację lista, wybierz Próbowanie.
    Twórz losowe i warstwowe próbki danych za pomocą Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Wyszukiwanie pionowe. AI.

Możesz teraz używać trzech różnych strategii próbkowania: limitowej, losowej i warstwowej.
Twórz losowe i warstwowe próbki danych za pomocą Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Wyszukiwanie pionowe. AI.

  1. W razie zamówieenia projektu Metoda próbkowaniawybierz Warstwowy.
  2. Użyj is_fraud kolumna jako kolumna warstwowa.
  3. Dodaj Podgląd aby wyświetlić podgląd transformacji, a następnie wybierz Dodaj aby dodać tę transformację jako krok do twojego przepisu na transformację.
    Twórz losowe i warstwowe próbki danych za pomocą Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Wyszukiwanie pionowe. AI.

Przepływ danych odzwierciedla teraz dodany krok próbkowania.
Twórz losowe i warstwowe próbki danych za pomocą Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Wyszukiwanie pionowe. AI.

Teraz możemy przejrzeć losowo pobrane dane, dodając analizę.

  1. Wybierz znak plus i wybierz Analiza.
  2. W razie zamówieenia projektu Typ analizy¸ wybierz Histogram.
  3. Dodaj jest_oszustwo zarówno Oś X i Pokoloruj według.
  4. Dodaj Podgląd.

Na poniższym zrzucie ekranu możemy zaobserwować podział spraw oszukańczych (ciemnoniebieski) i niebędących oszustwami (jasnoniebieski) wybranych na podstawie próbkowania warstwowego w odpowiednich proporcjach 20% fałszywych i 80% niebędących oszustwami.

Twórz losowe i warstwowe próbki danych za pomocą Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Wyszukiwanie pionowe. AI.

Wnioski

Prawidłowe próbkowanie danych podczas pracy z bardzo dużymi zestawami danych i wybór odpowiedniej strategii próbkowania, aby spełnić wymagania biznesowe, ma zasadnicze znaczenie. Skuteczność próbkowania zależy od różnych czynników, w tym wyników biznesowych, dostępności danych i dystrybucji. W tym poście omówiliśmy, jak używać Data Wranglera i jego wbudowanych strategii próbkowania do przygotowania danych.

Możesz zacząć korzystać z tej funkcji już dziś we wszystkich Regionach, w których dostępne jest SageMaker Studio. Aby rozpocząć, odwiedź Przygotuj dane ML za pomocą Amazon SageMaker Data Wrangler.

Podziękowania

Autorzy pragną podziękować Jonathanowi Chungowi (Applied Scientist) za jego recenzję i cenne uwagi dotyczące tego artykułu.


O autorach

Twórz losowe i warstwowe próbki danych za pomocą Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Wyszukiwanie pionowe. AI.Ben Harris jest inżynierem oprogramowania z doświadczeniem w projektowaniu, wdrażaniu i utrzymywaniu skalowalnych potoków danych oraz rozwiązań uczenia maszynowego w różnych domenach.

Twórz losowe i warstwowe próbki danych za pomocą Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Wyszukiwanie pionowe. AI.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ą.

Twórz losowe i warstwowe próbki danych za pomocą Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Wyszukiwanie pionowe. AI.Meenakshisundaram Tandavarayan jest starszym specjalistą AI/ML z AWS. Pomaga strategicznym kontom Hi-Tech w ich podróży związanej z AI i ML. Jego pasją jest sztuczna inteligencja oparta na danych.

Twórz losowe i warstwowe próbki danych za pomocą Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Wyszukiwanie pionowe. AI.Ajai Sharma jest głównym menedżerem produktu w Amazon SageMaker, gdzie koncentruje się na Data Wrangler, wizualnym narzędziu do przygotowywania danych dla naukowców zajmujących się danymi. Przed podjęciem pracy w AWS Ajai był ekspertem ds. nauki danych w McKinsey and Company, gdzie prowadził projekty ukierunkowane na ML dla wiodących firm finansowych i ubezpieczeniowych na całym świecie. Ajai pasjonuje się nauką o danych i uwielbia poznawać najnowsze algorytmy i techniki uczenia maszynowego.

Znak czasu:

Więcej z Uczenie maszynowe AWS