Partekatu honen bidez:


Prueba de la calidad de reconocimiento de un modelo de Habla personalizada

Puede inspeccionar la calidad de reconocimiento de un modelo de Habla personalizada en Speech Studio. Puede reproducir el audio cargado y determinar si el resultado de reconocimiento proporcionada es correcto. Una vez que se cree correctamente una prueba, puede ver la forma en la que un modelo transcribe el conjunto de datos de audio o comparar los resultados de dos modelos en paralelo.

Las pruebas de modelos en paralelo son útiles para validar qué modelo de reconocimiento de voz es el mejor para una aplicación. Para obtener una medida objetiva de precisión, que requiere la entrada de conjuntos de datos de transcripción, consulte Prueba de modelo de forma cuantitativa.

Importante

Al realizar pruebas, el sistema llevará a cabo una transcripción. Es importante tenerlo en cuenta, ya que el precio varía según la oferta de servicio y el nivel de suscripción. Consulte siempre los precios oficiales de los servicios de Azure AI para conocer los últimos detalles.

Creación de una prueba

Para crear una prueba, siga estas instrucciones:

  1. Inicie sesión en Speech Studio.

  2. Vaya a Speech Studio>Habla personalizada y seleccione el nombre del proyecto en la lista.

  3. Seleccione Modelos de prueba>Crear nueva prueba.

  4. Seleccione Inspeccionar la calidad (solo datos de audio)>Siguiente.

  5. Elija el conjunto de datos de audio que quiera usar para las pruebas y, a continuación, seleccione Next (Siguiente). Si no hay ningún conjunto de datos disponible, cancele la instalación y vaya al menú Speech datasets (Conjuntos de datos de voz) para cargar conjuntos de datos.

    Captura de pantalla del cuadro de diálogo de elección de un conjunto de datos

  6. Elija uno o dos modelos para evaluar y comparar la precisión.

  7. Indique el nombre y una descripción de la prueba y, a continuación, seleccione Next (Siguiente).

  8. Revise la configuración y seleccione Save and close (Guardar y cerrar).

Para crear una prueba, use el comando spx csr evaluation create. Construya los parámetros de solicitud según las instrucciones siguientes:

  • Establezca el parámetro project en el identificador de un proyecto existente. Este parámetro se recomienda para que también pueda ver la prueba en Speech Studio. Puede ejecutar el comando spx csr project list para obtener los proyectos disponibles.
  • Establezca el parámetro model1 necesario en el identificador del modelo que quiera probar.
  • Establezca el parámetro model2 necesario en el identificador de otro modelo que quiera probar. Si no quiere comparar dos modelos, use el mismo modelo para model1 y model2.
  • Establezca el parámetro dataset necesario en el identificador del conjunto de datos que quiera usar para la prueba.
  • Establezca el parámetro language; de lo contrario, la CLI de Voz establecerá "en-US" de manera predeterminada. Este parámetro debería ser la configuración regional del contenido del conjunto de datos. Esta configuración regional no se podrá modificar más adelante. El parámetro language de la CLI de Voz corresponde a la propiedad locale de la solicitud y respuesta JSON.
  • Establezca el parámetro name necesario. Este parámetro es el nombre que se muestra en Speech Studio. El parámetro name de la CLI de Voz corresponde a la propiedad displayName de la solicitud y respuesta JSON.

Este es un ejemplo de comando la CLI de Speech que crea una prueba:

spx csr evaluation create --api-version v3.2 --project 0198f569-cc11-4099-a0e8-9d55bc3d0c52 --dataset 23b6554d-21f9-4df1-89cb-f84510ac8d23 --model1 13fb305e-09ad-4bce-b3a1-938c9124dda3 --model2 13fb305e-09ad-4bce-b3a1-938c9124dda3 --name "My Inspection" --description "My Inspection Description"

Debe recibir un cuerpo de respuesta en el formato siguiente:

