Forbered data fra Amazon EMR for maskinlæring ved hjelp av Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Vertikalt søk. Ai.

Forbered data fra Amazon EMR for maskinlæring ved hjelp av Amazon SageMaker Data Wrangler

Dataforberedelse er en hovedkomponent i pipelines for maskinlæring (ML). Faktisk er det anslått at datafagfolk bruker omtrent 80 prosent av tiden sin på dataforberedelse. I dette intensive konkurranseutsatte markedet ønsker team å analysere data og hente ut mer meningsfylt innsikt raskt. Kunder tar i bruk mer effektive og visuelle måter å bygge databehandlingssystemer på.

Amazon SageMaker Data Wrangler forenkler dataforberedelsen og funksjonsutviklingsprosessen, og reduserer tiden det tar fra uker til minutter ved å tilby et enkelt visuelt grensesnitt for dataforskere for å velge, rense data, lage funksjoner og automatisere dataforberedelse i ML-arbeidsflyter uten å skrive noen kode. Du kan importere data fra flere datakilder, som f.eks Amazon Simple Storage Service (Amazon S3), Amazonas Athena, Amazon RedShift, og Snowflake. Du kan nå også bruke Amazon EMR som en datakilde i Data Wrangler for enkelt å klargjøre data for ML.

Å analysere, transformere og forberede store datamengder er et grunnleggende trinn i enhver datavitenskap og ML-arbeidsflyt. Datafagfolk som dataforskere ønsker å utnytte kraften til Apache Spark, Hiveog Presto kjører på Amazon EMR for rask dataforberedelse, men læringskurven er bratt. Kundene våre ønsket muligheten til å koble til Amazon EMR for å kjøre ad hoc SQL-spørringer på Hive eller Presto for å søke etter data i den interne metastore eller eksterne metastore (f.eks. AWS Glue Data Catalog), og klargjøre data innen noen få klikk.

Denne bloggartikkelen vil diskutere hvordan kunder nå kan finne og koble til eksisterende Amazon EMR-klynger ved å bruke en visuell opplevelse i SageMaker Data Wrangler. De kan visuelt inspisere databasen, tabellene, skjemaet og Presto-spørringene for å forberede modellering eller rapportering. De kan deretter raskt profilere data ved hjelp av et visuelt grensesnitt for å vurdere datakvaliteten, identifisere unormaliteter eller manglende eller feilaktige data, og motta informasjon og anbefalinger om hvordan de kan løse disse problemene. I tillegg kan de analysere, rense og konstruere funksjoner ved hjelp av mer enn et dusin ekstra innebygde analyser og 300+ ekstra innebygde transformasjoner støttet av Spark uten å skrive en eneste linje med kode.

Løsningsoversikt 

Datafagfolk kan raskt finne og koble til eksisterende EMR-klynger ved å bruke SageMaker Studio-konfigurasjoner. I tillegg kan datafagfolk avslutte EMR-klynger med bare noen få klikk fra SageMaker Studio bruker forhåndsdefinerte maler og on-demand opprettelse av EMR-klynger. Ved hjelp av disse verktøyene kan kunder hoppe rett inn i SageMaker Studios universelle notatbok og skrive kode i Apache Spark, Hive, Presto eller PySpark for å utføre dataforberedelse i stor skala. På grunn av en bratt læringskurve for å lage Spark-kode for å forberede data, er ikke alle datafagfolk komfortable med denne prosedyren. Med Amazon EMR som datakilde for Amazon SageMaker Data Wrangler kan du nå raskt og enkelt koble til Amazon EMR uten å skrive en eneste kodelinje.

Følgende diagram representerer de forskjellige komponentene som brukes i denne løsningen.

Vi demonstrerer to autentiseringsalternativer som kan brukes til å etablere en tilkobling til EMR-klyngen. For hvert alternativ distribuerer vi en unik stabel med AWS skyformasjon maler.

