Im Jahr 2018 tauchte in Fachkreisen und auf thematischen Konferenzen zu KI der Begriff MLOps auf, der sich schnell in der Branche etablierte und sich jetzt als eigenständige Disziplin weiterentwickelt. MLOps könnte sich in Zukunft zu einem der gefragtesten Bereiche in der IT entwickeln. Was ist das genau und wie wird es genutzt? Das klären wir im folgenden Abschnitt.

Was ist MLOps
MLOps (die Kombination von Technologien und Prozessen des maschinellen Lernens sowie Ansätzen zur Integration entwickelter Modelle in Geschäftsprozesse) ist eine neue Form der Zusammenarbeit zwischen Geschäftsvertretern, Wissenschaftlern, Mathematikern, Fachleuten im Bereich des maschinellen Lernens und IT-Ingenieuren bei der Erstellung von künstlichen Intelligenzsystemen.
Anders gesagt, es ist ein Weg, um Methoden und Technologien des maschinellen Lernens in nützliche Werkzeuge für die Lösungen von Geschäftsproblemen zu verwandeln.
Es ist wichtig zu verstehen, dass die Produktivitätskette lange vor der Modellentwicklung beginnt. Der erste Schritt besteht darin, die Geschäftsaufgabe zu definieren, Hypothesen über den Wert zu formulieren, der aus den Daten gezogen werden kann, und Geschäftsideen für deren Anwendung zu entwickeln.
Der Begriff MLOps entstand als Analogie zum Begriff DevOps in Bezug auf Modelle und Technologien des maschinellen Lernens. DevOps ist ein Ansatz zur Softwareentwicklung, der es ermöglicht, die Geschwindigkeit der Implementierung einzelner Änderungen zu erhöhen, während gleichzeitig Flexibilität und Zuverlässigkeit durch eine Reihe von Methoden gewährleistet werden, darunter kontinuierliche Entwicklung, Aufteilung von Funktionen in eine Reihe von unabhängigen Mikrodiensten, automatisiertes Testen und Deployment einzelner Änderungen, globale Überwachung der Funktionsfähigkeit sowie ein System zur schnellen Reaktion auf identifizierte Ausfälle und mehr.
DevOps hat den Lebenszyklus von Software definiert, und in der Fachgemeinschaft entstand die Idee, dieselbe Methodik im Hinblick auf Big Data anzuwenden. DataOps ist der Versuch, die Methodik unter Berücksichtigung der Besonderheiten der Speicherung, Übertragung und Verarbeitung großer Datenmengen in verschiedenen und miteinander interagierenden Plattformen anzupassen und zu erweitern.
Mit dem Auftreten einer bestimmten kritischen Masse an Machine-Learning-Modellen, die in die Geschäftsprozesse von Unternehmen integriert wurden, wurde eine starke Ähnlichkeit zwischen dem Lebenszyklus mathematischer Machine-Learning-Modelle und dem Lebenszyklus von Software festgestellt. Der Unterschied liegt lediglich darin, dass die Algorithmen der Modelle mit Hilfe von Werkzeugen und Methoden des maschinellen Lernens erstellt werden. Daher entstand auf natürliche Weise die Idee, bereits bekannte Ansätze zur Softwareentwicklung auf Machine-Learning-Modelle anzuwenden und anzupassen. Im Lebenszyklus von Machine-Learning-Modellen lassen sich daher folgende Schlüsselschritte hervorheben:
- Definition der Geschäftsidee;
- Modelltraining;
- Testen und Implementieren des Modells in den Geschäftsprozess;
- Betrieb des Modells.
Wenn im Betrieb die Notwendigkeit besteht, das Modell mit neuen Daten zu ändern oder nachzutrainieren, wird der Zyklus von neuem gestartet – das Modell wird überarbeitet, getestet und eine neue Version bereitgestellt.
Einschub. Warum nachtrainieren und nicht neu trainieren? Der Begriff „Neutraining des Modells“ hat eine doppelte Bedeutung: Unter Fachleuten bezieht er sich auf einen Fehler im Modell, wenn das Modell gut vorhersagt, tatsächlich den prognostizierten Parameter in der Trainingsgruppe wiederholt, aber in der externen Datenauswahl viel schlechter funktioniert. Natürlich stellt ein solches Modell einen Mangel dar, da dieser Fehler seine Anwendung ausschließt.
In diesem Lebenszyklus erscheint die Verwendung von DevOps-Tools logisch: automatisiertes Testen, Deployment und Monitoring sowie die Darstellung von Modellberechnungen als separate Mikrodienste. Es gibt jedoch eine Reihe von Besonderheiten, die die direkte Anwendung dieser Tools ohne zusätzliche ML-Wrapper behindern.