{
  "self": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.2/evaluations/9c06d5b1-213f-4a16-9069-bc86efacdaac",
  "model1": {
    "self": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.2/models/base/13fb305e-09ad-4bce-b3a1-938c9124dda3"
  },
  "model2": {
    "self": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.2/models/base/13fb305e-09ad-4bce-b3a1-938c9124dda3"
  },
  "dataset": {
    "self": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.2/datasets/23b6554d-21f9-4df1-89cb-f84510ac8d23"
  },
  "transcription2": {
    "self": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.2/transcriptions/b50642a8-febf-43e1-b9d3-e0c90b82a62a"
  },
  "transcription1": {
    "self": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.2/transcriptions/b50642a8-febf-43e1-b9d3-e0c90b82a62a"
  },
  "project": {
    "self": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.2/projects/0198f569-cc11-4099-a0e8-9d55bc3d0c52"
  },
  "links": {
    "files": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.2/evaluations/9c06d5b1-213f-4a16-9069-bc86efacdaac/files"
  },
  "properties": {
    "wordErrorRate1": -1.0,
    "sentenceErrorRate1": -1.0,
    "sentenceCount1": -1,
    "wordCount1": -1,
    "correctWordCount1": -1,
    "wordSubstitutionCount1": -1,
    "wordDeletionCount1": -1,
    "wordInsertionCount1": -1,
    "wordErrorRate2": -1.0,
    "sentenceErrorRate2": -1.0,
    "sentenceCount2": -1,
    "wordCount2": -1,
    "correctWordCount2": -1,
    "wordSubstitutionCount2": -1,
    "wordDeletionCount2": -1,
    "wordInsertionCount2": -1
  },
  "lastActionDateTime": "2024-07-14T21:21:39Z",
  "status": "NotStarted",
  "createdDateTime": "2024-07-14T21:21:39Z",
  "locale": "en-US",
  "displayName": "My Inspection",
  "description": "My Inspection Description"
}

La propiedad self de nivel superior del cuerpo de respuesta es el URI de la evaluación. Use este URI para obtener detalles sobre el proyecto y los resultados de la prueba. Use también este URI para actualizar o eliminar la evaluación.

Para obtener ayuda de la CLI de Speech con las evaluaciones, ejecute el siguiente comando:

spx help csr evaluation

Para crear una prueba, use la operación Evaluations_Create de la API REST de conversión de voz en texto. Construya el cuerpo de la solicitud según las instrucciones siguientes:

  • Establezca la propiedad project en el URI de un proyecto existente. Esta propiedad se recomienda para que también pueda ver la prueba en Speech Studio. Puede realizar una solicitud Projects_List para obtener proyectos disponibles.
  • Establezca la propiedad model1 requerida en el URI de un modelo que quiera probar.
  • Establezca la propiedad model2 requerida en el URI de otro modelo que quiera probar. Si no quiere comparar dos modelos, use el mismo modelo para model1 y model2.
  • Establezca la propiedad dataset requerida en el URI de un conjunto de datos que quiera usar para la prueba.
  • Establezca la propiedad locale requerida. Esta propiedad debería ser la configuración regional del contenido del conjunto de datos. Esta configuración regional no se podrá modificar más adelante.
  • Establezca la propiedad displayName requerida. Esta propiedad es el nombre que se muestra en Speech Studio.

Realice una solicitud HTTP POST con el URI, como se muestra en el ejemplo siguiente. Reemplace YourSubscriptionKey por la clave de recurso de Voz, YourServiceRegion por la región del recurso de Voz, y establezca las propiedades del cuerpo de la solicitud como se ha 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.2/models/13fb305e-09ad-4bce-b3a1-938c9124dda3"
  },
  "model2": {
    "self": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.2/models/base/13fb305e-09ad-4bce-b3a1-938c9124dda3"
  },
  "dataset": {
    "self": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.2/datasets/23b6554d-21f9-4df1-89cb-f84510ac8d23"
  },
  "project": {
    "self": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.2/projects/0198f569-cc11-4099-a0e8-9d55bc3d0c52"
  },
  "displayName": "My Inspection",
  "description": "My Inspection Description",
  "locale": "en-US"
}'  "https://YourServiceRegion.api.cognitive.microsoft.com/speechtotext/v3.2/evaluations"

Debe recibir un cuerpo de respuesta en el formato siguiente:

