MLops: Der Aufstieg des maschinellen Lernens

So schwierig es für Datenwissenschaftler ist, Daten zu markieren und genaue Modelle für maschinelles Lernen zu entwickeln, kann die Verwaltung von Modellen in der Produktion noch entmutigender sein. Das Erkennen von Modelldrift, die Umschulung von Modellen mit der Aktualisierung von Datensätzen, die Verbesserung der Leistung und die Wartung der zugrunde liegenden Technologieplattformen sind wichtige datenwissenschaftliche Praktiken. Ohne diese Disziplinen können Modelle zu fehlerhaften Ergebnissen führen, die sich erheblich auf das Geschäft auswirken.

Die Entwicklung serienreifer Modelle ist keine leichte Aufgabe. Einer Studie zum maschinellen Lernen zufolge hatten 55 Prozent der Unternehmen keine Modelle in der Produktion bereitgestellt, und 40 Prozent oder mehr benötigen mehr als 30 Tage, um ein Modell bereitzustellen. Erfolg bringt neue Herausforderungen mit sich, und 41 Prozent der Befragten erkennen die Schwierigkeit an, Modelle für maschinelles Lernen und Reproduzierbarkeit zu versionieren.

Die Lehre hier ist, dass neue Hindernisse entstehen, wenn Modelle für maschinelles Lernen in der Produktion eingesetzt und in Geschäftsprozessen verwendet werden.

Modellmanagement und -betrieb waren einst Herausforderungen für die fortgeschritteneren Data-Science-Teams. Zu den Aufgaben gehören jetzt die Überwachung von Modellen für maschinelles Lernen in der Produktion auf Drift, die Automatisierung der Umschulung von Modellen, die Benachrichtigung, wenn die Drift signifikant ist, und die Erkennung, wann Modelle aktualisiert werden müssen. Da immer mehr Unternehmen in maschinelles Lernen investieren, besteht ein größerer Bedarf an Sensibilisierung für Modellmanagement und -betrieb.

Die gute Nachricht ist, dass Plattformen und Bibliotheken wie Open Source MLFlow und DVC sowie kommerzielle Tools von Alteryx, Databricks, Dataiku, SAS, DataRobot, ModelOp und anderen das Data Management und den Betrieb für Data Science-Teams vereinfachen. Die öffentlichen Cloud-Anbieter teilen auch Praktiken wie die Implementierung von MLops mit Azure Machine Learning.

Es gibt verschiedene Ähnlichkeiten zwischen Modellmanagement und Entwicklern. Viele bezeichnen Modellmanagement und -betrieb als MLops und definieren sie als die Kultur, Praktiken und Technologien, die zur Entwicklung und Pflege von Modellen für maschinelles Lernen erforderlich sind.

Modellmanagement und -abläufe verstehen

Um das Modellmanagement und den Betrieb besser zu verstehen, sollten Sie die Vereinigung von Softwareentwicklungspraktiken mit wissenschaftlichen Methoden in Betracht ziehen.

Als Softwareentwickler wissen Sie, dass es nicht trivial ist, die Version einer Anwendung zu vervollständigen und für die Produktion bereitzustellen. Eine noch größere Herausforderung beginnt jedoch, sobald die Anwendung die Produktion erreicht. Endbenutzer erwarten regelmäßige Verbesserungen, und die zugrunde liegende Infrastruktur, Plattformen und Bibliotheken müssen gepatcht und gewartet werden.

Wenden wir uns nun der wissenschaftlichen Welt zu, in der Fragen zu mehreren Hypothesen und wiederholten Experimenten führen. Sie haben im naturwissenschaftlichen Unterricht gelernt, ein Protokoll dieser Experimente zu führen und den Weg der Optimierung verschiedener Variablen von einem Experiment zum nächsten zu verfolgen. Das Experimentieren führt zu verbesserten Ergebnissen, und die Dokumentation der Reise hilft dabei, Kollegen davon zu überzeugen, dass Sie alle Variablen untersucht haben und dass die Ergebnisse reproduzierbar sind.

Datenwissenschaftler, die mit Modellen des maschinellen Lernens experimentieren, müssen Disziplinen sowohl aus der Softwareentwicklung als auch aus der wissenschaftlichen Forschung einbeziehen. Modelle für maschinelles Lernen sind Softwarecodes, die in Sprachen wie Python und R entwickelt, mit TensorFlow, PyTorch oder anderen Bibliotheken für maschinelles Lernen erstellt, auf Plattformen wie Apache Spark ausgeführt und in der Cloud-Infrastruktur bereitgestellt werden. Die Entwicklung und Unterstützung von Modellen für maschinelles Lernen erfordert umfangreiche Experimente und Optimierungen, und Datenwissenschaftler müssen die Genauigkeit ihrer Modelle nachweisen.

Wie die Softwareentwicklung müssen auch Modelle für maschinelles Lernen ständig gewartet und verbessert werden. Ein Teil davon stammt aus der Wartung des Codes, der Bibliotheken, Plattformen und der Infrastruktur, aber Datenwissenschaftler müssen sich auch Gedanken über die Modelldrift machen. In einfachen Worten, Modelldrift tritt auf, wenn neue Daten verfügbar werden und die Vorhersagen, Cluster, Segmentierungen und Empfehlungen von Modellen für maschinelles Lernen von den erwarteten Ergebnissen abweichen.

Erfolgreiches Modellmanagement beginnt mit der Entwicklung optimaler Modelle

Ich sprach mit Alan Jacobson, Chief Data and Analytics Officer bei Alteryx, darüber, wie Unternehmen erfolgreich sind und die Entwicklung von Modellen für maschinelles Lernen skalieren. „Um die Modellentwicklung zu vereinfachen, besteht die erste Herausforderung für die meisten Datenwissenschaftler darin, eine starke Problemformulierung sicherzustellen. Viele komplexe Geschäftsprobleme können mit sehr einfachen Analysen gelöst werden. Dazu muss das Problem jedoch zunächst so strukturiert werden, dass Daten und Analysen zur Beantwortung der Frage beitragen können. Selbst wenn komplexe Modelle genutzt werden, besteht der schwierigste Teil des Prozesses in der Regel darin, die Daten zu strukturieren und sicherzustellen, dass die richtigen Eingaben auf dem richtigen Qualitätsniveau verwendet werden. “

Ich stimme Jacobson zu. Zu viele Daten- und Technologieimplementierungen beginnen mit schlechten oder keinen Problemstellungen und mit unzureichender Zeit, Tools und Fachwissen, um eine angemessene Datenqualität sicherzustellen. Unternehmen müssen zunächst intelligente Fragen zu Big Data stellen, in Dataops investieren und dann agile Methoden in der Datenwissenschaft verwenden, um Lösungen zu finden.

Überwachung von Modellen für maschinelles Lernen auf Modelldrift

Eine genaue Problemdefinition ist für die fortlaufende Verwaltung und Überwachung von Modellen in der Produktion von entscheidender Bedeutung. Jacobson erklärte weiter: „Die Überwachung von Modellen ist ein wichtiger Prozess, aber um es richtig zu machen, muss man die Ziele und möglichen nachteiligen Auswirkungen, die eine Beobachtung rechtfertigen, genau verstehen. Während die meisten über die Überwachung der Modellleistung und die Veränderung im Laufe der Zeit diskutieren, ist die Analyse unbeabsichtigter Konsequenzen in diesem Bereich wichtiger und herausfordernder. “

Ein einfacher Weg, um die Modelldrift und die unbeabsichtigten Folgen zu verstehen, besteht darin, die Auswirkungen von COVID-19 auf Modelle des maschinellen Lernens zu berücksichtigen, die mit Trainingsdaten vor der Pandemie entwickelt wurden. Modelle des maschinellen Lernens, die auf menschlichem Verhalten, Verarbeitung natürlicher Sprache, Verbrauchernachfragemodellen oder Betrugsmustern basieren, wurden alle durch Verhaltensänderungen während der Pandemie beeinflusst, die mit KI-Modellen zu tun haben.

Technologieanbieter veröffentlichen neue MLops-Funktionen, da immer mehr Unternehmen an Wert gewinnen und ihre Data-Science-Programme weiterentwickeln. Beispielsweise hat SAS einen Feature-Beitragsindex eingeführt, mit dem Datenwissenschaftler Modelle ohne Zielvariable bewerten können. Cloudera hat kürzlich einen ML-Überwachungsdienst angekündigt, der technische Leistungsmetriken erfasst und Modellvorhersagen verfolgt.

MLops befasst sich auch mit Automatisierung und Zusammenarbeit

Zwischen der Entwicklung eines maschinellen Lernmodells und der Überwachung in der Produktion befinden sich zusätzliche Tools, Prozesse, Kooperationen und Funktionen, mit denen sich datenwissenschaftliche Praktiken skalieren lassen. Einige der Automatisierungs- und Infrastrukturpraktiken sind analog zu Entwicklern und umfassen Infrastruktur als Code und CI / CD (kontinuierliche Integration / kontinuierliche Bereitstellung) für maschinelle Lernmodelle. Andere umfassen Entwicklerfunktionen wie die Versionierung von Modellen mit ihren zugrunde liegenden Trainingsdaten und das Durchsuchen des Modellrepositorys.

Die interessanteren Aspekte von MLops bringen wissenschaftliche Methodik und Zusammenarbeit in Data Science-Teams. Zum Beispiel ermöglicht DataRobot ein Champion-Challenger-Modell, das mehrere experimentelle Modelle parallel ausführen kann, um die Genauigkeit der Produktionsversion in Frage zu stellen. SAS möchte Datenwissenschaftlern helfen, die Geschwindigkeit auf den Märkten und die Datenqualität zu verbessern. Alteryx hat kürzlich Analytics Hub eingeführt, um die Zusammenarbeit und den Austausch zwischen Data Science-Teams zu unterstützen.

All dies zeigt, dass das Verwalten und Skalieren von maschinellem Lernen viel mehr Disziplin und Übung erfordert, als nur einen Datenwissenschaftler zu bitten, eine zufällige Gesamtstruktur, k-means oder ein Faltungs-Neuronales Netzwerk in Python zu codieren und zu testen.