Wie man Modelle zum Laufen bringt und Profit erzielt
Als Beispiel, an dem wir die Anwendung des MLOps-Ansatzes demonstrieren, nehmen wir die klassische Aufgabe der Robotisierung des Bank- (oder eines anderen) Produkt-Support-Chats. Normalerweise sieht der Geschäftsprozess zur Unterstützung über den Chat folgendermaßen aus: Der Kunde gibt eine Nachricht mit einer Frage im Chat ein und erhält eine Antwort von einem Spezialisten im Rahmen eines vorher festgelegten Dialogbaums. Die Automatisierung eines solchen Chats wird normalerweise durch expertenbasierte Regelsets gelöst, die sehr arbeitsintensiv in der Entwicklung und Wartung sind. Die Effektivität einer solchen Automatisierung kann, je nach Komplexität der Aufgabe, 20–30 % betragen. Natürlich kommt die Idee auf, dass die Implementierung eines Moduls für künstliche Intelligenz — ein durch maschinelles Lernen entwickeltes Modell — vorteilhafter ist, das:
- in der Lage ist, ohne Beteiligung eines Operators eine größere Anzahl von Anfragen zu bearbeiten (je nach Thema kann die Effizienz in einigen Fällen bis zu 70–80 % erreichen);
- besser auf unkonventionelle Formulierungen im Dialog reagiert — es kann die Absicht erkennen, das tatsächliche Anliegen des Benutzers durch ungenau formulierte Anfragen identifizieren;
- erkennen kann, wann die Antwort des Modells angemessen ist und wann es Zweifel an der "Bewusstheit" dieser Antwort gibt, die ihn zwingen, eine zusätzliche Klärungsfrage zu stellen oder auf einen Operator umzuschalten;
- automatisiert weiter trainiert werden kann (anstatt von einer Gruppe von Entwicklern, die ständig die Antwortszenarien anpassen und korrigieren, wird das Modell von einem Data-Science-Spezialisten unter Anwendung entsprechender maschineller Lernbibliotheken weiter trainiert).

