Använd Github Samples med Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Vertikal sökning. Ai.

Använd Github Samples med Amazon SageMaker Data Wrangler

Amazon SageMaker Data Wrangler är ett UI-baserat dataförberedande verktyg som hjälper till att utföra dataanalys, förbearbetning och visualisering med funktioner för att rensa, transformera och förbereda data snabbare. Data Wrangler förbyggda flödesmallar hjälper dig att göra dataförberedelser snabbare för datavetare och maskininlärningsutövare (ML) genom att hjälpa dig att accelerera och förstå bästa praxismönster för dataflöden med hjälp av vanliga datauppsättningar.

Du kan använda Data Wrangler-flöden för att utföra följande uppgifter:

  • Datavisualisering – Undersöka statistiska egenskaper för varje kolumn i datamängden, bygga histogram, studera extremvärden
  • Datarengöring – Ta bort dubbletter, ta bort eller fylla poster med saknade värden, ta bort extremvärden
  • Databerikning och funktionsteknik – Bearbeta kolumner för att skapa mer uttrycksfulla funktioner, välja en undergrupp av funktioner för träning

Det här inlägget hjälper dig att förstå Data Wrangler med hjälp av följande exempel på förbyggda flöden GitHub. Förvaret visar tabellformade datatransformationer, tidsseriedatatransformationer och sammanfogade datasettransformeringar. Var och en kräver en annan typ av transformationer på grund av deras grundläggande natur. Standarddata i tabellform eller tvärsnitt samlas in vid en specifik tidpunkt. Däremot fångas tidsseriedata upprepade gånger över tiden, med varje successiv datapunkt beroende av dess tidigare värden.

Låt oss titta på ett exempel på hur vi kan använda exempeldataflödet för tabelldata.

Förutsättningar

Data Wrangler är en Amazon SageMaker funktion tillgänglig inom Amazon SageMaker Studio, så vi måste följa Studio-introduktionsprocessen för att snurra upp Studio-miljön och anteckningsböckerna. Även om du kan välja mellan några få autentiseringsmetoder, är det enklaste sättet att skapa en Studio-domän att följa Snabbstart instruktioner. Snabbstarten använder samma standardinställningar som standard studiouppsättning. Du kan också välja att ombord använda Aws iam identitetscenter (efterträdare till AWS Single Sign-On) för autentisering (se Ombord på Amazon SageMaker Domain med IAM Identity Center).

Importera datamängden och flödesfilerna till Data Wrangler med Studio

Följande steg beskriver hur du importerar data till SageMaker för att konsumeras av Data Wrangler:

Initiera Data Wrangler via Studio UI genom att välja Nytt dataflöde.

Klona GitHub repo för att ladda ner flödesfilerna till din Studio-miljö.

Använd Github Samples med Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Vertikal sökning. Ai.

När klonen är klar bör du kunna se arkivets innehåll i den vänstra rutan.

Använd Github Samples med Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Vertikal sökning. Ai.

Välj filen Hotell-bokningar-klassificering.flöde för att importera flödesfilen till Data Wrangler.

Om du använder tidsserien eller det sammanfogade dataflödet kommer flödet att visas som ett annat namn. När flödet har importerats bör du se följande skärmdump. Detta visar oss fel eftersom vi måste se till att flödesfilen pekar på rätt datakälla i Amazon enkel lagringstjänst (Amazon S3).

Använd Github Samples med Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Vertikal sökning. Ai.

Välja Redigera dataset för att få upp alla dina S3-hinkar. Välj sedan datamängden hotel_bookings.csv från din S3-skopa för att springa igenom dataflöde i tabellform.

Observera att om du använder sammanfogat dataflöde, kan du behöva importera flera datamängder till Data WranglerAnvänd Github Samples med Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Vertikal sökning. Ai.

Se till i den högra rutan KOMMATECKEN väljs som avgränsare och provtagning är inställd på Först K. Vår datauppsättning är tillräckligt liten för att köra Data Wrangler-transformationer på hela datauppsättningen, men vi ville lyfta fram hur du kan importera datauppsättningen. Om du har en stor datauppsättning, överväg att använda sampling. Välja Importera för att importera denna datauppsättning till Data Wrangler.

Använd Github Samples med Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Vertikal sökning. Ai.

Efter att datauppsättningen har importerats validerar Data Wrangler datauppsättningen automatiskt och upptäcker datatyperna. Du kan se att felen har försvunnit eftersom vi pekar på rätt datauppsättning. Flödesredigeraren visar nu två block som visar att data importerades från en källa och datatyper kändes igen. Du kan också redigera datatyperna om det behövs.

Använd Github Samples med Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Vertikal sökning. Ai.

Följande skärmdump visar våra datatyper.

Använd Github Samples med Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Vertikal sökning. Ai.

Låt oss titta på några av transformationerna som gjorts som en del av detta tabellflöde. Om du använder tidsföljder or fogade dataflöden, kolla in några vanliga transformationer på GitHub repo. Vi utförde en del grundläggande utforskande dataanalyser med hjälp av datainsiktsrapporter som studerade målläckaget och funktionskollineariteten i datamängden, tabellsammanfattningsanalyser och snabbmodelleringsförmåga. Utforska stegen på GitHub repo.

