Was ist MLOps und was bringt es der Software-Entwicklung

MLOps Beitragsbild

MLOps in der agilen Software-Entwicklung. Warum das ein wichtiges Thema ist und welche Vorteile daraus entstehen, erklärt Jörg Kremer, verantwortlich bei der mip für das Delivery Management, im Gespräch mit Gabriela von Bargen, Marketing Managerin.

Hallo Jörg, Du bist bei uns Delivery Manager und mit Deinem Team u. a. für die individuelle Entwicklung von Software-Anwendungen verantwortlich. Da hat sich in den vergangenen Jahren sehr vieles verändert, agile Methodiken und die DevOps-Philosophie steht im Vordergrund. Jetzt kommt noch MLOps dazu. Darüber würde ich heute gerne mit Dir sprechen.

Kannst Du mir sagen, was bedeutet MLOps und wo wird es eingesetzt?

Die Abkürzung MLOps steht für Machine Learning Operations und überträgt den DevOps-Ansatz aus der Software-Entwicklung auf Projekte im Umfeld der künstlichen Intelligenz. Dahinter stehen eine ganze Reihe von Praktiken und Vorgehensweisen, um Machine Learning zu automatisieren und zu vereinfachen. Die Ergebnisse werden kontinuierlich bereitgestellt und in den Betrieb übernommen und der gesamte Ablauf von Erstellung des Modells, Training, Testing, Versioning, Bereitstellung und Betrieb wird so weit wie möglich automatisiert. Hierzu setzen wir geeignete Tools ein, die auf KI-Projekte optimiert sind. 

Was ist dann der maßgebliche Unterschied zwischen DevOps und MLOps?

Es ist auf jeden Fall kein Entweder-oder, sondern ein Zusammenspiel.

Hinter DevOps verstecken sich die Begriffe Development und IT Operations und das ist heute meiner Meinung nach State of the Art, wenn es um Softwareentwicklung und den Betrieb komplexer Systeme geht. Dabei wird Software iterativ entwickelt, auf Basis von sogenannten User-Storys, die der Kunde uns liefert. Diese werden dann in kurzen Entwicklungs-Sprints implementiert und mit dem Kunden kontinuierlich besprochen. Damit können wir operative Routineaufgaben vereinfachen und die Entwicklungs- und Bereitstellungsumgebungen standardisieren. So können erhebliche Verbesserungen in der Qualität der Software, deren Betrieb und auch bei den Entwicklungs-Kosten erreicht werden.

Bei MLOps sehe ich eine erfolgversprechende Erweiterung von DevOps im AI-Umfeld. Im Unterschied dazu wird hier die Automatisierung der Workflows und das Monitoring der Daten-Pipelines in den Vordergrund gestellt. Ziel ist das kontinuierliche Testen, Überwachen und Überprüfen der KI-Modelle und die kontinuierliche Bereitstellung neuer Artefakte. Ein durch und durch agiles Vorgehen.

Quelle: mip GmbH

Welche Herausforderungen kommen mit MLOps auf die Unternehmen zu?

Es kommt schon vor, dass Unternehmen bei der Einführung von MLOps erst einmal vor ein paar Hürden stehen, die überwunden werden müssen. Zum einen muss sichergestellt sein, dass ein tiefes Know-how in Sachen Softwareentwicklung, Machine Learning und KI vorhanden ist. Wenn das nicht bei internen Ressourcen zu finden ist, können wir beispielsweise als externer Partner unterstützen.

Die Daten, die in die Machine-Learning-Modelle einfließen, haben eine entscheidende Bedeutung für die Genauigkeit, also muss im Umkehrschluss dafür gesorgt werden, dass zum einen genügend Daten vorhanden sind und diese müssen zum anderen eine hohe Qualität hinsichtlich Konsistenz und Vollständigkeit haben.

Des Weiteren sollten die Modelle kontinuierlich überwacht werden, um sicherzustellen, dass sie richtig arbeiten, auch dafür müssen Ressourcen bereitgestellt werden. Und schlussendlich gibt es wie immer unzählige Tools, die eingesetzt werden können. Hier gilt es die geeignete Tools für die eigenen Belange zu finden, entweder sucht man selbst oder man zieht auch hier einen versierten Partner hinzu.   

Welche Tools gibt es im MLOps Umfeld und welche werden von mip eingesetzt bzw. präferiert?

