MLOps: DevOps in der Welt des maschinellen Lernens

Im Jahr 2018 tauchte in Fachkreisen und auf thematischen Konferenzen zum Thema KI das Konzept von MLOps auf, das schnell in der Branche Fuß fasste und sich nun zu einer eigenständigen Richtung entwickelt. In Zukunft könnte MLOps zu einem der gefragtesten Bereiche in der IT werden. Was es ist und wozu es gegessen wird, verstehen wir unter dem Schnitt.

MLOps: DevOps in der Welt des maschinellen Lernens

Was ist MLOps?

MLOps (Zusammenführung von Technologien und Prozessen des maschinellen Lernens und Ansätzen zur Implementierung entwickelter Modelle in Geschäftsprozessen) ist eine neue Art der Zusammenarbeit zwischen Wirtschaftsvertretern, Wissenschaftlern, Mathematikern, Spezialisten für maschinelles Lernen und IT-Ingenieuren bei der Schaffung künstlicher Intelligenzsysteme.

Mit anderen Worten: Es handelt sich um eine Möglichkeit, Methoden und Technologien des maschinellen Lernens in ein nützliches Werkzeug zur Lösung geschäftlicher Probleme umzuwandeln. 

Es muss verstanden werden, dass die Produktivitätskette lange vor der Entwicklung des Modells beginnt. Der erste Schritt besteht darin, das Geschäftsziel, die Hypothese über den Wert, der aus den Daten gewonnen werden kann, und die Geschäftsidee für deren Umsetzung zu definieren. 

Das eigentliche Konzept von MLOps entstand als Analogie zum Konzept von DevOps in Bezug auf Modelle und maschinelle Lerntechnologien. DevOps ist ein Softwareentwicklungsansatz, der es Ihnen ermöglicht, die Geschwindigkeit einzelner Änderungen zu erhöhen und gleichzeitig Flexibilität und Zuverlässigkeit aufrechtzuerhalten, indem er eine Reihe von Ansätzen verwendet, darunter kontinuierliche Entwicklung, Aufteilung von Funktionen in mehrere unabhängige Mikrodienste, automatisierte Tests und Bereitstellung einzelner Änderungen, global Gesundheitsüberwachung, ein schnelles Reaktionssystem für festgestellte Ausfälle usw. 

DevOps definierte den Software-Lebenszyklus, und in der Software-Community kam die Idee auf, dieselbe Technik auf Big Data anzuwenden. DataOps ist ein Versuch, die Methodik anzupassen und zu erweitern und dabei die Besonderheiten der Speicherung, Übertragung und Verarbeitung großer Datenmengen auf verschiedenen und interagierenden Plattformen zu berücksichtigen.
  
Mit dem Aufkommen einer bestimmten kritischen Masse von Modellen des maschinellen Lernens, die in die Geschäftsprozesse von Unternehmen eingebettet sind, wurde eine starke Ähnlichkeit zwischen dem Lebenszyklus mathematischer Modelle des maschinellen Lernens und dem Software-Lebenszyklus festgestellt. Der einzige Unterschied besteht darin, dass die Modellalgorithmen mithilfe von Werkzeugen und Methoden des maschinellen Lernens erstellt werden. Daher entstand natürlich die Idee, bereits bekannte Ansätze der Softwareentwicklung für Machine-Learning-Modelle anzuwenden und anzupassen. Somit lassen sich folgende Schlüsselphasen im Lebenszyklus von Machine-Learning-Modellen unterscheiden:

  • Definition einer Geschäftsidee;
  • Modellausbildung;
  • Testen und Implementieren des Modells im Geschäftsprozess;
  • Modellbetrieb.

Wenn es während des Betriebs notwendig wird, das Modell zu ändern oder auf neue Daten umzuschulen, beginnt der Zyklus von neuem – das Modell wird finalisiert, getestet und eine neue Version wird bereitgestellt.

Rückzug. Warum umerziehen und nicht umerziehen? Der Begriff „Modellumschulung“ hat eine doppelte Interpretation: Unter Fachleuten bedeutet er einen Fehler im Modell, wenn das Modell gute Vorhersagen macht, tatsächlich den vorhergesagten Parameter auf dem Trainingssatz wiederholt, aber auf dem externen Datensatz viel schlechter funktioniert. Natürlich handelt es sich bei einem solchen Modell um einen Mangel, da dieser Mangel seine Anwendung nicht zulässt.

In diesem Lebenszyklus erscheint es logisch, DevOps-Tools zu verwenden: automatisierte Tests, Bereitstellung und Überwachung, Registrierung der Modellberechnung als separate Microservices. Es gibt jedoch eine Reihe von Funktionen, die den direkten Einsatz dieser Tools ohne zusätzliche ML-Bindung verhindern.