Nu släpper vi kolumner baserat på rekommendationerna från Data Insights and Quality Report.

  • För målläckage, släpp reservationsstatus.
  • För redundanta kolumner, släpp days_in_waiting_list, hotel, reserved_room_type, ankomstdatum_månad, reservationsstatus_date, babys, och ankomstdatum_dag_i_månaden.
  • Släpp kolumner baserat på linjära korrelationsresultat ankomstdatum_veckonummer och ankomstdatum_år eftersom korrelationsvärdena för dessa funktionspar (kolumn) är större än den rekommenderade tröskeln på 0.90.
  • Baserat på icke-linjära korrelationsresultat, fall reservationsstatus. Denna kolumn har redan markerats för att tas bort baserat på målläckageanalysen.
  • Bearbeta numeriska värden (min-max skalning) för lead_time, stays_in_weekend_nights, stays_in_weekday_nights, is_repeated_guest, prev_cancellations, prev_bookings_not_cancelled, booking_changes, adr, total_of_specical_requests, och nödvändiga_bilparkeringsplatser.
  • One-hot koda kategoriska variabler som meal, is_repeated_guest, market_segment, assigned_room_type, deposit_type, och kundtyp.
  • Balansera målvariabeln Slumpmässigt översampling för klassobalans. Använd den snabba modelleringsfunktionen för att hantera extremvärden och saknade värden.

Använd Github Samples med Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Vertikal sökning. Ai.

Exportera till Amazon S3

Nu har vi gått igenom de olika transformationerna och är redo att exportera data till Amazon S3. Det här alternativet skapar ett SageMaker-bearbetningsjobb, som kör Data Wrangler-bearbetningsflödet och sparar den resulterande datamängden i en specificerad S3-bucket. Följ nästa steg för att ställa in exporten till Amazon S3:

Välj plustecknet bredvid en samling transformationselement och välj Lägg till destinationoch sedan Amazon S3.

Använd Github Samples med Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Vertikal sökning. Ai.

  • För Datasetnamnanger du till exempel ett namn för den nya datamängden NYC_export.
  • För Filtypväljer CSV.
  • För avgränsareväljer Kommatecken.
  • För kompressionväljer Ingen.
  • För Amazon S3 plats, använd samma hinknamn som vi skapade tidigare.
  • Välja Lägg till destination.

Använd Github Samples med Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Vertikal sökning. Ai.

Välja Skapa jobb.

Använd Github Samples med Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Vertikal sökning. Ai.

För Jobb namn, ange ett namn eller behåll det autogenererade alternativet och välj destination. Vi har bara en destination, S3:testingtabulardata, men du kan ha flera destinationer från olika steg i ditt arbetsflöde. Lämna KMS nyckel ARN fältet tomt och välj Nästa.

Nu måste du konfigurera beräkningskapaciteten för ett jobb. Du kan behålla alla standardvärden för detta exempel.

  • För Instans typ, använd ml.m5.4xlarge.
  • För Antal instanser, använd 2.
  • Du kan utforska Ytterligare konfiguration, men behåll standardinställningarna.
  • Välja Körning.

Använd Github Samples med Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Vertikal sökning. Ai.

Nu har ditt jobb börjat och det tar lite tid att bearbeta 6 GB data enligt vårt Data Wrangler-bearbetningsflöde. Kostnaden för det här jobbet kommer att vara cirka 2 USD, eftersom ml.m5.4xlarge kostar 0.922 USD per timme och vi använder två av dem.

Om du väljer jobbnamnet omdirigeras du till ett nytt fönster med jobbinformationen.

Använd Github Samples med Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Vertikal sökning. Ai.

På sidan med jobbdetaljer kan du se alla parametrar från de föregående stegen.

När jobbstatusen ändras till Slutförd kan du också kontrollera Behandlingstid (sekunder) värde. Detta bearbetningsjobb tar cirka 5–10 minuter att slutföra.

Använd Github Samples med Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Vertikal sökning. Ai.

När jobbet är klart finns tåg- och testutdatafilerna tillgängliga i motsvarande S3-utdatamappar. Du kan hitta utdataplatsen från bearbetningsjobbkonfigurationerna.

Använd Github Samples med Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Vertikal sökning. Ai.

När Data Wrangler-bearbetningsjobbet är klart kan vi kontrollera resultaten som sparats i vår S3-hink. Glöm inte att uppdatera job_name variabel med ditt jobbnamn.

Du kan nu använda denna exporterade data för att köra ML-modeller.

Städa upp

Ta bort dina S3-hinkar och din Data Wrangler-flöde för att ta bort de underliggande resurserna och förhindra oönskade kostnader efter att du avslutat experimentet.

Slutsats

I det här inlägget visade vi hur du kan importera det tabellformade förbyggda dataflödet till Data Wrangler, koppla in det mot vår datauppsättning och exportera resultaten till Amazon S3. Om dina användningsfall kräver att du manipulerar tidsseriedata eller går med i flera datauppsättningar, kan du gå igenom de andra förbyggda provflödena i GitHub repo.

När du har importerat ett förbyggt dataförberedande arbetsflöde kan du integrera det med Amazon SageMaker Processing, Amazon SageMaker-rörledningaroch Amazon SageMaker Feature Store för att förenkla uppgiften att bearbeta, dela och lagra ML-träningsdata. Du kan också exportera det här exempeldataflödet till ett Python-skript och skapa en anpassad ML-dataförberedelsepipeline, och därigenom accelerera din releasehastighet.

Vi uppmuntrar dig att kolla in vår GitHub repository för att få praktisk övning och hitta nya sätt att förbättra modellens noggrannhet! För att lära dig mer om SageMaker, besök Amazon SageMaker Developer Guide.


Om författarna

Använd Github Samples med Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Vertikal sökning. Ai.Isha Dua är en senior lösningsarkitekt baserad i San Francisco Bay Area. Hon hjälper AWS Enterprise-kunder att växa genom att förstå deras mål och utmaningar, och guidar dem om hur de kan utforma sina applikationer på ett molnbaserat sätt samtidigt som de ser till att de är motståndskraftiga och skalbara. Hon brinner för maskininlärningsteknik och miljömässig hållbarhet.

Tidsstämpel:

Mer från AWS maskininlärning