准备文本训练数据以进行情感分析

本页介绍了如何准备文本数据,以便在 Vertex AI 数据集中使用来训练情感分析模型。

情感分析训练数据包含与指示内容情感的情感值相关联的文档。例如,您可能有关于某个特定域名(如航空旅行)的 Twitter 微博。每条 Twitter 微博都会与情感值相关联,以表明 Twitter 微博是正面、负面还是中立的。

数据要求

  • 您必须提供至少 10 个,但不得超过 10 万个训练文档。
  • 情感值必须是 0 到 10 之间的整数。最高情感值由您自行选择。例如,如果您想标识情感是消极的、积极的还是中立的,则会用情感分数 0(消极)、1(中立)和 2(积极)为训练数据添加标签。数据集的最高情感得分为 2。如果要捕捉更多粒度,例如五个级别的情感,可以从 0(最负)和 4(最积极)对文档进行标记。
  • 您必须将每个情感值应用于至少 10 个文档。
  • 情感分数值应是从零开始的连续整数。如果您的分数不是连续的或者没有从零开始,请重新映射您的得分,以从零开始从零开始的连续整数。
  • 您可以添加内嵌或引用 Cloud Storage 存储分区中的 TXT 文件。

用于训练 AutoML 模型的文本数据的最佳做法

以下建议适用于训练 AutoML 模型的数据集。

  • 至少为每个情感值提供 100 个文档。
  • 文档数量对每个情感分数而言都是均衡的。如果为某些特定情感分数提供较多示例,可能会给模型带来偏差。

输入文件

用于情感分析的输入文件类型可以是 JSON 行或 CSV。

JSON 行

JSON 行文件的格式、字段名称、值类型由架构文件(可公开访问的 YAML 文件)决定。

您可以从以下 Cloud Storage 位置下载架构文件进行情感分析:
gs://google-cloud-aiplatform/schema/dataset/ioformat/text_sentiment_io_format_1.0.0.yaml

JSON 行示例

以下示例展示了如何使用架构创建自己的 JSON 行文件。为了便于阅读,示例包括换行符。 在 JSON 行文件中,请仅在每个文档后面添加换行符。例如,dataItemResourceLabels 字段指定 ml_use 且是可选的。

{
  "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

CSV 文件中的每一行指的是一个文档。以下示例展示了有效 CSV 文件的一般格式。ml_use 列是可选列。

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

以下片段是输入 CSV 文件的一个示例。

  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