MLOps: DevOps in der Welt des maschinellen Lernens

Wie man Models zum Funktionieren bringt und Gewinne erwirtschaftet

Als Beispiel, in dem wir die Anwendung des MLOps-Ansatzes demonstrieren, nehmen wir die mittlerweile klassische Aufgabe der Robotisierung des Support-Chats für ein Bankprodukt (oder ein anderes Produkt). Ein typischer Chat-Support-Geschäftsprozess läuft wie folgt ab: Ein Kunde gibt eine Frage in einen Chat ein und erhält eine Antwort von einem Spezialisten innerhalb eines vordefinierten Dialogbaums. Die Aufgabe, einen solchen Chat zu automatisieren, wird in der Regel mithilfe von Experten definierter Regelwerke gelöst, deren Entwicklung und Pflege sehr aufwändig ist. Die Effizienz einer solchen Automatisierung kann je nach Komplexitätsgrad der Aufgabe 20-30 % betragen. Natürlich entsteht die Idee, dass es vorteilhafter ist, ein Modul für künstliche Intelligenz zu implementieren – ein Modell, das mithilfe von maschinellem Lernen entwickelt wurde und Folgendes bietet:

  • in der Lage, mehr Anfragen ohne Beteiligung eines Operators zu bearbeiten (je nach Thema kann die Effizienz in einigen Fällen 70–80 % erreichen);
  • Passt sich besser an nicht standardmäßige Formulierungen im Dialog an – ist in der Lage, die Absicht, den tatsächlichen Wunsch des Benutzers nach einer unklar formulierten Anfrage zu bestimmen;
  • ist in der Lage zu bestimmen, wann die Antwort des Modells angemessen ist und wann Zweifel an der „Bewusstheit“ dieser Antwort bestehen und es notwendig ist, eine zusätzliche klärende Frage zu stellen oder zum Bediener zu wechseln;
  • kann automatisch neu trainiert werden (anstatt dass eine Gruppe von Entwicklern Reaktionsszenarien ständig anpasst und korrigiert, wird das Modell von einem Data Scientist unter Verwendung der entsprechenden Bibliotheken für maschinelles Lernen neu trainiert). 

MLOps: DevOps in der Welt des maschinellen Lernens

Wie bringt man ein so fortgeschrittenes Modell zum Laufen? 

Wie bei der Lösung jeder anderen Aufgabe ist es vor der Entwicklung eines solchen Moduls notwendig, einen Geschäftsprozess zu definieren und eine bestimmte Aufgabe formal zu beschreiben, die wir mithilfe der Methode des maschinellen Lernens lösen werden. An diesem Punkt beginnt der Prozess der Operationalisierung, der mit der Abkürzung Ops bezeichnet wird. 

Der nächste Schritt besteht darin, dass der Datenwissenschaftler in Zusammenarbeit mit dem Dateningenieur die Verfügbarkeit und Angemessenheit der Daten sowie die Geschäftshypothese über die Umsetzbarkeit der Geschäftsidee prüft, einen Prototyp des Modells entwickelt und dessen tatsächliche Wirksamkeit überprüft. Erst nach Bestätigung durch das Unternehmen kann der Übergang von der Entwicklung des Modells zur Einbettung in Systeme beginnen, die einen bestimmten Geschäftsprozess ausführen. Eine durchgängige Implementierungsplanung, ein tiefes Verständnis in jeder Phase, wie das Modell verwendet wird und welche wirtschaftlichen Auswirkungen es haben wird, ist ein grundlegender Moment im Prozess der Einführung von MLOps-Ansätzen in die technologische Landschaft des Unternehmens.

Mit der Entwicklung von KI-Technologien nehmen Anzahl und Vielfalt der Aufgaben, die mit Hilfe von maschinellem Lernen gelöst werden können, rasant zu. Jeder dieser Geschäftsprozesse rettet das Unternehmen durch die Automatisierung der Arbeit von Mitarbeitern in Massenpositionen (Callcenter, Prüfung und Sortierung von Dokumenten usw.), erweitert den Kundenstamm durch das Hinzufügen neuer attraktiver und praktischer Funktionen und spart Geld aufgrund optimaler Funktionen Nutzung und Umverteilung von Ressourcen und vieles mehr. Letztlich ist jeder Prozess auf die Schaffung von Werten ausgerichtet und muss daher einen bestimmten wirtschaftlichen Effekt mit sich bringen. Hier ist es sehr wichtig, die Geschäftsidee klar zu formulieren und den erwarteten Gewinn aus der Implementierung des Modells in die Gesamtstruktur der Unternehmenswertschöpfung einzukalkulieren. Es gibt Situationen, in denen sich die Implementierung des Modells nicht rechtfertigt und die Zeit, die Spezialisten für maschinelles Lernen aufwenden, viel teurer ist als der Arbeitsplatz des Bedieners, der diese Aufgabe ausführt. Deshalb muss versucht werden, solche Fälle bereits in den frühen Phasen der Entwicklung von KI-Systemen zu identifizieren.

Folglich beginnen die Modelle erst dann Gewinn zu bringen, wenn die Geschäftsaufgabe im MLOps-Prozess richtig formuliert, Prioritäten gesetzt und der Prozess der Einführung des Modells in das System in den frühen Entwicklungsstadien formuliert wurde.

Neuer Prozess – neue Herausforderungen

Als umfassende Antwort auf die grundlegende Geschäftsfrage, wie anwendbar ML-Modelle zur Lösung von Problemen sind, ist die allgemeine Frage des Vertrauens in KI eine der zentralen Herausforderungen bei der Entwicklung und Implementierung von MLOps-Ansätzen. Unternehmen stehen der Einführung von maschinellem Lernen in Prozessen zunächst skeptisch gegenüber – an Orten, an denen früher üblicherweise gearbeitet wurde, ist es schwierig, sich auf Modelle zu verlassen. Für die Wirtschaft stellen die Programme eine „Blackbox“ dar, deren Relevanz noch zu beweisen ist. Darüber hinaus gelten im Bankwesen, im Geschäft der Telekommunikationsbetreiber und anderen strenge Anforderungen staatlicher Regulierungsbehörden. Alle Systeme und Algorithmen, die in Bankprozessen implementiert sind, unterliegen einer Prüfung. Um dieses Problem zu lösen und Unternehmen und Regulierungsbehörden die Gültigkeit und Richtigkeit der Antworten auf künstlicher Intelligenz zu beweisen, werden neben dem Modell auch Überwachungstools eingeführt. Darüber hinaus gibt es ein für Regulierungsmodelle verpflichtendes unabhängiges Validierungsverfahren, das den Anforderungen der Zentralbank entspricht. Eine unabhängige Expertengruppe prüft die durch das Modell erzielten Ergebnisse unter Berücksichtigung der Eingabedaten.

Die zweite Herausforderung besteht in der Bewertung und Berücksichtigung von Modellrisiken bei der Implementierung eines Machine-Learning-Modells. Auch wenn ein Mensch die Frage, ob das Kleid weiß oder blau war, nicht mit absoluter Sicherheit beantworten kann, hat die künstliche Intelligenz auch das Recht, einen Fehler zu machen. Es ist auch zu berücksichtigen, dass sich Daten im Laufe der Zeit ändern können und Modelle neu trainiert werden müssen, um ein ausreichend genaues Ergebnis zu erzielen. Damit der Geschäftsprozess nicht beeinträchtigt wird, ist es notwendig, die Modellrisiken zu verwalten, die Leistung des Modells zu überwachen und es regelmäßig anhand neuer Daten neu zu trainieren.

MLOps: DevOps in der Welt des maschinellen Lernens

Doch nach der ersten Phase des Misstrauens zeigt sich der gegenteilige Effekt. Je mehr Modelle erfolgreich in Prozesse implementiert werden, desto größer wird der Appetit der Unternehmen auf den Einsatz künstlicher Intelligenz – es entstehen immer neue Aufgaben, die mit Methoden des maschinellen Lernens gelöst werden können. Jede Aufgabe löst einen ganzen Prozess aus, der bestimmte Kompetenzen erfordert:

  • Dateningenieure bereiten Daten vor und verarbeiten sie;
  • Datenwissenschaftler wenden maschinelle Lernwerkzeuge an und entwickeln ein Modell;
  • Die IT implementiert das Modell in das System.
  • Der ML-Ingenieur bestimmt, wie dieses Modell korrekt in den Prozess integriert wird, welche IT-Tools er je nach den Anforderungen an die Anwendungsart des Modells verwendet, unter Berücksichtigung des Anfrageflusses, der Antwortzeit usw. 
  • Ein ML-Architekt entwirft, wie ein Softwareprodukt physisch in einem industriellen System implementiert werden kann.

Der gesamte Zyklus erfordert eine große Anzahl hochqualifizierter Fachkräfte. Ab einem bestimmten Entwicklungsstand und dem Grad der Durchdringung von ML-Modellen in Geschäftsprozesse stellt sich heraus, dass eine lineare Skalierung der Anzahl von Spezialisten im Verhältnis zum Wachstum der Anzahl von Aufgaben teuer und ineffizient wird. Daher stellt sich die Frage nach der Automatisierung des MLOps-Prozesses – der Definition mehrerer Standardklassen von Problemen des maschinellen Lernens, der Entwicklung typischer Datenverarbeitungspipelines und der Umschulung von Modellen. Im Idealfall sind zur Lösung solcher Probleme Fachkräfte erforderlich, die gleichermaßen über Kompetenzen an der Schnittstelle von BigData, 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 von MLOps-Prozessen der Mangel an solcher Kompetenz auf dem bestehenden Schulungsmarkt. Fachkräfte, die solche Anforderungen erfüllen, sind derzeit auf dem Arbeitsmarkt rar und Gold wert.

