Machine Learning in der Cloud

Machine Learning in der Cloud – eine Entscheidungshilfe

,

Wir stehen vor der vierten industriellen Revolution, der Industrie 4.0 [4]. Wichtige Kernkomponenten der Industrie 4.0 nutzen Machine Learning (ML) Ansätze. Das liegt unter anderem daran, dass aufgrund der Vernetzung der Produktion heute viele Daten,

die für Machine Learning benötigt werden, verfügbar sind. Häufig wird auch auf Machine Learning gesetzt, weil Problemstellungen, wie beispielsweise Predictive Maintenance, so komplex sind, dass sie sich mit herkömmlichen Programmiermethoden nur sehr schwer, oder gar nicht mehr bewältigen lassen1.

Heute gibt es Technologien, die es auch ohne tiefes Expertenwissen ermöglichen, Machine Learning zu betreiben. Sogenannte Automated Machine Learning (AutoML) Systeme automatisieren Expertenaufgaben und machen Machine Learning so für Entwickler zugänglich.

Cloudbasierte Lösungen für eine schnelle Nutzung von Machine Learning Anwendungen

Eine der maßgeblichen Herausforderungen eines Machine Learning Projekts ist neben der Datenaufbereitung das Deployment. Beispielsweise fallen Eingabedaten unter Produktivbedingungen häufiger und in erhöhter Menge an. Deshalb ist es wichtig, ein skalierbares und stabiles System bereitzustellen. Viele Cloudanbieter haben bereits standardisierte Machine Learning Lösungen im Angebot2, die Skalierbarkeit, Stabilität und AutoML bieten. Oft ist aber unklar, welcher Anbieter zur Problemstellung passt. Dieser Beitrag zeigt, wie man den passenden Anbieter für den eigenen Anwendungsfall findet.

Anforderungen an eine Machine Learning Lösung in der Cloud

Eine Kombination aus Expertenbefragungen und Recherche von aktuellen Studien hat gezeigt, dass eine Lösung im Umfeld von Machine Learning und Cloud im Wesentlichen folgende Eigenschaften aufweisen sollte:

  1. Der Machine Learning Prozess, bzw. die Modellerstellung wird automatisiert durchgeführt.
  2. Das trainierte Modell sollte in einer Public Cloud ausgeliefert werden.

Um diese Eigenschaften zu erfüllen, reicht es aus, AutoML für die Modellerstellung zu verwenden und anschließend in einer Cloud, z.B. einer Public Cloud auszuliefern. Lediglich die Trainingsdaten müssen noch händisch gesammelt werden.

Die folgende Abbildung zeigt einen Prozess, der diese Eigenschaften erfüllt:

Machine Learning - Cloud Prozess
Machine Learning – Cloud Prozess

Die Nutzung einer Pipeline der obigen Struktur bietet den Vorteil, dass auch mit wenig Expertenwissen im Bereich von Machine Learning die Flexibilität einer Cloud-Lösung voll ausgenutzt werden kann. Durch die Nutzung von AutoML können so schneller Ergebnisse erzielt werden. Je tiefer das Expertenwissen im Bereich Machine Learning ist, desto genauer können die Ergebnisse ausfallen und ggf. in kürzerer Zeit erzielt werden.

In einer von uns durchgeführten Marktanalyse ergaben sich die folgenden Lösungen, die die obige Pipeline bereits implementieren:

Die Entscheidungsfindung – welche Cloudlösung passt zum Anwendungsfall?

Nun stellt sich die Frage, welcher Anbieter für den eigenen Anwendungsfall am besten passt. Um diese Frage zu beantworten, haben wir ein Bewertungssystem entwickelt. Dieses bewertet die Bausteine der obigen Pipeline und besteht aus drei Teilen:

  • Allgemein (General): Hier werden Kriterien berücksichtigt, die sich auf die Applikation selbst beziehen, wie beispielsweise die Anzahl an Komponenten dieses Systems.
  • Machine Learning: Hier werden Kriterien beachtet, die den Machine Learning-Teil der Lösung bewerten.
  • Cloud / Deployment: Im Abschnitt Cloud wird der Deployment-Teil der Lösung bewertet.

Die folgende Abbildung zeigt diesen Aufbau.

Bausteine des Machine Learning Bewertungssystems
Bausteine des Machine Learning Anbieter Bewertungssystems

Diese Kriterien wurden mit Gewichtungen versehen, die Expertenwissen und Erkenntnisse aus aktuellen Studien widerspiegeln. Das Ganze haben wir in einem Excel-Sheet nutzbar gemacht.

So ist jeder in der Lage, den passenden Cloud-Anbieter für die individuelle cloudbasierte AutoML-Lösung zu finden.

Happy scoring!

Felix Steck

Über MICH

Felix Steck hat angewandte Informatik (B.Sc.) studiert und arbeitet seit 2020 als Software Developer bei doubleSlash. Er bringt umfangreiches Wissen in den Bereichen Machine Learning und Cloud, sowie Erfahrung mit den Programmiersprachen Java und Python mit.

Alle Beiträge von Felix Steck

Mehr erfahren

Weitere Infos auf unserer Website und in unserem Newsletter

Pfeil hoch