Nuno Chicória

ngpc

Data Scientist - Xpand IT

Leitfaden zu Überwachung von Machine Learning Modellen

5 SEKUNDEN ZUSAMMENFASSUNG:
  • Dieser Beitrag ist eine Fortsetzung des Artikels: „Data Science Assessment: Wie man Modelle für maschinelles Lernen erstellt“.
  • KontinuierlicheÜberwachung der Machine Learning Modelle ist unerlässlich, um den nachhaltigen Erfolg und die optimale Leistung von Modellen für maschinelles Lernen zu gewährleisten. Dazu gehört die Beobachtung des Verhaltens eines Modells im Laufe der Zeit und die Verfolgung wichtiger Kennzahlen, um Genauigkeit und Zuverlässigkeit zu gewährleisten.
  • Verschiedene Open-Source-Plattformen vereinfachen den Lebenszyklus des maschinellen Lernens, indem sie Tools für die Nachverfolgung von Experimenten, die Versionierung von Modellen durch Registrierungen und die nahtlose Bereitstellung mit integrierter Überwachung bereitstellen und so Datenwissenschaftler in die Lage versetzen, die Komplexität der Modellverwaltung zu bewältigen und einen nachhaltigen Erfolg zu erzielen.

In der dynamischen Landschaft der Datenwissenschaft ist die Erstellung und Bereitstellung von Machine Learning-Modellen nur der Anfang. Um einen dauerhaften Erfolg und eine optimale Leistung zu gewährleisten, ist eine kontinuierliche Überwachung dieser Modelle von entscheidender Bedeutung. Die Modellüberwachung in der Data-Science-Pipeline umfasst die Verfolgung, Bewertung und Verwaltung der Leistung sowohl von experimentellen Modellen als auch von Modellen, die in der Produktion eingesetzt werden.
In diesem Blogbeitrag gehen wir auf die Bedeutung der Modellüberwachung ein und untersuchen, wie Tools wie MLflow Datenwissenschaftler in die Lage versetzen können, ihre Experimente und eingesetzten Modelle genau im Auge zu behalten.

Modellüberwachung verstehen

Die Modellüberwachung bezieht sich auf den fortlaufenden Prozess der Beobachtung des Verhaltens eines maschinellen Lernmodells im Laufe der Zeit, sowohl während der Entwicklungsphase als auch nach der Bereitstellung. Dabei werden verschiedene Metriken verfolgt, um sicherzustellen, dass das Modell auch weiterhin genaue und zuverlässige Vorhersagen liefert, wenn sich die Datenverteilungen weiterentwickeln.

Schlüsselaspekte der Modellüberwachung

Leistungsmetriken

Die Überwachung der Leistung Ihrer Modelle umfasst die Verfolgung von Schlüsselkennzahlen wie Genauigkeit, Präzision, Wiedererkennung, F1-Score und mehr. Diese Metriken geben Aufschluss darüber, wie gut sich das Modell auf neue Daten verallgemeinern lässt und ob eine Verschlechterung der Leistung eingetreten ist.

Erkennung von Datendrift

Datenverteilungen in realen Szenarien sind selten statisch. Bei der Überwachung der Datenabweichung wird die Verteilung der eingehenden Daten mit den Daten verglichen, auf denen das Modell trainiert wurde. Mit Monitoring-Tools können Sie automatisierte Prozesse einrichten, um signifikante Abweichungen zu erkennen und zu melden.

Erkennung von Modelldrift

Ähnlich wie bei der Datenabweichung geht es bei der Modellabweichung darum, Veränderungen in den Vorhersagen des Modells im Laufe der Zeit zu verfolgen. Mit Hilfe von Überwachungswerkzeugen können Sie die Modellleistung protokollieren und vergleichen und so feststellen, ob die Effektivität des Modells nachgelassen hat.

Wie Modellüberwachungs-Tools die Modellüberwachung vereinfachen

Verschiedene Open-Source Plattformen vereinfachen den Lebenszyklus des maschinellen Lernens. Ein wichtiger Ansatz ist die Möglichkeit, Experimente zu verfolgen und zu verwalten. Im Folgenden erfahren Sie, wie diese Tools dabei helfen, Ihre Modelle zu überwachen:

Experiment Tracking

Diese Plattformen ermöglichen es Ihnen, Experimente zu protokollieren und zu organisieren, so dass Sie verschiedene Durchläufe leicht vergleichen und die erfolgreichsten Modelle identifizieren können. Sie zeichnen Parameter, Metriken und Artefakte auf und bieten so einen umfassenden Überblick über Ihren Modellentwicklungsprozess.

Modell Registrierung

Modellregistraturen dienen als zentrale Drehscheiben für die Verwaltung und Versionierung von Modellen. Dadurch wird sichergestellt, dass jede Bereitstellung auf einer bestimmten Version des Modells basiert, was ein einfaches Rollback ermöglicht, falls Probleme auftreten.

Modellimplementierung und Überwachung

Diese Plattformen vereinfachen den Bereitstellungsprozess und ermöglichen den nahtlosen Übergang vom Experimentieren mit Modellen zur Bereitstellung in der Produktion. Darüber hinaus bieten sie Integrationen mit Überwachungstools, mit denen Sie die Leistung des eingesetzten Modells genau im Auge behalten können.

Fazit

Die Modellüberwachung ist ein integraler Bestandteil der Data Science Pipeline, die die kontinuierliche Effektivität von Machine Learning-Modellen gewährleistet. Verschiedene Tools, wie z.B. MLflow, erweisen sich als leistungsstarke Verbündete und bieten Funktionen, die die Nachverfolgung von Experimenten, die Modellversionierung und die Überwachung der Bereitstellung optimieren. Durch den Einsatz dieser Tools können Datenwissenschaftler die Komplexität der Modellverwaltung und -überwachung selbstbewusst meistern und so zum nachhaltigen Erfolg ihrer Bemühungen im Bereich des maschinellen Lernens beitragen.

Nuno ChicóriaLeitfaden zu Überwachung von Machine Learning Modellen
read more

Five everyday problems MLFlow solves

At Xpand, we take pride in our XP4DS workflow and like to surround ourselves with the best tools to make our work easier and results better. Among those technologies and tools, there is a special place reserved for MLFlow.

If you haven’t heard about MLFlow, turn off your phone and connect your modem because it’s time to catch up with [modern solutions/the technological world]!

MLFlow is an open-source platform that helps you manage your machine learning life cycle from the first model you train to that amazing model you will deploy to solve all your problems.

It covers your problems under 3 main topics:

  • Tracking: Record and query experiments (code, data, config and results)
  • Projects: Packaging format for reproducible runs on any platform.
  • Models: General format for sending models to diverse deployment tools.

MLFlow is library-agnostic. You can use it with any machine learning library, and in any programming language, since all functions are accessible through a REST API and CLI. For convenience, the project also includes a Python API, R API, and Java API.

1. Do you recall with precision the ROC AUC? (Metrics + Parameters Logging)

We’ve all been there in the past. It’s your 1st iteration and you train a model with good accuracy values. You continue your iterations in the hope of finding a better set of hyperparameters, only to discover that your best model was an earlier one. You can no longer remember that combination of hyperparameters. With MLFlow, you don’t have this problem! With model logging, you can get information on all your models in one place. From metrics to hyperparameters, you can even add your own tags. In the API, you will be able to compare all the trained models, sort them by any metric or tag and select the model of your choice.

2. It works on my machine ¯_(ツ)_/¯ (Model + Environment Logging)

Once again, as an incredible data scientist, you create an amazing model that solves the problem you need it to. Nevertheless, when you hand it over to your colleagues it does not work. It may be that a library needs to be updated or that some sorcery in the background does not work. With MLFlow this will no longer be a problem. Parallel to the metrics logging, you can save your (trained) model, conda environment and any other file that you deem important. This way, your colleagues can seamlessly replicate your conda environment and execute your trained model without issues.

3. Logging beyond experiments (Model Registry)

The same way that you can save models per experiment, every model that was once in production will also be saved. Through the MLFlow UI you can access all the previous versions of the deployed model. More importantly, when you decide on the best model, you can register it so everyone in the team knows that’s the model that will follow staging and production.

4. There is no “I” In MLFlow (Teamwork)

MLFlow ups teamwork to the next level by improving interoperability between teams. With your DS team, you can all submit and see each other’s models, compare them with yours and even import them so you can work on them too. Then, as a team, you can also push certain models for staging and deployment. These will have to be approved by the team responsible for those tasks. And thus, the whole DS pipeline is present in the MLFlow UI.

5. Model is ready for delivery (Deployment for Production)

You’re nearing the end of the project, you can see light at the end of the tunnel and all your hard work is paying off. All that’s left is to deploy the model and, you guessed it, MLFlow has you covered. With MLFlow Models you are ready to send your trained model for deployment in a vast array of platforms. This, combined with its logging tool, makes it perfect for the constant monitoring of the model’s performance over time so you can improve it if needed!

Conclusion

You will have realised by now that MLFlow is a tool that tries to and succeeds in solving many of the problems that a data scientist faces along the data science pipeline. From the moment you start training your model to the model you deploy into production, you can always rely on MLFlow to track your progress and make the data science process much easier. An open-source tool, MLFlow is an ever-evolving must-have tool for the 21st century data scientist.

Nuno ChicóriaFive everyday problems MLFlow solves
read more