CloudFormation-malen utfører følgende handlinger når hvert alternativ er valgt:

  • Oppretter et Studio-domene i kun VPC-modus, sammen med en brukerprofil som heter studio-user.
  • Oppretter byggeklosser, inkludert VPC, endepunkter, undernett, sikkerhetsgrupper, EMR-klynge og andre nødvendige ressurser for å kunne kjøre eksemplene.
  • For EMR-klyngen kobler du AWS Glue Data Catalog som metastore for EMR Hive og Presto, oppretter en Hive-tabell i EMR og fyller den med data fra et amerikansk flyplassdatasett.
  • For LDAP CloudFormation-malen oppretter du en Amazon Elastic Compute Cloud (Amazon EC2) forekomst for å være vert for LDAP-serveren for å autentisere Hive- og Presto LDAP-brukeren.

Alternativ 1: Lightweight Access Directory Protocol

For LDAP-autentiseringsmalen CloudFormation leverer vi en Amazon EC2-forekomst med en LDAP-server og konfigurerer EMR-klyngen til å bruke denne serveren for autentisering. Dette er TLS-aktivert.

Alternativ 2: No-Auth

I CloudFormation-malen for no-autentisering bruker vi en standard EMR-klynge uten autentisering aktivert.

Distribuer ressursene med AWS CloudFormation

Fullfør følgende trinn for å distribuere miljøet:

  1. Logg deg på AWS-administrasjonskonsoll som en AWS Identity and Access Management (IAM) bruker, helst en admin-bruker.
  2. Velg Start Stack for å starte CloudFormation-malen for det aktuelle autentiseringsscenarioet. Sørg for at regionen som brukes til å distribuere CloudFormation-stakken ikke har noe eksisterende Studio Domain. Hvis du allerede har et studiodomene i en region, kan du velge en annen region.
    • LDAP-startstabel
      Forbered data fra Amazon EMR for maskinlæring ved hjelp av Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Vertikalt søk. Ai.
    • Ingen Auth Launch Stack
      Forbered data fra Amazon EMR for maskinlæring ved hjelp av Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Vertikalt søk. Ai.
  3. Velg neste.
  4. Til Stabelnavn, skriv inn et navn på bunken (for eksempel dw-emr-blog).
  5. La de andre verdiene være standard.
  6. Velg for å fortsette neste fra stabeldetaljsiden og stabelalternativer. LDAP-stakken bruker følgende legitimasjon:
    • brukernavn: david
    • passord:  welcome123
  7. Merk av i avmerkingsboksen for å bekrefte at AWS CloudFormation kan skape ressurser.
  8. Velg Lag stabel. Vent til statusen til stabelen endres fra CREATE_IN_PROGRESS til CREATE_COMPLETE. Prosessen tar vanligvis 10–15 minutter.

Forbered data fra Amazon EMR for maskinlæring ved hjelp av Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Vertikalt søk. Ai.

Merk: Hvis du vil prøve flere stabler, følg trinnene i delen Rydd opp. Husk at du må slett SageMaker Studio Domain før neste stabel kan lanseres.

Sett opp Amazon EMR som en datakilde i Data Wrangler

I denne delen dekker vi tilkobling til den eksisterende Amazon EMR-klyngen opprettet gjennom CloudFormation-malen som en datakilde i Data Wrangler.

Opprett en ny dataflyt

Gjør følgende for å opprette dataflyten:

  1. Velg på SageMaker-konsollen Amazon SageMaker Studio i navigasjonsruten.
  2. Velg Åpent studio.
  3. Velg i startprogrammet Ny dataflyt. Alternativt på filet rullegardinmenyen, velg Ny og deretter Data Wrangler-flyt.
  4. Det kan ta noen minutter å opprette en ny flyt. Etter at flyten er opprettet, ser du Import datoer side.

Forbered data fra Amazon EMR for maskinlæring ved hjelp av Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Vertikalt søk. Ai.

