Datele transformă fiecare domeniu și fiecare afacere. Cu toate acestea, având în vedere că datele cresc mai rapid decât pot urmări majoritatea companiilor, colectarea datelor și obținerea valorii acestora este un lucru dificil de făcut. A strategie modernă de date vă poate ajuta să creați rezultate mai bune în afaceri cu date. AWS oferă cel mai complet set de servicii pentru călătorie de date de la capăt la capăt pentru a vă ajuta deblocați valoarea din datele dvs și transformă-l în perspicacitate.
Oamenii de știință de date își pot petrece până la 80% din timp pregătind date pentru proiecte de învățare automată (ML). Acest proces de pregătire este în mare măsură nediferențiat și plictisitor și poate implica mai multe API-uri de programare și biblioteci personalizate. Amazon SageMaker Data Wrangler ajută oamenii de știință de date și inginerii de date să simplifice și să accelereze pregătirea datelor tabelare și serii de timp și ingineria caracteristicilor printr-o interfață vizuală. Puteți importa date din mai multe surse de date, cum ar fi Serviciul Amazon de stocare simplă (Amazon S3), Amazon Atena, Amazon RedShift, sau chiar soluții terțe precum Fulg de nea or DataBricksși procesați datele dvs. cu peste 300 de transformări de date încorporate și o bibliotecă de fragmente de cod, astfel încât să puteți normaliza, transforma și combina rapid funcții fără a scrie niciun cod. De asemenea, puteți aduce transformările personalizate în PySpark, SQL sau Pandas.
Această postare demonstrează cum vă puteți programa lucrările de pregătire a datelor să ruleze automat. De asemenea, explorăm noua capacitate Data Wrangler a seturilor de date parametrizate, care vă permite să specificați fișierele care urmează să fie incluse într-un flux de date prin intermediul URI-urilor parametrizate.
Prezentare generală a soluțiilor
Data Wrangler acceptă acum importarea datelor folosind un URI parametrizat. Acest lucru permite o flexibilitate suplimentară, deoarece acum puteți importa toate seturile de date care se potrivesc cu parametrii specificați, care pot fi de tip String, Number, Datetime și Pattern, în URI. În plus, acum puteți declanșa joburile dvs. de transformare Data Wrangler într-un program.
În această postare, creăm un flux de probă cu setul de date Titanic pentru a arăta cum puteți începe să experimentați cu aceste două noi caracteristici ale Data Wrangler. Pentru a descărca setul de date, consultați Titanic – Învățare automată din dezastru.
Cerințe preliminare
Pentru a obține toate caracteristicile descrise în această postare, trebuie să rulați cea mai recentă versiune de kernel a Data Wrangler. Pentru mai multe informații, consultați Actualizați Data Wrangler. În plus, trebuie să alergi Amazon SageMaker Studio JupyterLab 3. Pentru a vizualiza versiunea curentă și a o actualiza, consultați Versiune JupyterLab.
Structura fișierului
Pentru această demonstrație, urmăm o structură simplă de fișiere pe care trebuie să o replicați pentru a reproduce pașii descriși în această postare.
- În Studio, creați un nou caiet.
- Rulați următorul fragment de cod pentru a crea structura de foldere pe care o folosim (asigurați-vă că vă aflați în folderul dorit din arborele de fișiere):
- copiaţi
train.csv
șitest.csv
fișierele din setul de date original Titanic în folderetitanic_dataset/train
șititanic_dataset/test
, respectiv. - Rulați următorul fragment de cod pentru a popula folderele cu fișierele necesare:
Am împărțit train.csv
fișierul setului de date Titanic în nouă fișiere diferite, numite part_x
, unde x este numărul piesei. Partea 0 are primele 100 de înregistrări, partea 1 următoarele 100 și așa mai departe până la partea 8. Fiecare folder nod al arborelui de fișiere conține o copie a celor nouă părți ale datelor de antrenament, cu excepția train
și test
foldere, care conțin train.csv
și test.csv
.
Seturi de date parametrizate
Utilizatorii Data Wrangler pot specifica acum parametrii pentru seturile de date importate din Amazon S3. Parametrii setului de date sunt specificați la URI-ul resurselor, iar valoarea acestuia poate fi modificată dinamic, permițând mai multă flexibilitate în selectarea fișierelor pe care dorim să le importam. Parametrii pot fi de patru tipuri de date:
- Număr – Poate lua valoarea oricărui număr întreg
- Şir – Poate lua valoarea oricărui șir de text
- Model – Poate lua valoarea oricărei expresii regulate
- datetime – Poate lua valoarea oricăruia dintre formatele de dată/ora acceptate
În această secțiune, oferim o prezentare a acestei noi funcții. Acesta este disponibil numai după ce importați setul de date în fluxul curent și numai pentru seturile de date importate din Amazon S3.
- Din fluxul de date, alegeți semnul plus (+) de lângă pasul de import și alegeți Editați setul de date.
- Metoda preferată (și cea mai ușoară) de a crea noi parametri este prin evidențierea unei secțiuni din URI-ul dvs. și alegerea Creați un parametru personalizat din meniul derulant. Trebuie să specificați patru lucruri pentru fiecare parametru pe care doriți să îl creați:
- Nume si Prenume
- Tip
- Valoare implicită
- Descriere
Aici am creat un parametru de tip String numitfilename_param
cu o valoare implicită detrain.csv
. Acum puteți vedea numele parametrului cuprins între paranteze duble, înlocuind porțiunea din URI pe care am evidențiat-o anterior. Deoarece valoarea definită pentru acest parametru a fosttrain.csv
, acum vedem fișierultrain.csv
listate pe tabelul de import. - Când încercăm să creăm un loc de muncă de transformare, pe Configurați job pas, acum vedem a parametrii secțiunea, unde putem vedea o listă cu toți parametrii definiți.
- Alegerea parametrului ne oferă opțiunea de a modifica valoarea parametrului, în acest caz, modificând setul de date de intrare pentru a fi transformat în funcție de fluxul definit.
Presupunând că schimbăm valoarea luifilename_param
dintrain.csv
lapart_0.csv
, munca de transformare durează acumpart_0.csv
(cu condiția ca un fișier cu numelepart_0.csv
există în același folder) ca și noile date de intrare. - În plus, dacă încercați să exportați fluxul către o destinație Amazon S3 (prin intermediul unui notebook Jupyter), acum vedeți o nouă celulă care conține parametrii pe care i-ați definit.
Rețineți că parametrul își ia valoarea implicită, dar îl puteți modifica prin înlocuirea valorii sale înparameter_overrides
dicționar (lăsând neschimbate cheile dicționarului).
În plus, puteți crea noi parametri din parametrii UI. - Deschideți-l alegând pictograma parametri ({{}}) situat lângă Go opțiune; ambele sunt situate lângă valoarea căii URI.
Se deschide un tabel cu toți parametrii care există în prezent în fișierul dvs. de flux (filename_param
in acest punct). - Puteți crea parametri noi pentru fluxul dvs. alegând Creați parametru.
Se deschide o fereastră pop-up care vă permite să creați un nou parametru personalizat. - Aici, am creat un nou
example_parameter
ca tip de număr cu o valoare implicită de 0. Acest parametru nou creat este acum listat în parametrii masa. Trecând cu mouse-ul peste parametru, se afișează opțiunile Editati, Șterge, și Insera. - Din interiorul parametrii UI, puteți insera unul dintre parametrii dvs. în URI selectând parametrul dorit și alegând Insera.
Acest lucru adaugă parametrul la sfârșitul URI-ului dvs. Trebuie să-l mutați în secțiunea dorită din URI. - Modificați valoarea implicită a parametrului, aplicați modificarea (din modal), alegeți Goși alegeți pictograma de reîmprospătare pentru a actualiza lista de previzualizare folosind setul de date selectat pe baza valorii parametrului nou definit.Să explorăm acum alte tipuri de parametri. Să presupunem că acum avem un set de date împărțit în mai multe părți, în care fiecare fișier are un număr de parte.
- Dacă dorim să schimbăm în mod dinamic numărul fișierului, putem defini un parametru Number așa cum se arată în următoarea captură de ecran.Rețineți că fișierul selectat este cel care se potrivește cu numărul specificat în parametru.
Acum haideți să demonstrăm cum să folosiți un parametru Pattern. Să presupunem că vrem să importam toatepart_1.csv
fișierele din toate folderele de subtitanic-dataset/
pliant. Parametrii modelului pot lua orice expresie regulată validă; există câteva modele regex prezentate ca exemple. - Creați un parametru Pattern numit
any_pattern
pentru a se potrivi cu orice folder sau fișier subtitanic-dataset/
folder cu valoarea implicită.*
.Rețineți că wildcardul nu este un singur * (asterisc), ci are și un punct. - Evidențiați
titanic-dataset/
parte a căii și creați un parametru personalizat. De data aceasta alegem Model tip.Acest model selectează toate fișierele numitepart-1.csv
din oricare dintre folderele de subtitanic-dataset/
.
Un parametru poate fi folosit de mai multe ori într-o cale. În exemplul următor, folosim parametrul nostru nou creatany_pattern
de două ori în URI-ul nostru pentru a se potrivi cu oricare dintre fișierele parte din oricare dintre folderele de subtitanic-dataset/
.
În cele din urmă, să creăm un parametru Datetime. Parametrii datetime sunt utili atunci când avem de-a face cu căi care sunt partiționate după dată și oră, cum ar fi cele generate de Firehose Amazon Kinesis Data (A se vedea Partiționare dinamică în Kinesis Data Firehose). Pentru această demonstrație, folosim datele din folderul datetime-data. - Selectați porțiunea căii dvs. care este o dată/ora și creați un parametru personalizat. Alege datetime tip de parametru.
Când alegeți tipul de date Datetime, trebuie să completați mai multe detalii. - În primul rând, trebuie să furnizați un format de dată. Puteți alege oricare dintre formatele de dată/oră predefinite sau puteți crea unul personalizat.
Pentru formatele de dată/oră predefinite, legenda oferă un exemplu de dată care se potrivește cu formatul selectat. Pentru această demonstrație, alegem formatul aaaa/LL/zz. - Apoi, specificați un fus orar pentru valorile date/ora.
De exemplu, data curentă poate fi 1 ianuarie 2022, într-un singur fus orar, dar poate fi 2 ianuarie 2022, într-un alt fus orar. - În cele din urmă, puteți selecta intervalul de timp, care vă permite să selectați intervalul de fișiere pe care doriți să le includeți în fluxul de date.
Puteți specifica intervalul de timp în ore, zile, săptămâni, luni sau ani. Pentru acest exemplu, dorim să obținem toate fișierele din ultimul an. - Furnizați o descriere a parametrului și alegeți Crea.
Dacă utilizați mai multe seturi de date cu fusuri orare diferite, ora nu este convertită automat; trebuie să preprocesați fiecare fișier sau sursă pentru a-l converti într-un singur fus orar.Fișierele selectate sunt toate fișierele din folderele corespunzătoare datelor de anul trecut. - Acum, dacă creăm un job de transformare a datelor, putem vedea o listă cu toți parametrii definiți și le putem suprascrie valorile implicite, astfel încât joburile noastre de transformare să aleagă fișierele specificate.
Programați lucrări de procesare
Acum puteți programa lucrări de procesare pentru a automatiza rularea lucrărilor de transformare a datelor și exportul datelor dvs. transformate fie în Amazon S3, fie Magazinul de caracteristici Amazon SageMaker. Puteți programa lucrările cu timpul și periodicitatea care se potrivesc nevoilor dumneavoastră.
Utilizarea lucrărilor de procesare programată Amazon EventBridge norme pentru a programa rularea jobului. Prin urmare, ca o condiție prealabilă, trebuie să vă asigurați că Gestionarea identității și accesului AWS (IAM) utilizat de Data Wrangler, și anume Amazon SageMaker rol de execuție al instanței Studio, are permisiuni pentru a crea reguli EventBridge.
Configurați IAM
Continuați cu următoarele actualizări privind rolul de execuție IAM SageMaker corespunzător instanței Studio în care rulează fluxul Data Wrangler:
- Atașați AmazonEventBridgeFullAccess politică gestionată.
- Atașați o politică pentru a acorda permisiunea de a crea o lucrare de procesare:
- Acordați permisiunea EventBridge de a-și asuma rolul adăugând următoarea politică de încredere:
Ca alternativă, dacă utilizați un rol diferit pentru a rula jobul de procesare, aplicați politicile prezentate în pașii 2 și 3 pentru acel rol. Pentru detalii despre configurația IAM, consultați Creați un program pentru a procesa automat date noi.
Creați un program
Pentru a crea un program, deschideți fluxul în editorul de flux Data Wrangler.
- Pe Flux de date fila, alegeți Creați loc de muncă.
- Configurați câmpurile necesare și alegeți Apoi, 2. Configurați job.
- Extinde Programe asociate.
- Alege Creați un nou program.
Creați un nou program se deschide dialogul, unde definiți detaliile programului de lucru de procesare.
Dialogul oferă o mare flexibilitate pentru a vă ajuta să definiți programul. Puteți avea, de exemplu, jobul de procesare să ruleze la o anumită oră sau la fiecare X ore, în anumite zile ale săptămânii.
Periodicitatea poate fi granulară până la nivelul minutelor. - Definiți numele programului și periodicitatea, apoi alegeți Crea pentru a salva programul.
- Aveți opțiunea de a începe jobul de procesare imediat împreună cu programarea, care se ocupă de rulările viitoare, sau lăsați jobul să ruleze numai conform programului.
- De asemenea, puteți defini un program suplimentar pentru aceeași lucrare de procesare.
- Pentru a finaliza programul pentru lucrarea de procesare, alegeți Crea.
Veți vedea un mesaj „Lucrări programate cu succes”. În plus, dacă ați ales să lăsați jobul să ruleze numai conform programului, veți vedea un link către regula EventBridge pe care tocmai ați creat-o.
Dacă alegeți linkul de programare, se deschide o filă nouă în browser, care arată regula EventBridge. Pe această pagină, puteți face modificări suplimentare regulii și puteți urmări istoricul invocării acesteia. Pentru a opri executarea sarcinii de procesare programată, ștergeți regula evenimentului care conține numele programării.
Regula EventBridge arată o conductă SageMaker ca țintă, care este declanșată conform programului definit și jobul de procesare invocat ca parte a conductei.
Pentru a urmări rulările conductei SageMaker, puteți reveni la Studio, alegeți Resurse SageMaker pictograma, alegeți Conducteși alegeți numele conductei pe care doriți să-l urmăriți. Acum puteți vedea un tabel cu toate rulările actuale și trecute și starea conductei respective.
Puteți vedea mai multe detalii făcând dublu clic pe o anumită intrare.
A curăța
Când nu utilizați Data Wrangler, este recomandat să închideți instanța pe care rulează pentru a evita costurile suplimentare.
Pentru a evita pierderea muncii, salvați fluxul de date înainte de a închide Data Wrangler.
- Pentru a salva fluxul de date în Studio, alegeți Fișier, Apoi alegeți Salvați fluxul de date Wrangler. Data Wrangler salvează automat fluxul de date la fiecare 60 de secunde.
- Pentru a închide instanța Data Wrangler, în Studio, alegeți Rularea instanțelor și a nucleelor.
- În RULEAȚI APLICAȚII, alegeți pictograma de închidere de lângă
sagemaker-data-wrangler-1.0
app. - Alege Închideți totul a confirma.
Data Wrangler rulează pe o instanță ml.m5.4xlarge. Această instanță dispare din INSTANȚE DE RELARE când închideți aplicația Data Wrangler.
După ce închideți aplicația Data Wrangler, aceasta trebuie să repornească data viitoare când deschideți un fișier de flux Data Wrangler. Acest lucru poate dura câteva minute.
Concluzie
În această postare, am demonstrat cum puteți utiliza parametrii pentru a vă importa seturile de date folosind fluxurile Data Wrangler și pentru a crea joburi de transformare a datelor pe acestea. Seturile de date parametrizate permit mai multă flexibilitate cu privire la seturile de date pe care le utilizați și vă permit să vă reutilizați fluxurile. De asemenea, am demonstrat cum puteți configura joburi programate pentru a automatiza transformările și exporturile de date către Amazon S3 sau Feature Store, la momentul și periodicitatea care se potrivesc nevoilor dvs., direct din interfața cu utilizatorul Data Wrangler.
Pentru a afla mai multe despre utilizarea fluxurilor de date cu Data Wrangler, consultați Creați și utilizați un flux de date Wrangler și Prețuri Amazon SageMaker. Pentru a începe cu Data Wrangler, consultați Pregătiți datele ML cu Amazon SageMaker Data Wrangler.
Despre autori
David Laredo este arhitect de prototipare pentru echipa de prototipare și inginerie în cloud de la Amazon Web Services, unde a contribuit la dezvoltarea mai multor prototipuri de învățare automată pentru clienții AWS. El a lucrat în învățarea automată în ultimii 6 ani, antrenând și ajustand modele ML și implementând conducte end-to-end pentru a produce modelele respective. Domeniile sale de interes sunt NLP, aplicațiile ML și ML end-to-end.
Givanildo Alves este arhitect de prototipare cu echipa de prototipare și inginerie în cloud de la Amazon Web Services, ajutând clienții să inoveze și să accelereze, arătând arta posibilului pe AWS, având deja implementat mai multe prototipuri în jurul inteligenței artificiale. Are o carieră lungă în inginerie software și a lucrat anterior ca inginer de dezvoltare software la Amazon.com.br.
Adrian Fuentes este manager de program cu echipa de prototipare și inginerie în cloud de la Amazon Web Services, inovând pentru clienți în învățarea automată, IoT și blockchain. Are peste 15 ani de experiență în gestionarea și implementarea proiectelor și 1 an de mandat pe AWS.
- AI
- ai art
- ai art generator
- ai robot
- Învățare automată Amazon
- Amazon SageMaker Data Wrangler
- anunturi
- inteligență artificială
- certificare de inteligență artificială
- inteligența artificială în domeniul bancar
- robot cu inteligență artificială
- roboți cu inteligență artificială
- software de inteligență artificială
- Învățare automată AWS
- blockchain
- conferință blockchain ai
- coingenius
- inteligența artificială conversațională
- criptoconferință ai
- dall-e
- de prelucrare a datelor
- învățare profundă
- google ai
- Intermediar (200)
- masina de învățare
- Seturi de date parametrizate
- Plato
- platoul ai
- Informații despre date Platon
- Jocul lui Platon
- PlatoData
- platogaming
- scara ai
- Locuri de muncă programate
- sintaxă
- Instrucțiuni tehnice
- zephyrnet