Testar a qualidade de reconhecimento de um modelo de fala personalizado

Você pode inspecionar a qualidade de reconhecimento de um modelo de fala personalizado no Speech Studio. Você pode reproduzir o áudio carregado e determinar se o resultado de reconhecimento fornecido está correto. Depois que um teste é criado com êxito, você pode ver como um modelo transcreveu o conjunto de dados de áudio ou comparar os resultados de dois modelos lado a lado.

O teste de modelo lado a lado é útil para validar qual modelo de reconhecimento de fala é melhor para um aplicativo. Para obter uma medida objetiva de precisão, que requer a entrada de conjuntos de dados de transcrição, consulte Modelo de teste quantitativamente.

Importante

Durante o teste, o sistema realizará uma transcrição. Isso é importante ter em mente, pois os preços variam de acordo com a oferta de serviço e o nível de assinatura. Consulte sempre os preços oficiais dos serviços de IA do Azure para obter os detalhes mais recentes.

Criar um teste

Siga estas instruções para criar um teste:

  1. Inicie sessão no Speech Studio.

  2. Navegue até Speech Studio>Custom speech e selecione o nome do seu projeto na lista.

  3. Selecione Modelos>de teste Criar novo teste.

  4. Selecione Inspecionar qualidade (dados somente áudio)>Avançar.

  5. Escolha um conjunto de dados de áudio que você gostaria de usar para teste e selecione Avançar. Se não houver conjuntos de dados disponíveis, cancele a configuração e vá para o menu Conjuntos de dados de fala para carregar conjuntos de dados.

    Captura de ecrã a mostrar a escolha de uma caixa de diálogo de conjunto de dados

  6. Escolha um ou dois modelos para avaliar e comparar a precisão.

  7. Introduza o nome e a descrição do teste e, em seguida, selecione Seguinte.

  8. Reveja as definições e, em seguida, selecione Guardar e fechar.

Para criar um teste, use o spx csr evaluation create comando. Construa os parâmetros de solicitação de acordo com as seguintes instruções:

  • Defina o project parâmetro como a ID de um projeto existente. Esse parâmetro é recomendado para que você também possa visualizar o teste no Speech Studio. Você pode executar o spx csr project list comando para obter projetos disponíveis.
  • Defina o parâmetro necessário model1 para a ID de um modelo que você deseja testar.
  • Defina o parâmetro necessário model2 para a ID de outro modelo que você deseja testar. Se você não quiser comparar dois modelos, use o mesmo modelo para ambos model1 e model2.
  • Defina o parâmetro necessário dataset para a ID de um conjunto de dados que você deseja usar para o teste.
  • Defina o language parâmetro, caso contrário, a CLI de fala define "en-US" por padrão. Esse parâmetro deve ser a localidade do conteúdo do conjunto de dados. A localidade não pode ser alterada posteriormente. O parâmetro Speech CLI language corresponde à locale propriedade na solicitação e resposta JSON.
  • Defina o parâmetro necessário name . Este parâmetro é o nome exibido no Speech Studio. O parâmetro Speech CLI name corresponde à displayName propriedade na solicitação e resposta JSON.

Aqui está um exemplo de comando da CLI de fala que cria um teste:

spx csr evaluation create --api-version v3.1 --project 9f8c4cbb-f9a5-4ec1-8bb0-53cfa9221226 --dataset be378d9d-a9d7-4d4a-820a-e0432e8678c7 --model1 ff43e922-e3e6-4bf0-8473-55c08fd68048 --model2 1aae1070-7972-47e9-a977-87e3b05c457d --name "My Inspection" --description "My Inspection Description"

Deverá receber um corpo de resposta no seguinte formato:

{
  "self": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.1/evaluations/8bfe6b05-f093-4ab4-be7d-180374b751ca",
  "model1": {
    "self": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.1/models/ff43e922-e3e6-4bf0-8473-55c08fd68048"
  },
  "model2": {
    "self": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.1/models/base/1aae1070-7972-47e9-a977-87e3b05c457d"
  },
  "dataset": {
    "self": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.1/datasets/be378d9d-a9d7-4d4a-820a-e0432e8678c7"
  },
  "transcription2": {
    "self": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.1/transcriptions/6eaf6a15-6076-466a-83d4-a30dba78ca63"
  },
  "transcription1": {
    "self": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.1/transcriptions/0c5b1630-fadf-444d-827f-d6da9c0cf0c3"
  },
  "project": {
    "self": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.1/projects/9f8c4cbb-f9a5-4ec1-8bb0-53cfa9221226"
  },
  "links": {
    "files": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.1/evaluations/8bfe6b05-f093-4ab4-be7d-180374b751ca/files"
  },
  "properties": {
    "wordErrorRate2": -1.0,
    "wordErrorRate1": -1.0,
    "sentenceErrorRate2": -1.0,
    "sentenceCount2": -1,
    "wordCount2": -1,
    "correctWordCount2": -1,
    "wordSubstitutionCount2": -1,
    "wordDeletionCount2": -1,
    "wordInsertionCount2": -1,
    "sentenceErrorRate1": -1.0,
    "sentenceCount1": -1,
    "wordCount1": -1,
    "correctWordCount1": -1,
    "wordSubstitutionCount1": -1,
    "wordDeletionCount1": -1,
    "wordInsertionCount1": -1
  },
  "lastActionDateTime": "2022-05-20T16:42:43Z",
  "status": "NotStarted",
  "createdDateTime": "2022-05-20T16:42:43Z",
  "locale": "en-US",
  "displayName": "My Inspection",
  "description": "My Inspection Description"
}

