Preparar dados de treinamento de texto para análise de sentimento

Saiba nesta página como preparar dados de texto para uso em um conjunto de dados da Vertex AI para treinar um modelo de análise de sentimento.

Os dados de treinamento da análise de sentimento consistem em documentos associados a um valor de sentimento que indica o sentimento do conteúdo. Por exemplo, você pode ter tweets sobre um domínio específico, como viagens aéreas. Cada tweet está associado ao valor de sentimento que indica se o tweet é positivo, negativo ou neutro.

Requisitos de dados

  • Você precisa fornecer no mínimo 10, mas não mais de 100.000 documentos de treinamento.
  • O valor de sentimento precisa ser um número inteiro de 0 a 10. O valor de sentimento máximo é sua escolha. Por exemplo, se quiser identificar se o sentimento é negativo, positivo ou neutro, você precisa rotular os dados de treinamento com pontuações de sentimento de 0 (negativo), 1 (neutro) e 2 (positivo). A Pontuação máxima do sentimento () do conjunto de dados é 2 Se você quiser capturar mais granularidade, como cinco níveis de sentimento, rotule documentos de 0 (mais negativo) a 4 (mais positivo).
  • Aplique cada valor de sentimento a pelo menos 10 documentos.
  • Os valores de pontuação de sentimento devem ser números inteiros consecutivos a partir de zero. Se houver lacunas nas pontuações ou não começar do zero, faça o remapeamento delas para gerar números inteiros consecutivos a partir de zero.
  • É possível incluir documentos in-line ou referência em arquivos TXT que estejam em buckets do Cloud Storage.

Práticas recomendadas para dados de texto usados para treinar modelos do AutoML

As recomendações a seguir se aplicam a conjuntos de dados usados para treinar modelos do AutoML.

  • Forneça pelo menos 100 documentos por valor de sentimento.
  • Usar um número equilibrado de documentos para cada pontuação de sentimento. Ter mais exemplos de pontuações de sentimento específicas pode introduzir uma tendência no modelo.

Arquivos de entrada

Os tipos de arquivo de entrada para análise de sentimento podem ser linhas JSON ou CSV.

Linhas JSON

O formato, os nomes de campo, os tipos de valor dos arquivos JSON Lines são determinados por um arquivo de esquema, que é um arquivo YAML acessível publicamente.

É possível fazer o download do arquivo de esquema para a análise de sentimento no seguinte local do Cloud Storage:
gs://google-cloud-aiplatform/schema/dataset/ioformat/text_sentiment_io_format_1.0.0.yaml

Exemplo de linhas JSON

O exemplo a seguir mostra como o esquema pode ser usado para criar seu próprio arquivo JSON Lines. O exemplo inclui quebras de linha para facilitar a leitura. Nos arquivos JSON Lines, inclua quebras de linha somente após cada documento. O campo dataItemResourceLabels especifica, por exemplo, ml_use e é opcional.

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

Cada linha em um arquivo CSV refere-se a um único documento. No exemplo a seguir, mostramos o formato geral de um arquivo CSV válido. A coluna ml_use é opcional.

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

O snippet a seguir é um exemplo de arquivo CSV de entrada.

  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