AutoML ist eine neuere, auf künstlicher Intelligenz basierende Lösung, die aufgrund ihrer einfachen Anwendung und der großen Vielfalt an Anwendungsfällen an Popularität gewonnen hat. Der Kerngedanke - wie der Name Automated Machine Learning schon sagt - ist, dass man ML auf reale Probleme anwenden kann, auch wenn man auf diesem Gebiet nicht sehr erfahren ist. Aufgrund des hohen Automatisierungsgrads kann diese neue Lösung spannend und nützlich sein, wenn Sie kein Experte für maschinelles Lernen werden wollen, sondern es auf ein reales Problem anwenden möchten, mit dem Sie konfrontiert sind.
Der Grundgedanke von AutoML ist, dass Sie Ihre Daten in eine Software oder einen Dienst einspeisen, der die Daten automatisch analysiert. Das System liefert Ihnen dann ein vollständig implementiertes Modell für maschinelles Lernen. Sie können dieses Modell für alles verwenden, wofür ein ML-Modell verwendet werden kann, z. B. zur Vorhersage von Zielwerten aus Merkmalen, für grundlegende Klassifizierungs- oder Regressionsprobleme, zur Objekterkennung in visuellen Daten usw.
Lassen Sie uns nun speziell auf Google Cloud AutoML eingehen. Google Cloud AutoML bietet eine breite Palette von Diensten:
Die Nutzung dieser Dienste durch die verschiedenen Unternehmen ist sehr unterschiedlich. Es gibt drei Anwendungsfälle, die häufiger vorkommen als andere. AutoML wird in der Regel verwendet für:
Nehmen wir an, unser Unternehmen verfügt über einige Daten. Wir müssen entscheiden, ob es möglich ist, diese Daten zur Vorhersage einer wichtigen Zielvariablen zu verwenden. Mit AutoML können wir diese Entscheidung treffen. Im Grunde gibt es uns einen starken Hinweis darauf, ob es sich überhaupt lohnt, ein ML-Projekt zu starten oder nicht, basierend auf dem Datensatz mit dem gewünschten Zielwert.
Lassen Sie uns ein konkreteres Beispiel betrachten.
Nehmen wir an, ein Webshop muss auf der Grundlage historischer Kaufdaten entscheiden, ob es möglich ist, vorherzusagen, wie viele Tage vergehen werden, bis ein bestimmter Kunde in den Shop zurückkehrt und etwas anderes kauft. Mit AutoML ist es möglich, einen recht zuverlässigen Hinweis darauf zu erhalten, wie genau diese Art von Vorhersage sein kann.
In diesem Anwendungsfall verfügt das Unternehmen bereits über ein laufendes ML-Projekt oder ist gerade dabei, eines zu starten. AutoML kann hier ein Basismodell zur Verfügung stellen. Für das Data-Science-Team ist dies ein Anhaltspunkt dafür, welche Möglichkeiten sich aus den Daten ergeben. Je nach den spezifischen Daten ist die Vorhersageleistung des AutoML-Modells manchmal sehr leistungsfähig und kann von Data Scientists nur schwer manuell reproduziert werden. In anderen Fällen ist es nicht so schwierig, weil die Vorhersageleistung nicht so stark ist. Aber so oder so gibt es einen Beweis dafür, dass es zumindest theoretisch möglich ist, die Vorhersageleistung des AutoML-Modells zu reproduzieren.
An dieser Stelle muss ich erwähnen, dass einige der von Google AI Platform's AutoML verwendeten Algorithmen vortrainierte Modelle enthalten. Das bedeutet, dass die Möglichkeit besteht, dass nicht nur unsere Daten zur Erstellung des Modells verwendet werden, sondern auch Informationen aus anderen Quellen einbezogen werden. Für ein internes Data-Science-Team ist es daher praktisch unmöglich, diese Vorhersageleistung zu reproduzieren.
Natürlich ist es auch möglich, AutoML als End-to-End-Lösung einzusetzen. Mit diesem Ziel vor Augen können Sie den Datensatz hochladen, das Modell trainieren, es dann einsetzen und in der Produktion verwenden. Das bedeutet, dass jeder ein sehr leistungsfähiges Bilderkennungssystem haben kann, und zwar mit nahezu null Entwicklungszeit. Die Google Cloud Platform stellt eine REST-API für das trainierte Modell bereit, die von jedem anderen Backend-System oder jeder Anwendung genutzt werden kann.
Lassen Sie uns AutoML in Aktion sehen!
Eine coole Funktion von Googles AutoML ist die Klassifizierung von Bildern in verschiedene Kategorien, wobei ein Modell verwendet wird, das anhand unserer Beispieldaten erstellt wurde.
Wir können den bekannten Kaggle-Datensatz zur Blumenerkennung nehmen, der von Alexander Mamaev vorbereitet wurde, und darauf eine AutoML-Lösung aufbauen.
Dieser Datensatz enthält fünf Arten von Blumen mit insgesamt 4242 Einzelbildern
Als Erstes müssen wir alle Bilder in den Google Cloud-Speicher hochladen. Mit dem von Google bereitgestellten gsutil-Tool ist dieser Schritt wirklich einfach. Dann müssen wir eine Liste aller Bilder erstellen, die korrekt mit der Art der Blume beschriftet ist, die sie enthält. Diese Datei sollte im CSV-Format gespeichert werden und kann ebenfalls im Cloud-Speicher neben den Bildern abgelegt werden.
Der letzte Teil besteht darin, den Datensatz zu importieren, das Modell zu trainieren und dann zu bewerten. Diese Schritte erfordern nur wenige Klicks auf der Benutzeroberfläche, können aber je nach Datensatz eine Weile dauern, in der Regel ein paar Stunden.
Wenn das Modelltraining abgeschlossen ist, sehen wir etwas Ähnliches in der Cloud Console: Google Cloud.
Wie Sie sehen können, ist das trainierte Modell zu etwa 94 %-96 % sicher in der Unterscheidung zwischen den Bildern.
Damit kann das Modell eingesetzt werden, was bedeutet, dass Google einen REST-API-Dienst bereitstellt, um Vorhersagen für neue Bilder zu treffen.
Dieser Dienst kann z. B. auf einer E-Commerce-Website nützlich sein, um die von den Nutzern hochgeladenen Bilder automatisch zu klassifizieren.
AutoML gewinnt immer mehr an Aufmerksamkeit, da es mehrere Schichten von möglichen Anwendungsfällen in einem maschinellen Lernprojekt gibt. Jedes Projekt kann bis zu einem gewissen Grad davon Gebrauch machen. Außerdem ist es sehr einfach, die Möglichkeiten mit nahezu sofortigen Ergebnissen zu erkunden.
In Anbetracht all dessen sollte es nicht überraschen, dass Google ständig neue Funktionen hinzufügt, wie z. B. die kürzlich hinzugefügten AutoML-Tabellen für tabellarische Daten.