{
  "self": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.2/evaluations/9c06d5b1-213f-4a16-9069-bc86efacdaac",
  "model1": {
    "self": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.2/models/base/13fb305e-09ad-4bce-b3a1-938c9124dda3"
  },
  "model2": {
    "self": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.2/models/base/13fb305e-09ad-4bce-b3a1-938c9124dda3"
  },
  "dataset": {
    "self": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.2/datasets/23b6554d-21f9-4df1-89cb-f84510ac8d23"
  },
  "transcription2": {
    "self": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.2/transcriptions/b50642a8-febf-43e1-b9d3-e0c90b82a62a"
  },
  "transcription1": {
    "self": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.2/transcriptions/b50642a8-febf-43e1-b9d3-e0c90b82a62a"
  },
  "project": {
    "self": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.2/projects/0198f569-cc11-4099-a0e8-9d55bc3d0c52"
  },
  "links": {
    "files": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.2/evaluations/9c06d5b1-213f-4a16-9069-bc86efacdaac/files"
  },
  "properties": {
    "wordErrorRate1": -1.0,
    "sentenceErrorRate1": -1.0,
    "sentenceCount1": -1,
    "wordCount1": -1,
    "correctWordCount1": -1,
    "wordSubstitutionCount1": -1,
    "wordDeletionCount1": -1,
    "wordInsertionCount1": -1,
    "wordErrorRate2": -1.0,
    "sentenceErrorRate2": -1.0,
    "sentenceCount2": -1,
    "wordCount2": -1,
    "correctWordCount2": -1,
    "wordSubstitutionCount2": -1,
    "wordDeletionCount2": -1,
    "wordInsertionCount2": -1
  },
  "lastActionDateTime": "2024-07-14T21:21:39Z",
  "status": "NotStarted",
  "createdDateTime": "2024-07-14T21:21:39Z",
  "locale": "en-US",
  "displayName": "My Inspection",
  "description": "My Inspection Description"
}

La propiedad self de nivel superior del cuerpo de respuesta es el URI de la evaluación. Use este URI para obtener detalles sobre el proyecto de evaluación y los resultados de las pruebas. Use también este URI para actualizar o eliminar la evaluación.

Obtención de los resultados de la prueba

Debe obtener los resultados de la prueba e inspeccionar los conjuntos de datos de audio en comparación con los resultados de transcripción de cada modelo.

Siga estos pasos para obtener los resultados de la prueba:

  1. Inicie sesión en Speech Studio.
  2. Seleccione Habla personalizada> El nombre del proyecto >Modelos de prueba.
  3. Seleccione el vínculo por nombre de prueba.
  4. Una vez completada la prueba, tal como se indica en el estado establecido como Correcto, verá los resultados que incluyen el número WER para cada modelo probado.

En esta página se muestran todas las expresiones del conjunto de datos y los resultados del reconocimiento junto con la transcripción del conjunto de datos enviado. Puede alternar los distintos tipos de errores, como inserción, eliminación y sustitución. Al escuchar el audio y comparar los resultados del reconocimiento de cada columna, puede decidir qué modelo satisface sus necesidades y determinar dónde es necesario realizar más entrenamiento y mejoras adicionales.

Para obtener los resultados de la prueba, use el comando spx csr evaluation status. Construya los parámetros de solicitud según las instrucciones siguientes:

  • Establezca el parámetro evaluation requerido en el identificador de la evaluación de la que quiere obtener los resultados de la prueba.

Este es un ejemplo de comando de la CLI de Voz que obtiene los resultados de la prueba:

spx csr evaluation status --api-version v3.2 --evaluation 9c06d5b1-213f-4a16-9069-bc86efacdaac

Los modelos, el conjunto de datos de audio, las transcripciones y más detalles se devuelven en el cuerpo de la respuesta.

Debe recibir un cuerpo de respuesta en el formato siguiente:

