MLOps Workflow

tl;dr: Diese Website enthält allgemeine Informationen über den MLOps Workflow, einschließlich seiner Aktivitäten, Datenspeicher und Rollen. Sie können zu einer detaillierteren Beschreibung der Workflow Artefakte springen, indem Sie auf das entsprechende grafische Element in der Abbildung unten oder auf die im Text angegebenen Links klicken.

Wieso ist der MLOps Workflow wichtig?

Problem: 87% aller Data-Science-Projekte schaffen es nicht in den produktiven Einsatz, da eine erfolgreiche ML-basierte Anwendung mehr erfordert als ein ML Modell, das in einer prototypischen Umgebung erstellt wurde.
Bedarf: Ähnlich wie bei der traditionellen Softwareentwicklung erfordern ML-basierte Anwendungen einen systematischen Ansatz, um die Komplexität der beteiligten Disziplinen und Rollen zu beherrschen.
Ziel: Der MLOps-Workflow zielt darauf ab, reproduzierbare und robuste ML Modelle zu erstellen, die in der Produktion eingesetzt und überwacht werden können.

Eine high-level Erklärung des MLOps Workflows

Am Anfang eines MLOps Workflows steht eine intensive Ideen- und Entwurfsphase (Requirements Engineering) zur Erfassung der Modellanforderungen. In dieser Phase ist es wichtig, das Problem zu verstehen und Akzeptanzkriterien zu definieren, anhand derer der Erfolg des Modells gemessen werden kann. Diese Kriterien sollten nicht nur aus typischen ML Metriken wie Precision, Recall oder F1-Score bestehen, sondern vielmehr mit einer Geschäftsmetrik verbunden sein, um die tatsächliche Wirkung des Modells sichtbar zu machen. Eine solche Geschäftsmetrik zu definieren, kann je nach Kontext zeitaufwendig sein.

Nach der Definition der Modellanforderungen beginnt eine datenorientierte Phase, die darauf abzielt, die Daten vorzubereiten, mit denen das Modell später trainiert werden soll. Diese Phase kann mehrere separate Schritte umfassen, um verschiedene Datenqualitätsprobleme zu lösen. Die Hauptrolle in dieser Phase spielt der Data Engineer.

Nach der datenorientierten Phase folgt eine modellorientierte Phase, die Schritte wie Feature Engineering, Modelltraining, und Modellevaluierung umfasst. Das Hauptziel dieser Phase ist die Erstellung eines erfolgreichen Modells in Bezug auf die vordefinierten Akzeptanzkriterien unter Verwendung der in der vorherigen Phase aufbereiteten Daten. Diese Phase ist stark iterativ und wird hauptsächlich von einem Data Scientist geleitet.

Die letzte Phase des MLOps Workflows ist betriebsorientiert und stellt sicher, dass das Modell korrekt bereitgestellt wird und wie erwartet funktioniert. Dieser Phase sollte große Aufmerksamkeit gewidmet werden, da sie durch spezifische Monitoringmechanismen sicherstellt, dass das produktive Modell auch in sich verändernden Umgebungen korrekt funktioniert. Der MLOps Engineer ist für alle betriebsbezogenen Aufgaben verantwortlich.

Auch wenn die Rollen (Data Engineer, Data Scientist, MLOps Engineer) in der obigen Abbildung separat dargestellt sind, ist ein hohes Maß an Kommunikation und Zusammenarbeit zwischen den Rollen erforderlich. Eine solche interdisziplinäre Arbeitsstruktur fördert die Qualität des resultierenden Modells, da sich jede Rolle auf ihre Kernkompetenzen konzentrieren kann. Je nach Größe der Organisation werden die getrennte Rollen manchmal zu einer einzigen zusammengelegt.

Ein Hauptziel der Anwendung von MLOps ist die Erweiterung der DevOps-Methodik um die Artefakte Modell und Daten. Folglich muss nicht nur der Code versioniert werden, sondern auch Modelle und Daten. Dadurch kann eine vollständige Reproduzierbarkeit früherer Ergebnisse erreicht werden, was eine wichtige Voraussetzung für den produktiven Einsatz und die Weiterentwicklung von ML Modellen darstellt. Ein weiterer Vorteil der Implementierung eines MLOps-Workflows ist die Kosteneinsparung durch die Wiederverwendung von Artefakten und der Arbeit anderer. Weitere Informationen darüber, wie Reproduzierbarkeit und Wiederverwendbarkeit erreicht werden, finden Sie in den Artikeln über Datenversionierung und Datenbereitstellung, Experimenttracking und Modellbereitstellung, sowie Featureregistrierung und Featurebereitstellung.

Ein weiteres wichtiges Ziel der Anwendung von MLOps besteht darin, so viel wie möglich in der ML-Pipeline zu automatisieren. Daher werden Themen wie kontinuierliches ETL, kontinuierliche Integration, kontinuierliches Training, und kontinuierliche Bereitstellung implementiert, um ein stabiles, getestetes und korrektes ML Modell in der Produktion zu erreichen. In der Regel gibt es auch intensive Feedbackschleifen, die zu einer früheren Phase zurückspringen können (z. B. Data Preparation, Feature Engineering). Der Grund für solche Feedbackschleifen sind meist sich ändernde Anforderungen, die eine neue Datenerhebung oder ein erneutes Training des Modells erfordern.