Pregled sadržaja[Sakriti][Pokazati]
- 1. Što mislite pod MLOps?
- 2. Kako se podatkovni znanstvenici, podatkovni inženjeri i ML inženjeri razlikuju jedni od drugih?
- 3. Što razlikuje MLOps od ModelOpsa i AIOpsa?
- 4. Možete li mi reći neke od prednosti MLOps-a?
- 5. Možete li mi reći koje su komponente MLOps-a?
- 6. Koji rizici dolaze s korištenjem znanosti o podacima?
- 7. Možete li objasniti što je model drift?
- 8. Na koliko različitih načina se mogu primijeniti MLO-ovi, po vašem mišljenju?
- 9. Što odvaja statičku implementaciju od dinamičke implementacije?
- 10. Koje tehnike testiranja proizvodnje poznajete?
- 11. Što razlikuje tokovnu obradu od skupne obrade?
- 12. Što mislite pod Trening Serving Skew?
- 13. Što podrazumijevate pod Registrom modela?
- 14. Možete li elaborirati prednosti Model Registry-a?
- 15. Možete li objasniti kako tehnika Champion-Challenger funkcionira?
- 16. Opišite aplikacije na razini poduzeća u životnom ciklusu MLOps-a?
- Zaključak
Tvrtke sve češće koriste nove tehnologije poput umjetne inteligencije (AI) i strojnog učenja (ML) kako bi javnosti povećale dostupnost informacija i usluga.
Te se tehnologije sve više koriste u raznim sektorima, uključujući bankarstvo, financije, maloprodaju, proizvodnju, pa čak i zdravstvenu skrb.
Podatkovni znanstvenici, inženjeri strojnog učenja i inženjeri umjetne inteligencije traženi su od sve većeg broja tvrtki.
Poznavanje mogućeg stroj za učenje pitanja o operativnom intervjuu koja bi vam mogli postaviti menadžeri za zapošljavanje i regruti neophodna su ako želite raditi u područjima ML ili MLOps.
U ovom postu možete naučiti kako odgovoriti na neka od pitanja MLOps intervjua dok radite na dobivanju posla iz snova.
1. Što mislite pod MLOps?
Tema operacionalizacije modela ML-a u središtu je MLO-a, također poznatog kao Operacije strojnog učenja, polja u razvoju unutar veće AI/DS/ML arene.
Glavni cilj pristupa i kulture softverskog inženjeringa poznate kao MLOps je integrirati stvaranje modela strojnog učenja/znanosti podataka i njihovu naknadnu operacionalizaciju (Ops).
Konvencionalni DevOps i MLOps dijele određene sličnosti, međutim, MLOps se također uvelike razlikuje od tradicionalnog DevOpsa.
MLOps dodaje novi sloj složenosti usredotočujući se na podatke, dok se DevOps prvenstveno fokusira na operacionalizaciju koda i izdanja softvera koja ne mogu imati status.
Kombinacija ML-a, podataka i operacija ono je što MLOps-u daje njegov uobičajeni naziv (strojno učenje, podatkovni inženjering i DevOps).
2. Kako se podatkovni znanstvenici, podatkovni inženjeri i ML inženjeri razlikuju jedni od drugih?
Po mom mišljenju, varira ovisno o tvrtki. Okruženje za prijenos i transformaciju podataka, kao i njihovu pohranu, izgradili su podatkovni inženjeri.
Znanstvenici koji se bave podacima stručnjaci su za korištenje znanstvenih i statističkih tehnika za analizu podataka i izvođenje zaključaka, uključujući predviđanje budućeg ponašanja na temelju trendova koji su sada na snazi.
Softverski inženjeri proučavali su operacije i upravljanje infrastrukturom za implementaciju prije nekoliko godina. S druge strane, operativni timovi proučavali su razvoj koristeći infrastrukturu kao kod. Ova dva toka proizvela su DevOps poziciju.
MLOps je u istoj kategoriji kao i Data Scientist i Data Engineer. Inženjeri podataka stječu znanje o infrastrukturi potrebnoj za podršku životnim ciklusima modela i stvaranje cjevovoda za kontinuiranu obuku.
Znanstvenici koji se bave podacima nastoje razviti svoje mogućnosti implementacije modela i bodovanja.
Podatkovni cjevovod proizvodne razine izgradili su ML inženjeri koristeći infrastrukturu koja transformira neobrađene podatke u ulazne podatke potrebne za podatkovni znanstveni model, hostuje i pokreće model te šalje skup podataka u nizvodne sustave.
I inženjeri podataka i znanstvenici podataka sposobni su postati inženjeri ML-a.
3. Što razlikuje MLOps od ModelOpsa i AIOpsa?
Kod konstruiranja od kraja do kraja algoritmi strojnog učenja, MLOps je DevOps aplikacija koja uključuje prikupljanje podataka, prethodnu obradu podataka, stvaranje modela, implementaciju modela u proizvodnju, praćenje modela u proizvodnji i periodičnu nadogradnju modela.
Korištenje DevOps-a u rukovanju cijelom implementacijom bilo kojeg algoritma, kao što su modeli temeljeni na pravilima, poznato je kao ModelOps.
AI Ops koristi DevOps principe za stvaranje AI aplikacija od nule.
4. Možete li mi reći neke od prednosti MLOps-a?
- Znanstvenici koji se bave podacima i programeri MLOps-a mogu brzo ponovno pokrenuti ispitivanja kako bi osigurali da su modeli obučeni i procijenjeni na odgovarajući način jer MLOps pomaže automatizirati sve ili većinu zadataka/koraka u MDLC-u (životni ciklus razvoja modela). Dodatno dozvole verzija podataka i modela.
- Provođenje MLOps ideja u praksi omogućuje inženjerima podataka i znanstvenicima podataka neograničeni pristup kultiviranim i odabranim skupovima podataka, što eksponencijalno ubrzava razvoj modela.
- Znanstvenici koji se bave podacima moći će se vratiti na model koji je imao bolje rezultate ako trenutna iteracija ne ispuni očekivanja zahvaljujući mogućnosti da modeli i skupovi podataka imaju verziju, što će značajno poboljšati revizijski trag modela.
- Budući da se MLOps metode snažno oslanjaju na DevOps, one također uključuju brojne CI/CD koncepte, što poboljšava kvaliteta i pouzdanost koda.
5. Možete li mi reći koje su komponente MLOps-a?
dizajn: MLO-ovi uvelike uključuju dizajnersko razmišljanje. Počevši od prirode problema, testiranja hipoteza, arhitekture i implementacije
Izgradnja modela: Testiranje modela i provjera valjanosti dio su ovog koraka, zajedno s projektiranjem podataka i eksperimentima za postavljanje najboljih sustava strojnog učenja.
operacije: Model se mora implementirati kao dio operacija i stalno provjeravati i ocjenjivati. CI/CD procesi se zatim prate i pokreću pomoću alata za orkestraciju.
6. Koji rizici dolaze s korištenjem znanosti o podacima?
- Teško je skalirati model u cijeloj tvrtki.
- Bez upozorenja, model se gasi i prestaje raditi.
- Uglavnom, točnost modela postaje lošija s vremenom.
- Model daje netočna predviđanja na temelju specifičnog opažanja koje se ne može dalje ispitati.
- Znanstvenici koji se bave podacima također bi trebali održavati modele, ali oni su skupi.
- MLO se mogu koristiti za smanjenje ovih rizika.
7. Možete li objasniti što je model drift?
Kada se izvedba faze zaključivanja modela (koristeći podatke iz stvarnog svijeta) pogoršava u odnosu na izvedbu faze obuke, to je poznato kao pomicanje modela, također poznato kao pomicanje ideje (pomoću povijesnih, označenih podataka).
Performanse modela su iskrivljene u usporedbi s fazama obuke i posluživanja, otuda i naziv "iskrivljenost treniranja/serviranja".
Brojni čimbenici, uključujući:
- Temeljni način na koji se podaci distribuiraju se promijenio.
- Obuka je bila usredotočena na mali broj kategorija, međutim, ekološka promjena koja se upravo dogodila dodala je još jedno područje.
- U NLP poteškoćama, podaci iz stvarnog svijeta imaju nesrazmjerno veću količinu brojčanih tokena od podataka za obuku.
- Neočekivani događaji, kao što je predviđanje da će model izgrađen na podacima prije COVID-a imati znatno lošiju izvedbu na podacima prikupljenim tijekom epidemije COVID-19.
Kontinuirano praćenje performansi modela uvijek je potrebno za prepoznavanje pomaka modela.
Skoro uvijek je potrebna ponovna obuka modela kao lijek kada postoji postojano opadanje izvedbe modela; mora se utvrditi razlog pada i primijeniti odgovarajući postupci liječenja.
8. Na koliko različitih načina se mogu primijeniti MLO-ovi, po vašem mišljenju?
Postoje tri metode za primjenu MLO-ova u praksi:
MLOps razina 0 (ručni proces): Na ovoj se razini svi koraci—uključujući pripremu podataka, analizu i obuku—provode ručno. Svaka faza mora se izvesti ručno, kao i prijelaz s jedne na drugu.
Temeljna premisa je da vaš tim za znanost 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 obično je integrirano u izvršavanje skripte ili izvršavanje bilježnice, pri čemu se implementacija odvija u mikroservisu s REST API.
MLOps razina 1 (automatizacija ML cjevovoda): Automatizacijom ML procesa, cilj je kontinuirano trenirati model (CT). Na ovaj način možete postići kontinuiranu isporuku usluge predviđanja modela.
Naša implementacija cijelog cjevovoda obuke osigurava da se model automatski obučava u proizvodnji koristeći nove podatke na temelju aktivnih okidača cjevovoda.
MLOps razina 2 (automatizacija CI/CD cjevovoda): ide jedan korak iznad razine MLOps. Snažan automatizirani CI/CD sustav potreban je ako želite brzo i pouzdano ažurirati cjevovode u proizvodnji:
- Vi stvarate izvorni kod i izvršavate brojne testove kroz CI fazu. Paketi, izvršne datoteke i artefakti su izlazi faze, koji će biti implementirani kasnije.
- Artefakti koje je stvorio CI stupanj raspoređuju se u ciljno okruženje tijekom CD koraka. Postavljeni cjevovod s revidiranom implementacijom modela rezultat je faze.
- Prije nego što cjevovod započne novu iteraciju eksperimenta, znanstvenici koji se bave podacima i dalje moraju ručno obaviti fazu analize podataka i modela.
9. Što odvaja statičku implementaciju od dinamičke implementacije?
Model je izvanmrežno obučen za Statička implementacija. Drugim riječima, model treniramo točno jednom i zatim ga koristimo neko vrijeme. Nakon što se model lokalno uvježba, pohranjuje se i šalje na poslužitelj kako bi se koristio za izradu predviđanja u stvarnom vremenu.
Model se zatim distribuira kao instalacijski aplikacijski softver. program koji omogućuje skupno bodovanje zahtjeva, kao ilustracija.
Model je obučen online za Dinamička implementacija. To jest, sustavu se stalno dodaju novi podaci, a model se kontinuirano ažurira kako bi ih uračunao.
Kao rezultat toga, možete napraviti predviđanja pomoću poslužitelja na zahtjev. Nakon toga, model se stavlja u upotrebu tako što se isporučuje kao API krajnja točka koja reagira na korisničke upite, koristeći web okvir kao što je Flask ili FastAPI.
10. Koje tehnike testiranja proizvodnje poznajete?
Serijsko ispitivanje: Provodeći testiranje u okruženju različitom od okruženja za obuku, provjerava model. Korištenjem metrike po izboru, kao što je točnost, RMSE, itd., grupno testiranje se provodi na grupi uzoraka podataka kako bi se potvrdilo zaključivanje modela.
Skupno testiranje može se provesti na različitim računalnim platformama, poput testnog poslužitelja, udaljenog poslužitelja ili oblaka. Tipično, model se daje kao serijalizirana datoteka, koja se učitava kao objekt i izvodi 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 temelju tvrtke ili operacija, statistički pristupi koriste se za analizu rezultata A/B testiranja kako bi se odlučilo koji će model imati bolje rezultate u proizvodnji. Obično se A/B testiranje provodi na sljedeći način:
- Podaci uživo ili podaci u stvarnom vremenu podijeljeni su ili segmentirani u dva skupa, skup A i skup B.
- Podaci skupa A šalju se zastarjelom modelu, dok se podaci skupa B šalju ažuriranom modelu.
- Ovisno o poslovnom slučaju ili procesima, nekoliko statističkih pristupa može se koristiti za procjenu izvedbe modela (na primjer, točnost, preciznost, itd.) kako bi se utvrdilo nadmašuje li novi model (model B) stari model (model A).
- Zatim radimo statističko testiranje hipoteze: nulta hipoteza kaže da novi model nema utjecaja na prosječnu vrijednost poslovnih pokazatelja koji se prate. Prema alternativnoj hipotezi, novi model povećava prosječnu vrijednost praćenja poslovnih pokazatelja.
- Na kraju, procjenjujemo rezultira li novim modelom značajnim poboljšanjem određenih poslovnih KPI-jeva.
Test sjene ili pozornice: Model se procjenjuje u duplikatu proizvodnog okruženja prije nego što se koristi u proizvodnji (pripremno okruženje).
To je ključno za određivanje izvedbe modela s podacima u stvarnom vremenu i provjeru otpornosti modela. provodi se zaključivanjem istih podataka kao i produkcijski cjevovod i isporukom razvijenog ogranka ili modela koji se testira na pripremnom poslužitelju.
Jedina je mana to što nikakvi poslovni izbori neće biti napravljeni na probnom poslužitelju niti će biti vidljivi krajnjim korisnicima kao rezultat razvojne grane.
Otpornost i izvedba modela bit će procijenjena statistički korištenjem rezultata okruženja za prikazivanje pomoću odgovarajućih metrika.
11. Što razlikuje tokovnu obradu od skupne obrade?
Možemo manipulirati karakteristikama koje koristimo za izradu naših prognoza u stvarnom vremenu koristeći dvije metode obrade: batch i stream.
Skupni proces značajke iz prethodne točke u vremenu za određeni objekt, koji se zatim koristi za generiranje predviđanja u stvarnom vremenu.
- Ovdje možemo raditi intenzivne izračune značajki izvan mreže i pripremiti podatke za brzo zaključivanje.
- Značajke, međutim, dob jer su bile unaprijed određene u prošlosti. Ovo bi mogao biti veliki nedostatak ako se vaša prognoza temelji na nedavnim pojavama. (Na primjer, identificiranje lažnih transakcija čim je to moguće.)
Uz značajke strujanja gotovo u stvarnom vremenu za određeni entitet, zaključak se izvodi u obradi toka na danom skupu ulaza.
- Ovdje, dajući modelu značajke strujanja u stvarnom vremenu, možemo dobiti točnija predviđanja.
- Međutim, potrebna je dodatna infrastruktura za obradu tokova i održavanje tokova podataka (Kafka, Kinesis, itd.). (Apache Flink, Beam, itd.)
12. Što mislite pod Trening Serving Skew?
Nesrazmjer između performansi prilikom serviranja i performansi tijekom treninga poznat je kao iskrivljenost treninga i serviranja. Ovo iskrivljenje može biti izazvano sljedećim čimbenicima:
- Razlika u načinu na koji rukujete podacima između cjevovoda za posluživanje i obuku.
- Promjena podataka s vašeg treninga na vašu uslugu.
- Kanal povratne informacije između vašeg algoritma i modela.
13. Što podrazumijevate pod Registrom modela?
Registar modela središnje je spremište u kojem kreatori modela mogu objaviti modele koji su prikladni za upotrebu u proizvodnji.
Programeri mogu surađivati s drugim timovima i dionicima kako bi upravljali životnim vijekom svih modela unutar tvrtke koristeći registar. Uvježbane modele može učitati podatkovni znanstvenik u registar modela.
Modeli su pripremljeni za testiranje, validaciju i implementaciju u proizvodnju nakon što budu u registru. Osim toga, uvježbani modeli pohranjuju se u registre modela radi brzog pristupa bilo kojoj integriranoj aplikaciji ili usluzi.
Kako bismo testirali, ocijenili i implementirali model u proizvodnju, programeri softvera a recenzenti mogu brzo prepoznati i odabrati samo najbolju verziju uvježbanih modela (na temelju kriterija ocjenjivanja).
14. Možete li elaborirati prednosti Model Registry-a?
Slijede neki od načina na koje registar modela usmjerava upravljanje životnim ciklusom modela:
- Kako biste olakšali implementaciju, spremite zahtjeve za vrijeme izvođenja i metapodatke za svoje obučene modele.
- Vaši obučeni, implementirani i povučeni modeli trebaju biti registrirani, praćeni i verzirani u centraliziranom repozitoriju koji se može pretraživati.
- Stvorite automatizirane cjevovode koji omogućuju kontinuiranu isporuku, obuku i integraciju vašeg proizvodnog modela.
- Usporedite novoobučene modele (ili modele izazivača) u prizornom okruženju s modelima koji su trenutno u proizvodnji (modeli prvaka).
15. Možete li objasniti kako tehnika Champion-Challenger funkcionira?
Moguće je testirati različite operativne odluke u proizvodnji pomoću tehnike Champion Challenger. Vjerojatno ste čuli za A/B testiranje u kontekstu marketinga.
Na primjer, možete napisati dva različita retka predmeta i nasumično ih distribuirati svojoj ciljanoj demografskoj skupini kako biste maksimalno povećali stopu otvaranja za kampanju e-pošte.
Sustav bilježi izvedbu e-pošte (tj. radnju otvaranja e-pošte) u odnosu na njen predmet, omogućujući vam da usporedite svaki udio otvaranja predmeta kako biste odredili koji je najučinkovitiji.
Champion-Challenger je u tom smislu usporediv s A/B testiranjem. Možete koristiti logiku odlučivanja za procjenu svakog ishoda i odabir najučinkovitijeg dok eksperimentirate s različitim metodama kako biste došli do izbora.
Najuspješniji model korelira s prvakom. Prvi izazivač i odgovarajući popis izazivača sada su sve što je prisutno u prvoj fazi izvršenja umjesto prvaka.
Šampiona odabire sustav za daljnje izvođenje koraka posla.
Izazivači su međusobno suprotstavljeni. Novog prvaka zatim određuje izazivač koji postigne najbolje rezultate.
Zadaci uključeni u proces usporedbe prvaka i izazivača navedeni su u nastavku s više detalja:
- Ocjenjivanje svakog od konkurentskih modela.
- Ocjenjivanje konačnih bodova.
- Uspoređivanje rezultata evaluacije kako bi se utvrdio pobjednički izazivač.
- Dodavanje svježeg prvaka u arhivu
16. Opišite aplikacije na razini poduzeća u životnom ciklusu MLOps-a?
Moramo prestati smatrati strojno učenje samo iterativnim eksperimentom kako bi modeli strojnog učenja ušli u proizvodnju. MLOps je spoj softverskog inženjeringa sa strojnim učenjem.
Gotov rezultat treba zamisliti takvim. Dakle, kôd za tehnološki proizvod mora biti testiran, funkcionalan i modularan.
MLOps ima životni vijek koji je usporediv s konvencionalnim tijekom strojnog učenja, s iznimkom da se model drži u procesu do proizvodnje.
Inženjeri MLOps-a zatim prate to kako bi bili sigurni da je kvaliteta modela u proizvodnji ono što je predviđeno.
Evo nekoliko slučajeva uporabe za nekoliko MLOps tehnologija:
- Modeli registara: To je ono što se čini. Veći timovi pohranjuju i održavaju praćenje modela verzija u registrima modela. Čak je i povratak na prethodnu verziju opcija.
- Pohrana značajki: kada se radi o većim skupovima podataka, mogu postojati različite verzije analitičkih skupova podataka i podskupova za specifične zadatke. Pohrana značajki je vrhunski, ukusan način korištenja rada na pripremi podataka iz ranijih pokretanja ili iz drugih timova.
- Pohrane metapodataka: ključno je pravilno pratiti metapodatke tijekom proizvodnje ako se nestrukturirani podaci, kao što su slikovni i tekstualni podaci, žele uspješno koristiti.
Zaključak
Važno je imati na umu da u većini slučajeva ispitivač traži sustav, dok kandidat traži rješenje.
Prvi se temelji na vašim tehničkim vještinama, dok je drugi sve o metodi koju koristite da biste pokazali svoju kompetenciju.
Postoji nekoliko postupaka koje biste trebali poduzeti kada odgovarate na pitanja MLOps intervjua kako biste pomogli ispitivaču da bolje razumije kako namjeravate procijeniti i riješiti problem koji je u pitanju.
Njihova je koncentracija više na netočnoj nego na ispravnoj reakciji. Rješenje priča priču, a vaš sustav najbolja je ilustracija vašeg znanja i sposobnosti komunikacije.
Ostavi odgovor