Wie lässt sich ein solches fortgeschrittenes Modell in Betrieb nehmen?
Wie bei der Lösung jeder anderen Aufgabe, muss auch vor der Entwicklung eines solchen Moduls der Geschäftsprozess definiert und die spezifische Aufgabe, die wir mit maschinellem Lernen lösen wollen, formal beschrieben werden. An dieser Stelle beginnt der Prozess der Operationalisierung, der in der Abkürzung Ops bezeichnet wird.
Der nächste Schritt besteht darin, dass ein Data-Science-Spezialist in Zusammenarbeit mit einem Dateningenieur die Verfügbarkeit und Angemessenheit der Daten sowie die Geschäftshypothese zur Funktionsfähigkeit der Geschäftsidee überprüft, indem er einen Prototyp des Modells entwickelt und dessen tatsächliche Effizienz testet. Nur nach Bestätigung durch das Unternehmen kann der Übergang von der Modellentwicklung zur Integration in Systeme beginnen, die spezifische Geschäftsprozesse ausführen. Eine durchgängig geplante Implementierung und ein tiefes Verständnis dafür, wie das Modell in jeder Phase genutzt wird und welchen wirtschaftlichen Nutzen es bringen wird, sind grundlegende Aspekte im Prozess der Implementierung von MLOps in die technologische Landschaft des Unternehmens.
Mit der Entwicklung der KI-Technologien nimmt die Anzahl und Vielfalt der Herausforderungen, die mit maschinellem Lernen gelöst werden können, exponentiell zu. Jeder dieser Geschäftsprozesse ist eine Ersparnis für das Unternehmen durch die Automatisierung von Arbeiten in Massenpositionen (z. B. Callcenter, Dokumentenprüfung und -sortierung usw.), eine Erweiterung des Kundenstamms durch die Einführung neuer attraktiver und benutzerfreundlicher Funktionen, Einsparungen durch optimierte Ressourcennutzung und vieles mehr. Letztendlich zielt jeder Prozess darauf ab, Wert zu schaffen und sollte daher einen bestimmten wirtschaftlichen Nutzen bringen. Es ist sehr wichtig, die Geschäftsidee klar zu formulieren und den potenziellen Gewinn aus der Implementierung des Modells in die gesamte Wertschöpfungsstruktur des Unternehmens zu berechnen. Es kommt vor, dass die Implementierung des Modells sich nicht lohnt und die Zeit, die von den Machine-Learning-Spezialisten aufgewendet wird, viel teurer ist als der Arbeitsplatz des Operators, der diese Aufgabe erledigt. Deshalb sollten solche Fälle bereits in den frühen Phasen der Erstellung von KI-Systemen erkannt werden.
Daher bringen die Gewinne des Modells erst dann Erträge, wenn im MLOps-Prozess die Geschäftsanfrage korrekt formuliert, Prioritäten gesetzt und in den frühen Entwicklungsphasen der Implementierungsprozess des Modells in das System festgelegt wurde.
Neuer Prozess – neue Herausforderungen
Eine umfassende Antwort auf die grundlegende Geschäftsfrage, inwieweit ML-Modelle zur Lösung von Aufgaben anwendbar sind, ist die allgemeine Frage des Vertrauens in KI — dies ist eine der zentralen Herausforderungen im Entwicklungs- und Implementierungsprozess von MLOps. Zunächst sieht sich die Wirtschaft skeptisch gegenüber der Integration von maschinellem Lernen in Prozesse — es ist schwierig, auf Modelle an den Stellen zu vertrauen, an denen früher normalerweise Menschen arbeiteten. Für Unternehmen erscheinen Programme als "Schwarze Kästen", deren Relevanz der Antworten noch bewiesen werden muss. Darüber hinaus gibt es in der Bankwirtschaft, im Geschäft der Telekommunikationsanbieter und anderen Bereichen strenge Anforderungen seitens der staatlichen Aufsichtsbehörden. Alle Systeme und Algorithmen, die in Bankprozesse integriert sind, werden geprüft. Um dieses Problem zu lösen und der Wirtschaft und den Regulierungsbehörden die Angemessenheit und Korrektheit der Antworten der künstlichen Intelligenz zu beweisen, werden zusammen mit dem Modell Überwachungsinstrumente implementiert. Darüber hinaus gibt es ein Verfahren zur unabhängigen Validierung, das für regulatorische Modelle erforderlich ist und den Anforderungen der Zentralbank entspricht. Eine unabhängige Expertengruppe führt eine Prüfung der mit den Eingabedaten erzielten Ergebnisse des Modells durch.
Die zweite Herausforderung besteht darin, die Modellrisiken bei der Implementierung von maschinellen Lernmodellen zu bewerten und zu berücksichtigen. Wenn selbst der Mensch keine hundertprozentige Sicherheit hat, um die Frage zu beantworten, ob das Kleid wirklich weiß oder blau war, hat auch die künstliche Intelligenz das Recht auf Fehler. Es ist auch zu beachten, dass sich die Daten im Laufe der Zeit ändern können und die Modelle nachtrainiert werden müssen, um ausreichend präzise Ergebnisse zu liefern. Damit der Geschäftsprozess nicht leidet, müssen die Modellrisiken verwaltet und die Arbeit des Modells überwacht werden, indem es regelmäßig mit neuen Daten nachtrainiert wird.

