Indholdsfortegnelse[Skjule][At vise]
- 1. Hvad mener du med MLOps?
- 2. Hvordan adskiller dataforskere, dataingeniører og ML-ingeniører sig fra hinanden?
- 3. Hvad adskiller MLOps fra ModelOps og AIOps?
- 4. Kan du fortælle mig nogle af fordelene ved MLOps?
- 5. Kan du fortælle mig komponenterne i MLOps?
- 6. Hvilke risici følger med at bruge datavidenskab?
- 7. Kan du forklare, hvad er modeldrift?
- 8. Hvor mange forskellige måder kan MLO'er efter din mening anvendes?
- 9. Hvad adskiller statisk implementering fra dynamisk implementering?
- 10. Hvilke produktionstestteknikker kender du til?
- 11. Hvad adskiller strømbehandling fra batchbehandling?
- 12. Hvad mener du med at træne serveringsskævhed?
- 13. Hvad mener du med Model Registry?
- 14. Kan du uddybe fordelene ved Model Registry?
- 15. Kan du forklare Champion-Challenger teknikken virker?
- 16. Beskriv MLOps-livscyklussens applikationer på virksomhedsniveau?
- Konklusion
Virksomheder bruger oftere nye teknologier som kunstig intelligens (AI) og maskinlæring (ML) for at øge offentlighedens tilgængelighed til information og tjenester.
Disse teknologier bliver i stigende grad brugt i en række forskellige sektorer, herunder bank, finans, detailhandel, fremstilling og endda sundhedspleje.
Dataforskere, maskinlæringsingeniører og ingeniører inden for kunstig intelligens er efterspurgte fra et stigende antal virksomheder.
At kende det mulige machine learning Spørgsmål til operationsinterview, som ansættelsesledere og rekrutterere kunne stille dig, er afgørende, hvis du vil arbejde i ML- eller MLOps-felterne.
Du kan lære, hvordan du reagerer på nogle af MLOps-interviewspørgsmålene i dette indlæg, mens du arbejder på at få dit drømmejob.
1. Hvad mener du med MLOps?
Emnet for operationalisering af ML-modeller er fokus for MLOps, også kendt som Machine Learning Operations, et felt i udvikling inden for den mere store AI/DS/ML-arena.
Hovedmålet med den softwaretekniske tilgang og kultur kendt som MLOps er at integrere skabelsen af machine learning/data science-modeller og deres efterfølgende operationalisering (Ops).
Konventionelle DevOps og MLOps deler visse ligheder, men MLOps adskiller sig også meget fra traditionelle DevOps.
MLOps tilføjer et nyt lag af kompleksitet ved at fokusere på data, hvorimod DevOps primært fokuserer på operationalisering af kode og softwareudgivelser, der ikke kan være stateful.
Kombinationen af ML, Data og Ops er det, der giver MLOps dets almindelige navn (machine learning, data engineering og DevOps).
2. Hvordan adskiller dataforskere, dataingeniører og ML-ingeniører sig fra hinanden?
Det varierer efter min mening afhængigt af firmaet. Miljøet for transport og transformation af data, såvel som dets lagring, er bygget op af dataingeniører.
Dataforskere er eksperter i at bruge videnskabelige og statistiske teknikker til at analysere data og drage konklusioner, herunder at lave forudsigelser om fremtidig adfærd baseret på de tendenser, der nu er på plads.
Softwareingeniører studerede drift og styrede implementeringsinfrastruktur for et par år siden. Ops-teams studerede på den anden side udvikling, mens de brugte infrastruktur som en kode. En DevOps-position blev produceret af disse to streams.
MLOps er i samme kategori som Dataforsker og dataingeniør. Dataingeniører får viden om den nødvendige infrastruktur til at understøtte modellivscyklusser og skabe pipelines til løbende træning.
Dataforskere søger at udvikle deres modelimplementering og scoringskapacitet.
En datapipeline i produktionskvalitet er bygget af ML-ingeniører, der bruger infrastrukturen, der transformerer rå data til det input, som en datavidenskabsmodel kræver, hoster og kører modellen og udsender et scoret datasæt til downstream-systemer.
Både dataingeniører og dataforskere er i stand til at blive ML-ingeniører.
3. Hvad adskiller MLOps fra ModelOps og AIOps?
Når man bygger ende-til-ende maskinlæringsalgoritmer, MLOps er en DevOps-applikation, der inkluderer dataindsamling, dataforbehandling, modeloprettelse, modelimplementering i produktion, modelovervågning i produktion og model periodisk opgradering.
Brugen af DevOps til at håndtere hele implementeringen af enhver algoritme, såsom regelbaserede modeller, er kendt som ModelOps.
AI Ops udnytter DevOps-principperne til at skabe AI-apps fra bunden.
4. Kan du fortælle mig nogle af fordelene ved MLOps?
- Dataforskere og MLOps-udviklere kan hurtigt køre forsøg igen for at sikre, at modeller trænes og vurderes korrekt, da MLOps hjælper med at automatisere alle eller de fleste af opgaverne/trinene i MDLC (modeludviklings livscyklus). Derudover tilladelser data- og modelversionering.
- At omsætte MLOps-ideer i praksis gør det muligt for dataingeniører og dataforskere at have ubegrænset adgang til kultiverede og kuraterede datasæt, hvilket eksponentielt accelererer udviklingen af modeller.
- Data scientists vil kunne falde tilbage på den model, der klarede sig bedre, hvis den nuværende iteration ikke lever op til forventningerne takket være muligheden for at få modeller og datasæt versioneret, hvilket vil forbedre modellens revisionsspor markant.
- Da MLOps-metoder er stærkt afhængige af DevOps, inkorporerer de også en række CI/CD-koncepter, som forbedrer kodens kvalitet og pålidelighed.
5. Kan du fortælle mig komponenterne i MLOps?
Design: MLOps inkluderer i høj grad designtænkning. Startende med problemets karakter, test af hypoteser, arkitektur og implementering
Modelbygning: Modeltest og validering er en del af dette trin sammen med dataingeniørpipelines og eksperimenter for at opsætte de bedste maskinlæringssystemer.
Produktion: Modellen skal implementeres som en del af driften og løbende kontrolleres og evalueres. CI/CD-processerne overvåges derefter og startes ved hjælp af et orkestreringsværktøj.
6. Hvilke risici følger med at bruge datavidenskab?
- Det er svært at skalere modellen på tværs af virksomheden.
- Uden varsel lukker modellen ned og holder op med at fungere.
- For det meste bliver nøjagtigheden af modellerne dårligere med tiden.
- Modellen laver unøjagtige forudsigelser baseret på en specifik observation, som ikke kan undersøges nærmere.
- Dataforskere bør også vedligeholde modeller, men de er dyre.
- MLOps kan bruges til at reducere disse risici.
7. Kan du forklare, hvad er modeldrift?
Når en models inferensfaseydelse (ved brug af data fra den virkelige verden) forringes i forhold til dens træningsfaseydelse, er dette kendt som modeldrift, også kendt som idédrift (ved brug af historiske, mærkede data).
Modellens ydeevne er skæv i forhold til trænings- og serveringsfaserne, deraf navnet "train/serve skew".
Adskillige faktorer, herunder:
- Den grundlæggende måde, data distribueres på, har ændret sig.
- Uddannelsen fokuserede på et lille antal kategorier, men et miljøskift, der netop fandt sted, tilføjede endnu et område.
- I NLP-vanskeligheder har de virkelige data en uforholdsmæssigt større mængde antal tokens end træningsdataene.
- Uventede hændelser, såsom en model bygget på data fra før COVID-19, der forudsiges at klare sig væsentligt dårligere på data indsamlet under COVID-XNUMX-epidemien.
Kontinuerlig overvågning af modellens ydeevne er altid påkrævet for at identificere modeldrift.
Modelomskoling er næsten altid påkrævet som et middel, når der er et vedvarende fald i modellens ydeevne; årsagen til faldet skal identificeres, og passende behandlingsprocedurer skal anvendes.
8. Hvor mange forskellige måder kan MLO'er efter din mening anvendes?
Der er tre metoder til at omsætte MLOps i praksis:
MLOps niveau 0 (manuel proces): På dette niveau udføres alle trin – inklusive dataforberedelse, analyse og træning – manuelt. Hver etape skal udføres manuelt, samt overgangen fra den ene til den næste.
Den underliggende forudsætning er, at dit datavidenskabsteam kun administrerer et lille antal modeller, der ikke opdateres ofte.
Som følge heraf er der ikke kontinuert integration (CI) eller kontinuert udrulning (cd), og test af koden er typisk integreret i scriptudførelse eller notebook-udførelse, hvor udrulning finder sted i en mikrotjeneste med en REST-API.
MLOps niveau 1 (automatisering af ML pipeline): Ved at automatisere ML-processen er målet løbende at træne modellen (CT). Du kan opnå kontinuerlig levering af modelforudsigelsestjenester på denne måde.
Vores udrulning af en hel træningspipeline sikrer, at modellen automatisk trænes i produktion ved at bruge nye data baseret på aktive pipeline-triggere.
MLOps niveau 2 (automatisering af CI/CD pipeline): Det går et trin over MLOps-niveau. Et stærkt automatiseret CI/CD-system er påkrævet, hvis du vil opdatere pipelines i produktionen hurtigt og pålideligt:
- Du opretter kildekode og udfører adskillige test gennem hele CI-stadiet. Pakker, eksekverbare filer og artefakter er scenens output, som vil blive implementeret på et senere tidspunkt.
- Artefakterne, der er skabt af CI-stadiet, implementeres til målmiljøet under CD-trinnet. En implementeret pipeline med den reviderede modelimplementering er scenens output.
- Før pipelinen begynder en ny iteration af eksperimentet, skal dataforskere stadig udføre data- og modelanalysefasen manuelt.
9. Hvad adskiller statisk implementering fra dynamisk implementering?
Modellen er trænet offline til Statisk udrulning. Med andre ord træner vi modellen præcist én gang og bruger den så i en periode. Efter at modellen er blevet trænet lokalt, gemmes den og sendes til serveren for at blive brugt til at producere forudsigelser i realtid.
Modellen distribueres derefter som installerbar applikationssoftware. et program, der giver mulighed for batch scoring af anmodninger, som en illustration.
Modellen er uddannet online til Dynamisk implementering. Det vil sige, at der hele tiden kommer nye data til systemet, og modellen opdateres løbende for at tage højde for det.
Som et resultat kan du lave forudsigelser ved hjælp af en server on demand. Herefter tages modellen i brug ved at blive leveret som et API-slutpunkt, der reagerer på brugerforespørgsler ved hjælp af en webramme som f.eks. Kolbe eller FastAPI.
10. Hvilke produktionstestteknikker kender du til?
Batch-test: Ved at udføre test i en anden indstilling end dens træningsmiljø, verificerer den modellen. Ved at bruge målinger efter eget valg, såsom nøjagtighed, RMSE osv., udføres batchtest på en gruppe af dataprøver for at verificere modelinferens.
Batchtest kan udføres på en række forskellige computerplatforme, såsom en testserver, en fjernserver eller skyen. Typisk leveres modellen som en serialiseret fil, som indlæses som et objekt og udledes af testdata.
A / B-test: Det bruges ofte til at analysere marketingkampagner samt til design af tjenester (hjemmesider, mobilapplikationer osv.).
Baseret på virksomheden eller operationerne bruges statistiske tilgange til at analysere resultaterne af A/B-tests for at afgøre, hvilken model der vil klare sig bedre i produktionen. Normalt udføres A/B-test på følgende måde:
- Live- eller realtidsdata er opdelt eller segmenteret i to sæt, sæt A og sæt B.
- Sæt A-data sendes til den forældede model, mens sæt B-data sendes til den opdaterede model.
- Afhængigt af business use case eller processer, kan flere statistiske tilgange bruges til at evaluere modellens ydeevne (f.eks. nøjagtighed, præcision osv.) for at bestemme, om den nye model (model B) udkonkurrerer den gamle model (model A).
- Derefter laver vi statistisk hypotesetestning: Nulhypotesen siger, at den nye model ikke har nogen effekt på gennemsnitsværdien af de virksomhedsindikatorer, der overvåges. Ifølge den alternative hypotese øger den nye model gennemsnitsværdien af overvågningsvirksomhedsindikatorerne.
- Til sidst vurderer vi, om den nye model resulterer i en væsentlig forbedring af visse forretningsmæssige KPI'er.
En skygge- eller scenetest: En model evalueres i et duplikat af et produktionsmiljø, før det bruges i produktion (staging-miljø).
Dette er afgørende for at bestemme modellens ydeevne med realtidsdata og validere modellens robusthed. udføres ved at udlede de samme data som produktionspipeline og levere den udviklede gren eller en model, der skal testes på en staging-server.
Den eneste ulempe er, at der ikke vil blive foretaget forretningsvalg på staging-serveren eller synlige for slutbrugere som følge af udviklingsgrenen.
Modellens modstandsdygtighed og ydeevne vil blive vurderet statistisk ved hjælp af resultaterne af iscenesættelsesmiljøet ved hjælp af passende metrics.
11. Hvad adskiller strømbehandling fra batchbehandling?
Vi kan manipulere de egenskaber, som vi bruger til at producere vores realtidsprognoser ved hjælp af to behandlingsmetoder: batch og stream.
Batch proces funktioner fra et tidligere tidspunkt for et specifikt objekt, som derefter bruges til at generere forudsigelser i realtid.
- Her er vi i stand til at udføre intensive funktionsberegninger offline og have dataene forberedt til hurtig slutning.
- Har dog en alder siden de var forudbestemt i fortiden. Dette kan være en stor ulempe, hvis din prognose er baseret på nylige hændelser. (For eksempel at identificere svigagtige transaktioner så hurtigt som muligt.)
Med streaming-funktioner i næsten realtid for en specifik enhed, udføres konklusionen i strømbehandling på et givet sæt af input.
- Her kan vi ved at give modellen streaming-funktioner i realtid få mere præcise forudsigelser.
- Der kræves dog yderligere infrastruktur til strømbehandling og for at vedligeholde datastrømme (Kafka, Kinesis osv.). (Apache Flink, Beam osv.)
12. Hvad mener du med at træne serveringsskævhed?
Forskellen mellem præstation ved servering og præstation under træning er kendt som træningsserveringsskævheden. Denne skævhed kan induceres af følgende faktorer:
- En forskel i hvordan du håndterer data mellem pipelines til servering og træning.
- Et skift i dataene fra din træning til din service.
- En feedbackkanal mellem din algoritme og model.
13. Hvad mener du med Model Registry?
Model Registry er et centralt lager, hvor modelskabere kan udgive modeller, der er egnede til brug i produktionen.
Udviklere kan samarbejde med andre teams og interessenter for at styre levetiden for alle modeller i virksomheden ved hjælp af registreringsdatabasen. De trænede modeller kan uploades til modelregistret af en dataforsker.
Modellerne er forberedt til test, validering og udrulning til produktion, når de er i registret. Derudover er trænede modeller gemt i modelregistre for hurtig adgang for enhver integreret applikation eller service.
For at teste, evaluere og implementere modellen til produktion, softwareudviklere og anmeldere kan hurtigt genkende og vælge netop den bedste version af de trænede modeller (baseret på evalueringskriterierne).
14. Kan du uddybe fordelene ved Model Registry?
Følgende er nogle måder, hvorpå modelregistrering strømliner modellivscyklusstyring:
- For at gøre implementeringen nemmere skal du gemme køretidskravene og metadataene for dine trænede modeller.
- Dine trænede, implementerede og pensionerede modeller skal registreres, spores og versioneres i et centraliseret, søgbart lager.
- Opret automatiserede pipelines, der muliggør kontinuerlig levering, træning og integration af din produktionsmodel.
- Sammenlign nyuddannede modeller (eller udfordrermodeller) i iscenesættelsesmiljøet med modeller, der i øjeblikket er i produktion (mestermodeller).
15. Kan du forklare Champion-Challenger teknikken virker?
Det er muligt at teste forskellige operationelle beslutninger i produktionen ved hjælp af en Champion Challenger-teknik. Du har sikkert hørt om A/B-test i forbindelse med markedsføring.
For eksempel kan du skrive to forskellige emnelinjer og distribuere dem tilfældigt til din måldemografi for at maksimere åbningsraten for en e-mail-kampagne.
Systemet logger en e-mails ydeevne (dvs. e-mail åben handling) i forhold til dens emnelinje, hvilket giver dig mulighed for at sammenligne hver emnelinjes åbningshastighed for at afgøre, hvilken der er den mest effektive.
Champion-Challenger kan sammenlignes med A/B-test i denne henseende. Du kan bruge beslutningslogik til at evaluere hvert resultat og vælge det mest effektive, mens du eksperimenterer med forskellige metoder for at komme til et valg.
Den mest succesrige model korrelerer med mesteren. Den første udfordrer og den matchende liste over udfordrere er nu alt, der er til stede i den første udførelsesfase i stedet for mesteren.
Mesteren vælges af systemet til yderligere udførelse af jobtrin.
Udfordrerne står i kontrast til hinanden. Den nye mester bestemmes derefter af den udfordrer, der producerer de største resultater.
De opgaver, der er involveret i mester-udfordrer-sammenligningsprocessen, er angivet mere detaljeret nedenfor:
- Evaluering af hver af de konkurrerende modeller.
- Vurdering af de endelige resultater.
- Sammenligning af evalueringsresultaterne for at etablere den sejrrige udfordrer.
- Tilføjer den friske mester til arkivet
16. Beskriv MLOps-livscyklussens applikationer på virksomhedsniveau?
Vi er nødt til at stoppe med at betragte maskinlæring som kun et iterativt eksperiment, for at maskinlæringsmodeller kan komme i produktion. MLOps er foreningen af software engineering med machine learning.
Det færdige resultat skal forestilles som sådan. Derfor skal koden til et teknologisk produkt være testet, funktionel og modulær.
MLOps har en levetid, der kan sammenlignes med et konventionelt maskinlæringsflow, med undtagelse af, at modellen holdes i processen indtil produktion.
MLOps-ingeniørerne holder derefter øje med dette for at sikre, at modelkvaliteten i produktionen er den tilsigtede.
Her er nogle use-cases for flere af MLOps-teknologierne:
- Modelregistre: Det er, hvad det ser ud til at være. Større teams gemmer og holder styr på versionsmodeller i modelregistre. Selv at gå tilbage til en tidligere version er en mulighed.
- Feature Store: Når du har at gøre med større datasæt, kan der være forskellige versioner af de analytiske datasæt og undersæt til specifikke opgaver. En funktionsbutik er en banebrydende, smagfuld måde at bruge dataforberedelsesarbejde fra tidligere kørsler eller også fra andre teams.
- Lagre til metadata: Det er afgørende at overvåge metadata korrekt gennem hele produktionen, hvis ustrukturerede data, såsom billed- og tekstdata, skal bruges med succes.
Konklusion
Det er afgørende at huske på, at intervieweren i de fleste tilfælde leder efter et system, mens kandidaten søger en løsning.
Den første er baseret på dine tekniske færdigheder, mens den anden handler om den metode, du bruger til at demonstrere din kompetence.
Der er adskillige procedurer, du bør følge, når du svarer på MLOps-interviewspørgsmål for at hjælpe intervieweren med bedre at forstå, hvordan du har til hensigt at vurdere og løse det aktuelle problem.
Deres koncentration er mere på den forkerte reaktion end den rigtige. En løsning fortæller en historie, og dit system er den bedste illustration af din viden og kapacitet til kommunikation.
Giv en kommentar