A propriedade de nível self superior no corpo da resposta é o URI da avaliação. Use este URI para obter detalhes sobre o projeto e os resultados do teste. Você também usa esse URI para atualizar ou excluir a avaliação.

Para obter ajuda da CLI de fala com avaliações, execute o seguinte comando:

spx help csr evaluation

Para criar um teste, use a operação Evaluations_Create da API REST de fala para texto. Construa o corpo da solicitação de acordo com as seguintes instruções:

  • Defina a project propriedade como o URI de um projeto existente. Essa propriedade é recomendada para que você também possa exibir o teste no Speech Studio. Você pode fazer uma solicitação de Projects_List para obter projetos disponíveis.
  • Defina a propriedade required model1 como o URI de um modelo que você deseja testar.
  • Defina a propriedade required model2 para o URI de outro modelo que você deseja testar. Se você não quiser comparar dois modelos, use o mesmo modelo para ambos model1 e model2.
  • Defina a propriedade required dataset para o URI de um conjunto de dados que você deseja usar para o teste.
  • Defina a propriedade necessária locale . Essa propriedade deve ser a localidade do conteúdo do conjunto de dados. A localidade não pode ser alterada posteriormente.
  • Defina a propriedade necessária displayName . Esta propriedade é o nome exibido no Speech Studio.

Faça uma solicitação HTTP POST usando o URI, conforme mostrado no exemplo a seguir. Substitua YourSubscriptionKey pela chave de recurso Fala, substitua YourServiceRegion pela região de recurso Fala e defina as propriedades do corpo da solicitação conforme descrito anteriormente.

curl -v -X POST -H "Ocp-Apim-Subscription-Key: YourSubscriptionKey" -H "Content-Type: application/json" -d '{
  "model1": {
    "self": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.1/models/ff43e922-e3e6-4bf0-8473-55c08fd68048"
  },
  "model2": {
    "self": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.1/models/base/1aae1070-7972-47e9-a977-87e3b05c457d"
  },
  "dataset": {
    "self": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.1/datasets/be378d9d-a9d7-4d4a-820a-e0432e8678c7"
  },
  "project": {
    "self": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.1/projects/9f8c4cbb-f9a5-4ec1-8bb0-53cfa9221226"
  },
  "displayName": "My Inspection",
  "description": "My Inspection Description",
  "locale": "en-US"
}'  "https://YourServiceRegion.api.cognitive.microsoft.com/speechtotext/v3.1/evaluations"

Deverá receber um corpo de resposta no seguinte formato:

{
  "self": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.1/evaluations/8bfe6b05-f093-4ab4-be7d-180374b751ca",
  "model1": {
    "self": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.1/models/ff43e922-e3e6-4bf0-8473-55c08fd68048"
  },
  "model2": {
    "self": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.1/models/base/1aae1070-7972-47e9-a977-87e3b05c457d"
  },
  "dataset": {
    "self": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.1/datasets/be378d9d-a9d7-4d4a-820a-e0432e8678c7"
  },
  "transcription2": {
    "self": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.1/transcriptions/6eaf6a15-6076-466a-83d4-a30dba78ca63"
  },
  "transcription1": {
    "self": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.1/transcriptions/0c5b1630-fadf-444d-827f-d6da9c0cf0c3"
  },
  "project": {
    "self": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.1/projects/9f8c4cbb-f9a5-4ec1-8bb0-53cfa9221226"
  },
  "links": {
    "files": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.1/evaluations/8bfe6b05-f093-4ab4-be7d-180374b751ca/files"
  },
  "properties": {
    "wordErrorRate2": -1.0,
    "wordErrorRate1": -1.0,
    "sentenceErrorRate2": -1.0,
    "sentenceCount2": -1,
    "wordCount2": -1,
    "correctWordCount2": -1,
    "wordSubstitutionCount2": -1,
    "wordDeletionCount2": -1,
    "wordInsertionCount2": -1,
    "sentenceErrorRate1": -1.0,
    "sentenceCount1": -1,
    "wordCount1": -1,
    "correctWordCount1": -1,
    "wordSubstitutionCount1": -1,
    "wordDeletionCount1": -1,
    "wordInsertionCount1": -1
  },
  "lastActionDateTime": "2022-05-20T16:42:43Z",
  "status": "NotStarted",
  "createdDateTime": "2022-05-20T16:42:43Z",
  "locale": "en-US",
  "displayName": "My Inspection",
  "description": "My Inspection Description"
}

