Übersicht über Vorhersagen

Sie können Ihre trainierten Modelle für maschinelles Lernen in der Cloud hosten und den Dienst AI Platform Prediction verwenden, um Zielwerte für neue Daten abzuleiten. Auf dieser Seite werden das Modellhosting und Vorhersagen erläutert sowie Überlegungen angesprochen, die Sie bei Ihren Projekten berücksichtigen sollten.

So gehts:

AI Platform Prediction verwaltet Rechenressourcen in der Cloud zur Ausführung Ihrer Modelle. Sie können Vorhersagen aus Ihren Modellen anfordern, um dafür vorhergesagte Zielwerte zu erhalten. Zur Einrichtung von Vorhersagen in der Cloud gehen Sie so vor:

  1. Exportieren Sie Ihr Modell als Artefakte, die Sie für AI Platform Prediction bereitstellen können.

  2. Erstellen Sie eine Modellressource in AI Platform und anschließend eine Modellversion von Ihrem gespeicherten Modell.

    Wenn Sie eine benutzerdefinierte Vorhersageroutine bereitstellen, müssen Sie auch den Code angeben, der zur Vorhersagezeit ausgeführt werden soll.

  3. Formatieren Sie die Eingabedaten für die Vorhersage und fordern Sie entweder eine Onlinevorhersage oder eine Batchvorhersage an.

  4. Bei einer Onlinevorhersage führt der Dienst das gespeicherte Modell aus und gibt die angeforderten Vorhersagen als Antwort auf den Aufruf zurück.

    • Die Modellversion wird in der Region bereitgestellt, die Sie beim Erstellen des Modells angegeben haben.
    • Eine regelmäßig verwendete Modellversion ist normalerweise immer einsatzbereit, auch wenn es dafür letztlich keine Garantie gibt.

    Bei Verwendung einer Batchvorhersage, die nur für TensorFlow-Modelle unterstützt wird, ist der Vorgang etwas komplexer:

    1. Der Vorhersagedienst ordnet Ressourcen für die Ausführung des Jobs zu. Dazu wird mindestens ein Vorhersageknoten benötigt.

    2. Der Dienst stellt Ihre TensorFlow-Grafik auf jedem zugeordneten Knoten wieder her.

    3. Der Vorhersagedienst verteilt die Eingabedaten auf die zugeordneten Knoten.

    4. Jeder Knoten führt die Grafik aus und speichert die Vorhersagen an einem von Ihnen angegebenen Cloud Storage-Speicherort.

    5. Wenn alle Eingabedaten verarbeitet sind, beendet der Dienst den Job und gibt die dafür zugeordneten Ressourcen frei.

Modellbereitstellung

AI Platform kann Ihre Modelle hosten, sodass Sie damit Vorhersagen in der Cloud treffen können. Der Vorgang, mit dem ein gespeichertes Modell gehostet wird, heißt Bereitstellung. Der Vorhersagedienst verwaltet die für die skalierte Ausführung Ihres Modells erforderliche Infrastruktur. Ferner stellt er das Modell für Online- oder Batchvorhersageanfragen zur Verfügung. In diesem Abschnitt wird die Modellbereitstellung beschrieben.

Modelle und Versionen

AI Platform organisiert Ihre trainierten Modelle mithilfe von Ressourcen, die Modelle und Versionen genannt werden. Ein Modell ist eine Lösung für maschinelles Lernen. Beispielsweise können Sie ein Modell namens census erstellen, das Ihre gesamte Arbeit zu einem Modell für maschinelles Lernen zur Volkszählung der USA enthält. Die von Ihnen erstellte Entität census ist ein Container für die tatsächlichen Implementierungen des ML-Modells. Diese werden als Versionen bezeichnet.

Die Entwicklung eines Modells für maschinelles Lernen ist ein iterativer Prozess. Aus diesem Grund sind die Ressourcen von AI Platform so eingerichtet, dass Sie für jedes Modell für maschinelles Lernen mehrere Versionen erstellen können. Die Begriffe können etwas verwirrend sein, da eine AI Platform-Modellressource kein Modell für maschinelles Lernen für sich allein ist. Ein AI Platform-Modell ist vielmehr ein Container, der die Versionen des Modells für maschinelles Lernen enthält.

Inhalt einer Version

