Inhaltsverzeichnis[Ausblenden][Zeigen]
- 1. Was meinen Sie mit MLOps?
- 2. Wie unterscheiden sich Datenwissenschaftler, Dateningenieure und ML-Ingenieure voneinander?
- 3. Was unterscheidet MLOps von ModelOps und AIOps?
- 4. Können Sie mir einige der Vorteile von MLOps nennen?
- 5. Können Sie mir die Komponenten von MLOps nennen?
- 6. Welche Risiken birgt der Einsatz von Data Science?
- 7. Können Sie erklären, was Modelldrift ist?
- 8. Auf wie viele verschiedene Arten kann MLOps Ihrer Meinung nach angewendet werden?
- 9. Was unterscheidet die statische Bereitstellung von der dynamischen Bereitstellung?
- 10. Welche Produktionstesttechniken kennen Sie?
- 11. Was unterscheidet die Stream-Verarbeitung von der Stapelverarbeitung?
- 12. Was meinen Sie mit Training Serving Skew?
- 13. Was meinen Sie mit Modellregistrierung?
- 14. Können Sie die Vorteile von Model Registry erläutern?
- 15. Können Sie erklären, wie die Champion-Challenger-Technik funktioniert?
- 16. Beschreiben Sie die Anwendungen auf Unternehmensebene des MLOps-Lebenszyklus?
- Zusammenfassung
Unternehmen nutzen immer häufiger neue Technologien wie künstliche Intelligenz (KI) und maschinelles Lernen (ML), um den Zugang der Öffentlichkeit zu Informationen und Diensten zu verbessern.
Diese Technologien werden zunehmend in einer Vielzahl von Sektoren eingesetzt, darunter Banken, Finanzen, Einzelhandel, Fertigung und sogar das Gesundheitswesen.
Data Scientists, Machine Learning Engineers und Engineers in Artificial Intelligence werden von immer mehr Unternehmen nachgefragt.
Das Mögliche kennen Maschinelles Lernen Fragen aus Vorstellungsgesprächen, die Ihnen Personalchefs und Personalvermittler stellen könnten, sind unerlässlich, wenn Sie in den Bereichen ML oder MLOps arbeiten möchten.
In diesem Beitrag erfahren Sie, wie Sie auf einige der MLOps-Interviewfragen antworten, während Sie auf Ihren Traumjob hinarbeiten.
1. Was meinen Sie mit MLOps?
Das Thema der Operationalisierung von ML-Modellen steht im Mittelpunkt von MLOps, auch bekannt als Machine Learning Operations, einem sich entwickelnden Bereich innerhalb der größeren AI/DS/ML-Arena.
Das Hauptziel des als MLOps bekannten Software-Engineering-Ansatzes und der Kultur ist die Integration der Erstellung von Modellen für maschinelles Lernen/Data Science und deren anschließende Operationalisierung (Ops).
Herkömmliche DevOps und MLOps haben gewisse Gemeinsamkeiten, MLOps unterscheidet sich jedoch auch stark von traditionellen DevOps.
MLOps fügt eine neue Ebene der Komplexität hinzu, indem es sich auf Daten konzentriert, während sich DevOps hauptsächlich auf die Operationalisierung von Code- und Softwareversionen konzentriert, die nicht zustandsbehaftet sein können.
Die Kombination aus ML, Data und Ops gibt MLOps seinen gemeinsamen Namen (Machine Learning, Data Engineering und DevOps).
2. Wie unterscheiden sich Datenwissenschaftler, Dateningenieure und ML-Ingenieure voneinander?
Das ist meiner Meinung nach je nach Firma unterschiedlich. Die Umgebung für den Transport und die Transformation von Daten sowie deren Speicherung wird von Data Engineers aufgebaut.
Datenwissenschaftler sind Experten in der Anwendung wissenschaftlicher und statistischer Techniken zur Analyse von Daten und zum Ziehen von Schlussfolgerungen, einschließlich Vorhersagen über zukünftiges Verhalten auf der Grundlage der aktuellen Trends.
Software-Ingenieure studierten vor einigen Jahren den Betrieb und die Verwaltung der Bereitstellungsinfrastruktur. Ops-Teams hingegen untersuchten die Entwicklung, während sie die Infrastruktur als Code verwendeten. Durch diese beiden Streams wurde eine DevOps-Position produziert.
MLOps ist in der gleichen Kategorie wie Daten Scientist und Dateningenieur. Dateningenieure erwerben Wissen über die Infrastruktur, die zur Unterstützung von Modelllebenszyklen erforderlich ist, und erstellen Pipelines für fortlaufende Schulungen.
Datenwissenschaftler versuchen, ihre Modellbereitstellungs- und Bewertungsfähigkeiten zu entwickeln.
Eine Datenpipeline in Produktionsqualität wird von ML-Ingenieuren erstellt, die die Infrastruktur nutzen, die Rohdaten in die von einem Data-Science-Modell benötigte Eingabe umwandelt, das Modell hostet und ausführt und einen bewerteten Datensatz an nachgelagerte Systeme ausgibt.
Sowohl Dateningenieure als auch Datenwissenschaftler sind in der Lage, ML-Ingenieure zu werden.
3. Was unterscheidet MLOps von ModelOps und AIOps?
Beim Bau von Ende zu Ende Algorithmen für maschinelles Lernen, MLOps ist eine DevOps-Anwendung, die Datenerfassung, Datenvorverarbeitung, Modellerstellung, Modellbereitstellung in der Produktion, Modellüberwachung in der Produktion und regelmäßige Modellaktualisierungen umfasst.
Die Verwendung von DevOps bei der Abwicklung der gesamten Implementierung beliebiger Algorithmen, wie z. B. regelbasierter Modelle, wird als ModelOps bezeichnet.
AIOps nutzt DevOps-Prinzipien, um KI-Apps von Grund auf neu zu erstellen.
4. Können Sie mir einige der Vorteile von MLOps nennen?
- Data Scientists und MLOps-Entwickler können Versuche schnell wiederholen, um sicherzustellen, dass Modelle angemessen trainiert und bewertet werden, da MLOps dabei hilft, alle oder die meisten Aufgaben/Schritte im MDLC (Model Development Lifecycle) zu automatisieren. Zusätzlich Genehmigungen Daten- und Modellversionierung.
- Die Umsetzung von MLOps-Ideen in die Praxis ermöglicht Data Engineers und Data Scientists uneingeschränkten Zugriff auf kultivierte und kuratierte Datensätze, was die Entwicklung von Modellen exponentiell beschleunigt.
- Data Scientists können auf das Modell mit der besseren Leistung zurückgreifen, wenn die aktuelle Iteration die Erwartungen nicht erfüllt, dank der Möglichkeit, Modelle und Datensätze versionieren zu lassen, was den Audit-Trail des Modells erheblich verbessert.
- Da MLOps-Methoden stark auf DevOps angewiesen sind, beinhalten sie auch eine Reihe von CI/CD-Konzepten, was die Qualität und Zuverlässigkeit des Codes.
5. Können Sie mir die Komponenten von MLOps nennen?
Design: MLOps beinhalten stark Design Thinking. Beginnend mit der Art des Problems, dem Testen von Hypothesen, Architektur und Bereitstellung
Modellbau: Modelltests und -validierung sind Teil dieses Schritts, zusammen mit den Data-Engineering-Pipelines und Experimenten, um die besten Systeme für maschinelles Lernen einzurichten.
Einkauf & Prozesse: Das Modell muss im Betrieb implementiert und laufend überprüft und evaluiert werden. Die CI/CD-Prozesse werden dann mit einem Orchestrierungstool überwacht und gestartet.
6. Welche Risiken birgt der Einsatz von Data Science?
- Es ist schwierig, das Modell unternehmensweit zu skalieren.
- Ohne Vorwarnung schaltet sich das Modell ab und funktioniert nicht mehr.
- Meist wird die Genauigkeit der Modelle mit der Zeit schlechter.
- Das Modell macht ungenaue Vorhersagen auf der Grundlage einer bestimmten Beobachtung, die nicht weiter untersucht werden kann.
- Datenwissenschaftler sollten auch Modelle pflegen, aber sie sind teuer.
- MLOps können verwendet werden, um diese Risiken zu reduzieren.
7. Können Sie erklären, was Modelldrift ist?
Wenn sich die Leistung eines Modells in der Inferenzphase (unter Verwendung von Daten aus der realen Welt) von seiner Leistung in der Trainingsphase verschlechtert, wird dies als Modelldrift bezeichnet, auch bekannt als Ideendrift (unter Verwendung historischer, gekennzeichneter Daten).
Die Leistung des Modells ist im Vergleich zu den Trainings- und Aufschlagphasen verzerrt, daher der Name „train/serve skew“.
Zahlreiche Faktoren, darunter:
- Die grundlegende Art und Weise, wie Daten verteilt werden, hat sich geändert.
- Das Training konzentrierte sich auf eine kleine Anzahl von Kategorien, aber eine gerade stattgefundene Umweltveränderung fügte einen weiteren Bereich hinzu.
- Bei NLP-Schwierigkeiten haben die Daten aus der realen Welt eine unverhältnismäßig größere Menge an Zahlen-Token als die Trainingsdaten.
- Unerwartete Ereignisse, wie z. B. ein Modell, das auf Prä-COVID-Daten basiert und bei Daten, die während der COVID-19-Epidemie gesammelt wurden, voraussichtlich deutlich schlechter abschneiden wird.
Eine kontinuierliche Überwachung der Leistung des Modells ist immer erforderlich, um Modellabweichungen zu erkennen.
Als Abhilfe ist fast immer ein Neutraining des Modells erforderlich, wenn die Modellleistung dauerhaft abnimmt; der Grund für den Rückgang muss identifiziert und geeignete Behandlungsverfahren angewendet werden.
8. Auf wie viele verschiedene Arten kann MLOps Ihrer Meinung nach angewendet werden?
Es gibt drei Methoden, um MLOps in die Praxis umzusetzen:
MLOps-Stufe 0 (manueller Prozess): Auf dieser Ebene werden alle Schritte – einschließlich Datenaufbereitung, Analyse und Training – manuell durchgeführt. Jede Stufe muss manuell durchgeführt werden, ebenso wie der Übergang von einer zur nächsten.
Die zugrunde liegende Prämisse ist, dass Ihr Data-Science-Team nur eine kleine Anzahl von Modellen verwaltet, die nicht häufig aktualisiert werden.
Infolgedessen gibt es weder Continuous Integration (CI) noch Continuous Deployment (CD), und das Testen des Codes ist normalerweise in die Skript- oder Notebook-Ausführung integriert, wobei die Bereitstellung in einem Microservice mit einem erfolgt REST API.
MLOps Level 1 (Automatisierung der ML-Pipeline): Durch die Automatisierung des ML-Prozesses soll das Modell kontinuierlich trainiert werden (CT). Auf diese Weise können Sie eine kontinuierliche Bereitstellung von Modellvorhersagediensten erreichen.
Unser Einsatz einer ganzen Trainingspipeline stellt sicher, dass das Modell automatisch in der Produktion trainiert wird, indem neue Daten basierend auf aktiven Pipeline-Triggern verwendet werden.
MLOps Level 2 (Automatisierung der CI/CD-Pipeline): Es geht einen Schritt über das MLOps-Niveau. Wenn Sie Pipelines in der Produktion schnell und zuverlässig aktualisieren möchten, ist ein starkes automatisiertes CI/CD-System erforderlich:
- Sie erstellen Quellcode und führen während der gesamten CI-Phase zahlreiche Tests durch. Pakete, ausführbare Dateien und Artefakte sind die Ausgaben der Phase, die zu einem späteren Zeitpunkt bereitgestellt werden.
- Die von der CI-Phase erstellten Artefakte werden während des CD-Schritts in der Zielumgebung bereitgestellt. Eine bereitgestellte Pipeline mit der überarbeiteten Modellimplementierung ist die Ausgabe der Stufe.
- Bevor die Pipeline eine neue Iteration des Experiments beginnt, müssen Data Scientists die Daten- und Modellanalysephase noch manuell durchführen.
9. Was unterscheidet die statische Bereitstellung von der dynamischen Bereitstellung?
Das Modell wird offline für trainiert Statische Bereitstellung. Das heißt, wir trainieren das Modell genau einmal und nutzen es dann eine Zeit lang. Nachdem das Modell lokal trainiert wurde, wird es gespeichert und an den Server gesendet, um zur Erstellung von Echtzeitvorhersagen verwendet zu werden.
Das Modell wird dann als installierbare Anwendungssoftware vertrieben. ein Programm, das zur Veranschaulichung ein Batch-Scoring von Anfragen ermöglicht.
Das Modell wird online für trainiert Dynamische Bereitstellung. Das heißt, dem System werden ständig neue Daten hinzugefügt, und das Modell wird kontinuierlich aktualisiert, um dies zu berücksichtigen.
Infolgedessen können Sie Vorhersagen mithilfe eines Servers auf Abruf treffen. Danach wird das Modell verwendet, indem es als API-Endpunkt bereitgestellt wird, der auf Benutzeranfragen reagiert, z. B. unter Verwendung eines Web-Frameworks Flask oder FastAPI.
10. Welche Produktionstesttechniken kennen Sie?
Chargentest: Durch die Durchführung von Tests in einer anderen Umgebung als der Trainingsumgebung wird das Modell verifiziert. Unter Verwendung ausgewählter Metriken wie Genauigkeit, RMSE usw. werden Batch-Tests an einer Gruppe von Datenproben durchgeführt, um die Modellinferenz zu überprüfen.
Batch-Tests können auf einer Vielzahl von Computerplattformen durchgeführt werden, z. B. einem Testserver, einem Remote-Server oder der Cloud. Typischerweise wird das Modell als serialisierte Datei bereitgestellt, die als Objekt geladen und aus Testdaten abgeleitet wird.
A / B-Tests: Es wird häufig zur Analyse von Marketingkampagnen sowie zur Gestaltung von Diensten (Websites, mobile Anwendungen usw.) verwendet.
Basierend auf dem Unternehmen oder Betrieb werden statistische Ansätze verwendet, um die Ergebnisse von A/B-Tests zu analysieren, um zu entscheiden, welches Modell in der Produktion besser abschneidet. Üblicherweise werden A/B-Tests folgendermaßen durchgeführt:
- Live- oder Echtzeitdaten werden in zwei Sätze unterteilt oder segmentiert, Satz A und Satz B.
- Daten von Satz A werden an das veraltete Modell gesendet, während Daten von Satz B an das aktualisierte Modell gesendet werden.
- Je nach Geschäftsanwendungsfall oder Prozessen können verschiedene statistische Ansätze zur Bewertung der Modellleistung (z. B. Genauigkeit, Präzision usw.) verwendet werden, um festzustellen, ob das neue Modell (Modell B) das alte Modell (Modell A) übertrifft.
- Anschließend führen wir statistische Hypothesentests durch: Die Nullhypothese besagt, dass das neue Modell keinen Einfluss auf den Durchschnittswert der überwachten Geschäftskennzahlen hat. Gemäß der Alternativhypothese erhöht das neue Modell den Durchschnittswert der überwachenden Geschäftskennzahlen.
- Schließlich beurteilen wir, ob das neue Modell zu einer signifikanten Verbesserung bestimmter Geschäfts-KPIs führt.
Ein Schatten- oder Bühnentest: Ein Modell wird in einem Duplikat einer Produktionsumgebung evaluiert, bevor es in der Produktion verwendet wird (Staging-Umgebung).
Dies ist entscheidend, um die Leistung des Modells mit Echtzeitdaten zu bestimmen und die Belastbarkeit des Modells zu validieren. wird ausgeführt, indem dieselben Daten wie die Produktionspipeline abgeleitet und der entwickelte Zweig oder ein zu testendes Modell auf einem Staging-Server bereitgestellt werden.
Der einzige Nachteil besteht darin, dass aufgrund des Entwicklungszweigs keine Geschäftsentscheidungen auf dem Staging-Server getroffen werden oder für Endbenutzer sichtbar sind.
Die Belastbarkeit und Leistung des Modells wird anhand der Ergebnisse der Staging-Umgebung unter Verwendung geeigneter Metriken statistisch bewertet.
11. Was unterscheidet die Stream-Verarbeitung von der Stapelverarbeitung?
Wir können die Merkmale, die wir verwenden, um unsere Echtzeitprognosen zu erstellen, mit zwei Verarbeitungsmethoden manipulieren: Batch und Stream.
Batch-Prozess Merkmale von einem früheren Zeitpunkt für ein bestimmtes Objekt, die dann verwendet werden, um Echtzeitvorhersagen zu generieren.
- Hier können wir offline intensive Merkmalsberechnungen durchführen und die Daten für schnelle Rückschlüsse aufbereiten lassen.
- Merkmale sind jedoch ein Alter, da sie in der Vergangenheit vorbestimmt waren. Dies kann ein großer Nachteil sein, wenn Ihre Prognose auf jüngsten Ereignissen basiert. (Zum Beispiel betrügerische Transaktionen so schnell wie möglich identifizieren.)
Mit nahezu Echtzeit-Streaming-Funktionen für eine bestimmte Entität wird die Inferenz in der Stream-Verarbeitung an einem bestimmten Satz von Eingaben ausgeführt.
- Indem wir dem Modell Echtzeit-Streaming-Funktionen geben, können wir genauere Vorhersagen erhalten.
- Für die Stream-Verarbeitung und die Pflege von Datenströmen ist jedoch zusätzliche Infrastruktur erforderlich (Kafka, Kinesis usw.). (Apache Flink, Beam usw.)
12. Was meinen Sie mit Training Serving Skew?
Die Diskrepanz zwischen der Leistung beim Aufschlag und der Leistung im Training wird als Trainings-Aufschlag-Schiefe bezeichnet. Diese Verzerrung kann durch die folgenden Faktoren verursacht werden:
- Ein Unterschied in der Art und Weise, wie Sie Daten zwischen den Pipelines für die Bereitstellung und das Training verarbeiten.
- Eine Verschiebung der Daten von Ihrem Training zu Ihrem Service.
- Ein Rückkopplungskanal zwischen Ihrem Algorithmus und Ihrem Modell.
13. Was meinen Sie mit Modellregistrierung?
Model Registry ist ein zentrales Repository, in dem Modellersteller Modelle veröffentlichen können, die für die Verwendung in der Produktion geeignet sind.
Entwickler können mit anderen Teams und Interessengruppen zusammenarbeiten, um die Lebensdauer aller Modelle innerhalb des Unternehmens mithilfe der Registrierung zu verwalten. Die trainierten Modelle können von einem Datenwissenschaftler in die Modellregistrierung hochgeladen werden.
Die Modelle werden für das Testen, die Validierung und den Einsatz in der Produktion vorbereitet, sobald sie im Register sind. Darüber hinaus werden trainierte Modelle in Modellregistern gespeichert, damit alle integrierten Anwendungen oder Dienste schnell darauf zugreifen können.
Um das Modell zu testen, zu bewerten und in der Produktion bereitzustellen, Software-Entwickler und Prüfer können schnell die beste Version der trainierten Modelle erkennen und auswählen (basierend auf den Bewertungskriterien).
14. Können Sie die Vorteile von Model Registry erläutern?
Im Folgenden sind einige Möglichkeiten aufgeführt, wie die Modellregistrierung die Modelllebenszyklusverwaltung optimiert:
- Um die Bereitstellung zu vereinfachen, speichern Sie die Laufzeitanforderungen und Metadaten für Ihre trainierten Modelle.
- Ihre trainierten, bereitgestellten und stillgelegten Modelle sollten in einem zentralen, durchsuchbaren Repository registriert, nachverfolgt und versioniert werden.
- Erstellen Sie automatisierte Pipelines, die eine kontinuierliche Bereitstellung, Schulung und Integration Ihres Produktionsmodells ermöglichen.
- Vergleichen Sie neu trainierte Modelle (oder Challenger-Modelle) in der Staging-Umgebung mit Modellen, die derzeit in der Produktion arbeiten (Champion-Modelle).
15. Können Sie erklären, wie die Champion-Challenger-Technik funktioniert?
Es ist möglich, verschiedene Betriebsentscheidungen in der Produktion mit einer Champion-Challenger-Technik zu testen. Sie haben wahrscheinlich schon von A/B-Tests im Zusammenhang mit Marketing gehört.
Sie könnten beispielsweise zwei unterschiedliche Betreffzeilen schreiben und diese nach dem Zufallsprinzip an Ihre Zielgruppe verteilen, um die Öffnungsrate für eine E-Mail-Kampagne zu maximieren.
Das System protokolliert die Leistung einer E-Mail (dh E-Mail-Öffnungsaktion) in Bezug auf ihre Betreffzeile, sodass Sie die Öffnungsrate jeder Betreffzeile vergleichen können, um festzustellen, welche am effektivsten ist.
Champion-Challenger ist in dieser Hinsicht mit A/B-Testing vergleichbar. Sie können die Entscheidungslogik verwenden, um jedes Ergebnis zu bewerten und das effektivste auszuwählen, während Sie mit verschiedenen Methoden experimentieren, um eine Wahl zu treffen.
Das erfolgreichste Modell entspricht dem Champion. Statt des Champions ist nun in der ersten Ausführungsphase nur noch der erste Herausforderer und die passende Liste der Herausforderer vorhanden.
Der Champion wird vom System für weitere Jobstep-Ausführungen ausgewählt.
Die Herausforderer werden einander gegenübergestellt. Der neue Champion wird dann von dem Herausforderer bestimmt, der die besten Ergebnisse erzielt.
Nachfolgend werden die Aufgaben des Champion-Challenger-Vergleichsverfahrens näher aufgeführt:
- Bewertung jedes der konkurrierenden Modelle.
- Bewertung der Endergebnisse.
- Vergleich der Bewertungsergebnisse, um den siegreichen Herausforderer zu ermitteln.
- Hinzufügen des frischen Champions zum Archiv
16. Beschreiben Sie die Anwendungen auf Unternehmensebene des MLOps-Lebenszyklus?
Wir müssen aufhören, maschinelles Lernen nur als iteratives Experiment zu betrachten, damit Modelle für maschinelles Lernen in die Produktion gehen können. MLOps ist die Vereinigung von Software-Engineering mit maschinellem Lernen.
Das fertige Ergebnis sollte man sich als solches vorstellen. Daher muss der Code für ein technologisches Produkt getestet, funktional und modular sein.
MLOps hat eine Lebensdauer, die mit einem herkömmlichen maschinellen Lernfluss vergleichbar ist, mit der Ausnahme, dass das Modell bis zur Produktion im Prozess bleibt.
Die MLOps-Ingenieure behalten dies dann im Auge, um sicherzustellen, dass die Modellqualität in der Produktion der beabsichtigten entspricht.
Hier sind einige Anwendungsfälle für mehrere der MLOps-Technologien:
- Modellregister: Es ist, was es zu sein scheint. Größere Teams speichern und verfolgen Versionsmodelle in Modellregistrierungen. Sogar die Rückkehr zu einer früheren Version ist eine Option.
- Feature Store: Beim Umgang mit größeren Datensätzen kann es unterschiedliche Versionen der analytischen Datensätze und Teilmengen für bestimmte Aufgaben geben. Ein Feature Store ist eine innovative, geschmackvolle Möglichkeit, die Datenvorbereitungsarbeit aus früheren Läufen oder auch von anderen Teams zu nutzen.
- Speicher für Metadaten: Die korrekte Überwachung von Metadaten während der gesamten Produktion ist entscheidend, wenn unstrukturierte Daten wie Bild- und Textdaten erfolgreich verwendet werden sollen.
Zusammenfassung
Es ist wichtig zu bedenken, dass der Interviewer in den meisten Fällen nach einem System sucht, während der Kandidat nach einer Lösung sucht.
Das erste basiert auf Ihren technischen Fähigkeiten, während es im zweiten um die Methode geht, mit der Sie Ihre Kompetenz unter Beweis stellen.
Es gibt mehrere Verfahren, die Sie bei der Beantwortung von MLOps-Interviewfragen anwenden sollten, damit der Interviewer besser versteht, wie Sie das vorliegende Problem bewerten und angehen möchten.
Ihre Konzentration liegt mehr auf der falschen als auf der richtigen Reaktion. Eine Lösung erzählt eine Geschichte, und Ihr System ist die beste Darstellung Ihres Wissens und Ihrer Kommunikationsfähigkeit.
Hinterlassen Sie uns einen Kommentar