A propriedade de nível self superior no corpo da resposta é o URI da avaliação. Use este URI para obter detalhes sobre o projeto da avaliação e os resultados do teste. Você também usa esse URI para atualizar ou excluir a avaliação.

Obter resultados de testes

Você deve obter os resultados do teste e inspecionar os conjuntos de dados de áudio em comparação com os resultados da transcrição para cada modelo.

Siga estas etapas para obter os resultados do teste:

  1. Inicie sessão no Speech Studio.
  2. Selecione Fala> personalizada Seu nome >de projeto Modelos de teste.
  3. Selecione o link por nome de teste.
  4. Após a conclusão do teste, conforme indicado pelo status definido como Bem-sucedido, você verá os resultados que incluem o número WER para cada modelo testado.

Esta página lista todos os enunciados em seu conjunto de dados e os resultados de reconhecimento, juntamente com a transcrição do conjunto de dados enviado. Você pode alternar vários tipos de erro, incluindo inserção, exclusão e substituição. Ao ouvir o áudio e comparar os resultados de reconhecimento em cada coluna, você pode decidir qual modelo atende às suas necessidades e determinar onde mais treinamento e melhorias são necessários.

Para obter os resultados do teste, use o spx csr evaluation status comando. Construa os parâmetros de solicitação de acordo com as seguintes instruções:

  • Defina o parâmetro necessário evaluation para o ID da avaliação que você deseja obter os resultados do teste.

Aqui está um exemplo de comando da CLI de fala que obtém resultados de teste:

spx csr evaluation status --api-version v3.1 --evaluation 8bfe6b05-f093-4ab4-be7d-180374b751ca

Os modelos, o conjunto de dados de áudio, as transcrições e mais detalhes são retornados no corpo da resposta.

Deverá receber um corpo de resposta no seguinte formato:

{
	"self": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.1/evaluations/8bfe6b05-f093-4ab4-be7d-180374b751ca",
	"model1": {
		"self": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.1/models/ff43e922-e3e6-4bf0-8473-55c08fd68048"
	},
	"model2": {
		"self": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.1/models/base/1aae1070-7972-47e9-a977-87e3b05c457d"
	},
	"dataset": {
		"self": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.1/datasets/be378d9d-a9d7-4d4a-820a-e0432e8678c7"
	},
	"transcription2": {
		"self": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.1/transcriptions/6eaf6a15-6076-466a-83d4-a30dba78ca63"
	},
	"transcription1": {
		"self": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.1/transcriptions/0c5b1630-fadf-444d-827f-d6da9c0cf0c3"
	},
	"project": {
		"self": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.1/projects/9f8c4cbb-f9a5-4ec1-8bb0-53cfa9221226"
	},
	"links": {
		"files": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.1/evaluations/8bfe6b05-f093-4ab4-be7d-180374b751ca/files"
	},
	"properties": {
		"wordErrorRate2": 4.62,
		"wordErrorRate1": 4.6,
		"sentenceErrorRate2": 66.7,
		"sentenceCount2": 3,
		"wordCount2": 173,
		"correctWordCount2": 166,
		"wordSubstitutionCount2": 7,
		"wordDeletionCount2": 0,
		"wordInsertionCount2": 1,
		"sentenceErrorRate1": 66.7,
		"sentenceCount1": 3,
		"wordCount1": 174,
		"correctWordCount1": 166,
		"wordSubstitutionCount1": 7,
		"wordDeletionCount1": 1,
		"wordInsertionCount1": 0
	},
	"lastActionDateTime": "2022-05-20T16:42:56Z",
	"status": "Succeeded",
	"createdDateTime": "2022-05-20T16:42:43Z",
	"locale": "en-US",
	"displayName": "My Inspection",
	"description": "My Inspection Description"
}

Para obter ajuda da CLI de fala com avaliações, execute o seguinte comando:

spx help csr evaluation

Para obter resultados de teste, comece usando a operação Evaluations_Get da API REST de fala para texto.