Das als Modellversion in AI Platform bereitgestellte "Modell" besteht aus einem oder mehreren Artefakten, die durch das Training mit gehosteten Frameworks, TensorFlow, scikit-learn oder XGBoost generiert werden. Es spielt dabei keine Rolle, ob Sie Ihr Modell in der Cloud mithilfe von AI Platform oder mit einer anderen Lösung trainiert haben.

Sie haben auch die Möglichkeit, eine benutzerdefinierte Vorhersageroutine (Beta) bereitzustellen. In diesem Fall können Sie die Modellversion um zusätzliche Trainingsartefakte und zusätzlichen Code zur Verarbeitung von Vorhersageanfragen ergänzen.

Abweichungen zwischen Versionen

Die Versionen, die Sie für eine bestimmte Modellressource erstellen, sind beliebig. Das bedeutet, dass Sie die gleiche Modellressource verwenden können, auch wenn Sie das Modell für maschinelles Lernen zwischen den Versionen vollständig ändern. Ein Modell ist ein Verwaltungstool, das Sie so einsetzen können, wie es für Ihre Situation am sinnvollsten ist.

Es ist üblich, dass Eingaben und Ausgaben der Modellversionen identisch sind, insbesondere wenn sich eine Version in der Produktion befindet. Dies ermöglicht ein schnelles Wechseln zwischen den Versionen, ohne dass Sie die umgebende Anwendungsstruktur, die Sie um das Modell eingerichtet haben, ändern müssen. Auch das Testen neuer Versionen mit vorhandenen Daten ist dadurch einfacher.

Standardversion

Jedes Modell mit mindestens einer Version hat eine Standardversion. Diese Voreinstellung wird bei der Erstellung der ersten Version festgelegt. Wenn Sie bei einer Vorhersageanfrage nur einen Modellnamen angegeben, verwendet AI Platform die Standardversion für dieses Modell.

Beachten Sie, dass der Dienst die Standardversion nur einmal automatisch festlegt und zwar dann, wenn Sie die allererste Version erstellen. Sie können dann jede nachfolgende Version durch Aufrufen von projects.models.versions.setDefault manuell als Standard festlegen. Dies ist auch mit gcloud ai-platform versions set-default und mit einer Option in der Versionsliste der Seite "Modelldetails" in der Google Cloud Platform Console möglich. Für den Aufruf der Modelldetailseite klicken Sie in der Modellliste der Seite "Modelle" auf Ihr Modell. So können Sie beispielsweise in der Produktion eine stabile Standardversion für Vorhersagen verwenden und gleichzeitig neuere Versionen testen, ohne eine eigene Modellressource für den Test erstellen zu müssen.

Modelle und Versionen benennen

Für die Namen von Modellen und Versionen gilt Folgendes:

  • Sie dürfen nur Buchstaben (Groß-/Kleinschreibung beachten), Zahlen und Unterstriche enthalten.
  • Sie müssen mit einem Buchstaben beginnen.
  • Sie dürfen maximal 128 Zeichen enthalten.
  • Sie dürfen innerhalb eines Projekts (für Modelle) oder innerhalb eines Modells (für Versionen) nicht mehrfach vergeben werden.

Neben diesen technischen Anforderungen gibt es keine weiteren Namensregeln. Im Folgenden sind zusätzlich einige Best Practices aufgeführt:

  • Modellnamen müssen aussagekräftig und unverwechselbar sein, sodass sie in Listen mit vielen Namen in Logs oder Berichten einfach zu finden sind.
  • Es empfiehlt sich, Versionsnamen möglichst kurz und einfach zu halten. So lässt sich "v1" in einer Liste von Ressourcen einfacher erkennen als beispielsweise "2017_01_29T13_54_58".

Modell- und Versionslimits

Die Kontingentrichtlinie von AI Platform gibt ein Limit von 100 Modellen pro Projekt vor und begrenzt die Gesamtzahl der Versionen (kombiniert aus allen Modellen) auf 200.

Parameter für die Modellbereitstellung

AI Platform benötigt verschiedene Informationen zum Erstellen Ihrer Modellversion. Außerdem gibt es einige Optionen, die Sie konfigurieren können. Dieser Abschnitt erläutert die Parameter für beide Arten. Diese Parameter werden im Version-Objekt definiert oder zur Vereinfachung dem Befehl gcloud ai-platform versions create hinzugefügt.