Es gibt unzählige Tools, man kann diese am besten in Kategorien packen, wie für die Metadaten und das Experiment-Tracking, die Orchestrierung von Workflows, für die Daten und Pipeline Versionierung, die Deployment Automatisierung oder die Monitoring-Tools. Und dann gibt es noch die Komplett-Suiten. Die bilden den gesamten Prozess in einem Framework ab, Beispiele dafür sind Beispiele: IBM Cloud Pak for Data, Domino, Databricks, Amazon SageMaker, um einige zu nennen.

IBM Cloud Pak for Data in Kombination mit Watsonx.ai und Watsonx.data bietet den großen Vorteil, dass auch für das Thema Datenbereitstellung und -integration gleich eine sehr leistungsstarke Lösung geboten wird. Die Frage ist immer, welche Komponenten man wirklich für die Aufgabenstellung braucht. Komplett-Lösungen können unter Umständen oversized sein.

Wie kann die mip Unternehmen in KI-Projekten mit MLOps unterstützen? Kannst Du das anhand eines Use Case erklären?

Mit einem unserer Kunden, der sich zu den größten Kfz-Versichern zählt, haben wir beispielsweise folgendes Szenario besprochen.

Versicherte schicken ein Bild des Schadens bzw. ggf. Bilder der kompletten Situation an das System. Die KI analysiert die Bilder und kann helfen, den Schaden zu kategorisieren. Diese Voranalyse wird dann von Sachbearbeiter:innen genutzt, um den Schadenfall zu regulieren.

Deren Feedback und auch die gesendeten Bilder wiederrum trainieren das KI-System. Gewonnene Erkenntnisse gehen an die Data Science Abteilung, die ggf. das Modell verfeinert. So entsteht in Schritten ein immer besseres System um Schadensmeldungen vorzuanalysieren. Wichtig ist hier aber auch, dass der Mensch in den Prozess eingebunden ist und die Entscheidung nicht allein von der KI getroffen wird.

Hast Du noch ein paar Tipps und Best Practises auf Lager, die Du gerne weitergeben willst?

Oh, es gibt eine ganze Reihe, da weiß ich gar nicht wo ich anfangen soll. Hinsichtlich der Sprachen ist Python sicher die gängigste Programmiersprache im AI-Umfeld und R wird meist im Rahmen der statistischen Modelle verwendet.

Für diverse Algorithmen gibt es fertige Bibliotheken, die typischerweise genutzt werden und auch im AI-Umfeld sind Containerisierung und Web-Services ein Thema.

Und schlussendlich handelt es sich um komplexe Modelle, die wiederum erfordern große Datenmengen und damit viel Speicher und CPU/GPU-Power aus Clustersystemen oder der Cloud. In der Public Cloud sind die Trainingsdaten oft von der Datenklassifikation kritisch. Daher bei kritischen Daten eher auf eine private Cloud setzen. Wenn on Prem Lösung, dann idealerweise containerisiert auf einem Cluster.

Generell ist empfehlenswert, bei solchen Projekten viel Know-how vorzuhalten. Nur dann ist gewährleistet, dass die Machine-Learning-Modelle langfristig und qualitativ hochwertig eingesetzt werden können. Sollte es da ein Manko geben, können externe Partner wie auch die mip sehr gerne dabei unterstützen. 

 

Das sind nur ein paar Stichworte, aber bei Interesse gebe ich sehr gerne im persönlichen Gespräch noch weitere Tipps. Ich bin einfach über kontakt@mip.de zu erreichen. Alle Anfragen darüber werden direkt an mich weitergeleitet. 

Jörg, vielen Dank für Einblicke, die Du uns in dieses spannende Thema gegeben hast. Ich bin sicher, dass viele unserer Kunden hier Bedarf sehen und auf Deine bzw. die Expertise Deines Teams zurückkommen werden.

Wenn Sie noch mehr über unsere Leistungen im Bereich Software-Entwicklung erfahren wollen, nehmen Sie gern Kontakt zu uns auf, gerne per Mail an Kontakt@mip.de oder stöbern Sie auf unserer Webseite dazu.

Das könnte Sie auch noch interessieren

Eine Starke Marke

mip-indoor
Die Marke mip steht für über 35 Jahre Erfahrung als Komplettanbieter für Analyselösungen zur optimalen Nutzung Ihres Datenpotentials.
mip-indoor