Texttrainingsdaten für die Sentimentanalyse vorbereiten

Auf dieser Seite wird beschrieben, wie Sie Textdaten für das Verwenden in einem Vertex AI-Dataset vorbereiten, um ein Sentimentanalysemodell zu trainieren.

Trainingsdaten für die Sentimentanalyse bestehen aus Dokumenten, die mit einem Sentimentwert verknüpft sind, der das Sentiment des Inhalts angibt. Angenommen, Sie haben Tweets zu einem bestimmten Thema wie z. B. Flugreisen. Jedem Tweet ist ein Sentimentwert zugeordnet, der angibt, ob der Tweet positiv, negativ oder neutral ist.

Datenanforderungen

  • Sie müssen mindestens 10, können aber nicht mehr als 100.000 Trainingsdokumente bereitstellen.
  • Ein Sentimentwert muss eine Ganzzahl zwischen 0 und 10 sein. Den maximalen Sentimentwert legen Sie selbst fest. Wenn Sie beispielsweise ermitteln möchten, ob das Sentiment negativ, positiv oder neutral ist, können Sie die Trainingsdaten mit den Sentimentwerten 0 (negativ), 1 (neutral) und 2 (positiv) versehen. Der maximale Sentimentwert für dieses Dataset ist dann 2. Wenn Sie das Sentiment detaillierter erfassen möchten, z. B. durch fünf Sentimentstufen, können Sie die Dokumente von 0 (am negativsten) bis 4 (am positivsten) kennzeichnen.
  • Jeder Sentimentwert muss mindestens auf 10 Dokumente angewendet werden.
  • Die Sentimentwerte müssen aufeinanderfolgende Ganzzahlen sein, die bei null beginnen. Wenn Sie Lücken in den Werten haben oder nicht mit null beginnen, müssen Sie die Werte so ändern, dass sie aus von null beginnenden aufeinanderfolgenden Ganzzahlen bestehen.
  • Sie haben die Möglichkeit, Dokumente inline einzubinden oder auf TXT-Dateien in Cloud Storage-Buckets zu verweisen.

Best Practices für Textdaten zum Trainieren von AutoML-Modellen

Die folgenden Empfehlungen gelten für Datasets, die zum Trainieren von AutoML-Modellen verwendet werden.

  • Stellen Sie mindestens 100 Dokumente pro Sentimentwert bereit.
  • Verwenden Sie eine ausgewogene Anzahl an Dokumenten für jeden Sentimentwert. Mehr Beispiele für bestimmte Sentimentwerte als für andere können Verzerrungen im Modell verursachen.

Eingabedateien

Die Eingabedateien für die Sentimentanalyse können das JSON Lines- oder das CSV-Format haben.

JSON Lines

Das Format, die Feldnamen und die Werttypen für JSON Lines-Dateien werden durch eine Schemadatei bestimmt, die aus öffentlich zugänglichen YAML-Dateien besteht.

Sie können die Schemadatei für die Sentimentanalyse von folgendem Cloud Storage-Speicherort herunterladen:
gs://google-cloud-aiplatform/schema/dataset/ioformat/text_sentiment_io_format_1.0.0.yaml

Beispiel für JSON Lines

Das folgende Beispiel zeigt, wie Sie mit dem Schema eine eigene JSON Lines-Datei erstellen können. Das Beispiel nutzt Zeilenumbrüche für eine bessere Lesbarkeit. Setzen Sie Zeilenumbrüche in Ihren JSON Lines-Dateien nur nach jedem Dokument. Das Feld dataItemResourceLabels gibt beispielsweise ml_use an und ist optional.

{
  "sentimentAnnotation": {
    "sentiment": number,
    "sentimentMax": number
  },
  "textContent": "inline_text",
  "dataItemResourceLabels": {
    "aiplatform.googleapis.com/ml_use": "training|test|validation"
  }
}
{
  "sentimentAnnotation": {
    "sentiment": number,
    "sentimentMax": number
  },
  "textGcsUri": "gcs_uri_to_file",
  "dataItemResourceLabels": {
    "aiplatform.googleapis.com/ml_use": "training|test|validation"
  }
}

CSV

Jede Zeile in einer CSV-Datei verweist auf ein einzelnes Dokument. Das folgende Beispiel zeigt das allgemeine Format einer gültigen CSV-Datei. Die Spalte ml_use ist optional.

  [ml_use],gcs_file_uri|"inline_text",sentiment,sentimentMax
  

Das folgende Snippet ist ein Beispiel für eine CSV-Eingabedatei.

  test,gs://path_to_file,sentiment_value,sentiment_max_value
  test,"inline_text",sentiment_value,sentiment_max_value
  training,gs://path_to_file,sentiment_value,sentiment_max_value
  validation,gs://path_to_file,sentiment_value,sentiment_max_value