Versionsname
Ein Name für die neue Version, der für die vorhandenen Versionen des Modells noch nicht vergeben wurde.
Beschreibung
Sie können zu Ihrer Version eine Beschreibung festlegen. Derzeit wird die Beschreibung nur angegeben, wenn Sie die Versionsinformationen mit der API abrufen. Die Beschreibung wird weder mit dem gcloud-Befehlszeilentool noch mit der GCP Console angezeigt.
Bereitstellungs-URI
Sie müssen den URI des Cloud Storage-Speicherorts angeben, an dem Ihr SavedModel gespeichert ist. AI Platform ruft das Modell aus diesem Speicherort ab und stellt es bereit. Dazu verwenden Sie den Parameter --origin im Befehl gcloud ai-platform versions create. Wenn Sie eine benutzerdefinierte Vorhersageroutine (Beta) bereitstellen, können Sie den URI eines Cloud Storage-Verzeichnisses angeben, das neben einem SavedModel auch alle Artefakte enthält, die Ihre Modellversion zur Vorhersage verwendet.
Laufzeitversion
AI Platform stellt Ihre Modellversion mit der neuesten stabilen Laufzeitversion bereit, sofern Sie keine andere unterstützte Version angeben. Die Laufzeitversion legt in erster Linie die Version von TensorFlow fest, die der Vorhersagedienst für die Ausführung Ihres Modells verwendet. Wenn Sie einen Batchvorhersagejob ausführen, können Sie die zugeordnete Laufzeitversion überschreiben. Onlinevorhersagen verwenden immer die Laufzeitversion, die bei der Bereitstellung der Modellversion festgelegt wurde.
Manuelle Skalierung

Sie können die Anzahl der Vorhersageknoten, die für Ihre Modellversion ausgeführt werden sollen, individuell festlegen. Weitere Informationen dazu finden Sie im Abschnitt Skalierung.

Staging-Bucket

Wenn Sie zur Bereitstellung Ihres Modells dasgcloud-Befehlszeilentool nutzen, können Sie ein SavedModel auf Ihrem lokalen Computer verwenden. Das Tool führt das Staging des Modells an dem von Ihnen angegebenen Cloud Storage-Speicherort durch, bevor es in AI Platform bereitgestellt wird.

Grafikänderungen für Vorhersagen

Unter Umständen haben Sie TensorFlow-Vorgänge in Ihre Berechnungsgrafik eingebunden, die in erster Linie im Kontext des Trainings nützlich waren. Wenn Ihr Modell trainiert ist, können Sie diese Vorgänge vor dem Export der endgültigen Version aus der Grafik entfernen.

Viele Tipps auf der Seite zur Entwicklung von Trainingsanwendungen beziehen sich auf den Vorhersagevorgang. In manchen Fällen geht es dabei um Änderungen, die Sie an Ihrem Modell vornehmen können, wenn der Großteil des Trainings durchgeführt ist und Sie mit der Bereitstellung von Versionen beginnen können.

Vorhersagen abrufen

Sie können neue Daten an Ihre bereitgestellten Modellversionen senden, um Vorhersagen zu erhalten. In den folgenden Abschnitten finden Sie wichtige Überlegungen zu Vorhersagen.

Onlinevorhersage im Vergleich zur Batchvorhersage

Weitere Informationen finden Sie unter Onlinevorhersage im Vergleich mit Batchvorhersage.

Vorhersageknoten und Ressourcenzuordnung

AI Platform misst Ihren Verarbeitungsaufwand für die Vorhersage in Knotenstunden. In diesem Abschnitt werden die Knoten und deren Zuordnung zu den verschiedenen Arten von Vorhersagen erläutert.

Ein Knoten ist mit einer virtuellen Maschine (VM) vergleichbar, wobei er mit einem anderen Verfahren als eine herkömmliche VM implementiert wird. Jeder Knoten wird mit einer festgelegten Verarbeitungsleistung und einem entsprechenden Speicher bereitgestellt. Ein Knoten enthält auch ein Betriebssystemimage sowie Konfigurationseinstellungen für die Software, die für die Ausführung des Modells und den Abruf von Vorhersagen erforderlich ist.

