Beispiel-Workflows für Vertex AI

Die Beispiele auf dieser Seite zeigen Anwendungsfälle von Vertex AI mit Earth Engine. Weitere Informationen finden Sie auf der Seite zu gehosteten Modellen. In diesen Beispielen wird die Earth Engine Python API in Colab-Notebooks verwendet.

Kosten

AutoML

Low-Code-Ernteklassifizierung

Mit AutoML können Sie ein Modell mit minimalem technischen Aufwand erstellen und trainieren. In diesem Beispiel wird gezeigt, wie Sie mit dem Vertex AI Python SDK ein tabellarisches AutoML-Modell trainieren und bereitstellen und dann eine Verbindung von Earth Engine zu diesem Modell herstellen, um Getreidearten aus Luftbildern des National Agriculture Imagery Program (NAIP) zu klassifizieren.

PyTorch

Bodenbedeckungsklassifizierung mit einem CNN

Dieses Beispiel zeigt eine einfache CNN, die mehrere spektrale Vektoren als Eingaben (d.h. jeweils ein Pixel) nimmt und pro Pixel ein einzelnes Klassenlabel ausgibt. Im Colab-Notebook wird gezeigt, wie das CNN erstellt, mit Daten aus Earth Engine trainiert, in Vertex AI bereitgestellt und Vorhersagen aus dem Modell in Earth Engine abgerufen werden.

TensorFlow

Multi-Class-Vorhersage mit einer DNN von Grund auf

Ein „Deep Neural Network“ (DNN) ist ein künstliches neuronales Netzwerk (Artificial Neural Network, ANN) mit einer oder mehreren verborgenen Schichten. Dieses Beispiel zeigt eine einfache DNN mit einer einzelnen verborgenen Schicht. Die DNN nimmt Spektralvektoren als Eingaben (d.h. jeweils ein Pixel) und gibt ein einzelnes Klassenlabel und Klassenwahrscheinlichkeiten pro Pixel aus. Im Colab-Notebook wird gezeigt, wie Sie das DNN erstellen, mit Daten aus der Earth Engine trainieren, Vorhersagen auf exportierten Bildern treffen und die Vorhersagen in die Earth Engine importieren.

Mehrfachklassige Vorhersage mit einem DNN, das auf Vertex AI gehostet wird

Sie können Vorhersagen aus einem Modell, das in Vertex AI gehostet wird, direkt in Earth Engine abrufen (z.B. im Code-Editor). In dieser Anleitung wird gezeigt, wie Sie ein TensorFlow-Modell trainieren, speichern und für das Hosting vorbereiten, das Modell auf einem Vertex AI-Endpunkt bereitstellen und eine Karte mit interaktiven Modellvorhersagen aus Earth Engine abrufen.

Semantische Segmentierung mit einer FCNN, die in Vertex AI trainiert und gehostet wird

In diesem Leitfaden wird die semantische Segmentierung für die Kartierung der Landbedeckung veranschaulicht. Details zu den Eingaben oder Trainingsdaten finden Sie in dieser Geo for Good-Sitzung 2022. In diesem Leitfaden, der auf Daten aus Earth Engine basiert, wird gezeigt, wie Sie ein Modell mithilfe eines benutzerdefinierten Computers in Vertex AI trainieren, das Modell für das Hosting vorbereiten, das Modell auf einem Endpunkt bereitstellen und eine Karte mit interaktiven Modellvorhersagen aus Earth Engine abrufen.

Vortrainiertes Modell zur Segmentierung von Baumkronen hosten

Sie können vortrainierte Modelle hosten, um interaktive Vorhersagen in Earth Engine zu erhalten. Li et al. (2023) haben beispielsweise mehrere in TensorFlow implementierte Modelle zur Segmentierung von Baumkronen veröffentlicht. Wenn die Eingaben und Ausgaben entsprechend formatiert sind, können diese Modelle direkt gehostet und verwendet werden, um Vorhersagen in Earth Engine zu erhalten, wo immer Eingabebilder vorhanden sind. In dieser Anleitung wird gezeigt, wie Sie ein vorab trainiertes Modell herunterladen, für das Hosting in Vertex AI vorbereiten und Vorhersagen für Bilder im öffentlichen Katalog von Earth Engine abrufen.

TensorFlow-Entscheidungswälder

TensorFlow Decision Forests (TF-DF) ist eine Implementierung gängiger baumbasierter Modelle für maschinelles Lernen in TensorFlow. Diese Modelle können wie TensorFlow-neuronale Netzwerke in Vertex AI trainiert, gespeichert und gehostet werden. In diesem Notebook wird gezeigt, wie Sie TF-DF installieren, einen Random Forest trainieren, das Modell in Vertex AI hosten und interaktive Vorhersagen in Earth Engine erhalten.

Verworfen

Regression mit einer FCNN

Ein „faltbares“ neuronales Netzwerk (Convolutional Neural Network, CNN) enthält eine oder mehrere Convolutional Layers, bei denen die Eingaben Pixelumgebungen sind. Das Netzwerk ist nicht vollständig vernetzt, eignet sich aber zum Identifizieren räumlicher Muster. Ein vollständig convolutionales neuronales Netzwerk (FCNN) enthält keine vollständig verbundene Schicht als Ausgabe. Das bedeutet, dass keine globale Ausgabe (d.h. eine einzelne Ausgabe pro Bild) gelernt wird, sondern lokalisierte Ausgaben (d.h. pro Pixel).

In diesem Colab-Notebook wird die Verwendung des UNET-Modells, einer für die medizinische Bildsegmentierung entwickelten FCNN, zur Vorhersage einer kontinuierlichen [0,1]-Ausgabe in jedem Pixel aus 256 × 256 Pixel-Umgebungen veranschaulicht. In diesem Beispiel wird gezeigt, wie Sie Datenbereiche exportieren, um das Netzwerk zu trainieren, und wie Sie Bildbereiche für die Inferenz überlappen, um Artefakte an den Fliesengrenzen zu entfernen.

Auf AI Platform trainieren

Bei relativ großen Modellen (wie dem FCNN-Beispiel) reicht die Lebensdauer der kostenlosen virtuellen Maschine, auf der Colab-Notebooks ausgeführt werden, möglicherweise nicht für einen langwierigen Trainingsjob aus. Insbesondere, wenn der erwartete Vorhersagefehler im Bewertungs-Dataset nicht minimiert wird, sind möglicherweise weitere Trainingsiterationen sinnvoll. In diesem Colab-Notebook wird gezeigt, wie Sie große Trainingsjobs in der Cloud ausführen. Dazu erfahren Sie, wie Sie Ihren Trainingscode verpacken, einen Trainingsjob starten, eine SavedModel mit dem Befehl earthengine model prepare vorbereiten und mit ee.Model.fromAiPlatformPredictor interaktiv Vorhersagen in Earth Engine abrufen.