MLflow nimmt sich des Lebenszyklus-Managements von Machine-Learning-Projekten an

Das von Apache-Spark-Schöpfer Databricks initiierte Open-Source-Projekt hat nun den Sprung auf die Version 1.0 vollzogen.

In Pocket speichern vorlesen Druckansicht
MLflow nimmt sich des Lebenszyklus-Managements von Machine-Learning-Projekten an
Lesezeit: 3 Min.
Von
  • Alexander Neumann
  • Matthias Parbel

Rund ein Jahr nach der Ankündigung hat das von Databricks betriebene Open-Source-Projekt MLflow die Version 1.0 erreicht. Derzeit scheint die Plattform für das Lebenszyklus-Management von Machine-Learning-Projekten schon von Tausenden Unternehmen eingesetzt zu werden, die ihre Workloads für das maschinelle Lernen in der Produktion damit verwalten. Außerdem bietet Databricks inzwischen einen gemanagten Cloud-Service auf Basis von MLflow. Die Version 1.0 soll nicht nur die Reife und Stabilität der APIs zum Ausdruck bringen, sondern fügt auch eine Reihe häufig nachgefragter Funktionen und Verbesserungen hinzu.

Für das Lebenszyklus-Management von Machine-Learning-Projekten kombiniert MLflow die drei Komponenten MLflow Tracking, MLflow Projects und MLflow Models, die sich sowohl lokal im Rechenzentrum als auch in der Cloud nutzen lassen. MLflow Tracking stellt Anwendern eine API sowie ein UI unter anderen für die Protokollierung von Parametern, Codeversionen sowie den Ausgabedateien beim Ausführen von ML-Code zur Verfügung. Somit lassen sich Experimente protokollieren und auswerten – und das mit Python, R, Java oder über eine REST API.

Mit MLflow Projects lässt sich der Code in einem Dateiverzeichnis beziehungsweise Git Repository so verpacken, dass er reproduzierbar wiederverwendbar beispielsweise auf neue Plattformen oder an andere Data Scientists übergeben werden kann. MLflow Models schließlich dient dazu, den Code für das Deployment aufzubereiten und für die Verarbeitung mit ML-Frameworks wie TensorFlow, Keras oder PyTorch anzupassen.

Um eine genaue Protokollierung der Streaming-Kennzahlen sowie eine bessere Visualisierung zu ermöglichen, unterstützt die log_metric-API nun mit Version 1.0 einen Schrittparameter. Dabei kann der metrische Schritt eine beliebige ganze Zahl sein, die die x-Koordinate für die Metrik darstellt. Die MLflow-Oberfläche unterstützt nun auch das Plotten von Metriken gegen bereitgestellte x-Koordinatenwerte.

Um die Suche zu verbessern, unterstützt die Suchfilter-API nun eine vereinfachte Version der SQL WHERE-Klausel. Darüber hinaus lässt sich jetzt nach Laufattributen und Tags sowie nach Metriken und Parametern suchen. Des Weiteren enthält MLflow 1.0 einen runs/log-batch-REST-API-Endpunkt zum Protokollieren mehrerer Metriken, Parameter und Tags mit einer einzigen API-Anforderung.

Neu ist jetzt ein Windows-Client, und es gibt einen neuen Befehl zum Erstellen eines Docker-Containers, dessen standardmäßiger Einstiegspunkt dem angegebenen MLflow-Pyfunc-Modell am Port 8080 innerhalb des Containers dient.

Weitere neue Features beziehungsweise eine Vertiefung der hier genannten finden sich in der Ankündigung von Databricks. Das Unternehmen ist vorrangig als maßgeblicher Entwickler des Big-Data-Frameworks Apache Spark bekannt. (ane)