Doch nach der ersten Phase des Misstrauens beginnt sich der umgekehrte Effekt zu zeigen. Je mehr Modelle erfolgreich in Prozesse integriert werden, desto größer wird der Appetit der Unternehmen auf den Einsatz von künstlicher Intelligenz — es werden immer neue und neue Aufgaben gefunden, die mit Methoden des maschinellen Lernens gelöst werden können. Jede Aufgabe löst einen ganzen Prozess aus, der verschiedene Kompetenzen erfordert:
- Dateningenieure bereiten die Daten vor und verarbeiten sie;
- Datenwissenschaftler wenden Werkzeuge des maschinellen Lernens an und entwickeln das Modell;
- IT implementiert das Modell im System;
- Der ML-Ingenieur bestimmt, wie dieses Modell korrekt in den Prozess integriert wird, welche IT-Tools je nach Anforderungen an den Anwendungsmodus des Modells in Bezug auf das Anfragevolumen, die Antwortzeit usw. verwendet werden.
- Der ML-Architekt entwirft, wie das Softwareprodukt physisch in einem Industriensystem realisiert werden kann.
Der gesamte Zyklus erfordert eine große Anzahl hochqualifizierter Fachkräfte. An einem bestimmten Punkt der Entwicklung und des Einsickerns von ML-Modellen in Geschäftsprozesse stellt sich heraus, dass die lineare Skalierung der Zahl der Fachkräfte im Verhältnis zum Anwachsen der Aufgaben kostspielig und ineffizient wird. Deshalb stellt sich die Frage der Automatisierung des MLOps-Prozesses – die Definition mehrerer standardisierter Klassen von Machine-Learning-Aufgaben, die Entwicklung typischer Datenverarbeitungs- und Modell-Training-Pipelines. In einem idealen Szenario sind für die Lösung solcher Aufgaben Fachleute erforderlich, die gleich gut über Kompetenzen an der Schnittstelle von Big Data, Data Science, DevOps und IT verfügen. Daher ist das größte Problem in der Data-Science-Branche und die größte Herausforderung bei der Organisation der MLOps-Prozesse das Fehlen solcher Kompetenzen auf dem bestehenden Arbeitsmarkt. Fachkräfte, die diese Anforderungen erfüllen, sind derzeit rar auf dem Arbeitsmarkt und werden hoch geschätzt.
Zu den Kompetenzen
Theoretisch können alle MLOps-Aufgaben mit klassischen DevOps-Tools gelöst werden, ohne auf eine spezialisierte Erweiterung des Rollenmodells zurückzugreifen. Wie wir bereits oben festgestellt haben, sollte ein Data Scientist nicht nur Mathematiker und Datenanalytiker sein, sondern auch Guru der gesamten Pipeline – auf seinen Schultern lasten die Entwicklung der Architektur, die Programmierung von Modellen in mehreren Sprachen je nach Architektur, die Vorbereitung der Datenpräsentation und das Deployment der Anwendung selbst. Allerdings benötigt die Erstellung der technologischen Anbindung, die im End-to-End-MLOps-Prozess umgesetzt wird, bis zu 80% des Arbeitsaufwands, was bedeutet, dass der qualifizierte Mathematiker, der ein hochwertiger Data Scientist ist, nur 20% seiner Zeit seiner Spezialität widmen kann. Daher wird die Abgrenzung der Rollen von Spezialisten, die den Prozess der Implementierung von Machine-Learning-Modellen durchführen, lebensnotwendig.
Wie detailliert die Rollen abgegrenzt werden sollten, hängt von der Größe des Unternehmens ab. Es ist etwas anderes, wenn in einem Startup ein Spezialist, ein Arbeiter aus dem Pool an Fachkräften, selbst Ingenieur, Architekt und DevOps ist. Ganz anders ist es, wenn in einem großen Unternehmen alle Entwicklungsprozesse für Modelle auf mehreren hochqualifizierten Data Science Spezialisten konzentriert sind, während Programmierer oder Datenbankspezialisten — eine verbreitetere und kostengünstigere Kompetenz auf dem Arbeitsmarkt — einen Großteil der Routineaufgaben übernehmen können.
Daher hängt die Geschwindigkeit und Qualität der entwickelten Modelle sowie die Produktivität des Teams und das Mikroklima darin direkt davon ab, wo die Grenze bei der Auswahl der Spezialisten zur Gewährleistung des MLOps-Prozesses verläuft und wie der Prozess der Operationalisierung der entwickelten Modelle organisiert ist.
Was unsere Mannschaft bereits jetzt erreicht hat
Wir haben vor nicht allzu langer Zeit begonnen, die Struktur der Kompetenzen und die MLOps-Prozesse aufzubauen. Doch bereits jetzt befinden sich unsere Projekte zum Management des Lebenszyklus von Modellen und zur Bereitstellung von Modellen als Service in der MVP-Testphase.
Wir haben auch die für große Unternehmen optimale Struktur der Kompetenzen und die organisatorische Struktur für die Interaktion zwischen allen Teilnehmern am Prozess festgelegt. Agile-Teams wurden organisiert, die Aufgaben für das gesamte Spektrum der Geschäftskunden lösen, und es wurde ein Prozess zur Interaktion mit den Projektteams zur Erstellung von Plattformen und Infrastrukturen eingerichtet, die das Fundament des entstehenden MLOps-Gebäudes bilden.
Fragen für die Zukunft
MLOps ist ein sich entwickelndes Gebiet, das einen Mangel an Kompetenzen hat und in Zukunft zunehmen wird. Aber momentan ist es am besten, sich von den Erfahrungen und Praktiken des DevOps abzuleiten. Das Hauptziel von MLOps ist eine effektivere Nutzung von ML-Modellen zur Lösung von Geschäftsproblemen. Dabei tauchen jedoch zahlreiche Fragen auf:
- Wie können wir die Zeit bis zur Produktionsbereitstellung der Modelle verkürzen?
- Wie können wir bürokratische Reibungsverluste zwischen Teams unterschiedlicher Kompetenzen verringern und die Zusammenarbeit fördern?
- Wie können wir Modelle überwachen, Versionen verwalten und ein effektives Monitoring organisieren?
- Wie können wir einen wirklich zyklischen Lebenszyklus für moderne ML-Modelle schaffen?
- Wie können wir den Prozess des maschinellen Lernens standardisieren?
Die Antworten auf diese Fragen werden maßgeblich beeinflussen, wie schnell MLOps sein volles Potenzial entfalten kann.
Quelle: habr.com