Sowohl Online- als auch Batchvorhersagen führen die Knoten mit verteilter Verarbeitung aus, sodass eine bestimmte Anfrage oder ein bestimmter Job mehrere Knoten gleichzeitig verwenden kann. Die Ihnen in Rechnung gestellten Kosten werden auf der Basis der gesamten Knotennutzung pro Minute, basierend auf einer Rate pro Stunde berechnet. Beispielsweise entstehen für die Ausführung von zwei Knoten über zehn Minuten die gleichen Kosten wie für die Ausführung eines Knotens über zwanzig Minuten. Da Online- und Batchvorhersagen Knoten unterschiedlich zuordnen, kann dies erhebliche Auswirkungen auf Ihre Kosten haben.

Knotenzuordnung bei Batchvorhersagen

Der Batchvorhersagedienst skaliert die Anzahl der verwendeten Knoten, um die erforderliche Zeit für die Ausführung Ihres Jobs möglichst niedrig zu halten. Dazu geht der Dienst so vor:

  • Er ordnet einige Knoten zu, damit der Job beim Start ausgeführt werden kann.

  • Er skaliert während des Jobs die Anzahl der Knoten, um die Effizienz zu optimieren. Jeder Knoten braucht eine gewisse Startzeit, sodass der Dienst versucht, genügend Knoten zuzuordnen, ohne jedoch die gesamte Ausführungszeit durch eine zu hohe Startzeit der Knoten zu beeinträchtigen.

  • Er beendet die Knoten, sobald der Job abgeschlossen ist.

Sie können die Skalierung eines Batchvorhersagejobs selbst festlegen. Dazu geben Sie eine maximale Anzahl der zu verwendenden Knoten an. Generell sollten so viele Knoten verfügbar sein, wie der Dienst tatsächlich verwendet, allerdings unterliegt die Knotennutzung der Kontingentrichtlinie von AI Platform. Die Beschränkung der Anzahl von Knoten, die einem bestimmten Job zugeordnet werden, könnte besonders dann sinnvoll sein, wenn Sie Ihr Projekt mit anderen teilen und möglicherweise Jobs (sowohl Trainings- als auch Vorhersagejobs) gleichzeitig ausführen.

Knotenzuordnung bei Onlinevorhersagen

Der Onlinevorhersagedienst skaliert die Anzahl der verwendeten Knoten, um die Anzahl der Anfragen zu maximieren, die er ohne zu viel Latenz bewältigen kann. Dazu geht der Dienst so vor:

  • Er ordnet einige Knoten zu, wenn Sie Vorhersagen erstmalig nach einer langen Pause anfordern.

  • Er skaliert in Reaktion auf den Anfragetraffic die Anzahl der Knoten und fügt Knoten hinzu, wenn der Traffic zunimmt, bzw. entfernt Knoten bei nachlassenden Anfragen.

  • Er hält für mehrere Minuten lang mindestens einen Knoten für Anfragen bereit, auch wenn gerade keine Anfrage auszuführen ist. Der Bereitschaftszustand macht es möglich, dass der Dienst für jede Vorhersage sofort zur Verfügung steht.

  • Er skaliert auf null herunter, wenn für die Modellversion einige Minuten lang keine Vorhersageanfragen gesendet wurden.

Wenn der Dienst auf null herunterskaliert wurde oder wenn eine plötzliche Spitzenbelastung im Traffic auftritt, kann es mehrere Sekunden bis Minuten dauern, bis die Knoten für Anfragen initialisiert sind. Die Zeit für die Initialisierung hängt von der Modellversionsgröße ab. Daher kann eine clientseitige Zeitüberschreitung dazu führen, dass die Anfragen verworfen werden, bis die neuen Knoten initialisiert wurden, und/oder dass die Latenz in diesem Zeitraum zunimmt.

Für eine sofortige Bereitstellung zu beliebigen Zeiten können Sie eine Mindestanzahl von Knoten festlegen, die der Dienst bereithalten soll. Dazu legen Sie für die Option minNodes für Ihre Modellversion einen Wert fest. Diese Einstellung kann die Kosten erhöhen, da Ihnen diese Knoten berechnet werden, auch wenn keine Vorhersagen erstellt werden.

Beschränkungen der automatischen Skalierung

Die automatische Skalierung von AI Platform für Onlinevorhersagen unterstützt Sie dabei, variierende Mengen von Vorhersageanfragen zu verarbeiten und gleichzeitig die Kosten zu minimieren. Sie ist jedoch nicht in allen Situationen ideal. Unter Umständen stellt der Dienst die Knoten nicht schnell genug online bereit, um extreme Spitzen von Anfrage-Traffic zu bewältigen. Wenn Ihr Traffic regelmäßig hohe Spitzen aufweist und eine zuverlässig niedrige Latenz für Ihre Anwendung wichtig ist, sollten Sie die manuelle Skalierung nutzen.

