Suchen

Künstliche Intelligenz mit Apache Spark Databricks erweitert Sparks KI-Fähigkeiten mit ML-Framework

Autor / Redakteur: Michael Matzer / Nico Litzel

Databricks, Entwickler und Betreuer der Analytics-Plattform Apache Spark, hat mit der Unified Analytics Platform ein neues Machine Learning Framework vorgestellt. Drei zusätzliche Spark-Funktionen sollen die Zusammenarbeit zwischen Datenbereitstellung und KI-Entwicklung plattformübergreifend performant machen

Firmen zum Thema

Die Browser-basierte Benutzeroberfläche von MLflow zeigt Datenquellen und Filter an.
Die Browser-basierte Benutzeroberfläche von MLflow zeigt Datenquellen und Filter an.
(Bild: Databricks)

Die Unified Analytics Platform von Databricks soll ein Hauptproblem der KI-Entwicklung beheben, nämlich die Diskrepanz zwischen komplexem Datenmanagement einerseits und der über viele Plattformen verstreuten KI-Entwicklung andererseits.

Apache Spark verfügt von Haus aus über mächtige Machine-Learning-Fähigkeiten, mit denen sich vielfältige Algorithmen verwenden lassen. Doch ML-Modelle erfordern enorme Datenmengen, um zuverlässig zu arbeiten. Diese Datenmengen müssen gesäubert, konsolidiert und performant abrufbar sein. Doch nach Databricks' Erkenntnissen verschwenden die hochbezahlten Data Scientists die Hälfte ihrer Zeit darauf, eben diese Daten vorzubereiten und bereitzustellen. Dabei wäre das eigentlich die Aufgabe von Technikern.

Databricks MLflow

Als erstes Framework für Machine Learning verwaltet MLflow Experimente (Code, Daten usw.) und speichert Projekte in einem austauschbaren Format, damit sie reproduzierbare Ergebnisse liefern. Zudem lässt sich ein Modell in einem austauschbaren Format speichern, um sein Deployment auf einer anderen Plattform zu erleichtern.
Als erstes Framework für Machine Learning verwaltet MLflow Experimente (Code, Daten usw.) und speichert Projekte in einem austauschbaren Format, damit sie reproduzierbare Ergebnisse liefern. Zudem lässt sich ein Modell in einem austauschbaren Format speichern, um sein Deployment auf einer anderen Plattform zu erleichtern.
(Bild: Databricks)

Um die Zusammenarbeit zwischen den Prozessen, Technologien und Plattformen der Techniker und Analytiker zu verbessern, dienen MLflow, Runtime for ML und Delta. MLflow ist ein quelloffenes Cloud-übergreifendes Framework, das den Ablauf einer Machine-Learning-Anwendung vereinfachen soll. Zum Ablauf gehört die Erstellung oder Selektion eines Algorithmus, die Schaffung eines Modells, die Inferenz der beiden Elemente aus umfangreichen Trainingsdaten und die Auswertung der Ergebnisse – und dies bitteschön in vielfacher Iteration in kürzester Zeit.

Der Code, den das KI-Team bereits erstellt hat und der den Workflow von Anfang bis Ende beschreibt, lässt sich mit MLflow in einem Austauschformat verpacken, damit dessen Ausführung auf anderen Plattformen wie etwa Tensorflow reproduzierbare Ergebnisse liefert, die sich vergleichen lassen. MLflow lässt sich mit Apache Spark, mit SciKit-Learn, mit TensorFlow und anderen quelloffenen ML-Frameworks wie etwa Keras integrieren. Auf welcher Hardware die einzelnen Programme laufen, erfährt man aus deren jeweiliger Dokumentation, aber Databricks erwähnt ausdrücklich auch die Unterstützung von MS Azure und AWS.

Databricks Runtime for ML

Je größer die Menge der Trainingsdaten, desto besser das Modell. Aber je komplexer die Daten, desto länger die Trainingsdauer. Diese Crux soll sich mit Databricks Runtime for ML beheben lassen. Vor allem die Komplexität soll sich durch vorkonfigurierte Betriebsumgebungen für die verbreitetsten Frameworks abfedern lassen: TensorFlow, Keras, xgboost und Scikit-Learn. Um den Bedarf an hohen Deep-Learning-Kapazitäten zu befriedigen, führt Databricks nun die Nutzung von GPUs (etwa von Nvidia) auf MS Azure und AWS ein. Dieser überfällige Schritt, den auch Hadoop kürzlich gegangen ist, verkürzt die Trainingszeiten um mehrere Größenordnungen.

Der Vorteil laut Databricks: Data Scientists können jetzt Modelle mit erheblichen Datenmengen füttern, verlässliche Ergebnisse evaluieren und fortschrittliche KI-Modelle auf nur einer vereinheitlichten „Maschine“ (lies: Unified Analytics Platform) bereitstellen und ausführen.

Databricks Delta

Um das eingangs erwähnte Problem des hohen Aufwands für die Datenvorbereitung zu bekämpfen, soll Databricks Delta die Datentechniker unterstützen. Sie erhalten durch das in Spark integrierte Delta-Modul hohe, skalierbare Performance, verlässliche Daten aufgrund transaktionaler Integrität sowie die niedrige Latenzzeit von Streaming-Systemen (Spark beherrscht Streaming von Beginn an). Der Fokus liegt also auf höherem Datendurchsatz, aber an der Datenqualität muss noch viel gearbeitet werden.

Die Unified Analytics Platform befindet sich im Alpha-Stadium, bekommt also noch viele weitere Komponenten. Man findet sie bereits auf Microsoft GitHub. Detaillierte Informationen zu allen Neuheiten und zur Produktplanung bietet dieser Blog.

Resümee

Die Lösung, die die drei Funktionen anbieten, ist quasi salomonisch. Einerseits erleichtern sie die Bereitstellung und Ausführung von Modell-Code per Austauschformat auf zahlreichen KI-Frameworks. Andererseits sollen sie darauf hinwirken, dass die Nutzer ihre ML-Workflows auf der Unified Analytics Platform zusammenführen und so die hinderlichen Silos beseitigen. Man kann Databricks nur die Daumen drücken, dass diese Lösung Anklang findet. Umgekehrt lässt sich aus der Notwendigkeit für diese Angebote ablesen, womit viele KI-Anwender derzeit noch kämpfen.

(ID:45360676)

Über den Autor