Zur Frage der Kompetenzen

Theoretisch können alle MLOps-Aufgaben mit klassischen DevOps-Tools und ohne Rückgriff auf eine spezialisierte Vorbilderweiterung gelöst werden. Dann sollte ein Datenwissenschaftler, wie oben erwähnt, nicht nur Mathematiker und Datenanalyst, sondern auch ein Guru der gesamten Pipeline sein – Architekturentwicklung, Programmierung von Modellen in mehreren Sprachen je nach Architektur, Vorbereitung eines Datenmarts und Bereitstellung fällt auf seine Schultern. Die Anwendung selbst. Die Erstellung einer im End-to-End-MLOps-Prozess implementierten technologischen Bindung nimmt jedoch bis zu 80 % der Arbeitskosten in Anspruch, was bedeutet, dass ein qualifizierter Mathematiker, der ein erstklassiger Datenwissenschaftler ist, nur 20 % der Arbeitskosten aufwenden muss Zeit für sein Spezialgebiet. Daher ist die Differenzierung der Rollen von Spezialisten, die den Prozess der Implementierung maschineller Lernmodelle umsetzen, von entscheidender Bedeutung. 

Wie detailliert die Rollen abgegrenzt werden sollten, hängt von der Größe des Unternehmens ab. Es ist eine Sache, wenn ein Startup einen Spezialisten hat, einen Arbeiter in der Reserve von Energieingenieuren, einen Ingenieur, einen Architekten und selbst DevOps. Ganz anders verhält es sich, wenn in einem großen Unternehmen alle Modellentwicklungsprozesse auf wenige hochrangige Data Scientists konzentriert sind, während ein Programmierer oder Datenbankspezialist – eine auf dem Arbeitsmarkt häufigere und kostengünstigere Kompetenz – übernehmen kann die meisten Routineaufgaben.

Wo also die Grenze bei der Auswahl von Spezialisten zur Sicherstellung des MLOps-Prozesses liegt und wie der Prozess der Operationalisierung der entwickelten Modelle organisiert ist, wirkt sich direkt auf die Geschwindigkeit und Qualität der entwickelten Modelle, die Produktivität des Teams und das Mikroklima darin aus.

Was unser Team bereits getan hat

Wir haben vor kurzem mit dem Aufbau des Kompetenzrahmens und der MLOps-Prozesse begonnen. Aber bereits jetzt befinden sich unsere Projekte zur Verwaltung des Lebenszyklus von Modellen und zur Nutzung von Modellen als Service in der MVP-Testphase.

Wir haben auch die optimale Kompetenzstruktur für ein großes Unternehmen und die Organisationsstruktur der Interaktion zwischen allen Prozessbeteiligten ermittelt. Es wurden agile Teams organisiert, um Probleme für das gesamte Spektrum von Geschäftskunden zu lösen, sowie ein Prozess der Interaktion mit Projektteams, um Plattformen und Infrastruktur zu schaffen, die die Grundlage des im Bau befindlichen MLOps-Gebäudes bilden.

Fragen für die Zukunft

MLOps ist ein wachsender Bereich, in dem es an Kompetenzen mangelt und der in Zukunft an Dynamik gewinnen wird. In der Zwischenzeit ist es am besten, auf den Entwicklungen und Praktiken von DevOps aufzubauen. Das Hauptziel von MLOps besteht darin, ML-Modelle effektiver zur Lösung von Geschäftsproblemen zu nutzen. Doch das wirft viele Fragen auf:

  • Wie kann die Zeit bis zur Einführung von Modellen in die Produktion verkürzt werden?
  • Wie können bürokratische Reibungen zwischen Teams mit unterschiedlichen Kompetenzen reduziert und der Fokus auf die Zusammenarbeit gestärkt werden?
  • Wie kann man Modelle verfolgen, Versionen verwalten und eine effektive Überwachung organisieren?
  • Wie kann ein wirklich zirkulärer Lebenszyklus für ein modernes ML-Modell erstellt werden?
  • Wie standardisiert man den maschinellen Lernprozess?

Die Antworten auf diese Fragen werden weitgehend darüber entscheiden, wie schnell MLOps sein volles Potenzial entfalten wird.

Source: habr.com

Kommentar hinzufügen