Rularea experimentelor de învățare automată (ML) în cloud se poate întinde pe mai multe servicii și componente. Capacitatea de a structura, automatiza și urmări experimentele ML este esențială pentru a permite dezvoltarea rapidă a modelelor ML. Cu cele mai recente progrese în domeniul învățării automate automate (AutoML), și anume zona ML dedicată automatizării proceselor ML, puteți construi modele precise de luare a deciziilor fără a avea nevoie de cunoștințe profunde ML. În această postare, vedem AutoGluon, un cadru AutoML open-source care vă permite să construiți modele ML precise cu doar câteva linii de Python.
AWS oferă o gamă largă de servicii pentru gestionarea și rularea fluxurilor de lucru ML, permițându-vă să selectați o soluție bazată pe abilitățile și aplicația dvs. De exemplu, dacă utilizați deja Funcții pas AWS pentru a orchestra componentele aplicațiilor distribuite, puteți utiliza același serviciu pentru a construi și automatiza fluxurile de lucru ML. Alte instrumente MLOps oferite de AWS includ Pipelines Amazon SageMaker, care vă permite să construiți modele ML în Amazon SageMaker Studio cu capabilități MLOps (cum ar fi compatibilitatea CI/CD, monitorizarea modelului și aprobările modelului). Instrumente open-source, cum ar fi Flux de aer Apache-disponibil pe AWS prin Fluxuri de lucru gestionate de Amazon pentru Apache Airflow-și KubeFlow, precum și soluțiile hibride sunt, de asemenea, acceptate. De exemplu, puteți gestiona asimilarea și procesarea datelor cu Step Functions în timp ce antrenați și implementați modelele dvs. ML cu SageMaker Pipelines.
În această postare, arătăm cum chiar și dezvoltatorii fără experiență ML pot construi și menține cu ușurință modele ML de ultimă generație folosind AutoGluon pe Amazon SageMaker și Step Functions pentru a orchestra componentele fluxului de lucru.
După o prezentare generală a algoritmului AutoGluon, prezentăm definițiile fluxului de lucru împreună cu exemple și un tutorial de cod pe care le puteți aplica propriilor date.
AutoGluon
AutoGluon este un cadru AutoML open-source care accelerează adoptarea ML prin antrenarea modelelor ML precise cu doar câteva linii de cod Python. Deși această postare se concentrează pe datele tabulare, AutoGluon vă permite, de asemenea, să antrenați modele de ultimă generație pentru clasificarea imaginilor, detectarea obiectelor și clasificarea textului. AutoGluon tabular creează și combină diferite modele pentru a găsi soluția optimă.
Echipa AutoGluon de la AWS a lansat un hârtie care prezintă principiile care structurează biblioteca:
- Simplitate – Puteți crea modele de clasificare și regresie direct din datele brute fără a fi nevoie să analizați datele sau să efectuați inginerie de caracteristici
- Robusteţe – Procesul general de instruire ar trebui să aibă succes chiar dacă unele dintre modelele individuale eșuează
- Timpul previzibil – Puteți obține rezultate optime în timpul pe care doriți să îl investiți pentru antrenament
- Toleranță la erori – Puteți opri antrenamentul și îl reluați în orice moment, ceea ce optimizează costurile dacă procesul rulează pe imagini spot în cloud
Pentru mai multe detalii despre algoritm, consultați hârtie lansat de echipa AutoGluon de la AWS.
După ce instalați Pachetul AutoGluon și dependențele sale, antrenarea unui model este la fel de ușor ca și scrierea a trei linii de cod:
Echipa AutoGluon a dovedit puterea cadrului prin atingerea primelor 10 clasamente în mai multe competiții Kaggle.
Prezentare generală a soluțiilor
Utilizăm Step Functions pentru a implementa un flux de lucru ML care acoperă instruire, evaluare și implementare. Designul conductei permite experimente rapide și configurabile prin modificarea parametrilor de intrare pe care îi introduceți în conductă în timpul execuției.
Puteți configura conducta pentru a implementa diferite fluxuri de lucru, cum ar fi următoarele:
- Antrenați un nou model ML și stocați-l în registrul de modele SageMaker, dacă nu este necesară nicio implementare în acest moment
- Implementați un model ML pre-antrenat, fie pentru online (Punct final SageMaker) sau offline (Transformarea lotului SageMaker) deducere
- Rulați o conductă completă pentru a instrui, evalua și implementa un model ML de la zero
Soluțiile constau într-un general mașină de stat (vezi diagrama următoare) care orchestrează setul de acțiuni care urmează să fie executate pe baza unui set de parametri de intrare.
Pașii mașinii de stări sunt următorii:
- Primul pas
IsTraining
decide dacă folosim un model pre-antrenat sau antrenăm un model de la zero. Dacă utilizați un model pre-antrenat, mașina de stat trece la Pasul 7. - Când este necesar un nou model ML,
TrainSteps
declanșează o a doua mașină de stări care efectuează toate acțiunile necesare și returnează rezultatul la mașina de stare curentă. Intrăm în mai multe detalii despre mașina de stare de antrenament în secțiunea următoare. - Când antrenamentul este terminat,
PassModelName
stochează numele jobului de antrenament într-o locație specificată a contextului mașinii de stări pentru a fi reutilizat în următoarele stări. - Dacă este selectată o fază de evaluare,
IsEvaluation
redirecționează mașina de stări către ramura de evaluare. În caz contrar, trece la Pasul 7. - Faza de evaluare este apoi implementată folosind un AWS Lambdas funcția invocată de
ModelValidation
Etapa. Funcția Lambda preia performanțele modelului pe un set de testare și îl compară cu un prag configurabil de utilizator specificat în parametrii de intrare. Următorul cod este un exemplu de rezultate ale evaluării: - Dacă evaluarea modelului la
EvaluationResults
are succes, mașina de stări continuă cu eventuale etape de implementare. Dacă modelul funcționează sub un criteriu definit de utilizator, mașina de stare se oprește și implementarea este omisă. - Dacă este selectată implementarea,
IsDeploy
pornește o mașină de stare a treia prinDeploySteps
, pe care o descriem mai târziu în această postare. Dacă implementarea nu este necesară, mașina de stare se oprește aici.
Un set de mostre de parametri de intrare este disponibil pe GitHub repo.
Mașină de stat de antrenament
Mașina de stare pentru antrenarea unui nou model ML folosind AutoGluon este compusă din doi pași, așa cum este ilustrat în diagrama următoare. Primul pas este un job de instruire SageMaker care creează modelul. Al doilea salvează intrările în registrul modelului SageMaker.
Puteți rula acești pași fie automat, ca parte a mașinii de stat principale, fie ca proces independent.
Mașină de stare de implementare
Să ne uităm acum la mașina de stări dedicată fazei de implementare (vezi diagrama următoare). După cum am menționat mai devreme, arhitectura acceptă atât implementarea online, cât și offline. Primul constă în implementarea unui punct final SageMaker, în timp ce cel din urmă rulează un job de transformare în loturi SageMaker.
Pașii de implementare sunt după cum urmează:
ChoiceDeploymentMode
analizează parametrii de intrare pentru a defini ce mod de implementare este necesar și direcționează mașina de stare către ramura corespunzătoare.- Dacă este ales un punct final,
EndpointConfig
pasul își definește configurația, în timp ceCreateEndpoint
începe procesul de alocare a resurselor de calcul necesare. Această alocare poate dura câteva minute, așa că mașina de stat se oprește laWaitForEndpoint
și utilizează o funcție Lambda pentru a interoga starea punctului final. - În timp ce punctul final este configurat,
ChoiceEndpointStatus
revine laWaitForEndpoint
stat, altfel continuă să fieDeploymentFailed
orDeploymentSucceeded
. - Dacă este selectată implementarea offline, mașina de stări rulează un job de transformare batch SageMaker, după care mașina de stări se oprește.
Concluzie
Această postare prezintă un canal ușor de utilizat pentru a orchestra fluxurile de lucru AutoML și pentru a permite experimente rapide în cloud, permițând soluții ML precise fără a necesita cunoștințe avansate ML.
Oferim o conductă generală, precum și două modulare care vă permit să efectuați instruire și desfășurare separat, dacă este necesar. Mai mult, soluția este complet integrată cu SageMaker, beneficiind de caracteristicile și resursele sale de calcul.
Începeți acum cu asta tutorial de cod să implementați resursele prezentate în această postare în contul dvs. AWS și să rulați primele experimente AutoML.
Despre Autori
Federico Piccinini este un arhitect de învățare profundă pentru Laboratorul de soluții de învățare automată Amazon. Este pasionat de machine learning, AI explicabilă și MLOps. El se concentrează pe proiectarea conductelor ML pentru clienții AWS. În afara serviciului, îi place sportul și pizza.
Paolo Irrera este Data Scientist la Amazon Machine Learning Solutions Lab, unde îi ajută pe clienți să rezolve problemele de afaceri cu capacitățile ML și cloud. El deține un doctorat în viziune computerizată la Telecom ParisTech, Paris.
- Coinsmart. Cel mai bun schimb de Bitcoin și Crypto din Europa.
- Platoblockchain. Web3 Metaverse Intelligence. Cunoștințe amplificate. ACCES LIBER.
- CryptoHawk. Radar Altcoin. Încercare gratuită.
- Sursa: https://aws.amazon.com/blogs/machine-learning/manage-automl-workflows-with-aws-step-functions-and-autogluon-on-amazon-sagemaker/
- "
- 10
- 100
- 7
- a
- capacitate
- Despre Noi
- Cont
- precis
- peste
- acțiuni
- adresa
- Adoptare
- avansat
- progresele
- AI
- Algoritmul
- TOATE
- alocare
- Permiterea
- permite
- deja
- Cu toate ca
- Amazon
- analiza
- aplicație
- aplicatii
- Aplică
- arhitectură
- ZONĂ
- automatizarea
- Automata
- în mod automat
- Automatizare
- disponibil
- AWS
- fiind
- de mai jos
- construi
- afaceri
- Poate obține
- capacități
- ales
- clasificare
- Cloud
- cod
- compatibilitate
- Competiţii
- Completă
- componente
- calculator
- tehnica de calcul
- Configuraţie
- continuă
- Corespunzător
- Cheltuieli
- crea
- creează
- Criteriile de
- Curent
- Starea curenta
- clienţii care
- de date
- om de știință de date
- dedicat
- adânc
- implementa
- Implementarea
- desfășurarea
- descrie
- Amenajări
- proiect
- detaliu
- detalii
- Detectare
- Dezvoltatorii
- Dezvoltare
- diferit
- direct
- distribuite
- cu ușurință
- ușor de folosit
- permite
- permite
- Punct final
- esenţial
- evalua
- evaluare
- exemplu
- exemple
- expertiză
- FAST
- Caracteristică
- DESCRIERE
- First
- se concentrează
- următor
- urmează
- Cadru
- din
- funcţie
- funcții
- General
- având în
- ajută
- aici
- deține
- Cum
- HTTPS
- Hibrid
- imagine
- imagini
- punerea în aplicare a
- implementarea
- implementat
- include
- individ
- intrare
- instala
- integrate
- IT
- Loc de munca
- cunoştinţe
- de laborator
- Ultimele
- învăţare
- Bibliotecă
- linii
- locaţie
- Uite
- maşină
- masina de învățare
- menține
- administra
- gestionate
- menționat
- ML
- model
- Modele
- modular
- Monitorizarea
- mai mult
- multiplu
- și anume
- necesar
- au nevoie
- următor
- oferit
- promoții
- Offline
- on-line
- Altele
- in caz contrar
- global
- propriu
- Paris
- parte
- pasionat
- spectacole
- efectuarea
- fază
- Pizza
- sondaj
- prezenta
- cadouri
- probleme
- proces
- procese
- prelucrare
- furniza
- gamă
- Crud
- eliberat
- necesar
- Resurse
- REZULTATE
- relua
- Returnează
- Alerga
- acelaşi
- Om de stiinta
- selectate
- serviciu
- Servicii
- set
- câteva
- Arăta
- aptitudini
- So
- soluţie
- soluţii
- unele
- Sportul
- Loc
- standalone
- început
- începe
- Stat
- de ultimă oră
- Statele
- Stare
- stoca
- magazine
- rezistenţă
- de succes
- Suportat
- Sprijină
- echipă
- telecom
- test
- trei
- prag
- Prin
- timp
- Unelte
- top
- față de
- urmări
- Tren
- Pregătire
- Transforma
- utilizare
- viziune
- dacă
- în timp ce
- în
- fără
- Apartamente
- fluxuri de lucru
- scris
- Ta