Legg til Amazon EMR som en datakilde i Data Wrangler

På menyen Legg til datakilde velger du Amazon EMR.

Forbered data fra Amazon EMR for maskinlæring ved hjelp av Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Vertikalt søk. Ai.

Du kan bla gjennom alle EMR-klyngene som din Studio-utførelsesrolle har tillatelser til å se. Du har to alternativer for å koble til en klynge; den ene er gjennom interaktiv brukergrensesnitt, og den andre er først lag en hemmelighet ved å bruke AWS Secrets Manager med JDBC URL, inkludert EMR-klyngeinformasjon, og oppgi den lagrede AWS-hemmelige ARN-en i brukergrensesnittet for å koble til Presto. I denne bloggen følger vi det første alternativet. Velg en av følgende klynger du vil bruke. Klikk på neste, og velg endepunkter.

Forbered data fra Amazon EMR for maskinlæring ved hjelp av Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Vertikalt søk. Ai.

Plukke ut Presto, koble til Amazon EMR, opprett et navn for å identifisere tilkoblingen din, og klikk Neste.

Forbered data fra Amazon EMR for maskinlæring ved hjelp av Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Vertikalt søk. Ai.

Plukke ut Autentisering skriv, enten LDAP eller Ingen autentisering, og klikk Koble.

  • For Lightweight Directory Access Protocol (LDAP), oppgi brukernavn og passord som skal autentiseres.

Forbered data fra Amazon EMR for maskinlæring ved hjelp av Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Vertikalt søk. Ai.

Forbered data fra Amazon EMR for maskinlæring ved hjelp av Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Vertikalt søk. Ai.

  • For ingen autentisering vil du bli koblet til EMR Presto uten å oppgi brukerlegitimasjon i VPC. Gå inn på Data Wranglers SQL explorer-side for EMR.

Forbered data fra Amazon EMR for maskinlæring ved hjelp av Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Vertikalt søk. Ai.

Når du er koblet til, kan du interaktivt se et databasetre og forhåndsvisning av tabeller eller skjema. Du kan også spørre etter, utforske og visualisere data fra EMR. For forhåndsvisning vil du se en grense på 100 poster som standard. For tilpasset spørring kan du gi SQL-setninger i spørringsredigeringsboksen og når du klikker på Kjør knappen, vil spørringen bli utført på EMRs Presto-motor.

Forbered data fra Amazon EMR for maskinlæring ved hjelp av Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Vertikalt søk. Ai.

De Avbryt spørringen knappen lar pågående spørringer kanselleres hvis de tar uvanlig lang tid.

Det siste trinnet er å importere. Når du er klar med de forespurte dataene, har du muligheter for å oppdatere samplingsinnstillingene for datautvalget i henhold til samplingstypen (FirstK, Random eller Stratified) og samplingsstørrelse for import av data til Data Wrangler.

Klikk Import. Forberedelsessiden vil bli lastet, slik at du kan legge til ulike transformasjoner og viktige analyser til datasettet.

Forbered data fra Amazon EMR for maskinlæring ved hjelp av Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Vertikalt søk. Ai.

Naviger til DataFlow fra toppskjermen og legg til flere trinn i flyten etter behov for transformasjoner og analyser. Du kan kjøre en datainnsiktsrapport for å identifisere datakvalitetsproblemer og få anbefalinger for å fikse disse problemene. La oss se på noen eksempler på transformasjoner.

Gå til dataflyten din, og dette er skjermen du skal se. Det viser oss at vi bruker EMR som en datakilde ved å bruke Presto-kontakten.

Forbered data fra Amazon EMR for maskinlæring ved hjelp av Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Vertikalt søk. Ai.

La oss klikke på +-knappen til høyre for Datatyper og velge Legg til transformasjon. Når du gjør det, bør følgende skjerm dukke opp:

Forbered data fra Amazon EMR for maskinlæring ved hjelp av Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Vertikalt søk. Ai.