Faça uma solicitação HTTP GET usando o URI, conforme mostrado no exemplo a seguir. Substitua YourEvaluationId pelo ID de avaliação, substitua YourSubscriptionKey pela chave de recurso Fala e substitua YourServiceRegion pela região do recurso Fala.

curl -v -X GET "https://YourServiceRegion.api.cognitive.microsoft.com/speechtotext/v3.1/evaluations/YourEvaluationId" -H "Ocp-Apim-Subscription-Key: YourSubscriptionKey"

Os modelos, o conjunto de dados de áudio, as transcrições e mais detalhes são retornados no corpo da resposta.

Deverá receber um corpo de resposta no seguinte formato:

{
	"self": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.1/evaluations/8bfe6b05-f093-4ab4-be7d-180374b751ca",
	"model1": {
		"self": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.1/models/ff43e922-e3e6-4bf0-8473-55c08fd68048"
	},
	"model2": {
		"self": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.1/models/base/1aae1070-7972-47e9-a977-87e3b05c457d"
	},
	"dataset": {
		"self": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.1/datasets/be378d9d-a9d7-4d4a-820a-e0432e8678c7"
	},
	"transcription2": {
		"self": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.1/transcriptions/6eaf6a15-6076-466a-83d4-a30dba78ca63"
	},
	"transcription1": {
		"self": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.1/transcriptions/0c5b1630-fadf-444d-827f-d6da9c0cf0c3"
	},
	"project": {
		"self": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.1/projects/9f8c4cbb-f9a5-4ec1-8bb0-53cfa9221226"
	},
	"links": {
		"files": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.1/evaluations/8bfe6b05-f093-4ab4-be7d-180374b751ca/files"
	},
	"properties": {
		"wordErrorRate2": 4.62,
		"wordErrorRate1": 4.6,
		"sentenceErrorRate2": 66.7,
		"sentenceCount2": 3,
		"wordCount2": 173,
		"correctWordCount2": 166,
		"wordSubstitutionCount2": 7,
		"wordDeletionCount2": 0,
		"wordInsertionCount2": 1,
		"sentenceErrorRate1": 66.7,
		"sentenceCount1": 3,
		"wordCount1": 174,
		"correctWordCount1": 166,
		"wordSubstitutionCount1": 7,
		"wordDeletionCount1": 1,
		"wordInsertionCount1": 0
	},
	"lastActionDateTime": "2022-05-20T16:42:56Z",
	"status": "Succeeded",
	"createdDateTime": "2022-05-20T16:42:43Z",
	"locale": "en-US",
	"displayName": "My Inspection",
	"description": "My Inspection Description"
}

Compare a transcrição com o áudio

Você pode inspecionar a saída de transcrição por cada modelo testado, em relação ao conjunto de dados de entrada de áudio. Se incluiu dois modelos no teste, pode comparar a sua qualidade de transcrição lado a lado.

Para rever a qualidade das transcrições:

  1. Inicie sessão no Speech Studio.
  2. Selecione Fala> personalizada Seu nome >de projeto Modelos de teste.
  3. Selecione o link por nome de teste.
  4. Reproduza um arquivo de áudio enquanto lê a transcrição correspondente por um modelo.

Se o conjunto de dados de teste incluísse vários arquivos de áudio, você verá várias linhas na tabela. Se você incluiu dois modelos no teste, as transcrições são mostradas em colunas lado a lado. As diferenças de transcrição entre modelos são mostradas em fonte de texto azul.

Captura de tela da comparação de transcrições por dois modelos

O conjunto de dados de teste de áudio, transcrições e modelos testados são retornados nos resultados do teste. Se apenas um modelo foi testado, o valor corresponde a model1model2, e o transcription1 valor corresponde .transcription2

Para rever a qualidade das transcrições:

  1. Faça o download do conjunto de dados de teste de áudio, a menos que você já tenha uma cópia.
  2. Faça o download das transcrições de saída.
  3. Reproduza um arquivo de áudio enquanto lê a transcrição correspondente por um modelo.

Se estiver a comparar a qualidade entre dois modelos, preste especial atenção às diferenças entre as transcrições de cada modelo.

O conjunto de dados de teste de áudio, transcrições e modelos testados são retornados nos resultados do teste. Se apenas um modelo foi testado, o valor corresponde a model1model2, e o transcription1 valor corresponde .transcription2

Para rever a qualidade das transcrições:

  1. Faça o download do conjunto de dados de teste de áudio, a menos que você já tenha uma cópia.
  2. Faça o download das transcrições de saída.
  3. Reproduza um arquivo de áudio enquanto lê a transcrição correspondente por um modelo.

Se estiver a comparar a qualidade entre dois modelos, preste especial atenção às diferenças entre as transcrições de cada modelo.

Próximos passos