Machine Learning von der Stange
Die richtige Strategie
von Thomas Hafen - 07.04.2017
Welches Framework für den Einsatz im Unternehmen das richtige ist, oder ob womöglich Cloud-Services die bessere Alternative sind, hängt von vielen Faktoren ab, nicht zuletzt davon, wie viel Know-how, Budget und Zeit für die Entwicklung zur Verfügung stehen. Die Experten sind sich einig, dass es auf jeden Fall besser ist, klein anzufangen: „Zurzeit sind viele ML-Projekte vor allem experimentell angelegt“, sagt Laura Geier von Microsoft. Schnelles Scheitern und eine rasche Korrektur der Ansätze gehörten zum Prozess notwendig dazu, so Geier weiter. „Wer dafür erst viel investieren und installieren muss, kann nicht wirklich innovativ sein.“
Ohne Daten funktionieren Machine-Learning-Algorithmen nicht
Diese Einsicht ist nicht immer gegeben, weiß Software-Experte Fondermann: „Oft werden große Projekte gestartet, weil der Vorstand der Meinung ist, man müsse jetzt Machine Learning machen. Das funktioniert nicht.“ Er empfiehlt, dass stattdessen kleine Teams mit schlüssig definierten Projekten beginnen sollten. „Dabei muss nicht nur das technische Ziel klar sein, sondern auch, welchen Wertbeitrag das Projekt zum Geschäftserfolg des Unternehmens leistet“, so Fondermann.
Dem pflichtet Roman Schacherl bei: „Man sollte sich einen Bereich suchen, der schnelle Erfolge verspricht, wo aber auch die Risiken überschaubar bleiben.“
AWS-Director Herbrich rät, neben der Auswahl an Algorithmen, die ein Machine-Learning-Framework bietet, vor allem auf dessen Kompatibilität mit verschiedenen Speichersystemen und Datenbanken zu achten. „Ohne Daten funktionieren Machine-Learning-Algorithmen nicht.“
Fazit
Frameworks haben Machine Learning demokratisiert und selbstlernende Systeme aus der rein akademischen Anwendung in die wirtschaftliche Machbarkeit gebracht. Entwickler benötigen heute kein Mathematikstudium oder eine jahrelange Ausbildung zum Data Scientist mehr, um Machine-Learning-Algorithmen gewinnbringend in ihren Projekten einsetzen zu können. Welches Framework dabei letztendlich das richtige ist, darüber entscheidet neben dem Einsatzzweck vor allem auch der Erfahrungshintergrund der beteiligten Entwickler.
Wer bereits über viel Wissen und Erfahrung in Java verfügt, wird sich mit einem Framework wie Deeplearning4J sicher leichter tun, wer ohnehin ein Hadoop-Cluster unterhält, ist mit Spark und dessen MLlib-Bibliotheken gut bedient. Ähnliches gilt für die Services der großen Cloud-Provider: Wer ohnehin schon die Amazon Web Services nutzt, wird Amazon Machine Learning den Vorzug geben, ein Microsoft-Kunde Azure Machine Learning oder die Cognitive Services integrieren.
Fehler werden erst Jahre später entdeckt
Die Einfachheit und der leichte Zugang, den Frameworks zu Machine Learning bieten, hat jedoch auch einen Haken: Je einfacher es ist, intelligente Dienste wie Bild- oder Spracherkennung in Produkte und Services zu integrieren, desto weniger Gedanken werden sich Entwickler womöglich darüber machen, was sie da eigentlich tun. Schon traditionell programmierte Software hat oft Fehler, deren Auswirkungen manchmal erst nach Jahren im Betrieb sichtbar werden. Noch viel mehr Überraschungen kann man beim Einsatz von Machine Learning erleben. Oft bleibt im Dunkeln, was genau in den Tiefen der neuronalen Netze passiert und wie diese zu Ergebnissen kommen. Zudem ist Lernen keine Einbahnstraße.
Die Entscheidungen, die beispielsweise selbstlernende Systeme für Betrugserkennung oder Produktmarketing auf Basis des Nutzerverhaltens treffen, haben ihrerseits Einfluss auf das Verhalten der Anwender. Solche Rückkopplungsschleifen können unerwünschte Effekte nach sich ziehen und müssen bedacht werden. „Wir haben es bei Machine Learning mit neuen Paradigmen der Programmierung zu tun“, sagt Bernd Fondermann, „Entwickler müssen lernen, damit umzugehen.“