Onlinevorhersage im Vergleich zur Batchvorhersage

AI Platform Prediction bietet zwei Möglichkeiten für den Abruf von Vorhersagen von trainierten Modellen: Onlinevorhersagen, manchmal auch als "HTTP-Vorhersagen" bezeichnet, und Batchvorhersagen. In beiden Fällen übergeben Sie Eingabedaten an ein in der Cloud gehostetes Modell für maschinelles Lernen und erhalten Inferenzen für jede Dateninstanz. Die Unterschiede sind in der folgenden Tabelle aufgeführt:

Onlinevorhersage Batchvorhersage
Optimiert, um die Latenz bei der Vorhersageverarbeitung zu minimieren. Optimiert, um eine große Anzahl von Instanzen in einem Job zu bewältigen und komplexere Modelle auszuführen.
Kann eine oder mehrere Instanzen pro Anfrage verarbeiten. Kann eine oder mehrere Instanzen pro Anfrage verarbeiten.
Vorhersagen werden in der Antwortnachricht zurückgegeben. Vorhersagen werden in Ausgabedateien an einem Cloud Storage-Speicherort Ihrer Wahl geschrieben.
Eingabedaten werden direkt als JSON-String übergeben. Eingabedaten werden indirekt an einen oder mehrere URIs von Dateien an Speicherorten in Cloud Storage übergeben.
Rückgabe erfolgt so bald wie möglich. Es erfolgt eine asynchrone Anfrage.

Für Konten mit den folgenden IAM-Rollen können Onlinevorhersagen angefordert werden:

Batchvorhersagen können für Konten mit den folgenden IAM-Rollen angefragt werden:

Wird mit der Laufzeitversion und in der Region ausgeführt, die beim Bereitstellen des Modells ausgewählt wurde. Kann in jeder verfügbaren Region bis Laufzeitversion 2.1 ausgeführt werden. Die Ausführung sollte aber mit den Standardeinstellungen für die bereitgestellten Modellversionen erfolgen.
Führt in AI Platform bereitgestellte Modelle aus. Führt Modelle aus, die in AI Platform Prediction oder an zugänglichen Google Cloud Storage-Speicherorten bereitgestellt sind.
Konfigurierbar, um verschiedene Arten von virtuellen Maschinen für Vorhersageknoten zu verwenden. Wenn Sie ein in AI Platform bereitgestelltes Modell ausführen, muss der Maschinentyp mls1-c1-m2 verwendet werden.
Kann Vorhersagen von einem TensorFlow SavedModel oder einer benutzerdefinierten Vorhersageroutine (Beta) sowie von scikit-learn- und XGBoost-Modellen abrufen. Kann Vorhersagen von einem TensorFlow SavedModel abrufen.
0,045147 $ bis 0,151962 $ pro Knotenstunde (Nord- und Südamerika). Der Preis hängt von der Auswahl des Maschinentyps ab. 0,0791205$pro Knotenstunde (Nord- und Südamerika).

Welche Art der Vorhersage Sie verwenden sollten, hängt von den Anforderungen Ihrer Anwendung ab.

  • In der Regel sollten Sie Onlinevorhersagen verwenden, wenn Sie Anfragen als Reaktion auf die Anwendungseingaben stellen oder in anderen Situationen, in denen eine zeitnahe Schlussfolgerung erforderlich ist.

  • Eine Batchvorhersage eignet sich hingegen besser für die Verarbeitung von akkumulierten Daten, wenn Sie keine sofortigen Ergebnisse benötigen. Dies könnte beispielsweise ein regelmäßiger Job sein, der Vorhersagen für alle Daten anfordert, die seit dem letzten Job hinzugekommen sind.

Sie sollten auch die möglichen Unterschiede bei den Kosten für Vorhersagen in Ihre Entscheidung einfließen lassen.

Latenz bei Batchvorhersagen

Wenn Sie ein einfaches Modell und einen kleinen Satz von Eingabeinstanzen verwenden, werden Sie feststellen, dass es bei der Ausführungsdauer identischer Vorhersageanfragen einen erheblichen Unterschied zwischen der Onlinevorhersage und der Batchvorhersage gibt. Ein Job für eine Batchvorhersage kann mehrere Minuten dauern, während eine Onlineanfrage die Vorhersage beinahe in Echtzeit zurückgibt. Das resultiert aus den verschiedenen Infrastrukturen, die beide Vorhersagemethoden verwenden. AI Platform verteilt und initialisiert die Ressourcen für einen Batchvorhersagejob erst, wenn Sie die Anfrage senden. Eine Onlinevorhersage kann in der Regel sofort zum Zeitpunkt der Anfrage verarbeitet werden.

Nächste Schritte

Weitere Informationen über Vorhersagen finden Sie im Vorhersageüberblick.

Außerdem erhalten Sie weiterführende Informationen unter Onlinevorhersagen abrufen und Batchvorhersagen abrufen.