Cuprins[Ascunde][Spectacol]
- 1. Ce înțelegeți prin MLOps?
- 2. Cum diferă oamenii de știință de date, inginerii de date și inginerii ML?
- 3. Ce diferențiază MLOps de ModelOps și AIOps?
- 4. Îmi puteți spune câteva dintre beneficiile MLOps?
- 5. Îmi puteți spune componentele MLOps?
- 6. Ce riscuri vine cu utilizarea științei datelor?
- 7. Puteți explica, ce este modelul drift?
- 8. În câte moduri diferite pot fi aplicate MLOps, în opinia dumneavoastră?
- 9. Ce separă implementarea statică de implementarea dinamică?
- 10. Ce tehnici de testare a producției cunoașteți?
- 11. Ce diferențiază procesarea fluxului de procesarea în lot?
- 12. Ce înțelegi prin Training Serving Skew?
- 13. Ce înțelegeți prin Model Registry?
- 14. Puteți detalia beneficiile modelului de registru?
- 15. Puteți explica cum funcționează tehnica Champion-Challenger?
- 16. Descrieți aplicațiile la nivel de întreprindere ale ciclului de viață MLOps?
- Concluzie
Companiile folosesc mai des tehnologii emergente precum inteligența artificială (AI) și învățarea automată (ML) pentru a crește accesibilitatea publicului la informații și servicii.
Aceste tehnologii sunt din ce în ce mai utilizate într-o varietate de sectoare, inclusiv bancar, finanțe, retail, producție și chiar asistență medicală.
Oamenii de știință de date, inginerii de învățare automată și inginerii în inteligența artificială sunt solicitați de la un număr tot mai mare de companii.
Cunoscând posibilul masina de învățare Întrebările de interviu operaționale pe care ți le pot pune managerii de angajare și recrutori sunt esențiale dacă vrei să lucrezi în domeniile ML sau MLOps.
Puteți învăța cum să răspundeți la unele dintre întrebările interviului MLOps din această postare în timp ce lucrați pentru a obține locul de muncă visat.
1. Ce înțelegeți prin MLOps?
Subiectul operaționalizării modelelor ML este centrul MLOps, cunoscut și sub denumirea de operațiuni de învățare automată, un domeniu în curs de dezvoltare în arena mai importantă AI/DS/ML.
Scopul principal al abordării și culturii de inginerie software cunoscută sub numele de MLOps este de a integra crearea modelelor de învățare automată/știință a datelor și operaționalizarea ulterioară a acestora (Ops).
DevOps convențional și MLOps au anumite asemănări, cu toate acestea, MLOps diferă foarte mult de DevOps tradițional.
MLOps adaugă un nou strat de complexitate concentrându-se pe date, în timp ce DevOps se concentrează în primul rând pe operaționalizarea lansărilor de cod și software care nu pot fi stateful.
Combinația de ML, Date și Ops este ceea ce îi dă numele comun MLOps (învățare automată, inginerie de date și DevOps).
2. Cum diferă oamenii de știință de date, inginerii de date și inginerii ML?
În opinia mea, variază în funcție de firmă. Mediul pentru transportul și transformarea datelor, precum și stocarea acestora, este construit de inginerii de date.
Oamenii de știință de date sunt experți în utilizarea tehnicilor științifice și statistice pentru a analiza datele și a trage concluzii, inclusiv în a face predicții despre comportamentul viitor pe baza tendințelor existente acum.
Inginerii de software studiau operațiunile și gestionau infrastructura de implementare cu câțiva ani în urmă. Echipele de operațiuni, pe de altă parte, studiau dezvoltarea în timp ce foloseau infrastructura ca cod. O poziție DevOps a fost produsă de aceste două fluxuri.
MLOps este în aceeași categorie cu Om de stiinta de date și inginer de date. Inginerii de date dobândesc cunoștințe despre infrastructura necesară pentru a susține ciclurile de viață ale modelului și pentru a crea conducte pentru formarea continuă.
Oamenii de știință de date încearcă să-și dezvolte capacitățile de implementare a modelelor și de notare.
O conductă de date la nivel de producție este construită de inginerii ML, utilizând infrastructura care transformă datele brute în intrările necesare unui model de știință a datelor, găzduiește și rulează modelul și transmite un set de date punctat către sistemele din aval.
Atât inginerii de date, cât și oamenii de știință de date sunt capabili să devină ingineri ML.
3. Ce diferențiază MLOps de ModelOps și AIOps?
La construirea de la capăt la capăt algoritmi de învățare automată, MLOps este o aplicație DevOps care include colectarea datelor, preprocesarea datelor, crearea modelului, implementarea modelului în producție, monitorizarea modelului în producție și actualizarea periodică a modelului.
Utilizarea DevOps în gestionarea întregii implementări a oricăror algoritmi, cum ar fi modelele bazate pe reguli, este cunoscută sub numele de ModelOps.
AI Ops folosește principiile DevOps pentru a crea aplicații AI de la zero.
4. Îmi puteți spune câteva dintre beneficiile MLOps?
- Oamenii de știință de date și dezvoltatorii MLOps pot relua rapid testele pentru a se asigura că modelele sunt instruite și evaluate în mod corespunzător, deoarece MLOps ajută la automatizarea tuturor sau a majorității sarcinilor/pașilor din MDLC (ciclul de viață al dezvoltării modelului). În plus, permise versiunea datelor și modelului.
- Punerea în practică a ideilor MLOps permite inginerilor de date și cercetătorilor de date să aibă acces nerestricționat la seturi de date cultivate și curatate, ceea ce accelerează exponențial dezvoltarea modelelor.
- Oamenii de știință de date vor putea să recurgă la modelul care a funcționat mai bine dacă iterația actuală nu se ridică la nivelul așteptărilor, datorită capacității de a avea modele și seturi de date versionate, ceea ce va îmbunătăți semnificativ traseul de audit al modelului.
- Deoarece metodele MLOps se bazează puternic pe DevOps, ele încorporează și o serie de concepte CI/CD, ceea ce îmbunătățește calitatea și fiabilitatea codului.
5. Îmi puteți spune componentele MLOps?
Amenajări: MLOps includ în mare măsură gândirea de design. Începând cu natura problemei, testarea ipotezelor, arhitectura și implementarea
Construirea modelului: Testarea și validarea modelelor fac parte din acest pas, împreună cu conductele de inginerie a datelor și experimentarea pentru a configura cele mai bune sisteme de învățare automată.
Operațiuni: Modelul trebuie implementat ca parte a operațiunilor și verificat și evaluat continuu. Procesele CI/CD sunt apoi monitorizate și pornite folosind un instrument de orchestrare.
6. Ce riscuri vine cu utilizarea științei datelor?
- Este dificil să scalați modelul în întreaga companie.
- Fără avertisment, modelul se oprește și nu mai funcționează.
- În mare parte, acuratețea modelelor se înrăutățește cu timpul.
- Modelul face predicții inexacte pe baza unei observații specifice care nu poate fi examinată în continuare.
- Oamenii de știință de date ar trebui să mențină și modele, dar sunt costisitoare.
- MLOps poate fi utilizat pentru a reduce aceste riscuri.
7. Puteți explica, ce este modelul drift?
Când performanța fazei de inferență a unui model (folosind date din lumea reală) se deteriorează din performanța fazei de antrenament, aceasta este cunoscută sub denumirea de deriva de model, cunoscută și sub denumirea de deriva ideii (folosind date istorice, etichetate).
Performanța modelului este distorsionată în comparație cu fazele de antrenament și servire, de unde și denumirea de „antrenează/servire oblică”.
Numeroși factori, printre care:
- Modul fundamental în care sunt distribuite datele s-a modificat.
- Training-ul s-a concentrat pe un număr mic de categorii, însă, o schimbare de mediu care tocmai a avut loc a adăugat un alt domeniu.
- În dificultățile NLP, datele din lumea reală au o cantitate disproporționat mai mare de jetoane decât datele de antrenament.
- Apariții neașteptate, cum ar fi un model construit pe date pre-COVID, care se prevede că va funcționa semnificativ mai rău la datele colectate în timpul epidemiei de COVID-19.
Monitorizarea continuă a performanței modelului este întotdeauna necesară pentru a identifica deviația modelului.
Recalificarea modelului este aproape întotdeauna necesară ca remediu atunci când există o scădere persistentă a performanței modelului; trebuie identificat motivul declinului și trebuie utilizate proceduri de tratament adecvate.
8. În câte moduri diferite pot fi aplicate MLOps, în opinia dumneavoastră?
Există trei metode pentru a pune în practică MLOps:
MLOps nivel 0 (proces manual): La acest nivel, toți pașii, inclusiv pregătirea datelor, analiza și instruirea, sunt efectuate manual. Fiecare etapă trebuie efectuată manual, precum și trecerea de la una la alta.
Premisa de bază este că echipa dvs. de știință a datelor gestionează doar un număr mic de modele care nu sunt actualizate frecvent.
Ca rezultat, nu există Integrare continuă (CI) sau Implementare continuă (CD), iar testarea codului este de obicei integrată în execuția scriptului sau în execuția notebook-ului, implementarea având loc într-un microserviciu cu un API-ul REST.
MLOps nivel 1 (automatizarea conductei ML): Prin automatizarea procesului ML, obiectivul este de a antrena continuu modelul (CT). Puteți realiza livrarea continuă a serviciului de predicție a modelului în acest fel.
Implementarea noastră a unei întregi conducte de instruire asigură că modelul este antrenat automat în producție, utilizând date noi bazate pe declanșatoarele de conducte active.
MLOps nivel 2 (automatizarea conductei CI/CD): Merge cu un pas peste nivelul MLOps. Este necesar un sistem puternic automatizat CI/CD dacă doriți să actualizați conductele în producție rapid și fiabil:
- Creați cod sursă și executați numeroase teste pe parcursul etapei CI. Pachetele, executabilele și artefactele sunt ieșirile etapei, care vor fi implementate ulterior.
- Artefactele create de etapa CI sunt implementate în mediul țintă în timpul etapei CD. O conductă implementată cu implementarea modelului revizuit este rezultatul etapei.
- Înainte ca conducta să înceapă o nouă iterație a experimentului, oamenii de știință de date trebuie să facă în continuare faza de analiză a datelor și a modelului manual.
9. Ce separă implementarea statică de implementarea dinamică?
Modelul este antrenat offline pentru Implementare statică. Cu alte cuvinte, antrenăm modelul exact o dată și apoi îl folosim pentru un timp. După ce modelul a fost antrenat local, acesta este stocat și trimis la server pentru a fi utilizat pentru a produce predicții în timp real.
Modelul este apoi distribuit ca aplicație software instalabilă. un program care permite scorarea în lot a cererilor, ca o ilustrație.
Modelul este antrenat online pentru Implementare dinamică. Adică, noi date sunt adăugate în mod constant în sistem, iar modelul este actualizat continuu pentru a le ține seama.
Ca rezultat, puteți face predicții folosind un server la cerere. După aceea, modelul este pus în uz fiind furnizat ca un punct final API care reacționează la interogările utilizatorilor, folosind un cadru web precum Flask sau FastAPI.
10. Ce tehnici de testare a producției cunoașteți?
Testarea lotului: Efectuând testarea într-un cadru diferit de cel al mediului de antrenament, verifică modelul. Folosind metrici alese, cum ar fi acuratețea, RMSE etc., testarea lotului se face pe un grup de mostre de date pentru a verifica inferența modelului.
Testarea în lot poate fi efectuată pe o varietate de platforme de calcul, cum ar fi un server de testare, un server la distanță sau cloud. De obicei, modelul este furnizat ca un fișier serializat, care este încărcat ca obiect și dedus din datele de testare.
A / B de testare: Este folosit frecvent pentru analiza campaniilor de marketing precum si pentru proiectarea serviciilor (site-uri web, aplicatii mobile etc.).
Pe baza companiei sau a operațiunilor, abordările statistice sunt utilizate pentru a analiza rezultatele testării A/B pentru a decide care model va funcționa mai bine în producție. De obicei, testarea A/B se face în felul următor:
- Datele în direct sau în timp real sunt împărțite sau segmentate în două seturi, Setul A și Setul B.
- Datele setului A sunt trimise la modelul învechit, în timp ce datele setului B sunt trimise la modelul actualizat.
- În funcție de cazul sau de procese de utilizare în afaceri, mai multe abordări statistice pot fi utilizate pentru a evalua performanța modelului (de exemplu, acuratețea, precizia etc.) pentru a determina dacă noul model (modelul B) depășește vechiul model (modelul A).
- Apoi facem testarea ipotezelor statistice: Ipoteza nulă spune că noul model nu are niciun efect asupra valorii medii a indicatorilor de afaceri monitorizați. Conform ipotezei alternative, noul model crește valoarea medie a indicatorilor de monitorizare a afacerii.
- În cele din urmă, evaluăm dacă noul model are ca rezultat o îmbunătățire semnificativă a anumitor KPI-uri de afaceri.
Un test de umbră sau de scenă: Un model este evaluat într-un duplicat al unui mediu de producție înainte de a fi utilizat în producție (mediu de staging).
Acest lucru este crucial pentru determinarea performanței modelului cu date în timp real și validarea rezistenței modelului. se realizează prin deducerea acelorași date ca și conducta de producție și prin livrarea sucursalei dezvoltate sau a unui model care urmează să fie testat pe un server de staging.
Singurul dezavantaj este că nu vor fi făcute alegeri de afaceri pe serverul de staging sau vizibile pentru utilizatorii finali ca urmare a ramurii de dezvoltare.
Reziliența și performanța modelului vor fi evaluate statistic folosind rezultatele mediului de punere în scenă folosind metricile adecvate.
11. Ce diferențiază procesarea fluxului de procesarea în lot?
Putem manipula caracteristicile pe care le folosim pentru a produce prognozele noastre în timp real folosind două metode de procesare: lot și flux.
Proces pe lot caracteristici dintr-un moment anterior în timp pentru un anumit obiect, care este apoi utilizat pentru a genera predicții în timp real.
- Aici, putem face calcule intensive de caracteristici offline și avem datele pregătite pentru inferențe rapide.
- Caracteristici, totuși, o vârstă de când au fost predeterminate în trecut. Acesta ar putea fi un dezavantaj major dacă prognoza dumneavoastră se bazează pe evenimente recente. (De exemplu, identificarea tranzacțiilor frauduloase cât mai curând posibil.)
Cu funcții de streaming aproape în timp real pentru o anumită entitate, inferența este efectuată în procesarea fluxului pe un set dat de intrări.
- Aici, oferind modelului funcții de streaming în timp real, putem obține predicții mai precise.
- Cu toate acestea, este necesară o infrastructură suplimentară pentru procesarea fluxului și pentru a menține fluxurile de date (Kafka, Kinesis etc). (Apache Flink, Beam etc.)
12. Ce înțelegi prin Training Serving Skew?
Diferența dintre performanța la servire și performanța în timpul antrenamentului este cunoscută sub denumirea de deformare antrenament-servire. Această deformare poate fi indusă de următorii factori:
- O diferență în modul în care gestionați datele între conductele pentru servire și instruire.
- O schimbare a datelor de la formarea dumneavoastră la serviciul dumneavoastră.
- Un canal de feedback între algoritm și model.
13. Ce înțelegeți prin Model Registry?
Model Registry este un depozit central în care creatorii de modele pot publica modele care sunt potrivite pentru utilizare în producție.
Dezvoltatorii pot colabora cu alte echipe și părți interesate pentru a gestiona durata de viață a tuturor modelelor din cadrul afacerii folosind registrul. Modelele instruite pot fi încărcate în registrul de modele de către un cercetător de date.
Modelele sunt pregătite pentru testare, validare și implementare în producție odată ce sunt în registru. În plus, modelele instruite sunt stocate în registre de modele pentru acces rapid de către orice aplicație sau serviciu integrat.
Pentru a testa, evalua și implementa modelul în producție, dezvoltatorii de software iar recenzenții pot recunoaște și alege rapid doar cea mai bună versiune a modelelor instruite (pe baza criteriilor de evaluare).
14. Puteți detalia beneficiile modelului de registru?
Următoarele sunt câteva modalități prin care registrul modelului eficientizează gestionarea ciclului de viață al modelului:
- Pentru a facilita implementarea, salvați cerințele de rulare și metadatele pentru modelele dvs. instruite.
- Modelele dvs. antrenate, implementate și retrase ar trebui să fie înregistrate, urmărite și versiuni într-un depozit centralizat, care poate fi căutat.
- Creați conducte automate care permit livrarea continuă, instruirea și integrarea modelului dvs. de producție.
- Comparați modelele nou antrenate (sau modelele challenger) în mediul de scenă cu modelele care funcționează în prezent în producție (modele campion).
15. Puteți explica cum funcționează tehnica Champion-Challenger?
Este posibil să testați diferite decizii operaționale în producție folosind o tehnică Champion Challenger. Probabil ați auzit despre testarea A/B în contextul marketingului.
De exemplu, ați putea scrie două rânduri de subiect distincte și le puteți distribui la întâmplare către demografia dvs. țintă pentru a maximiza rata de deschidere pentru o campanie de e-mail.
Sistemul înregistrează performanța unui e-mail (adică, acțiunea de deschidere a e-mailului) în raport cu linia de subiect, permițându-vă să comparați rata de deschidere a fiecărei linii de subiect pentru a determina care este cea mai eficientă.
Champion-Challenger este comparabil cu testarea A/B în acest sens. Puteți utiliza logica deciziei pentru a evalua fiecare rezultat și pentru a-l selecta pe cel mai eficient în timp ce experimentați cu diferite metode pentru a ajunge la o alegere.
Cel mai de succes model se corelează cu campionul. Primul challenger și lista de potrivire a challenger-urilor sunt acum tot ceea ce este prezent în prima fază de execuție în locul campionului.
Campionul este ales de sistem pentru execuții ulterioare ale etapelor de lucru.
Provocatorii sunt în contrast unul cu celălalt. Noul campion este apoi determinat de adversarul care produce cele mai mari rezultate.
Sarcinile implicate în procesul de comparare campion-provocator sunt enumerate mai jos mai detaliat:
- Evaluarea fiecărui model rival.
- Evaluarea punctajelor finale.
- Compararea rezultatelor evaluării pentru a stabili contestatorul victorios.
- Adăugarea proaspătului campion în arhivă
16. Descrieți aplicațiile la nivel de întreprindere ale ciclului de viață MLOps?
Trebuie să încetăm să considerăm învățarea automată doar ca un experiment iterativ pentru ca modelele de învățare automată să intre în producție. MLOps este uniunea dintre ingineria software și învățarea automată.
Rezultatul final trebuie imaginat ca atare. Prin urmare, codul pentru un produs tehnologic trebuie să fie testat, funcțional și modular.
MLOps are o durată de viață comparabilă cu un flux convențional de învățare automată, cu excepția faptului că modelul este păstrat în proces până la producție.
Inginerii MLOps urmăresc apoi acest lucru pentru a se asigura că calitatea modelului în producție este cea dorită.
Iată câteva cazuri de utilizare pentru mai multe dintre tehnologiile MLOps:
- Registre model: este ceea ce pare a fi. Echipele mai mari stochează și mențin evidența modelelor de versiuni în registrele de modele. Chiar și întoarcerea la o versiune anterioară este o opțiune.
- Magazin de caracteristici: atunci când aveți de-a face cu seturi de date mai mari, ar putea exista versiuni distincte ale seturilor de date analitice și subseturi pentru sarcini specifice. Un magazin de funcții este o modalitate de ultimă oră, de bun gust, de a folosi munca de pregătire a datelor din versiuni anterioare sau de la alte echipe.
- Stocare pentru metadate: este esențial să monitorizați corect metadatele pe parcursul producției dacă datele nestructurate, cum ar fi datele de imagine și text, vor fi utilizate cu succes.
Concluzie
Este esențial să rețineți că, în majoritatea cazurilor, intervievatorul caută un sistem, în timp ce candidatul caută o soluție.
Primul se bazează pe abilitățile tale tehnice, în timp ce al doilea se referă la metoda pe care o folosești pentru a-ți demonstra competența.
Există mai multe proceduri pe care ar trebui să le urmați atunci când răspundeți la întrebările interviului MLOps pentru a ajuta intervievatorul să înțeleagă mai bine cum intenționați să evaluați și să abordați problema în cauză.
Concentrarea lor este mai mult pe reacția incorectă decât pe cea corectă. O soluție spune o poveste, iar sistemul dumneavoastră este cea mai bună ilustrare a cunoștințelor și capacității dumneavoastră de comunicare.
Lasă un comentariu