Sadržaj[Sakrij][Prikaži]
- 1. Šta mislite pod MLOps?
- 2. Kako se naučnici podataka, inženjeri podataka i ML inženjeri razlikuju jedni od drugih?
- 3. Šta razlikuje MLOps od ModelOps-a i AIOps-a?
- 4. Možete li mi reći neke od prednosti MLOps-a?
- 5. Možete li mi reći komponente MLOps-a?
- 6. Koje rizike donosi korištenje nauke o podacima?
- 7. Možete li objasniti, šta je model drift?
- 8. Na koliko različitih načina se MLOps mogu primijeniti, po vašem mišljenju?
- 9. Šta razlikuje statičku implementaciju od dinamičke?
- 10. Koje tehnike testiranja proizvodnje poznajete?
- 11. Šta razlikuje stream obradu od batch obrade?
- 12. Šta mislite pod Trening Serving Skew?
- 13. Šta mislite pod modelom registra?
- 14. Možete li detaljnije objasniti prednosti Model Registry?
- 15. Možete li objasniti kako radi tehnika Champion-Challenger?
- 16. Opišite aplikacije životnog ciklusa MLOps na nivou preduzeća?
- zaključak
Kompanije češće koriste nove tehnologije kao što su umjetna inteligencija (AI) i strojno učenje (ML) kako bi povećale dostupnost javnosti informacijama i uslugama.
Ove tehnologije se sve više koriste u različitim sektorima, uključujući bankarstvo, finansije, maloprodaju, proizvodnju, pa čak i zdravstvo.
Naučnici podataka, inženjeri mašinskog učenja i inženjeri veštačke inteligencije traženi su od sve većeg broja kompanija.
Znajući moguće mašinsko učenje Pitanja na operativnom intervjuu koja bi vam mogli postaviti menadžeri za zapošljavanje i regruteri su od suštinskog značaja ako želite da radite u oblastima ML ili MLOps.
Možete naučiti kako odgovoriti na neka od pitanja za MLOps intervju u ovom postu dok radite na pronalaženju posla iz snova.
1. Šta mislite pod MLOps?
Tema operacionalizacije ML modela je u fokusu MLOps-a, takođe poznatih kao Operacije mašinskog učenja, oblasti u razvoju u okviru veće AI/DS/ML arene.
Glavni cilj pristupa i kulture softverskog inženjeringa poznate kao MLOps je da integriše kreiranje modela mašinskog učenja/nauke o podacima i njihovu kasniju operacionalizaciju (Ops).
Konvencionalni DevOps i MLOps dijele određene sličnosti, međutim, MLOps se također uvelike razlikuje od tradicionalnih DevOps-a.
MLOps dodaje novi sloj složenosti fokusirajući se na podatke, dok se DevOps prvenstveno fokusira na operacionalizaciju koda i softverskih izdanja koja ne mogu imati status.
Kombinacija ML-a, podataka i operacija je ono što MLOps-u daje uobičajeno ime (mašinsko učenje, inženjering podataka i DevOps).
2. Kako se naučnici podataka, inženjeri podataka i ML inženjeri razlikuju jedni od drugih?
Razlikuje se, po mom mišljenju, u zavisnosti od firme. Okruženje za transport i transformaciju podataka, kao i njihovo skladištenje, izgrađuju inženjeri podataka.
Naučnici podataka su stručnjaci u korištenju naučnih i statističkih tehnika za analizu podataka i donošenje zaključaka, uključujući predviđanje budućeg ponašanja na osnovu trendova koji su sada na snazi.
Softverski inženjeri su proučavali operacije i upravljanje infrastrukturom za implementaciju prije nekoliko godina. Operativni timovi su, s druge strane, proučavali razvoj dok su koristili infrastrukturu kao kod. Ova dva toka su proizvela DevOps poziciju.
MLOps je u istoj kategoriji kao Data Scientist i Data Engineer. Inženjeri podataka stiču znanje o infrastrukturi potrebnoj za podršku životnih ciklusa modela i kreiranje cevovoda za stalnu obuku.
Naučnici podataka nastoje razviti svoje mogućnosti implementacije modela i bodovanja.
Inženjeri ML-a koriste infrastrukturu koja transformiše neobrađene podatke u ulazne podatke potrebne za model nauke o podacima, hostuje i pokreće model i šalje skup podataka u nizvodne sisteme.
I inženjeri podataka i naučnici podataka su sposobni da postanu ML inženjeri.
3. Šta razlikuje MLOps od ModelOps-a i AIOps-a?
Prilikom izgradnje od kraja do kraja Algoritmi mašinskog učenja, MLOps je DevOps aplikacija koja uključuje prikupljanje podataka, prethodnu obradu podataka, kreiranje modela, implementaciju modela u proizvodnji, praćenje modela u proizvodnji i periodičnu nadogradnju modela.
Upotreba DevOps-a u rukovanju cjelokupnom implementacijom bilo kojeg algoritama, kao što su modeli zasnovani na pravilima, poznata je kao ModelOps.
AI Ops koristi DevOps principe za kreiranje AI aplikacija od nule.
4. Možete li mi reći neke od prednosti MLOps-a?
- Naučnici podataka i MLOps programeri mogu brzo ponovo pokrenuti probe kako bi osigurali da su modeli obučeni i procijenjeni na odgovarajući način jer MLOps pomaže u automatizaciji svih ili većine zadataka/koraka u MDLC-u (životni ciklus razvoja modela). Dodatno dozvole verzijama podataka i modela.
- Provođenje MLOps ideja u praksi omogućava inženjerima podataka i naučnicima podataka da imaju neograničen pristup kultivisanim i kuriranim skupovima podataka, što eksponencijalno ubrzava razvoj modela.
- Naučnici podataka će moći da se vrate na model koji je imao bolje rezultate ako trenutna iteracija ne ispuni očekivanja zahvaljujući mogućnosti verzionisanja modela i skupova podataka, što će značajno poboljšati revizijski trag modela.
- Kako se MLOps metode snažno oslanjaju na DevOps, one također uključuju brojne CI/CD koncepte, što poboljšava kvalitet i pouzdanost koda.
5. Možete li mi reći komponente MLOps-a?
dizajn: MLOps u velikoj mjeri uključuju dizajn razmišljanja. Počevši od prirode problema, testiranja hipoteza, arhitekture i implementacije
Izgradnja modela: Testiranje i validacija modela dio su ovog koraka, zajedno sa procesima inženjeringa podataka i eksperimentisanjem za postavljanje najboljih sistema mašinskog učenja.
operacije: Model se mora implementirati kao dio operacija i kontinuirano provjeravati i evaluirati. CI/CD procesi se zatim prate i pokreću pomoću alata za orkestraciju.
6. Koje rizike donosi korištenje nauke o podacima?
- Teško je proširiti model u cijeloj kompaniji.
- Bez upozorenja, model se gasi i prestaje da funkcioniše.
- Uglavnom se tačnost modela s vremenom pogoršava.
- Model daje netačna predviđanja na osnovu specifičnog zapažanja koje se ne može dalje ispitati.
- Naučnici podataka bi takođe trebali održavati modele, ali oni su skupi.
- MLOps se mogu koristiti za smanjenje ovih rizika.
7. Možete li objasniti, šta je model drift?
Kada se performanse faze zaključivanja modela (koristeći podatke iz stvarnog svijeta) pogoršaju u odnosu na performanse faze obuke, to je poznato kao pomjeranje modela, također poznato kao pomicanje ideje (koristeći historijske, označene podatke).
Performanse modela su iskrivljene u poređenju sa fazama treninga i serviranja, pa otuda i naziv "trening/serve skew".
Brojni faktori, uključujući:
- Osnovni način na koji se podaci distribuiraju se promijenio.
- Obuka se fokusirala na mali broj kategorija, međutim, promjena okoliša koja se upravo dogodila dodala je još jednu oblast.
- U teškoćama NLP-a, podaci iz stvarnog svijeta imaju nesrazmjerno veću količinu tokena brojeva od podataka o obuci.
- Neočekivana pojava, kao što je model izgrađen na podacima prije COVID-a za koji se predviđa da će biti znatno lošiji na podacima prikupljenim tokom epidemije COVID-19.
Kontinuirano praćenje performansi modela je uvijek potrebno da bi se identificiralo odstupanje modela.
Preobuka modela je gotovo uvijek potrebna kao lijek kada postoji stalni pad performansi modela; mora se utvrditi razlog za smanjenje i moraju se koristiti odgovarajuće procedure liječenja.
8. Na koliko različitih načina se MLOps mogu primijeniti, po vašem mišljenju?
Postoje tri metode za stavljanje MLOps-a u praksu:
MLOps nivo 0 (ručni proces): Na ovom nivou, svi koraci—uključujući pripremu podataka, analizu i obuku—izvode se ručno. Svaka faza se mora izvoditi ručno, kao i prijelaz s jedne na drugu.
Osnovna premisa je da vaš tim za nauku o podacima upravlja samo malim brojem modela koji se ne ažuriraju često.
Kao rezultat toga, ne postoji kontinuirana integracija (CI) ili kontinuirana implementacija (CD), a testiranje koda je obično integrirano u izvršavanje skripte ili bilježnice, pri čemu se implementacija odvija u mikroservisu sa REST API.
MLOps nivo 1 (automatizacija ML pipeline): Automatizacijom procesa ML-a, cilj je kontinuirana obuka modela (CT). Na ovaj način možete postići kontinuiranu isporuku usluge predviđanja modela.
Naša implementacija cijelog cevovoda za obuku osigurava da se model automatski obučava u proizvodnji koristeći nove podatke bazirane na aktivnim okidačima cjevovoda.
MLOps nivo 2 (automatizacija CI/CD cevovoda): Ide jedan korak iznad MLOps nivoa. Snažan automatizirani CI/CD sistem je potreban ako želite brzo i pouzdano ažurirati cjevovode u proizvodnji:
- Vi kreirate izvorni kod i izvodite brojne testove kroz CI fazu. Paketi, izvršni programi i artefakti su izlazi faze, koji će biti raspoređeni kasnije.
- Artefakti kreirani od strane CI faze se postavljaju na ciljno okruženje tokom CD koraka. Raspoređeni cevovod sa implementacijom revidiranog modela je izlaz faze.
- Prije nego što cevovod započne novu iteraciju eksperimenta, naučnici podataka moraju još uvijek ručno izvršiti fazu analize podataka i modela.
9. Šta razlikuje statičku implementaciju od dinamičke?
Model je obučen van mreže za Statička implementacija. Drugim riječima, treniramo model precizno jednom, a zatim ga koristimo neko vrijeme. Nakon što je model lokalno obučen, on se pohranjuje i šalje na server kako bi se koristio za izradu predviđanja u realnom vremenu.
Model se zatim distribuira kao aplikativni softver koji se može instalirati. program koji omogućava grupno bodovanje zahtjeva, kao ilustraciju.
Model je obučen online za Dynamic Deployment. Odnosno, novi podaci se stalno dodaju u sistem, a model se kontinuirano ažurira kako bi se to uračunalo.
Kao rezultat, možete napraviti predviđanja koristeći server na zahtjev. Nakon toga, model se stavlja u upotrebu tako što se isporučuje kao API krajnja točka koja reagira na upite korisnika, koristeći web okvir kao što je Flask ili FastAPI.
10. Koje tehnike testiranja proizvodnje poznajete?
Batch testiranje: Sprovođenjem testiranja u okruženju koje se razlikuje od okruženja za obuku, on provjerava model. Koristeći metriku po izboru, kao što je tačnost, RMSE, itd., serijsko testiranje se vrši na grupi uzoraka podataka kako bi se potvrdilo zaključivanje modela.
Paketno testiranje se može izvesti na različitim računarskim platformama, kao što su test server, udaljeni server ili oblak. Tipično, model se daje kao serijalizovana datoteka, koja se učitava kao objekat i zaključuje iz testnih podataka.
A / B testiranje: Često se koristi za analizu marketinških kampanja kao i za dizajn usluga (web stranice, mobilne aplikacije, itd.).
Na osnovu kompanije ili poslovanja, statistički pristupi se koriste za analizu rezultata A/B testiranja kako bi se odlučilo koji će model imati bolji učinak u proizvodnji. Obično se A/B testiranje radi na sljedeći način:
- Podaci uživo ili u realnom vremenu podijeljeni su ili segmentirani u dva skupa, skup A i skup B.
- Podaci skupa A se šalju zastarjelom modelu, dok se podaci skupa B šalju ažuriranom modelu.
- U zavisnosti od poslovnog slučaja upotrebe ili procesa, može se koristiti nekoliko statističkih pristupa za procenu performansi modela (na primer, tačnost, preciznost, itd.) kako bi se utvrdilo da li novi model (model B) nadmašuje stari model (model A).
- Zatim radimo statističko testiranje hipoteze: nulta hipoteza kaže da novi model nema efekta na prosječnu vrijednost poslovnih indikatora koji se prate. Prema alternativnoj hipotezi, novi model povećava prosječnu vrijednost indikatora poslovanja praćenja.
- Na kraju, procjenjujemo da li novi model rezultira značajnim poboljšanjem određenih poslovnih KPI-ja.
Test u sjeni ili pozornici: Model se evaluira u duplikatu proizvodnog okruženja prije nego što se koristi u proizvodnji (okruženje za postavljanje).
Ovo je ključno za određivanje performansi modela sa podacima u realnom vremenu i validaciju otpornosti modela. se izvodi zaključivanjem istih podataka kao proizvodni cevovod i isporukom razvijene grane ili modela za testiranje na serveru za provođenje.
Jedina mana je to što nikakvi poslovni izbori neće biti napravljeni na scenskom serveru ili vidljivi krajnjim korisnicima kao rezultat razvojne grane.
Otpornost i performanse modela bit će procijenjene statistički korištenjem rezultata okruženja za postavljanje pomoću odgovarajućih metrika.
11. Šta razlikuje stream obradu od batch obrade?
Možemo manipulirati karakteristikama koje koristimo za proizvodnju naših prognoza u realnom vremenu koristeći dvije metode obrade: skupni i stream.
Batch proces karakteristike iz prethodnog trenutka za određeni objekat, koji se zatim koristi za generisanje predviđanja u realnom vremenu.
- Ovdje smo u mogućnosti raditi intenzivne proračune karakteristika van mreže i pripremiti podatke za brzo zaključivanje.
- Karakteristike, međutim, imaju dob od kada su bile unaprijed određene u prošlosti. Ovo može biti veliki nedostatak ako se vaša prognoza zasniva na nedavnim pojavama. (Na primjer, identificiranje lažnih transakcija što je prije moguće.)
Sa karakteristikama striminga skoro u realnom vremenu za određeni entitet, zaključivanje se izvodi u obradi toka na datom skupu ulaza.
- Ovdje, dajući modelu u realnom vremenu, streaming karakteristike, možemo dobiti preciznija predviđanja.
- Međutim, potrebna je dodatna infrastruktura za obradu tokova i održavanje tokova podataka (Kafka, Kinesis, itd.). (Apache Flink, Beam, itd.)
12. Šta mislite pod Trening Serving Skew?
Disparitet između performansi prilikom serviranja i učinka tokom treninga poznat je kao iskrivljenost prilikom serviranja. Ovo iskrivljenje može biti izazvano sljedećim faktorima:
- Razlika u načinu na koji rukujete podacima između cjevovoda za posluživanje i obuku.
- Promjena podataka sa vašeg treninga na vašu uslugu.
- Kanal povratne informacije između vašeg algoritma i modela.
13. Šta mislite pod modelom registra?
Registar modela je centralno spremište u kojem kreatori modela mogu objaviti modele koji su pogodni za upotrebu u proizvodnji.
Programeri mogu sarađivati s drugim timovima i dionicima kako bi upravljali životnim vijekom svih modela unutar poslovanja koristeći registar. Obučene modele naučnik podataka može učitati u registar modela.
Modeli se pripremaju za testiranje, validaciju i implementaciju u proizvodnju kada budu u registru. Dodatno, obučeni modeli se pohranjuju u registre modela za brzi pristup bilo kojoj integriranoj aplikaciji ili usluzi.
Kako bi testirali, evaluirali i implementirali model u proizvodnju, programeri softvera a recenzenti mogu brzo prepoznati i odabrati najbolju verziju obučenih modela (na osnovu kriterija evaluacije).
14. Možete li detaljnije objasniti prednosti Model Registry?
Slijedi nekoliko načina na koje registar modela pojednostavljuje upravljanje životnim ciklusom modela:
- Da biste olakšali implementaciju, sačuvajte zahtjeve vremena izvođenja i metapodatke za svoje obučene modele.
- Vaši obučeni, raspoređeni i penzionisani modeli trebaju biti registrirani, praćeni i verzionirani u centraliziranom, pretraživom spremištu.
- Kreirajte automatizovane cevovode koji omogućavaju kontinuiranu isporuku, obuku i integraciju vašeg proizvodnog modela.
- Uporedite novo obučene modele (ili modele izazivača) u okruženju za pripremu sa modelima koji su trenutno u proizvodnji (modeli šampiona).
15. Možete li objasniti kako radi tehnika Champion-Challenger?
Moguće je testirati različite operativne odluke u proizvodnji koristeći Champion Challenger tehniku. Vjerovatno ste čuli za A/B testiranje u kontekstu marketinga.
Na primjer, možete napisati dva različita naslova i nasumično ih distribuirati svojoj ciljnoj demografskoj skupini kako biste maksimalno povećali stopu otvorenosti za kampanju e-pošte.
Sistem beleži performanse e-pošte (tj. radnju otvaranja e-pošte) u odnosu na njenu temu, omogućavajući vam da uporedite stopu otvaranja svake linije predmeta kako biste odredili koja je najefikasnija.
Champion-Challenger je po ovom pitanju uporediv sa A/B testiranjem. Možete koristiti logiku odlučivanja za procjenu svakog ishoda i odabir najefikasnijeg dok eksperimentišete s različitim metodama kako biste došli do izbora.
Najuspješniji model korelira sa šampionom. Prvi izazivač i odgovarajuća lista izazivača su sada sve što je prisutno u prvoj fazi izvršenja umesto šampiona.
Sistem bira šampiona za dalje izvršavanje koraka posla.
Izazivači su u suprotnosti jedni s drugima. Zatim novog šampiona određuje izazivač koji daje najveće rezultate.
Zadaci uključeni u proces poređenja šampiona i izazivača su navedeni u nastavku detaljnije:
- Procjena svakog od konkurentskih modela.
- Procjena konačnih rezultata.
- Upoređivanje rezultata evaluacije kako bi se utvrdio pobjednički izazivač.
- Dodavanje svježeg šampiona u arhivu
16. Opišite aplikacije životnog ciklusa MLOps na nivou preduzeća?
Moramo prestati smatrati strojno učenje samo iterativnim eksperimentom kako bi modeli strojnog učenja ušli u proizvodnju. MLOps je unija softverskog inženjeringa i mašinskog učenja.
Gotov rezultat treba zamisliti kao takav. Stoga, kod za tehnološki proizvod mora biti testiran, funkcionalan i modularan.
MLOps ima životni vek koji je uporediv sa konvencionalnim tokom mašinskog učenja, sa izuzetkom da se model drži u procesu do proizvodnje.
MLOps inženjeri onda to paze kako bi bili sigurni da je kvalitet modela u proizvodnji ono što je predviđeno.
Evo nekoliko slučajeva upotrebe za nekoliko MLOps tehnologija:
- Model registara: To je ono što se čini. Veći timovi pohranjuju i održavaju praćenje modela verzija u registrima modela. Čak i povratak na prethodnu verziju je opcija.
- Prodavnica funkcija: Kada se radi o većim skupovima podataka, mogu postojati različite verzije analitičkih skupova podataka i podskupova za specifične zadatke. Prodavnica funkcija je vrhunski, ukusan način za korištenje rada na pripremi podataka iz ranijih pokretanja ili iz drugih timova.
- Skladišta za metapodatke: Ključno je pravilno pratiti metapodatke tokom proizvodnje ako se nestrukturirani podaci, kao što su slikovni i tekstualni podaci, trebaju uspješno koristiti.
zaključak
Ključno je imati na umu da u većini slučajeva anketar traži sistem, dok kandidat traži rješenje.
Prvi se zasniva na vašim tehničkim vještinama, dok se drugi odnosi na metodu kojom demonstrirate svoju kompetenciju.
Postoji nekoliko procedura koje biste trebali poduzeti kada odgovarate na pitanja MLOps intervjua kako biste ispitaniku pomogli da bolje razumije kako namjeravate procijeniti i pozabaviti se problemom koji je u pitanju.
Njihova je koncentracija više na pogrešnu reakciju nego na pravu. Rješenje priča priču, a vaš sistem je najbolja ilustracija vašeg znanja i kapaciteta za komunikaciju.
Ostavite odgovor