Das richtige Machine-Learning-Modell auswählen
Welcher Klassifikationsalgorithmus funktioniert für einen bestimmten Datensatz am besten? Kommt besser ein neuronales Netz, ein Random Forest oder eine Support Vector Machine zum Einsatz? Welche Parameter liefern ein optimales Ergebnis? Es gibt für jedes Problem eine Vielzahl an Algorithmen, die es prinzipiell lösen können. Den optimalen auszuwählen, gehört zwar zum Tätigkeitsbereich eines Data Scientists, ist aber tatsächlich Sehr gut zu automatisieren.
Es sind bereits viele Algorithmen etabliert, die diese Aufgabe übernehmen und innerhalb weniger Stunden eigenständig komplexe Kombinationen von Lernalgorithmen generieren, für deren Zusammenstellung ein Data Scientist vielleicht Tage gebraucht hätte. Gute ML-Lösungen bestehen oft nicht aus einem einzelnen Modell, sondern aus vielen, die unabhängig voneinander Vorhersagen treffen und ihre einzelnen Ergebnisse dann zu einer gebündelten Prognose kombinieren.
Perfekt sind diese Algorithmen noch nicht. Es gibt noch zu viele Lösungsmöglichkeiten und zu wenige Heuristiken, die den Lösungsraum gut einschränken. Wenn sich Data Scientists in einem Projekt wirklich Zeit dafür nehmen und einen Algorithmus manuell für den vorliegenden Datensatz feinjustieren, dann gelingt es ihnen immer noch, einige wenige Prozentpunkte besser zu sein als der vollautomatische Algorithmus. Dieser Vorsprung wird jedoch wahrscheinlich im Laufe der nächsten Jahre entweder bis zur Unkenntlichkeit schmelzen oder sich sogar umkehren.
Außerdem setzen selbst Fachkräfte aus dem Bereich Data Science solche Algorithmen heute schon ein, wo es Sinn ergibt. Möchte beispielsweise jemand testen, ob das implementierte Feature Engineering wirklich funktioniert, wäre es ineffizient, Stunden oder Tage darauf zu verwenden, eigenhändig die besten Lernalgorithmen auszuwählen. Das gleiche gilt für einen PoC, in dem Zeit ein kritischer Faktor ist. Hier ist es meist nötig, schnell herauszufinden, ob das spezifische Problem überhaupt mit einer gewissen Zuverlässigkeit lösbar ist.
Integration einer Lösung
Ist der ML-Algorithmus entwickelt, muss er noch seinen Weg in das Produktivsystem des Anwenders finden und dort seine Arbeit aufnehmen. Wie kompliziert das ist und wie viel manueller Aufwand damit einhergeht, hängt von den individuellen Rahmenbedingungen ab. Gibt es beispielsweise schon ein Kubernetes-System mit vielen gut orchestrierten Microservices, dann kann das ML-Modul einfach als ein weiterer Microservice arbeiten. In dem Fall gilt es nur noch, das Modul einmal einzuschalten und dafür zu sorgen, dass der Input dort ankommt und der Output abgegriffen wird. Der manuelle Aufwand gestaltet sich gering.
Findet man zu Projektbeginn allerdings eine zersplitterte IT-Landschaft mit selbstgebauten Monolithen vor, die seit Jahrzehnten schon so laufen, ohne dass wirklich noch ein Mitarbeiter versteht wie und warum, dann wird die ganze Sache komplexer. Der Trend geht branchenübergreifend eindeutig eher zum ersten Szenario. Aber komplexe IT-Landschaften, für die ein Standard-Schema nicht funktioniert, wird es immer geben. Das heißt, dass die Integration von ML-Lösungen zwar zunehmend, aber nie vollständig automatisierbar ist.
Ist Data Science noch wichtig?
Die Data-Science-Branche wird sich in den kommenden Jahren und Jahrzehnten verändern, wie nahezu jede andere Branche auch. Schritte, die repetitiv und wiederholbar sind, werden automatisiert. Dazu gehören Aspekte der Datenaufbereitung und des Feature Engineerings sowie vor allem der Modellauswahl.
Solche Aufgaben hingegen, für die es menschliches Verständnis und Domänenwissen braucht, lassen sich nicht automatisieren. Dazu gehört insbesondere die Übersetzung von Anwenderproblemen in brauchbare Lösungen, die Prüfung der Daten auf Ungereimtheiten und der wichtigste Teil des Feature Engineerings. Data Scientists werden dann weniger Zeit mit repetitiven Aufgaben verbringen müssen und mehr Zeit auf die spannenden Aufgaben verwenden und konkrete Lösungen entwickeln können. (jd)