Job für die kontinuierliche Evaluierung erstellen

Ein Job für die kontinuierliche Evaluierung definiert, wie der AI Platform-Daten-Labeling-Dienst die kontinuierliche Evaluierung einer Modellversion ausführt, die Sie für AI Platform Prediction bereitgestellt haben. Wenn Sie einen Bewertungsjob zur Evaluierung für eine Modellversion erstellen, geschieht Folgendes:

  • Wenn die Modellversion Onlinevorhersagen bereitstellt, werden die Eingabe und Ausgabe für einige von ihnen in einer BigQuery-Tabelle gespeichert.
  • Der Job für die kontinuierliche Evaluierung wird in regelmäßigen Abständen mit den folgenden Aufgaben ausgeführt:
    1. Der Job erstellt ein Daten-Labeling-Dienst-Dataset mit allen seit der letzten Ausführung neu in der BigQuery-Tabelle hinzugekommenen Zeilen.
    2. Optional: Der Job sendet eine Labeling-Anfrage zur Erstellung von Ground-Truth-Labels für die Vorhersagen durch Prüfer.
    3. Der Job berechnet eine Reihe von Bewertungsmesswerten, die in der Google Cloud Console aufgerufen werden können.

Hinweise

Bevor Sie beginnen, müssen Sie eine Modellversion für AI Platform Prediction bereitstellen, die bestimmte Modellanforderungen erfüllt. Sie müssen außerdem bestimmte Google Cloud APIs aktivieren. Lesen Sie den Artikel Vor dem Start der kontinuierlichen Evaluierung. Hier erfahren Sie, wie Sie diese Anforderungen erfüllen können.

Grundlegende Optionen konfigurieren

In den folgenden Abschnitten wird gezeigt, wie Sie die Seite zum Erstellen von Jobs aufrufen und grundlegende Details für den Bewertungsjob konfigurieren.

Rufen Sie in der Google Cloud Console die Seite für eine Modellversion auf und öffnen Sie die Seite zur Joberstellung, um einen Bewertungsjob für eine Modellversion zu erstellen:

  1. Öffnen Sie die Seite AI Platform-Modelle in der Google Cloud Console:

    Zur Seite mit den AI Platform-Modellen

  2. Klicken Sie auf den Namen des Modells, das die Modellversion enthält, für die Sie einen Bewertungsjob erstellen möchten.

  3. Klicken Sie auf den Namen der Modellversion, für die Sie einen Bewertungsjob erstellen möchten. An die gewünschte Version darf noch kein Bewertungsjob angehängt worden sein.

  4. Klicken Sie auf den Tab Bewertung. Klicken Sie anschließend auf Bewertungsjob einrichten.

Beschreibung, Modellziel, Labels und Stichprobenprozentsatz angeben

In den folgenden Schritten werden die grundlegenden Konfigurationsdetails beschrieben, die Sie im Formular zum Erstellen eines Jobs angeben müssen:

  1. Geben Sie in das Feld Jobbeschreibung eine Beschreibung für den Bewertungsjob ein.

  2. Geben Sie im Feld Modellziel an, welche Art von Aufgabe Ihr Modell für maschinelles Lernen ausführen soll. Weitere Informationen zu den durch die kontinuierliche Evaluierung unterstützten Modelltypen für maschinelles Lernen finden Sie unter Anforderungen für Modellversionen.

    • Wenn das Modell Klassifizierungen vornimmt, geben Sie im Feld Klassifizierungstyp an, ob es sich um Klassifizierungen mit einem einzigen Label oder Klassifizierungen mit mehreren Labels handelt.
    • Wenn Ihr Modell eine Bildobjekterkennung ausführt, geben Sie ein IoU-Minimum (Intersection over Union) zwischen 0 und 1 an. Damit wird definiert, wie ähnlich die vorhergesagten Begrenzungsrahmen des Modells den Ground-Truth-Begrenzungsrahmen sein müssen, um als korrekte Vorhersage zu gelten.
  3. Geben Sie im Feld Dateipfad des Vorhersagelabels den Pfad zu einer CSV-Datei in Cloud Storage an, die die möglichen Labels für die Vorhersagen des Modells enthält. Mit dieser Datei wird ein Annotationsspezifikationssatz für das Modell definiert. Unter Annotationsspezifikationssatz erstellen erfahren Sie, wie Sie diese Datei strukturieren.

  4. Geben Sie im Feld Täglicher Stichprobenprozentsatz den Prozentsatz der Vorhersagen an, die von der Modellversion bereitgestellt wurden und die in BigQuery exportiert und im Rahmen der kontinuierlichen Evaluierung analysiert werden sollen.

    Geben Sie darüber hinaus ein Tägliches Stichprobenlimit an, um die maximale Anzahl von Vorhersagen festzulegen, für die in einem Evaluierungszeitraum Stichproben erstellt werden sollen.

    Angenommen, Ihre Stichprobe für die kontinuierliche Evaluierung soll 10 % der Vorhersagen enthalten. Es kann jedoch sein, dass Sie an einem bestimmten Tag viele Vorhersagen erhalten. Für diesen Fall sollten Sie dafür sorgen, dass nicht mehr als 100 Vorhersagen für die Ausführung des Bewertungsjobs eines Tages erfasst werden. Bei einer großen Anzahl von Vorhersagen kann es lange dauern, bis Prüfer diese mit Labels versehen haben und es kann zu höheren Kosten des Daten-Labeling-Dienstes kommen, als erwartet.

BigQuery-Tabelle angeben

Im Feld BigQuery-Tabelle müssen Sie den Namen einer BigQuery-Tabelle angeben, in der der Daten-Labeling-Dienst Vorhersagen aus der Modellversion speichern kann.

Wenn Sie den Namen einer Tabelle angeben, die noch nicht vorhanden ist, erstellt der Daten-Labeling-Dienst für Sie eine Tabelle mit dem richtigen Schema.

Sie müssen den vollständigen Namen der Tabelle im folgenden Format festlegen: bq://YOUR_PROJECT_ID.YOUR_DATASET_NAME.YOUR_TABLE_NAME.

  • YOUR_PROJECT_ID muss die ID des Projekts sein, in dem Sie derzeit einen Bewertungsjob erstellen.
  • YOUR_DATASET_NAME kann ein beliebiger gültiger BigQuery-Dataset-Name sein. Das Dataset muss nicht vorhanden sein.
  • YOUR_TABLE_NAME kann ein beliebiger gültiger BigQuery-Tabellenname sein.

Wenn die von Ihnen angegebene Tabelle bereits vorhanden ist, muss sie das richtige Schema für die kontinuierliche Evaluierung haben:

FeldnameTypModus
modelSTRINGERFORDERLICH
model_versionSTRINGERFORDERLICH
timeTIMESTAMPERFORDERLICH
raw_dataSTRINGERFORDERLICH
raw_predictionSTRINGNULLWERTE ZULÄSSIG
groundtruthSTRINGNULLWERTE ZULÄSSIG

Die Tabelle darf außer diesen Spalten keine weiteren Spalten enthalten.

Vorhersageschlüssel angeben

Sie müssen die Schlüssel für bestimmte Felder in Ihrer Eingabe angeben, damit der Daten-Labeling-Dienst die notwendigen Informationen aus der JSON-Datei mit den Eingabe- und Ausgabe-Rohdaten der Vorhersage extrahieren kann, die in der BigQuery-Tabelle gespeichert sind. Sorgen Sie dafür, dass die Modellversion Eingaben annimmt und Vorhersagen im erforderlichen Format zurückgibt. Geben Sie dann die relevanten Schlüssel an:

  • Datenschlüssel: Der Schlüssel für ein Feld der Vorhersageeingabe der Modellversion, das die für die Vorhersage verwendeten Daten enthält. Wenn Sie das Labeling durch Prüfer aktivieren, leitet der Daten-Labeling-Dienst diese Daten an Prüfer weiter, damit diese Ground-Truth-Labels bereitstellen. Diese Daten werden auch verwendet, um direkte Vergleiche anzuzeigen, wenn Sie Bewertungsmesswerte in der Google Cloud Console aufrufen.

    Wenn die Modellversion Textklassifizierungen oder allgemeine Klassifizierungen ausführt, müssen Sie diesen Schlüssel angeben. Wenn die Modellversion Bildklassifizierungen oder eine Bildobjekterkennung ausführt und Base64-codierte Bilder als Vorhersageeingabe zulässt, müssen Sie diesen Schlüssel ebenfalls angeben.

  • Datenreferenzschlüssel: Der Schlüssel für ein Feld in der Vorhersageeingabe der Modellversion, das einen Cloud Storage-Pfad zu einem Bild enthält. Der Daten-Labeling-Dienst lädt dieses Bild und verwendet es für die gleichen Zwecke wie den Datenschlüssel.

    Geben Sie diesen Schlüssel nur an, wenn die Modellversion Bildklassifizierungen oder eine Bildobjekterkennung ausführt und als Vorhersageeingabe Pfade zu Bildern in Cloud Storage zulässt. Sie müssen mindestens einen der beiden folgenden Schlüssel angeben: Datenschlüssel, Datenreferenzschlüssel.

  • Vorhersagelabelschlüssel: Der Schlüssel für ein Feld in der Vorhersageausgabe der Modellversion, das ein Array von vorhergesagten Labels enthält. Der Daten-Labeling-Dienst vergleicht diese Werte mit Ground-Truth-Werten, um Bewertungsmesswerte wie Wahrheitsmatrizes zu berechnen.

    Das ist ein Pflichtfeld.

  • Vorhersagewertschlüssel: Der Schlüssel für ein Feld in der Vorhersageausgabe der Modellversion, das ein Array von vorhergesagten Werten enthält. Der Daten-Labeling-Dienst verwendet diese Werte zusammen mit Vorhersagelabels und Ground-Truth-Labels, um Bewertungsmesswerte wie Genauigkeits-/Trefferquotenkurven zu berechnen.

    Das ist ein Pflichtfeld.

  • Begrenzungsrahmenschlüssel: Der Schlüssel für ein Feld in der Vorhersageausgabe der Modellversion, das ein Array von Begrenzungsrahmen enthält. Dieser ist erforderlich, um die Ergebnisse der Bildobjekterkennung auszuwerten.

    Geben Sie diesen Schlüssel nur dann an, wenn die Modellversion eine Bildobjekterkennung ausführt.