La oss utforske dataene. Vi ser at den har flere funksjoner som f.eks iata_code, flyplassen, by, stat, land, breddegradog lengdegrad. Vi kan se at hele datasettet er basert i ett land, som er USA, og det mangler verdier i breddegrad og lengdegrad. Manglende data kan forårsake skjevhet i estimeringen av parametere, og det kan redusere representativiteten til prøvene, så vi må utføre noen imputasjon og håndtere manglende verdier i datasettet vårt.

Forbered data fra Amazon EMR for maskinlæring ved hjelp av Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Vertikalt søk. Ai.

La oss klikke på Legg til trinn knappen på navigasjonslinjen til høyre. Å velge Håndtak mangler. Konfigurasjonene kan sees i følgende skjermbilder. Under Forvandle, velg Beregne. Velg kolonnetype som Numerisk og kolonnenavn Latitude og Lengdegrad. Vi vil beregne de manglende verdiene ved å bruke en omtrentlig medianverdi. Forhåndsvis og legg til transformasjonen.

Forbered data fra Amazon EMR for maskinlæring ved hjelp av Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Vertikalt søk. Ai.

Forbered data fra Amazon EMR for maskinlæring ved hjelp av Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Vertikalt søk. Ai.

La oss nå se på et annet eksempel på transformasjon. Når du bygger en maskinlæringsmodell, fjernes kolonner hvis de er overflødige eller ikke hjelper modellen din. Den vanligste måten å fjerne en kolonne på er å slippe den. I vårt datasett, funksjonen land kan droppes siden datasettet er spesifikt for amerikanske flyplassdata. La oss se hvordan vi kan administrere kolonner. La oss klikke på Legg til trinn knappen på navigasjonslinjen til høyre. Å velge Administrer kolonner. Konfigurasjonene kan sees i følgende skjermbilder. Under Transform, plukke ut Slipp kolonne, og under Kolonner å slippe, plukke ut Land.

Forbered data fra Amazon EMR for maskinlæring ved hjelp av Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Vertikalt søk. Ai. Forbered data fra Amazon EMR for maskinlæring ved hjelp av Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Vertikalt søk. Ai.

Du kan fortsette å legge til trinn basert på de forskjellige transformasjonene som kreves for datasettet ditt. La oss gå tilbake til dataflyten vår. Du vil nå se to blokker til som viser transformasjonene vi utførte. I vårt scenario kan du se Beregne og Slipp kolonne.

Forbered data fra Amazon EMR for maskinlæring ved hjelp av Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Vertikalt søk. Ai.

ML-utøvere bruker mye tid på å lage funksjonsteknologikode, bruke den på de første datasettene, trene modeller på de konstruerte datasettene og evaluere modellens nøyaktighet. Gitt den eksperimentelle karakteren til dette arbeidet, vil selv det minste prosjektet føre til flere iterasjoner. Den samme funksjonsteknologikoden kjøres ofte igjen og igjen, og kaster bort tid og dataressurser på å gjenta de samme operasjonene. I store organisasjoner kan dette føre til et enda større tap av produktivitet fordi forskjellige team ofte kjører identiske jobber eller til og med skriver duplikatkode for funksjonsteknologi fordi de ikke har kunnskap om tidligere arbeid. For å unngå reprosessering av funksjoner, vil vi nå eksportere våre transformerte funksjoner til Amazon Feature Store. La oss klikke på + knappen til høyre for Slipp kolonne. Velg Eksport til Og velg Sagemaker Feature Store (via Jupyter bærbar PC).

Forbered data fra Amazon EMR for maskinlæring ved hjelp av Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Vertikalt søk. Ai.

Du kan enkelt eksportere dine genererte funksjoner til SageMaker Feature Store ved å velge den som destinasjon. Du kan lagre funksjonene i en eksisterende funksjonsgruppe eller opprette en ny.