{
  "self": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.2/evaluations/9c06d5b1-213f-4a16-9069-bc86efacdaac",
  "model1": {
    "self": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.2/models/base/13fb305e-09ad-4bce-b3a1-938c9124dda3"
  },
  "model2": {
    "self": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.2/models/base/13fb305e-09ad-4bce-b3a1-938c9124dda3"
  },
  "dataset": {
    "self": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.2/datasets/23b6554d-21f9-4df1-89cb-f84510ac8d23"
  },
  "transcription2": {
    "self": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.2/transcriptions/b50642a8-febf-43e1-b9d3-e0c90b82a62a"
  },
  "transcription1": {
    "self": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.2/transcriptions/b50642a8-febf-43e1-b9d3-e0c90b82a62a"
  },
  "project": {
    "self": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.2/projects/0198f569-cc11-4099-a0e8-9d55bc3d0c52"
  },
  "links": {
    "files": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.2/evaluations/9c06d5b1-213f-4a16-9069-bc86efacdaac/files"
  },
  "properties": {
    "wordErrorRate1": 0.028900000000000002,
    "sentenceErrorRate1": 0.667,
    "tokenErrorRate1": 0.12119999999999999,
    "sentenceCount1": 3,
    "wordCount1": 173,
    "correctWordCount1": 170,
    "wordSubstitutionCount1": 2,
    "wordDeletionCount1": 1,
    "wordInsertionCount1": 2,
    "tokenCount1": 165,
    "correctTokenCount1": 145,
    "tokenSubstitutionCount1": 10,
    "tokenDeletionCount1": 1,
    "tokenInsertionCount1": 9,
    "tokenErrors1": {
      "punctuation": {
        "numberOfEdits": 4,
        "percentageOfAllEdits": 20.0
      },
      "capitalization": {
        "numberOfEdits": 2,
        "percentageOfAllEdits": 10.0
      },
      "inverseTextNormalization": {
        "numberOfEdits": 1,
        "percentageOfAllEdits": 5.0
      },
      "lexical": {
        "numberOfEdits": 12,
        "percentageOfAllEdits": 12.0
      },
      "others": {
        "numberOfEdits": 1,
        "percentageOfAllEdits": 5.0
      }
    },
    "wordErrorRate2": 0.028900000000000002,
    "sentenceErrorRate2": 0.667,
    "tokenErrorRate2": 0.12119999999999999,
    "sentenceCount2": 3,
    "wordCount2": 173,
    "correctWordCount2": 170,
    "wordSubstitutionCount2": 2,
    "wordDeletionCount2": 1,
    "wordInsertionCount2": 2,
    "tokenCount2": 165,
    "correctTokenCount2": 145,
    "tokenSubstitutionCount2": 10,
    "tokenDeletionCount2": 1,
    "tokenInsertionCount2": 9,
    "tokenErrors2": {
      "punctuation": {
        "numberOfEdits": 4,
        "percentageOfAllEdits": 20.0
      },
      "capitalization": {
        "numberOfEdits": 2,
        "percentageOfAllEdits": 10.0
      },
      "inverseTextNormalization": {
        "numberOfEdits": 1,
        "percentageOfAllEdits": 5.0
      },
      "lexical": {
        "numberOfEdits": 12,
        "percentageOfAllEdits": 12.0
      },
      "others": {
        "numberOfEdits": 1,
        "percentageOfAllEdits": 5.0
      }
    }
  },
  "lastActionDateTime": "2024-07-14T21:22:45Z",
  "status": "Succeeded",
  "createdDateTime": "2024-07-14T21:21:39Z",
  "locale": "en-US",
  "displayName": "My Inspection",
  "description": "My Inspection Description"
}

Para obtener ayuda de la CLI de Speech con las evaluaciones, ejecute el siguiente comando:

spx help csr evaluation

Para obtener los resultados de las pruebas, empiece por usar la operación Evaluations_Get de la API REST de conversión de voz en texto.

Realice una solicitud HTTP GET con el URI, tal como se muestra en el ejemplo siguiente. Sustituya YourEvaluationId por el id. de evaluación, YourSubscriptionKey por la clave del recurso de Voz y YourServiceRegion por la región del recurso de Voz.

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

Los modelos, el conjunto de datos de audio, las transcripciones y más detalles se devuelven en el cuerpo de la respuesta.

Debe recibir un cuerpo de respuesta en el formato siguiente:

{
  "self": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.2/evaluations/9c06d5b1-213f-4a16-9069-bc86efacdaac",
  "model1": {
    "self": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.2/models/base/13fb305e-09ad-4bce-b3a1-938c9124dda3"
  },
  "model2": {
    "self": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.2/models/base/13fb305e-09ad-4bce-b3a1-938c9124dda3"
  },
  "dataset": {
    "self": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.2/datasets/23b6554d-21f9-4df1-89cb-f84510ac8d23"
  },
  "transcription2": {
    "self": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.2/transcriptions/b50642a8-febf-43e1-b9d3-e0c90b82a62a"
  },
  "transcription1": {
    "self": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.2/transcriptions/b50642a8-febf-43e1-b9d3-e0c90b82a62a"
  },
  "project": {
    "self": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.2/projects/0198f569-cc11-4099-a0e8-9d55bc3d0c52"
  },
  "links": {
    "files": "https://eastus.api.cognitive.microsoft.com/speechtotext/v3.2/evaluations/9c06d5b1-213f-4a16-9069-bc86efacdaac/files"
  },
  "properties": {
    "wordErrorRate1": 0.028900000000000002,
    "sentenceErrorRate1": 0.667,
    "tokenErrorRate1": 0.12119999999999999,
    "sentenceCount1": 3,
    "wordCount1": 173,
    "correctWordCount1": 170,
    "wordSubstitutionCount1": 2,
    "wordDeletionCount1": 1,
    "wordInsertionCount1": 2,
    "tokenCount1": 165,
    "correctTokenCount1": 145,
    "tokenSubstitutionCount1": 10,
    "tokenDeletionCount1": 1,
    "tokenInsertionCount1": 9,
    "tokenErrors1": {
      "punctuation": {
        "numberOfEdits": 4,
        "percentageOfAllEdits": 20.0
      },
      "capitalization": {
        "numberOfEdits": 2,
        "percentageOfAllEdits": 10.0
      },
      "inverseTextNormalization": {
        "numberOfEdits": 1,
        "percentageOfAllEdits": 5.0
      },
      "lexical": {
        "numberOfEdits": 12,
        "percentageOfAllEdits": 12.0
      },
      "others": {
        "numberOfEdits": 1,
        "percentageOfAllEdits": 5.0
      }
    },
    "wordErrorRate2": 0.028900000000000002,
    "sentenceErrorRate2": 0.667,
    "tokenErrorRate2": 0.12119999999999999,
    "sentenceCount2": 3,
    "wordCount2": 173,
    "correctWordCount2": 170,
    "wordSubstitutionCount2": 2,
    "wordDeletionCount2": 1,
    "wordInsertionCount2": 2,
    "tokenCount2": 165,
    "correctTokenCount2": 145,
    "tokenSubstitutionCount2": 10,
    "tokenDeletionCount2": 1,
    "tokenInsertionCount2": 9,
    "tokenErrors2": {
      "punctuation": {
        "numberOfEdits": 4,
        "percentageOfAllEdits": 20.0
      },
      "capitalization": {
        "numberOfEdits": 2,
        "percentageOfAllEdits": 10.0
      },
      "inverseTextNormalization": {
        "numberOfEdits": 1,
        "percentageOfAllEdits": 5.0
      },
      "lexical": {
        "numberOfEdits": 12,
        "percentageOfAllEdits": 12.0
      },
      "others": {
        "numberOfEdits": 1,
        "percentageOfAllEdits": 5.0
      }
    }
  },
  "lastActionDateTime": "2024-07-14T21:22:45Z",
  "status": "Succeeded",
  "createdDateTime": "2024-07-14T21:21:39Z",
  "locale": "en-US",
  "displayName": "My Inspection",
  "description": "My Inspection Description"
}

Comparación de la transcripción con audio

Puede inspeccionar la transcripción producida por cada modelo probado en el conjunto de datos de entrada de audio. Si incluyó dos modelos en la prueba, puede comparar su calidad de transcripción en paralelo.

Para revisar la calidad de las transcripciones:

  1. Inicie sesión en Speech Studio.
  2. Seleccione Habla personalizada> El nombre del proyecto >Modelos de prueba.
  3. Seleccione el vínculo por nombre de prueba.
  4. Reproduzca un archivo de audio mientras lee la correspondiente transcripción de un modelo.

Si el conjunto de datos de prueba incluía varios archivos de audio, verá varias filas en la tabla. Si incluyó dos modelos en la prueba, las transcripciones se mostrarán en columnas en paralelo. Las diferencias de transcripción entre los modelos se muestran en letra de color azul.

Captura de pantalla de la comparación de las transcripciones de dos modelos

El conjunto de datos de prueba de audio, las transcripciones y los modelos probados se devuelven en los resultados de la prueba. Si solo se ha probado un modelo, el valor model1 equivaldrá a model2 y el valor transcription1 equivaldrá a transcription2.

Para revisar la calidad de las transcripciones:

  1. Descargue el conjunto de datos de prueba de audio, a menos que ya tenga una copia.
  2. Descargue las transcripciones de salida.
  3. Reproduzca un archivo de audio mientras lee la correspondiente transcripción de un modelo.

Si compara la calidad entre dos modelos, preste especial atención a las diferencias entre las transcripciones de cada modelo.

El conjunto de datos de prueba de audio, las transcripciones y los modelos probados se devuelven en los resultados de la prueba. Si solo se ha probado un modelo, el valor model1 equivaldrá a model2 y el valor transcription1 equivaldrá a transcription2.

Para revisar la calidad de las transcripciones:

  1. Descargue el conjunto de datos de prueba de audio, a menos que ya tenga una copia.
  2. Descargue las transcripciones de salida.
  3. Reproduzca un archivo de audio mientras lee la correspondiente transcripción de un modelo.

Si compara la calidad entre dos modelos, preste especial atención a las diferencias entre las transcripciones de cada modelo.

Pasos siguientes