Manuelle Skalierung

Sie können die Skalierung der Onlinevorhersage für eine Modellversion selbst festlegen. Dazu geben Sie die Anzahl der Knoten an, die unabhängig vom Traffic ausgeführt werden sollen. Wenn Sie die Anzahl der Knoten manuell festlegen, beendet der Dienst die Skalierung. Dies führt dazu, dass die Anzahl der Knoten, die Sie angeben, immer bereit steht. Dadurch entstehen dann auch entsprechende laufende Kosten. Sie sollten deshalb diese Option nur dann verwenden, wenn die Anzahl der Anfragen, die Ihr Modell erhält, regelmäßig und schneller schwankt, als es die automatische Skalierung ausgleichen kann. Die Anzahl der Knoten, die verwendet werden sollen, legen Sie über manualScaling im Objekt Version fest, das Sie an projects.models.versions.createübergeben.

Eingabedaten für Vorhersagen

Die Daten, die Sie für Vorhersagen verwenden, sind neue Daten, die in derselben Form wie die Daten vorliegen, die Sie für das Training verwendet haben. Online- und Batchvorhersagen verwenden die gleichen Daten (Merkmale Ihres Modells), jedoch unterschiedliche Formate, wobei diese von der Art der Vorhersage und der verwendeten Schnittstelle abhängen. Die möglichen Formate sind in der folgenden Tabelle zusammengefasst und werden in den nachfolgenden Abschnitten im Detail beschrieben:

Vorhersageart und Schnittstelle Unterstütztes Eingabeformat
Batch mit API-Aufruf Textdatei mit JSON-Instanzstrings oder TFRecord-Datei (kann komprimiert sein)
Batch mit dem gcloud-Tool Textdatei mit JSON-Instanzstrings oder TFRecord-Datei (kann komprimiert sein)
Online mit API-Aufruf JSON-Anfragenachricht
Online mit dem gcloud-Tool Textdatei mit JSON-Instanzstrings oder CSV-Datei

JSON-Instanzstrings

Das Grundformat für Online- und Batchvorhersagen ist eine Liste von Instanzdatentensoren. Es kann sich dabei um eine einfache Werteliste oder Member eines JSON-Objekts handeln, je nachdem, wie Sie die Eingaben in der Trainingsanwendung konfiguriert haben:

Dieses Beispiel zeigt einen Eingabetensor und einen Instanzschlüssel:

{"values": [1, 2, 3, 4], "key": 1}

Die Zusammensetzung des JSON-Strings kann komplex sein. Es müssen dabei aber folgende Regeln beachtet werden:

  • Die oberste Ebene der Instanzdaten muss ein JSON-Objekt sein – ein Wörterbuch aus Schlüssel/Wert-Paaren.

  • Einzelne Werte in einem Instanzobjekt können Strings, Zahlen oder Listen sein. JSON-Objekte können nicht eingebettet werden.

  • Listen dürfen nur Elemente des gleichen Typs (einschließlich anderer Listen) enthalten. Strings und numerische Werte dürfen nicht kombiniert werden.

Der folgende, zur besseren Lesbarkeit formatierte String zeigt ein Objekt, das ein Label und ein Bild enthält. Das Bild ist ein dreidimensionales Array aus 8-Bit-Ganzzahlen:

{
  "tag": "beach",
  "image": [
    [
      [138, 30, 66],
      [130, 20, 56],
      ...
    ],
    [
      [126, 38, 61],
      [122, 24, 57],
      ...
    ],
        ...
  ]
}

Nimmt Ihr Modell nur eine einzelne Eingabe an, müssen Sie sie nicht in ein JSON-Objekt einbinden. Wenn Sie beispielsweise einen einzelnen Tensor – in diesem Fall einen Vektor – mit vier Werten senden, müssen Sie dies in folgender Weise formatieren:

{"values": [1, 2, 3, 4]}

Sie können die einzelnen Instanzen einfach in Form einer Liste angeben:

[1, 2, 3, 4]
Binärdaten in der Vorhersageeingabe

