Einführung
AutoML wird auch als automatisches maschinelles Lernen bezeichnet. Im Jahr 2018 führte Google Cloud AutoML ein, das großes Interesse erregte und eines der bedeutendsten Tools im Bereich maschinelles Lernen und künstliche Intelligenz ist. In diesem Artikel lernen Sie „AutoML“ kennen, eine Code-freie Lösung zum Erstellen von Modellen für maschinelles Lernen mit Hilfe von Google Cloud AutoML.
AutoML ist Teil von Vertex AI auf der Google Cloud Platform. Vertex AI ist die End-to-End-Lösung für den Aufbau und die Erstellung von Pipelines für maschinelles Lernen in der Cloud. Wir werden jedoch die Details von Vertex AI in einem zukünftigen Artikel besprechen. AutoML hängt hauptsächlich von zwei Dingen ab: Transferlernen und neuronaler Sucharchitektur. Sie müssen lediglich die Daten bereitstellen, damit AutoML ein optimales benutzerdefiniertes Modell für Ihren Anwendungsfall erstellt.
In diesem Artikel besprechen wir die Vorteile, Verwendung und praktische Implementierung von AutoML mit Python-Code auf der Google Cloud Platform.
Lernziele
- Damit die Leser wissen, wie sie AutoML mit Code verwenden
- Um die Vorteile von AutoML zu verstehen
- So verwenden Sie die Clientbibliothek zum Erstellen einer ML-Pipeline
Dieser Artikel wurde im Rahmen der veröffentlicht Data Science-Blogathon.
Problemstellung
Der Aufbau eines Modells für maschinelles Lernen ist ein zeitaufwändiger Prozess und erfordert viel Fachwissen wie Kenntnisse in einer Programmiersprache, gute Kenntnisse in Mathematik und Statistik sowie ein Verständnis für Algorithmen für maschinelles Lernen. In der Vergangenheit konnten Menschen mit technischen Fähigkeiten nur in der Datenwissenschaft arbeiten und Modelle erstellen. Für technisch nicht versierte Personen war die Erstellung eines Modells für maschinelles Lernen eine äußerst schwierige Aufgabe. Allerdings war der Weg für Techniker, die Modelle bauten, nicht einfach. Sobald das Modell erstellt ist, erfordern seine Wartung, Bereitstellung und automatische Skalierung zusätzlichen Aufwand, Arbeitsstunden und etwas andere Fähigkeiten. Um diese Herausforderungen zu meistern, führte der globale Suchriese Google 2014 AutoML ein, das jedoch später öffentlich zugänglich gemacht wurde.
Vorteile von AutoML
- AutoML reduziert manuelle Eingriffe und erfordert wenig Fachwissen im Bereich maschinelles Lernen.
- Mit AutoML können technische und nichttechnische Personen Modelle für maschinelles Lernen erstellen, ohne Code schreiben zu müssen
- Es kümmert sich um jeden einzelnen Schritt des Aufbaus eines Modells wie Datenvorverarbeitung, Feature-Engineering, Modellaufbau, Hyperparameter-Tuning, Modellbewertung und Vorhersage von Testdaten, sodass Sie keinen Code schreiben müssen, um solche Aufgaben auszuführen
- AutoML verfügt über eine intuitive Benutzeroberfläche und bietet verschiedene APIs
- AutoML stellt der Client-Bibliothek auch Python und andere Programmiersprachen zur Verfügung
Unterstützte Datentypen
AutoML unterstützt unstrukturierte und strukturierte Daten, die in vier Typen kategorisiert werden
- Bild
- Tabellarisch
- Video
- Text
Mit diesen vier Datentypen können Sie bestimmte von AutoML unterstützte Aktivitäten ausführen.
Bild
Mit dem Bilddatensatz können Sie die folgende Aufgabe in AutoML ausführen
- Bildklassifizierung (Einzeletikett)
- Bildklassifizierung (Multi-Label)
- Objekterkennung
- Bildsegmentierung
Tabellarisch
Mit einem tabellarischen Datensatz können Sie die folgende Aufgabe ausführen:
- Rückschritt
- Einstufung
- Zeitreihenprognose
Video
Sie können die folgenden Aktivitäten mit dem Videodatensatz ausführen
- Objekterkennung
- Erkennung von Videoaktionen
- Video-Objektverfolgung
Text
AutoML-Textdaten unterstützen die folgende Aufgabe:
- Stimmungsanalyse
- Textklassifizierung (Einzeletikett)
- Textklassifizierung (Multi-Label)
- Entitätsextraktion
Implementierung
Um AutoML nutzen zu können, sollte man über ein Konto auf der Google Cloud Platform verfügen. Die Kontoeinrichtung ist ein sehr einfacher Vorgang. Gehen Sie einfach zu
URL und klicken Sie auf „Beitreten“. Sie werden nach Ihrer Gmail-E-Mail-ID und Ihrem Passwort gefragt und ein Konto wird auf GCP erstellt. Klicken Sie auf die Suchleiste und suchen Sie nach Vertex AI. Auf der linken Seite sehen Sie alle Komponenten von Vertex AI. Klicken Sie auf Workbench.
Workbench stellt Ihnen ein Jupyter-Labor zur Verfügung, in dem Sie mithilfe einer virtuellen Maschine eine Notebook-Instanz in der Cloud erstellen können. Wählen Sie die Instanz „USER-MANAGED NOTEBOOKS“ aus und klicken Sie auf „NEUES NOTEBOOK“, wählen Sie Python 3 und lassen Sie die Standardeinstellungen unverändert. Es dauert zwei bis drei Minuten und ein Jupyter Lab wird für Sie erstellt. Sie können auch eine Tensorflow- und Pytorch-Instanz mit oder ohne GPU erstellen. Klicken Sie auf „JUPYTERLAB ÖFFNEN“ und dann im Notebook-Bereich auf „Python 3 (ipykernel)“. Ihr Jupyter-Notebook ist fertig; Jetzt können Sie Code schreiben, der Ihrem lokalen Python-Jupyter-Notebook ähnelt.
AutoML-Clientbibliothek in Python
Für die Demo erstellen wir mithilfe der AutoML-Clientbibliothek in Python ein tabellarisches Klassifizierungsmodell.
Zuerst müssen Sie die beiden Pakete installieren.
Sobald diese beiden Pakete erfolgreich installiert wurden, starten Sie den Kernel neu. Sie können den Kernel auf zwei Arten neu starten: Eine Möglichkeit besteht darin, über die Benutzeroberfläche die Registerkarte „Kernel“ in der oberen Leiste auszuwählen und auf „Kernel neu starten“ zu klicken. Die zweite Option erfolgt programmgesteuert.
Legen Sie Ihre Projekt-ID, Ihren Bucket-Namen und Ihre Region fest. Wenn Sie Ihre Projekt-ID nicht kennen, führen Sie den folgenden Code aus, um Ihre Google Cloud-Projekt-ID mit dem Befehl gcloud herauszufinden.
Warum brauchen wir einen Bucket-Namen? In AutoML können Sie die Daten auf drei Arten hochladen:
- BigQuery
- Cloud-Speicher
- Lokales Laufwerk (vom lokalen Computer)
In diesem Beispiel laden wir den Datensatz aus dem Cloud-Speicher hoch. Dazu müssen wir einen Bucket erstellen, in den wir unsere CSV-Datei hochladen.
Erstellen Sie einen Bucket im Cloud-Speicher und legen Sie den Datenpfad vom Google Cloud-Speicher fest.
Jetzt müssen wir einen Datensatz in AutoML erstellen und das Modell anhand des Datensatzes trainieren
Sobald das Training abgeschlossen ist, stellen wir unser Modell mithilfe des Endpunkts bereit. Endpoint ist eine der Komponenten von Vertex AI, in der Sie Ihren Modus bereitstellen und Online-Vorhersagen treffen können.
Das wird ein paar Minuten dauern. Wählen Sie beim Erstellen einer Endpunktinstanz den Maschinentyp mit Bedacht aus, da dadurch Kosten entstehen. Die Einstellung eines niedrigen Maschinentyps führt zu geringeren Gebühren, während die Einstellung eines hohen Maschinentyps zu höheren Kosten führt. Weitere Informationen zu den Preisen finden Sie unter dem folgenden Link.
Abschluss
Google Cloud AutoML ist ein leistungsstarkes Tool, mit dem jeder Modelle für maschinelles Lernen erstellen kann, ohne Code schreiben zu müssen. AutoML verfügt über eine sehr interaktive Benutzeroberfläche, über die Sie das Modell ohne umfangreiche Kenntnisse über Algorithmen und Codierung erstellen und bereitstellen können. Die wichtigsten Erkenntnisse aus diesem Artikel sind jedoch:
- So nutzen Sie AutoML-Dienste programmgesteuert mithilfe der AutoML-Clientbibliothek
- Sie können in AutoML verschiedene Arten von Modellen erstellen, z. B. Bildklassifizierung, Textentitätsextraktion, Zeitreihenvorhersage, Objekterkennung und vieles mehr
- Sie benötigen nicht viel ML-Fachwissen, um AutoML zu verwenden und zu erfahren, wie es manuelle Eingriffe reduziert.
- Wie es Entwicklern und Datenwissenschaftlern ermöglicht, die Leistungsfähigkeit der KI-Technologie schnell und effizient in ihren Anwendungen zu nutzen
Häufig gestellte Fragen
Q1. Wird AutoML den Job des Data Scientist übernehmen?
A. Nein, AutoML wird nicht den Job des Data Scientist übernehmen. AutoML hat viele Potenziale und automatisiert maschinelles Lernen. Wenn wir jedoch ein benutzerdefiniertes Modell mit vollständiger Kontrolle über den Code erstellen möchten, benötigen wir das Fachwissen eines Datenwissenschaftlers.
Q2. Erledigen vorgefertigte APIs und AutoML die gleiche Arbeit?
A. Vorgefertigte APIs verwenden ein vorgefertigtes ML-Modell und AutoML verwendet ein benutzerdefiniertes ML-Modell.
Q3. Können technisch nicht versierte Personen AutoML verwenden?
A. Ja, jeder kann AutoML verwenden und das Modell für maschinelles Lernen in der Google Cloud erstellen.
Q4. Ist Google Cloud zu teuer?
A. Das hängt vom Anwendungsfall und den Cloud-Diensten ab, die Sie nutzen möchten.
F5. Was ist Google Cloud Vertex AI? Ist es wie AutoML?
A. Vertex AI ist eine ML-Suite von Google Cloud, die eine End-to-End-Lösung für den Aufbau, die Bereitstellung und die Erstellung von Pipelines für maschinelles Lernen und künstliche Intelligenz in der Cloud bietet. AutoML ist eine der Komponenten von Vertex AI.
Die in diesem Artikel gezeigten Medien sind nicht Eigentum von Analytics Vidhya und werden nach Ermessen des Autors verwendet.