Forbered data fra Amazon EMR for maskinlæring ved hjelp av Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Vertikalt søk. Ai.

Forbered data fra Amazon EMR for maskinlæring ved hjelp av Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Vertikalt søk. Ai.

Vi har nå laget funksjoner med Data Wrangler og enkelt lagret disse funksjonene i Feature Store. Vi viste et eksempel på arbeidsflyt for funksjonsutvikling i Data Wrangler-grensesnittet. Deretter lagret vi disse funksjonene i Feature Store direkte fra Data Wrangler ved å opprette en ny funksjonsgruppe. Til slutt kjørte vi en behandlingsjobb for å få inn disse funksjonene i Feature Store. Data Wrangler og Feature Store hjalp oss sammen med å bygge automatiske og repeterbare prosesser for å strømlinjeforme dataforberedelsesoppgavene våre med et minimum av koding. Data Wrangler gir oss også fleksibilitet til å automatisere den samme dataforberedelsesflyten ved å bruke planlagte jobber. Vi kan også automatisere opplæring eller funksjonsteknikk med SageMaker Pipelines (via Jupyter Notebook) og distribuere til Inference-endepunktet med SageMaker inference pipeline (via Jupyter Notebook).

Forbered data fra Amazon EMR for maskinlæring ved hjelp av Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Vertikalt søk. Ai.

Rydd opp

Hvis arbeidet ditt med Data Wrangler er fullført, velg stabelen som er opprettet fra CloudFormation-siden og slett den for å unngå å pådra deg ekstra gebyrer.

konklusjonen

I dette innlegget gikk vi over hvordan man setter opp Amazon EMR som en datakilde i Data Wrangler, hvordan man transformerer og analyserer et datasett, og hvordan man eksporterer resultatene til en dataflyt for bruk i en Jupyter-notisbok. Etter å ha visualisert datasettet vårt ved hjelp av Data Wranglers innebygde analytiske funksjoner, forbedret vi dataflyten vår ytterligere. Det faktum at vi opprettet en dataforberedelsespipeline uten å skrive en eneste kodelinje er betydelig.

For å komme i gang med Data Wrangler, se Forbered ML-data med Amazon SageMaker Data Wrangler, og se den nyeste informasjonen om Data Wrangler produktside.


Om forfatterne

Forbered data fra Amazon EMR for maskinlæring ved hjelp av Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Vertikalt søk. Ai. Ajjay Govindaram er Senior Solutions Architect hos AWS. Han jobber med strategiske kunder som bruker AI/ML for å løse komplekse forretningsproblemer. Hans erfaring ligger i å gi teknisk veiledning samt designassistanse for beskjedne til storskala AI/ML-applikasjoner. Kunnskapen hans spenner fra applikasjonsarkitektur til big data, analyser og maskinlæring. Han liker å lytte til musikk mens han hviler, opplever utendørs og tilbringe tid med sine kjære.

Forbered data fra Amazon EMR for maskinlæring ved hjelp av Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Vertikalt søk. Ai.Isha Dua er en senior løsningsarkitekt basert i San Francisco Bay Area. Hun hjelper AWS-bedriftskunder med å vokse ved å forstå deres mål og utfordringer, og veileder dem om hvordan de kan bygge applikasjonene sine på en skybasert måte samtidig som de sørger for at de er robuste og skalerbare. Hun brenner for maskinlæringsteknologier og miljømessig bærekraft.

Forbered data fra Amazon EMR for maskinlæring ved hjelp av Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence. Vertikalt søk. Ai.Rui Jiang er en programvareutviklingsingeniør ved AWS med base i New York City-området. Hun er medlem av SageMaker Data Wrangler-teamet som hjelper til med å utvikle tekniske løsninger for AWS-bedriftskunder for å oppnå deres forretningsbehov. Utenom jobben liker hun å utforske ny mat, fitness, utendørsaktiviteter og reise.

Tidstempel:

Mer fra AWS maskinlæring