Binärdaten können nicht als UTF-8-codierte Strings formatiert werden, die von JSON unterstützt werden. Wenn Sie in Ihren Eingaben Binärdaten verwenden, müssen Sie für deren Darstellung die base64-Codierung verwenden. Es sind folgende spezielle Formatierungen erforderlich:

  • Ihre codierte Zeichenfolge muss als JSON-Objekt mit einem einzelnen Schlüssel namens b64 formatiert sein. Im folgenden Python-Beispiel wird ein Puffer aus JPEG-Rohdaten mithilfe der base64-Bibliothek codiert, um eine Instanz zu erstellen.

    {"image_bytes":{"b64": base64.b64encode(jpeg_data)}}
    
  • Im TensorFlow-Modellcode müssen die Namen der Aliase für die Ein- und Ausgabe-Tensoren auf "_bytes" enden.

Eingabedaten für Onlinevorhersagen

Eingabeinstanzen für Onlinevorhersagen übergeben Sie als Nachrichtentext für die Vorhersageanfrage. Informationen zum Formatieren von Anfrage- und Antworttext finden Sie unter Details zu Vorhersageanfragen.

Kurz gesagt bedeutet das, dass Sie jede Instanz als Element in eine Liste aufnehmen und das Listenmitglied mit instances benennen müssen. Das oben dargestellte JSON-Beispiel einer einfachen Dateninstanz sieht dann so aus:

{"instances": [{"values": [1, 2, 3, 4], "key": 1}]}

Wenn Sie gcloud ai-platform projects predict für Onlinevorhersageanfragen verwenden, übergeben Sie eine Datei in dem Format, das Sie auch für die Batchvorhersage verwenden.

Eingabedaten für Batchvorhersagen

Die Eingabedaten für eine Batchvorhersage übergeben Sie in einer oder mehreren Textdateien. Diese enthalten Zeilen mit den JSON-Instanzdaten, wie oben beschrieben. Eine Eingabedatei enthält keine Spaltenüberschriften oder andere Formatierungen, sondern nur die einfache JSON-Syntax.

{"image": [0.0, 0.0, ... ], "key": 0}
{"image": [0.0, 0.0, ... ], "key": 1}
{"image": [0.0, 0.0, ... ], "key": 2}

Instanzschlüssel

AI Platform führt die Batchvorhersagejobs mit verteilter Verarbeitung aus. Dies bedeutet, dass die Daten auf einen beliebigen Cluster von virtuellen Maschinen verteilt sind und die Verarbeitung in einer nicht absehbaren Reihenfolge stattfindet. Damit Sie die zurückgegebenen Vorhersagen den Eingabeinstanzen zuordnen können, müssen Sie Instanzschlüssel definieren. Ein Instanzschlüssel ist ein Wert, den jede Instanz aufweist und der unter den Instanzen in einem Satz von Daten nur einmal vergeben ist. Der einfachste Schlüssel ist eine Indexnummer.

Sie sollten die Schlüssel über Ihre Grafik unverändert in Ihrer Trainingsanwendung übergeben. Wenn Ihre Daten noch keine Instanzschlüssel besitzen, können Sie diese als Teil der Datenvorverarbeitung zuweisen.

Laufzeitversionen

Bei Veröffentlichung neuer Versionen von AI Platform kann es sein, dass Modelle, die für ältere Versionen entwickelt wurden, damit nicht mehr verwendet werden können. Dies ist besonders relevant, wenn Sie eine effektive Modellversion verwenden, die bereits über einen längeren Zeitraum unverändert ist. Informieren Sie sich deshalb über die AI Platform-Richtlinie zur Versionsverwaltung und die Details zur AI Platform-Laufzeitversion, mit der Sie Ihre Modellversionen trainieren.

Laufzeitversionen und Vorhersagen

Sie können bei der Erstellung einer Modellversion eine unterstützte AI Platform-Laufzeitversion angeben. Diese wird dann als Standardeinstellung für die Modellversion übernommen. Wenn Sie keine explizite Angabe machen, erstellt AI Platform Ihre Version mit der aktuellen Standardlaufzeitversion 1.0.

Sie können eine Laufzeitversion festlegen, die beim Start eines Batchvorhersagejobs verwendet wird. Dadurch sind auch Vorhersagen für ein Modell möglich, das nicht in AI Platform bereitgestellt wurde. Verwenden Sie für ein bereitgestelltes Modell die Standardlaufzeitversion des Modells in der Jobanfrage. Die Verwendung einer anderen Laufzeitversion führt möglicherweise zu unerwarteten Fehlern.