Beispiele für Vorhersageschlüssel

Im folgenden Abschnitt finden Sie Beispiele dafür, wie Sie Vorhersageschlüssel für verschiedene Modelltypen bereitstellen:

Bildklassifizierung

Base64-codiertes Beispiel

Angenommen, Ihre Modellversion erlaubt die folgende Eingabe:

{
  "instances": [
    {
      "image_bytes": {
        "b64": "iVBORw0KGgoAAAANSUhEUgAAAAYAAAAGCAYAAADgzO9IAAAAhUlEQVR4AWOAgZeONnHvHcXiGJDBqyDTXa+dVC888oy51F9+eRdY8NdWwYz/RyT//znEsAjEt277+syt5VMJw989DM/+H2MI/L8tVBQk4d38xcWp7ctLhi97ZCZ0rXV6yLA4b6dH59sjTq3fnji1fp4AsWS5j7PXstRg+/b3gU7N351AQgA8+jkf43sjaQAAAABJRU5ErkJggg=="
      }
    }
  ]
}

Nehmen wir außerdem an, dass sie die folgende Ausgabe zurückgibt:

{
  "predictions": [
    {
      "sentiments": [
        "happy"
      ],
      "confidence": [
        "0.8"
      ]
    }
  ]
}

Geben Sie dann die folgenden Schlüssel an:

  • Datenschlüssel: image_bytes/b64
  • Vorhersagelabelschlüssel: sentiments
  • Vorhersagewertschlüssel: confidence

Beispiel für Cloud Storage-Verweis

Angenommen, Ihre Modellversion erlaubt die folgende Eingabe:

{
  "instances": [
    {
      "image_path": "gs://cloud-samples-data/datalabeling/image/flower_1.jpeg"
    }
  ]
}

Nehmen wir außerdem an, dass sie die folgende Ausgabe zurückgibt:

{
  "predictions": [
    {
      "sentiments": [
        "happy"
      ],
      "confidence": [
        "0.8"
      ]
    }
  ]
}

Geben Sie dann die folgenden Schlüssel an:

  • Datenreferenzschlüssel: image_path
  • Vorhersagelabelschlüssel: sentiments
  • Vorhersagewertschlüssel: confidence

Textklassifizierung

Angenommen, Ihre Modellversion erlaubt die folgende Eingabe:

{
  "instances": [
    {
      "text": "If music be the food of love, play on;"
    }
  ]
}

Nehmen wir außerdem an, dass sie die folgende Ausgabe zurückgibt:

{
  "predictions": [
    {
      "sentiments": [
        "happy"
      ],
      "confidence": [
        "0.8"
      ]
    }
  ]
}

Geben Sie dann die folgenden Schlüssel an:

  • Datenschlüssel: text
  • Vorhersagelabelschlüssel: sentiments
  • Vorhersagewertschlüssel: confidence

Allgemeine Klassifizierung

Angenommen, Ihre Modellversion erlaubt die folgende Eingabe:

{
  "instances": [
    {
      "weather": [
        "sunny",
        72,
        0.22
      ]
    }
  ]
}

Nehmen wir außerdem an, dass sie die folgende Ausgabe zurückgibt:

{
  "predictions": [
    {
      "sentiments": [
        "happy"
      ],
      "confidence": [
        "0.8"
      ]
    }
  ]
}

Geben Sie dann die folgenden Schlüssel an:

  • Datenschlüssel: weather
  • Vorhersagelabelschlüssel: sentiments
  • Vorhersagewertschlüssel: confidence

Bildobjekterkennung

Base64-codiertes Beispiel

Angenommen, Ihre Modellversion erlaubt die folgende Eingabe:

{
  "instances": [
    {
      "image_bytes": {
        "b64": "iVBORw0KGgoAAAANSUhEUgAAAAYAAAAGCAYAAADgzO9IAAAAhUlEQVR4AWOAgZeONnHvHcXiGJDBqyDTXa+dVC888oy51F9+eRdY8NdWwYz/RyT//znEsAjEt277+syt5VMJw989DM/+H2MI/L8tVBQk4d38xcWp7ctLhi97ZCZ0rXV6yLA4b6dH59sjTq3fnji1fp4AsWS5j7PXstRg+/b3gU7N351AQgA8+jkf43sjaQAAAABJRU5ErkJggg=="
      }
    }
  ]
}

Nehmen wir außerdem an, dass sie die folgende Ausgabe zurückgibt:

{
  "predictions": [
    {
      "bird_locations": [
        {
          "top_left": {
            "x": 53,
            "y": 22
          },
          "bottom_right": {
            "x": 98,
            "y": 150
          }
        }
      ],
      "species": [
        "rufous hummingbird"
      ],
      "probability": [
        0.77
      ]
    }
  ]
}

Geben Sie dann die folgenden Schlüssel an:

  • Datenschlüssel: image_bytes/b64
  • Vorhersagelabelschlüssel: species
  • Vorhersagewertschlüssel: probability
  • Begrenzungsrahmenschlüssel: bird_locations

Beispiel für Cloud Storage-Verweis

Angenommen, Ihre Modellversion erlaubt die folgende Eingabe:

{
  "instances": [
    {
      "image_path": "gs://cloud-samples-data/datalabeling/image/flower_1.jpeg"
    }
  ]
}

Nehmen wir außerdem an, dass sie die folgende Ausgabe zurückgibt:

{
  "predictions": [
    {
      "bird_locations": [
        {
          "top_left": {
            "x": 53,
            "y": 22
          },
          "bottom_right": {
            "x": 98,
            "y": 150
          }
        }
      ],
      "species": [
        "rufous hummingbird"
      ],
      "probability": [
        0.77
      ]
    }
  ]
}

Geben Sie dann die folgenden Schlüssel an:

  • Datenreferenzschlüssel: image_path
  • Vorhersagelabelschlüssel: species
  • Vorhersagewertschlüssel: probability
  • Begrenzungsrahmenschlüssel: bird_locations

Ground-Truth-Methode festlegen

Bei der kontinuierlichen Evaluierung werden die Vorhersagen eines Modells für maschinelles Lernen mit den von Prüfern vergebenen Ground-Truth-Labels verglichen. Klicken Sie auf die Ground-Truth-Methode Ihrer Wahl, um festzulegen, wie Ground-Truth-Labels erstellt werden sollen:

  • Von Google verwalteter Labeling-Dienst: Wenn Sie diese Option auswählen, sendet der Daten-Labeling-Dienst bei jedem Ausführen des Bewertungsjobs alle neu in Stichproben erfassten Daten an Prüfer, damit diese sie mit Ground-Truth-Labels versehen. Es gelten dann die Preise des Daten-Labeling-Dienstes. Wenn Sie diese Option auswählen, müssen Sie eine PDF-Anleitung bereitstellen, aus der hervorgeht, wie die Daten Ihrer Vorhersageeingabe mit Labels versehen werden sollen. Weitere Informationen erhalten Sie auf der Seite Effektive Anleitung entwerfen.

  • Eigene Labels bereitstellen: Wenn Sie diese Option auswählen, müssen Sie die Ground-Truth-Labels selbst in die BigQuery-Tabelle Ihres Bewertungsjobs einfügen. Sie müssen die Ground-Truth-Labels für jede Vorhersageeingabe einfügen, die in einer Stichprobe erfasst wird, bevor der Bewertungsjob das nächste Mal ausgeführt wird. Standardmäßig wird der Bewertungsjob täglich um 10:00 Uhr (UTC) ausgeführt. Daher müssen Sie jeden Tag die Ground-Truth-Labels für sämtliche neuen Zeilen in die BigQuery-Tabelle einfügen, bevor er ausgeführt wird. Andernfalls werden diese Daten nicht ausgewertet und in der Google Cloud Console wird ein Fehler angezeigt.

    Dies ist die einzig mögliche Option, wenn Ihre Modellversion allgemeine Klassifizierungen vornimmt.

Job erstellen

Klicken Sie auf die Schaltfläche Erstellen, um den Bewertungsjob zu erstellen. Der Daten-Labeling-Dienst sollte dann umgehend damit beginnen, die Eingabe und Ausgabe der Vorhersagen aus der Modellversion in Stichproben zu erfassen und in die BigQuery-Tabelle zu übertragen.

Nächste Schritte

Bewertungsmesswerte aufrufen