Avhengig av kvaliteten og kompleksiteten til data, bruker dataforskere mellom 45–80 % av tiden sin på dataforberedelsesoppgaver. Dette innebærer at dataforberedelse og -rensing tar verdifull tid unna ekte datavitenskapelig arbeid. Etter at en maskinlæringsmodell (ML) er trent med forberedte data og klargjort for distribusjon, må dataforskere ofte omskrive datatransformasjonene som brukes til å forberede data for ML-slutning. Dette kan strekke tiden det tar å distribuere en nyttig modell som kan konkludere og score dataene fra dens rå form og form.
I del 1 av denne serien demonstrerte vi hvordan Data Wrangler muliggjør en enhetlig dataforberedelse og modelltrening erfaring med Amazon SageMaker Autopilot med bare noen få klikk. I denne andre og siste delen av denne serien fokuserer vi på en funksjon som inkluderer og gjenbruker Amazon SageMaker Data Wrangler transformasjoner, for eksempel manglende verdi-imputere, ordinære eller one-hot-kodere og mer, sammen med Autopilot-modellene for ML-inferens. Denne funksjonen muliggjør automatisk forhåndsbehandling av rådataene med gjenbruk av Data Wrangler-funksjonstransformasjoner på slutningstidspunktet, noe som ytterligere reduserer tiden som kreves for å distribuere en opplært modell til produksjon.
Løsningsoversikt
Data Wrangler reduserer tiden for å samle og forberede data for ML fra uker til minutter, og Autopilot bygger, trener og justerer automatisk de beste ML-modellene basert på dataene dine. Med autopilot beholder du fortsatt full kontroll og synlighet over data og modell. Begge tjenestene er spesialbygd for å gjøre ML-utøvere mer produktive og akselerere tiden til verdi.
Følgende diagram illustrerer løsningsarkitekturen.
Forutsetninger
Fordi dette innlegget er det andre i en todelt serie, sørg for at du har lest og implementert Del 1 før du fortsetter.
Eksporter og tren modellen
I del 1, etter dataforberedelse for ML, diskuterte vi hvordan du kan bruke den integrerte erfaringen i Data Wrangler til å analysere datasett og enkelt bygge høykvalitets ML-modeller i Autopilot.
Denne gangen bruker vi Autopilot-integrasjonen igjen for å trene en modell mot det samme treningsdatasettet, men i stedet for å utføre bulk-inferens, utfører vi sanntidsslutning mot en Amazon SageMaker sluttpunkt som opprettes automatisk for oss.
I tillegg til bekvemmeligheten som tilbys av automatisk endepunktdistribusjon, demonstrerer vi hvordan du også kan distribuere med alle Data Wrangler-funksjonstransformasjonene som en SageMaker serie-inferenspipeline. Dette muliggjør automatisk forhåndsbehandling av rådataene med gjenbruk av Data Wrangler-funksjonstransformasjoner på slutningstidspunktet.
Vær oppmerksom på at denne funksjonen for øyeblikket bare støttes for Data Wrangler-flyter som ikke bruker transformasjoner med join, group by, concatenate og tidsserier.
Vi kan bruke den nye Data Wrangler-integrasjonen med Autopilot til å trene en modell direkte fra Data Wrangler-dataflyt-UI.
- Velg plusstegnet ved siden av Skala verdier node, og velg Togmodell.
- Til Amazon S3 plassering, spesifiser Amazon enkel lagringstjeneste (Amazon S3) sted der SageMaker eksporterer dataene dine.
Hvis presentert med en rotbøttebane som standard, oppretter Data Wrangler en unik eksportunderkatalog under den – du trenger ikke å endre denne standard rotbanen med mindre du vil. Autopilot bruker denne plasseringen til å trene en modell automatisk, og sparer deg tid fra å måtte definere utgangsplasseringen for Data Wrangler-flyten og deretter definere inngangsplasseringen til autopilotens treningsdata. Dette gir en mer sømløs opplevelse. - Velg Eksporter og trener for å eksportere de transformerte dataene til Amazon S3.
Når eksporten er vellykket, blir du omdirigert til Lag et autopiloteksperiment side, med Inndata S3-posisjonen er allerede fylt ut for deg (den ble fylt ut fra resultatene fra forrige side). - Til Eksperimentens navn, skriv inn et navn (eller behold standardnavnet).
- Til Target, velg Utfallet som kolonnen du vil forutsi.
- Velg Neste: Treningsmetode.
Som beskrevet i innlegget Amazon SageMaker Autopilot er opptil åtte ganger raskere med ny ensembletreningsmodus drevet av AutoGluon, kan du enten la autopilot velge treningsmodus automatisk basert på datasettstørrelsen, eller velge treningsmodus manuelt for enten ensembling eller hyperparameteroptimalisering (HPO).
Detaljene for hvert alternativ er som følger:
- Auto – Autopilot velger automatisk enten ensembling eller HPO-modus basert på datasettstørrelsen din. Hvis datasettet ditt er større enn 100 MB, velger Autopilot HPO; ellers velger den ensembling.
- Ensemblering – Autopiloten bruker AutoGluon ensembling teknikk for å trene flere basismodeller og kombinerer deres spådommer ved å bruke modellstabling til en optimal prediktiv modell.
- Optimalisering av hyperparameter – Autopilot finner den beste versjonen av en modell ved å justere hyperparametere ved å bruke den Bayesianske optimaliseringsteknikken og kjøre treningsjobber på datasettet ditt. HPO velger algoritmene som er mest relevante for datasettet ditt og velger det beste utvalget av hyperparametre for å justere modellene. For vårt eksempel lar vi standardvalget være Auto.
- Velg Neste: Implementering og avanserte innstillinger å fortsette.
- På Implementering og avanserte innstillinger siden, velg et distribusjonsalternativ.
Det er viktig å forstå distribusjonsalternativene mer detaljert; hva vi velger vil påvirke hvorvidt transformasjonene vi gjorde tidligere i Data Wrangler vil bli inkludert i slutningspipelinen:- Autodistribuer beste modell med transformasjoner fra Data Wrangler – Med dette distribusjonsalternativet, når du klargjør data i Data Wrangler og trener en modell ved å påkalle autopilot, distribueres den trente modellen sammen med alle Data Wrangler-funksjonen som en SageMaker seriell inferensrørledning. Dette muliggjør automatisk forhåndsbehandling av rådataene med gjenbruk av Data Wrangler-funksjonstransformasjoner på slutningstidspunktet. Merk at slutningspunktet forventer at formatet på dataene dine er i samme format som når de importeres til Data Wrangler-flyten.
- Distribuer den beste modellen automatisk uten transformasjoner fra Data Wrangler – Dette alternativet distribuerer et sanntidsendepunkt som ikke bruker Data Wrangler-transformasjoner. I dette tilfellet må du bruke transformasjonene som er definert i Data Wrangler-flyten din på dataene dine før konklusjon.
- Ikke bruk den beste modellen automatisk – Du bør bruke dette alternativet når du ikke vil opprette et slutningsendepunkt i det hele tatt. Det er nyttig hvis du vil generere en beste modell for senere bruk, for eksempel lokalt drevet bulk-slutning. (Dette er distribusjonsalternativet vi valgte i del 1 av serien.) Legg merke til at når du velger dette alternativet, inkluderer modellen som er opprettet (fra Autopilotens beste kandidat via SageMaker SDK) Data Wrangler-funksjonen transformeres som en SageMaker serie-inferenspipeline.
For dette innlegget bruker vi Autodistribuer beste modell med transformasjoner fra Data Wrangler alternativet.
- Til Implementeringsalternativ, plukke ut Autodistribuer beste modell med transformasjoner fra Data Wrangler.
- La de andre innstillingene være standard.
- Velg Neste: Se gjennom og opprett å fortsette.
På Gjennomgå og opprett side, ser vi et sammendrag av innstillingene som er valgt for autopiloteksperimentet vårt. - Velg Lag eksperiment for å starte modellskapingsprosessen.
Du blir omdirigert til Autopilot-jobbbeskrivelsessiden. Modellene vises på Modeller fanen etter hvert som de genereres. For å bekrefte at prosessen er fullført, gå til Jobbprofil fanen og se etter en Completed
verdi for status feltet.
Du kan gå tilbake til denne Autopilot-jobbbeskrivelsessiden når som helst fra kl Amazon SageMaker Studio:
- Velg Eksperimenter og forsøk på SageMaker-ressurser nedtrekksmenyen.
- Velg navnet på autopilotjobben du opprettet.
- Velg (høyreklikk) eksperimentet og velg Beskriv AutoML-jobb.
Se opplæringen og distribusjonen
Når autopiloten fullfører eksperimentet, kan vi se treningsresultatene og utforske den beste modellen fra autopilotens jobbbeskrivelsesside.
Velg (høyreklikk) modellen som er merket Beste modellen, og velg Åpne i modelldetaljer.
De Ytelse fanen viser flere modellmålingstester, inkludert en forvirringsmatrise, området under presisjons-/gjenkallingskurven (AUCPR) og området under mottakerdriftskarakteristikken (ROC). Disse illustrerer den generelle valideringsytelsen til modellen, men de forteller oss ikke om modellen vil generalisere godt. Vi må fortsatt kjøre evalueringer på usynlige testdata for å se hvor nøyaktig modellen gir spådommer (for dette eksempelet forutsier vi om en person vil ha diabetes).
Utfør slutning mot sanntidsendepunktet
Lag en ny SageMaker-notisbok for å utføre sanntidsslutning for å vurdere modellytelsen. Skriv inn følgende kode i en notatbok for å kjøre sanntidsslutning for validering:
Etter at du har konfigurert koden til å kjøre i den bærbare datamaskinen, må du konfigurere to variabler:
endpoint_name
payload_str
Konfigurer endepunktnavn
endpoint_name
representerer navnet på sanntidsslutningsendepunktet som distribusjonen automatisk opprettet for oss. Før vi setter den, må vi finne navnet.
- Velg endepunkter på SageMaker-ressurser nedtrekksmenyen.
- Finn navnet på endepunktet som har navnet på autopilotjobben du opprettet med en tilfeldig streng lagt til.
- Velg (høyreklikk) eksperimentet, og velg Beskriv endepunkt.
De Endepunktdetaljer siden vises. - Marker hele endepunktnavnet, og trykk Ctrl + C for å kopiere det til utklippstavlen.
- Skriv inn denne verdien (sørg for at den er angitt) for
endpoint_name
i slutningsnotatboken.
Konfigurer nyttelast_str
Den bærbare datamaskinen leveres med en standard nyttelaststreng payload_str
som du kan bruke til å teste endepunktet ditt, men eksperimenter gjerne med forskjellige verdier, for eksempel de fra testdatasettet ditt.
For å hente verdier fra testdatasettet, følg instruksjonene i Del 1 for å eksportere testdatasettet til Amazon S3. Så på Amazon S3-konsollen kan du laste den ned og velge radene for å bruke filen fra Amazon S3.
Hver rad i testdatasettet ditt har ni kolonner, der den siste kolonnen er outcome
verdi. For denne notatbokkoden, sørg for at du bare bruker en enkelt datarad (aldri en CSV-overskrift) for payload_str
. Pass også på at du bare sender en payload_str
med åtte kolonner, hvor du har fjernet utfallsverdien.
For eksempel, hvis testdatasettet dine ser ut som følgende kode, og vi ønsker å utføre sanntidsslutning av den første raden:
Vi setter payload_str
til 10,115,0,0,0,35.3,0.134,29
. Legg merke til hvordan vi utelot outcome
Verdien av 0
på slutten.
Hvis målverdien til datasettet tilfeldigvis ikke er den første eller siste verdien, fjerner du verdien med kommastrukturen intakt. Anta for eksempel at vi forutsier bar, og datasettet vårt ser ut som følgende kode:
I dette tilfellet setter vi payload_str
til 85,,20
.
Når den bærbare datamaskinen kjøres med riktig konfigurert payload_str
og endpoint_name
verdier, får du et CSV-svar tilbake i formatet outcome
(0 eller 1), confidence
(0-1).
Rydder opp
For å være sikker på at du ikke pådrar deg opplæringsrelaterte kostnader etter å ha fullført denne opplæringen, sørg for å slå av Data Wrangler-appen (https://docs.aws.amazon.com/sagemaker/latest/dg/data-wrangler-shut-down.html), samt alle notatbokforekomster som brukes til å utføre slutningsoppgaver. Sluttpunktene som er opprettet via Auto Pilot-utplasseringen, bør slettes for å forhindre ekstra kostnader også.
konklusjonen
I dette innlegget demonstrerte vi hvordan du integrerer databehandlingen din, med konstruksjon og modellbygging ved hjelp av Data Wrangler og Autopilot. Med utgangspunkt i del 1 i serien, fremhevet vi hvordan du enkelt kan trene, stille inn og distribuere en modell til et endepunkt i sanntid med autopilot direkte fra Data Wrangler-brukergrensesnittet. I tillegg til bekvemmeligheten som tilbys av automatisk endepunktdistribusjon, demonstrerte vi hvordan du også kan distribuere med alle Data Wrangler-funksjonstransformasjonene som en SageMaker serie-inferenspipeline, som sørger for automatisk forhåndsbehandling av rådataene, med gjenbruk av Data Wrangler-funksjonstransformasjoner på tidspunktet for slutningen.
Lavkode- og AutoML-løsninger som Data Wrangler og Autopilot fjerner behovet for å ha dyp kodingskunnskap for å bygge robuste ML-modeller. Kom i gang med Data Wrangler i dag for å oppleve hvor enkelt det er å bygge ML-modeller med autopilot.
Om forfatterne
Geremy Cohen er løsningsarkitekt med AWS hvor han hjelper kunder med å bygge banebrytende, skybaserte løsninger. På fritiden liker han korte turer på stranden, utforske buktområdet med familien, fikse ting rundt huset, bryte ting rundt huset og grille.
Pradeep Reddy er senior produktsjef i SageMaker Low/No Code ML-teamet, som inkluderer SageMaker Autopilot, SageMaker Automatic Model Tuner. Utenom jobben liker Pradeep å lese, løpe og nørde med datamaskiner i palmestørrelse som raspberry pi og annen hjemmeautomatiseringsteknologi.
Dr. John He er en senior programvareutviklingsingeniør med Amazon AI, hvor han fokuserer på maskinlæring og distribuert databehandling. Han har en doktorgrad fra CMU.
- AI
- ai kunst
- ai art generator
- du har en robot
- Amazon SageMaker
- Amazon SageMaker Autopilot
- Amazon SageMaker Data Wrangler
- kunstig intelligens
- sertifisering av kunstig intelligens
- kunstig intelligens i bankvirksomhet
- kunstig intelligens robot
- kunstig intelligens roboter
- programvare for kunstig intelligens
- AWS maskinlæring
- blockchain
- blockchain konferanse ai
- coingenius
- samtale kunstig intelligens
- kryptokonferanse ai
- dall sin
- dyp læring
- google det
- maskinlæring
- plato
- plato ai
- Platon Data Intelligence
- Platon spill
- PlatonData
- platogaming
- skala ai
- syntaks
- zephyrnet