Sie können keine Onlinevorhersagen von Modellen anfordern, die sich außerhalb von AI Platform befinden. Es gibt also keine Möglichkeit, die Standardlaufzeitversion in Ihrer Anfrage zu überschreiben.

Die für eine Modellversion festgelegte Standardlaufzeitversion kann nicht geändert werden. Um eine andere Laufzeitversion für eine Modellversion anzugeben, stellen Sie eine neue Version mit denselben Trainingsartefakten bereit, die Sie ursprünglich verwendet haben.

Regionen und Vorhersagen

Google Cloud Platform verwendet in Zonen unterteilte Regionen, um den geografischen Standort von Computerressourcen zu definieren. Wenn Sie ein Modell für die Vorhersage mithilfe von AI Platform bereitstellen, geben Sie die Standardregion an, in der die Vorhersage ausgeführt werden soll.

Wenn Sie einen Batchvorhersagejob starten, können Sie eine Region angeben, in welcher der Job ausgeführt werden soll, und damit die Standardregion überschreiben. Onlinevorhersagen werden dagegen immer aus der Standardregion ausgeführt, die für das Modell angegeben wurde.

Informationen zu den verfügbaren Regionen für AI Platform-Dienste, einschließlich Modelltraining und Online-/Batchvorhersage, finden Sie unter Regionen.

Vorhersage-Logging

Batchvorhersagen generieren Joblogs, die sich in Stackdriver Logging aufrufen lassen. Sie können auch Logs für Onlinevorhersagen anfordern, wenn Sie das Modell bei der Erstellung so konfigurieren, dass Logs generiert werden. Sie müssen diese Option festlegen, wenn Sie die Modellressource in AI Platform erstellen. Entweder generieren alle Versionen eines Modells Logs für Onlinevorhersagen oder keine Version.

Sie können für ein Modell das Onlinevorhersage-Logging einrichten. Dazu legen Sie für onlinePredictionLogging in der Modellressource, die Sie beim Erstellen Ihres Modells mit projects.models.create verwenden, "true" (True in Python) fest. Wenn Sie zur Erstellung des Modells dasgcloud-Befehlszeilentool verwenden, fügen Sie bei der Ausführung von gcloud ai-platform models create das Flag --enable-logging hinzu.

Vorhersagen von nicht bereitgestellten Modellen abrufen

Sie können Batchvorhersagen von einem Modell anfordern, das Sie nicht im AI Platform-Dienst bereitgestellt haben. Anstatt einen Modell- oder Versionsnamen anzugeben, können Sie den URI eines Cloud Storage-Speicherorts verwenden, in dem das Modell, das ausgeführt werden soll, gespeichert ist.

Da für ein nicht bereitgestelltes Modell keine Standardlaufzeitversion festgelegt wurde, sollten Sie diese explizit in Ihrer Jobanfrage angeben. Andernfalls verwendet AI Platform die Laufzeitversion 1.0.

In allen anderen Aspekten verhält sich ein Batchvorhersagejob für ein nicht bereitgestelltes Modell wie jeder andere Batchjob.

Modell testen

Mit dem AI Platform-Vorhersagedienst können Sie Ihre Modelle nicht nur für die Produktion hosten, sondern auch testen. Das Testen des Modells ist normalerweise der Schritt vor der Bereitstellung einer Lösung für maschinelles Lernen. Der Zweck einer Testphase ist es, das Modell in einer Umgebung zu prüfen, die der realen Einsatzsituation so ähnlich wie möglich ist.

Es können mehrere Versionen eines Modells gleichzeitig für den Dienst bereitgestellt sein. Sie haben also die Möglichkeit, bei Bedarf mehrere Versionen eines Modells gleichzeitig zu testen. So lässt sich auch einfach eine Produktionsversion des Modells bereitstellen, während die nächste Version bereits getestet wird. Wie so oft bei der Entwicklung von Anwendungen für maschinelles Lernen ist die Verfügbarkeit neuer Daten häufig ein einschränkender Faktor. Sie sollten deshalb eine Strategie für die Aufteilung vorhandener Daten und die Erfassung neuer Testdaten entwickeln.

Weitere Informationen

Hat Ihnen diese Seite weitergeholfen? Teilen Sie uns Ihr Feedback mit:

Feedback geben zu...