Preparação de dados de treinamento

Aprenda a preparar seus dados de áudio e texto para ajustar um modelo personalizado da Speech-to-Text no console do Google Cloud Speech. A qualidade dos dados de treinamento afeta a eficácia dos modelos criados. Você precisará compor um conjunto de dados diversificado que tenha um contexto representativo de áudio e texto diretamente relevante ao que o modelo responderá durante o tempo de inferência em produção, incluindo ruído e vocabulário incomum.

Para o treinamento eficaz de um modelo personalizado da Speech-to-Text, é necessário:

  • Um mínimo de 100 horas de áudio de dados de treinamento, somente áudio ou com a transcrição de texto correspondente como informações empíricas. Esses dados são cruciais para a fase inicial de treinamento para que o modelo aprenda as nuances dos padrões de fala e vocabulário. Veja detalhes em Criar um conjunto de dados de informações empíricas.
  • Um conjunto de dados separado de pelo menos 10 horas de áudio de dados de validação, com a transcrição de texto correspondente como informações empíricas.

Antes de começar

Verifique se você se inscreveu em uma conta do Google Cloud, criou um projeto do Google Cloud e ativou a API Speech-to-Text:

  1. Acesse o Cloud Storage.
  2. Crie um bucket, caso ainda não tenha um.

criar um conjunto de dados

Para criar um conjunto de dados, é preciso criar dois subdiretórios no bucket do Cloud Storage escolhido. Siga convenções de nomenclatura simples:

  1. Crie um subdiretório training_dataset para armazenar todos os arquivos de treinamento.
  2. Crie um subdiretório validation_dataset para armazenar todos os arquivos de treinamento.
  3. Faça upload dos arquivos de áudio e texto nos diretórios seguindo as diretrizes de anotação de informações empíricas.

Diretrizes do conjunto de dados

  • Para treinamento e validação, os formatos de arquivo compatíveis são .wav para arquivos de áudio na codificação LINEAR16 e .txt para arquivos de texto, se disponível. Evite caracteres não ASCII nos nomes de arquivo.
  • Os arquivos de áudio no mesmo diretório precisam ser fornecidos em um arquivo TXT separado, cada um com o mesmo nome do arquivo WAV correspondente, por exemplo, my_file_1.wav, my_file_1.txt. É preciso haver apenas um arquivo de transcrição por arquivo de áudio.

Dados de treinamento

  • Todos os arquivos de treinamento precisam ser fornecidos no mesmo diretório, sem pastas aninhadas.
  • Opcional: se disponível, forneça transcrições dos arquivos de áudio. Não são necessários carimbos de data/hora.
  • Confira se a duração cumulativa dos seus arquivos de áudio é maior que 100 horas. Se não for, o job de treinamento falhará.

Este é um exemplo de como a estrutura do diretório ficará após o upload dos arquivos como conjunto de dados de treinamento:

├── training_dataset
│   ├── example_1.wav
│   ├── example_1.txt
│   ├── example_2.wav
│   ├── example_2.txt
│   ├── example_3.wav (Note: Audio only instance, without corresponding text)
│   └── example_4.wav (Note: Audio only instance, without corresponding text)

Dados de validação

  • Todos os arquivos para validação são fornecidos no mesmo diretório chamado validation_dataset, sem pastas aninhadas.
  • Cada áudio de validação não pode ter mais que 30 segundos.
  • Forneça transcrições de informações empíricas para cada arquivo de áudio no mesmo diretório em um arquivo TXT separado.

Este é um exemplo de como a estrutura do diretório ficará após o upload dos arquivos como um conjunto de dados de validação:

├── validation_dataset
│   ├── example_1.wav
│   ├── example_1.txt
│   ├── example_2.wav
│   └── example_2.txt

Diretrizes de anotação de informações empíricas

Consulte as instruções de formatação a seguir.

Numbers

Cardeais e ordinais precisam ser transcritos apenas em dígitos.

  • Áudio: "Um baralho de cartas tem 52 cartas, 13 classificações dos quatro naipes: ouros, copas e espadas"
  • Texto de informações empíricas: "Um baralho de cartas tem 52 cartas, 13 classificações dos quatro naipes: ouros, copas e espadas"

Moeda e unidades

Transcreva-os conforme são escritos frequentemente na localidade da transcrição. Abrevie todas as unidades que seguem os valores numéricos. Se estiver claro no contexto que um número ou sequência numérica se refere a uma moeda ou um horário, formate-o de acordo com o padrão em questão.

Data e hora

Transcreva no formato comum para datas e horas usadas no idioma da transcrição. Escreva horários no formato hh:mm, quando possível.

Endereços

Transcreva com nomes completos de locais, estradas e estados, por exemplo, usando abreviações quando falado explicitamente. As entidades e os locais precisam ser transcritos com uma vírgula entre eles.

Nomes e acentos próprios

Transcreva usando a ortografia e a pontuação oficiais. Se um nome pessoal puder ter várias grafias e o contexto não ajudar, use a grafia mais frequente.

Marca, nomes dos produtos e títulos de mídia

Transcreva-os como estão oficialmente formatados e escritos com mais frequência.

Interjeições

Risadas ou outras vocalizações não verbais precisam ser transcritas usando até três sílabas. Risadas contidas na fala precisam ser completamente ignorados. Exemplo:

  • Áudio: "ha ha ha ha ha"
  • Texto de informações empíricas: "hahaha"

Vários locutores

Não os separe com tags de locutor, porque a diarização geralmente não é compatível.

A seguir

Siga os recursos para aproveitar os modelos de fala personalizados no seu aplicativo: