Această postare este scrisă împreună cu Jayadeep Pabbisetty, specialist senior în inginerie de date la Merck și Prabakaran Mathaiyan, inginer senior ML la Tiger Analytics.
Ciclul de viață mare de dezvoltare a modelelor de învățare automată (ML) necesită un proces scalabil de lansare a modelului similar cu cel al dezvoltării software. Dezvoltatorii de modele lucrează adesea împreună în dezvoltarea modelelor ML și necesită o platformă MLOps robustă pentru a lucra. O platformă MLOps scalabilă trebuie să includă un proces pentru gestionarea fluxului de lucru al registrului modelelor ML, aprobarea și promovarea la următorul nivel de mediu (dezvoltare, testare). , UAT sau producție).
Un dezvoltator de modele începe de obicei să lucreze într-un mediu individual de dezvoltare ML Amazon SageMaker. Când un model este instruit și gata de a fi utilizat, acesta trebuie să fie aprobat după ce a fost înregistrat în Registrul de modele Amazon SageMaker. În această postare, discutăm despre modul în care echipa AWS AI/ML a colaborat cu echipa Merck Human Health IT MLOps pentru a construi o soluție care utilizează un flux de lucru automat pentru aprobarea și promovarea modelului ML, cu intervenția umană la mijloc.
Prezentare generală a soluției
Această postare se concentrează pe o soluție de flux de lucru pe care ciclul de viață de dezvoltare a modelului ML o poate folosi între conducta de antrenament și conducta de inferență. Soluția oferă un flux de lucru scalabil pentru MLOps în sprijinirea procesului de aprobare și promovare a modelului ML cu intervenție umană. Un model ML înregistrat de un om de știință de date are nevoie de un autorizator pentru a revizui și a aproba înainte de a fi utilizat pentru o conductă de inferență și la următorul nivel de mediu (test, UAT sau producție). Soluția folosește AWS Lambdas, Gateway API Amazon, Amazon EventBridge, și SageMaker pentru a automatiza fluxul de lucru cu intervenție de aprobare umană la mijloc. Următoarea diagramă de arhitectură arată designul general al sistemului, serviciile AWS utilizate și fluxul de lucru pentru aprobarea și promovarea modelelor ML cu intervenție umană, de la dezvoltare până la producție.
Fluxul de lucru include următorii pași:
- Canalul de instruire dezvoltă și înregistrează un model în registrul de modele SageMaker. În acest moment, starea modelului este
PendingManualApproval
. - EventBridge monitorizează evenimentele de schimbare a stării pentru a întreprinde automat acțiuni cu reguli simple.
- Regula evenimentului de înregistrare a modelului EventBridge invocă o funcție Lambda care construiește un e-mail cu un link pentru a aproba sau a respinge modelul înregistrat.
- Aprobatorul primește un e-mail cu linkul pentru a examina și a aproba sau respinge modelul.
- Aprobatorul aprobă modelul urmând linkul din e-mail către un punct final API Gateway.
- API Gateway invocă o funcție Lambda pentru a iniția actualizări de model.
- Registrul modelului este actualizat pentru starea modelului (
Approved
pentru mediul de dezvoltare, darPendingManualApproval
pentru testare, UAT și producție). - Detaliul modelului este stocat în Magazinul de parametri AWS, o capacitate de Manager sistem AWS, inclusiv versiunea modelului, mediul țintă aprobat, pachetul modelului.
- Conducta de inferență preia modelul aprobat pentru mediul țintă din Parameter Store.
- Funcția Lambda de notificare post-inferență colectează valori de inferență în lot și trimite un e-mail aprobator pentru a promova modelul în următorul mediu.
Cerințe preliminare
Fluxul de lucru din această postare presupune că mediul pentru conducta de instruire este configurat în SageMaker, împreună cu alte resurse. Intrarea în conducta de antrenament este setul de date de caracteristici. Detaliile de generare a caracteristicilor nu sunt incluse în această postare, dar se concentrează pe registrul, aprobarea și promovarea modelelor ML după ce sunt instruite. Modelul este înregistrat în registrul modelului și este guvernat de un cadru de monitorizare în Monitor de model Amazon SageMaker pentru a detecta orice derive și a trece la reantrenare în caz de derive a modelului.
Detalii despre fluxul de lucru
Fluxul de lucru de aprobare începe cu un model dezvoltat dintr-un canal de instruire. Când oamenii de știință de date dezvoltă un model, îl înregistrează în SageMaker Model Registry cu statutul de model de PendingManualApproval
. EventBridge monitorizează SageMaker pentru evenimentul de înregistrare a modelului și declanșează o regulă de eveniment care invocă o funcție Lambda. Funcția Lambda construiește în mod dinamic un e-mail pentru aprobarea modelului cu o legătură către un punct final API Gateway către o altă funcție Lambda. Când aprobatorul urmează linkul pentru a aproba modelul, API Gateway transmite acțiunea de aprobare către funcția Lambda, care actualizează Registrul de modele SageMaker și atributele modelului din Parameter Store. Aprobatorul trebuie să fie autentificat și să facă parte din grupul de aprobatori gestionat de Active Directory. Aprobarea inițială marchează modelul ca Approved
pentru dev dar PendingManualApproval
pentru testare, UAT și producție. Atributele modelului salvate în Parameter Store includ versiunea modelului, pachetul modelului și mediul țintă aprobat.
Când o conductă de inferență trebuie să preia un model, verifică Parameter Store pentru cea mai recentă versiune de model aprobată pentru mediul țintă și primește detaliile de inferență. Când conducta de inferență este completă, un e-mail de notificare după inferență este trimis unei părți interesate care solicită o aprobare pentru a promova modelul la următorul nivel de mediu. E-mailul conține detalii despre model și valori, precum și un link de aprobare către un punct final API Gateway pentru o funcție Lambda care actualizează atributele modelului.
Următoarea este secvența evenimentelor și a pașilor de implementare pentru fluxul de lucru de aprobare/promovare a modelului ML, de la crearea modelului până la producție. Modelul este promovat de la dezvoltare la testare, UAT și medii de producție cu o aprobare umană explicită în fiecare pas.
Începem cu conducta de instruire, care este gata pentru dezvoltarea modelului. Versiunea modelului începe cu 0 în SageMaker Model Registry.
- Canalul de instruire SageMaker dezvoltă și înregistrează un model în SageMaker Model Registry. Modelul versiunea 1 este înregistrată și începe cu În așteptarea aprobării manuale stare.Metadatele Model Registry au patru câmpuri personalizate pentru medii:
dev, test, uat
, șiprod
. - EventBridge monitorizează Registrul de modele SageMaker pentru schimbarea stării pentru a lua automat măsuri cu reguli simple.
- Regula evenimentului de înregistrare a modelului invocă o funcție Lambda care construiește un e-mail cu linkul pentru a aproba sau a respinge modelul înregistrat.
- Aprobatorul primește un e-mail cu linkul pentru a examina și a aproba (sau respinge) modelul.
- Aprobatorul aprobă modelul urmând linkul către punctul final API Gateway din e-mail.
- API Gateway invocă funcția Lambda pentru a iniția actualizări de model.
- Registrul de modele SageMaker este actualizat cu starea modelului.
- Informațiile detaliate ale modelului sunt stocate în Parameter Store, inclusiv versiunea modelului, mediul țintă aprobat și pachetul modelului.
- Conducta de inferență preia modelul aprobat pentru mediul țintă din Parameter Store.
- Funcția Lambda de notificare post-inferență colectează valori de inferență în lot și trimite un e-mail aprobator pentru a promova modelul în următorul mediu.
- Aprobatorul aprobă promovarea modelului la nivelul următor, urmând linkul către punctul final API Gateway, care declanșează funcția Lambda pentru a actualiza Registrul de modele SageMaker și Magazinul de parametri.
Istoricul complet al versiunilor și aprobării modelului este salvat pentru revizuire în Parameter Store.
Concluzie
Ciclul de viață mare al dezvoltării modelului ML necesită un proces scalabil de aprobare a modelului ML. În această postare, am împărtășit o implementare a unui registru de model ML, a unui flux de lucru de aprobare și promovare cu intervenție umană folosind SageMaker Model Registry, EventBridge, API Gateway și Lambda. Dacă aveți în vedere un proces scalabil de dezvoltare a modelului ML pentru platforma dvs. MLOps, puteți urma pașii din această postare pentru a implementa un flux de lucru similar.
Despre autori
Tom Kim este arhitect senior de soluții la AWS, unde își ajută clienții să-și atingă obiectivele de afaceri prin dezvoltarea de soluții pe AWS. El are o experiență vastă în arhitectura și operațiunile sistemelor de întreprindere în mai multe industrii - în special în îngrijirea sănătății și știința vieții. Tom învață mereu noi tehnologii care duc la rezultatul de afaceri dorit pentru clienți – de ex. AI/ML, GenAI și Data Analytics. De asemenea, îi place să călătorească în locuri noi și să joace noi terenuri de golf ori de câte ori își găsește timp.
Shamika Ariyawansa, care servește ca arhitect senior de soluții AI/ML în divizia de asistență medicală și științe ale vieții la Amazon Web Services (AWS), este specializată în IA generativă, cu accent pe formarea modelului de limbaj mare (LLM), optimizări de inferență și MLOps (învățare automată). Operațiuni). El îndrumă clienții în integrarea AI generativă avansată în proiectele lor, asigurând procese de instruire robuste, mecanisme de inferență eficiente și practici MLOps simplificate pentru soluții AI eficiente și scalabile. Dincolo de angajamentele sale profesionale, Shamika urmărește cu pasiune aventurile de schi și off-road.
Jayadeep Pabbisetty este inginer senior ML/Data la Merck, unde proiectează și dezvoltă soluții ETL și MLOps pentru a debloca știința și analiza datelor pentru afacere. Este întotdeauna entuziasmat de învățarea de noi tehnologii, de explorarea de noi căi și de dobândirea abilităților necesare pentru a evolua cu industria IT în continuă schimbare. În timpul liber, își urmează pasiunea pentru sport și îi place să călătorească și să exploreze locuri noi.
Prabakaran Mathaiyan este inginer senior de învățare automată la Tiger Analytics LLC, unde își ajută clienții să-și atingă obiectivele de afaceri oferind soluții pentru construirea de modele, instruire, validare, monitorizare, CICD și îmbunătățirea soluțiilor de învățare automată pe AWS. Prabakaran învață mereu noi tehnologii care duc la rezultatul de afaceri dorit pentru clienți – de ex. AI/ML, GenAI, GPT și LLM. De asemenea, îi place să joace cricket ori de câte ori își găsește timp.
- Distribuție de conținut bazat pe SEO și PR. Amplifică-te astăzi.
- PlatoData.Network Vertical Generative Ai. Împuterniciți-vă. Accesați Aici.
- PlatoAiStream. Web3 Intelligence. Cunoștințe amplificate. Accesați Aici.
- PlatoESG. carbon, CleanTech, Energie, Mediu inconjurator, Solar, Managementul deșeurilor. Accesați Aici.
- PlatoHealth. Biotehnologie și Inteligență pentru studii clinice. Accesați Aici.
- Sursa: https://aws.amazon.com/blogs/machine-learning/build-an-amazon-sagemaker-model-registry-approval-and-promotion-workflow-with-human-intervention/
- :are
- :este
- :nu
- :Unde
- $UP
- 1
- 100
- 116
- 7
- a
- Despre Noi
- Obține
- dobândirea
- peste
- Acțiune
- acțiuni
- activ
- avansat
- aventuri
- După
- AI
- AI / ML
- de-a lungul
- de asemenea
- mereu
- Amazon
- Amazon SageMaker
- Amazon Web Services
- Amazon Web Services (AWS)
- an
- Google Analytics
- și
- O alta
- Orice
- api
- aprobare
- aproba
- aprobat
- arhitectură
- SUNT
- AS
- presupune
- At
- atribute
- autentificata
- automatizarea
- Automata
- în mod automat
- căi
- AWS
- BE
- înainte
- fiind
- între
- Dincolo de
- De jos
- construi
- Clădire
- luați autobuzul
- afaceri
- dar
- by
- CAN
- capacitate
- pasă
- caz
- Schimbare
- Verificări
- cod
- a colaborat
- angajamentele
- Completă
- luand in considerare
- construcții
- cursuri
- creaţie
- crichet
- personalizat
- clienţii care
- de date
- Analiza datelor
- știința datelor
- om de știință de date
- Amenajări
- modele
- dorit
- detaliu
- detalii
- detecta
- dev
- dezvolta
- dezvoltat
- Dezvoltator
- Dezvoltatorii
- în curs de dezvoltare
- Dezvoltare
- dezvoltă
- discuta
- diviziune
- dinamic
- e
- fiecare
- Eficace
- eficient
- Încorporarea
- Punct final
- inginer
- Inginerie
- asigurare
- Afacere
- entuziast
- Mediu inconjurator
- medii
- eveniment
- evenimente
- mereu în schimbare
- evolua
- experienţă
- explora
- Explorarea
- extensiv
- Experiență vastă
- Caracteristică
- DESCRIERE
- Domenii
- Găsi
- Concentra
- se concentrează
- urma
- următor
- urmează
- Pentru
- patru
- Cadru
- din
- funcţie
- poartă
- generaţie
- generativ
- AI generativă
- golf
- guvernată
- grup
- Ghiduri
- Manipularea
- he
- Sănătate
- Sănătate
- de asistență medicală
- ajută
- lui
- istorie
- Cum
- HTML
- HTTPS
- uman
- if
- punerea în aplicare a
- implementarea
- îmbunătățire
- in
- include
- inclus
- include
- Inclusiv
- individ
- industrii
- industrie
- informații
- inițială
- iniția
- intrare
- integrare
- intervenţie
- în
- invocă
- IT
- Industria IT
- jpg
- limbă
- mare
- Ultimele
- conduce
- învăţare
- Nivel
- Viaţă
- Știința vieții
- Life Sciences
- ciclu de viață
- îi place
- LINK
- LLC
- LLM
- maşină
- masina de învățare
- gestionate
- manual
- mecanisme
- Metadata
- Metrici
- De mijloc
- ML
- MLOps
- model
- Modele
- Monitorizarea
- monitoare
- trebuie sa
- necesar
- nevoilor
- Nou
- Noi tehnologii
- următor
- notificare
- Obiectivele
- of
- de multe ori
- on
- Operațiuni
- or
- Altele
- Rezultat
- global
- pachet
- parametru
- parte
- în special
- pasiune
- Model
- conducte
- Locuri
- platformă
- Plato
- Informații despre date Platon
- PlatoData
- joc
- Punct
- portret
- Post
- practicile
- continua
- proces
- procese
- producere
- profesional
- Proiecte
- promova
- Promovat
- Promovarea
- de promovare
- furnizează
- furnizarea
- Urmărește
- gata
- Inregistreaza-te
- înregistrată
- registre
- Înscriere
- registru
- eliberaţi
- solicitând
- necesita
- Necesită
- Resurse
- revizuiască
- robust
- Traseul
- Regula
- norme
- s
- sagemaker
- salvate
- scalabil
- Ştiinţă
- ȘTIINȚE
- Om de stiinta
- oamenii de stiinta
- trimite
- senior
- trimis
- Secvenţă
- Servicii
- servire
- set
- câteva
- comun
- Emisiuni
- asemănător
- simplu
- aptitudini
- Software
- de dezvoltare de software
- soluţie
- soluţii
- specialist
- specializată
- Sportul
- părțile interesate
- Începe
- începe
- Stare
- Pas
- paşi
- stoca
- stocate
- raționalizate
- De sprijin
- sistem
- sisteme
- Lua
- Ţintă
- echipă
- Tehnologii
- test
- acea
- lor
- ei
- acest
- Tigru
- timp
- la
- împreună
- tom
- dresat
- Pregătire
- călătorie
- Traveling
- tipic
- deschide
- Actualizează
- actualizat
- actualizări
- utilizare
- utilizat
- utilizări
- folosind
- validare
- versiune
- we
- web
- servicii web
- BINE
- cand
- oricând
- care
- cu
- în
- Apartamente
- lucram impreuna
- flux de lucru
- Tu
- Ta
- zephyrnet