Artículo de divulgación científica sobre IA | ¿Es preciso el reconocimiento de voz? ——Principio y práctica de evaluación del efecto ASR

En el trabajo y la vida diaria, la tecnología de reconocimiento de voz, como servicio básico, aparece cada vez más a nuestro alrededor, como altavoces inteligentes, registros de reuniones, generación de subtítulos, etc.

Como tecnología de inteligencia artificial muy madura, muchos fabricantes en el mercado brindan servicios de reconocimiento de voz y la precisión del reconocimiento que afirman también es muy alta.

Para nosotros, en el lado comercial, en realidad estamos más preocupados por cómo se desempeña en nuestros escenarios comerciales específicos.

Este artículo lo llevará a través de todos los aspectos de la evaluación del efecto del reconocimiento de voz desde el principio hasta la práctica.

El reconocimiento de voz, también conocido como transcripción de voz a texto, es una tecnología que reconoce la voz en texto. El nombre en inglés es Reconocimiento automático de voz, generalmente abreviado como ASR (en adelante, ASR).

Obviamente, la calidad de un servicio ASR se puede medir por la precisión del texto reconocido por voz.

La industria suele utilizar un indicador para cuantificar si esto es exacto: Word Correct (W.Corr), también conocido como precisión de reconocimiento.

Para comprender la palabra tasa de precisión, primero debemos comprender otro indicador, WER.

1. Principio de los indicadores

1.1 Oficial del WER

WER (tasa de error de palabras) es un indicador importante para evaluar el efecto de ASR y se utiliza para medir la tasa de error entre el texto predicho y el texto anotado.

Debido a que la unidad más pequeña en una oración en inglés es una palabra (Word) y la unidad más pequeña en chino es un carácter chino (Carácter), en la tarea de reconocimiento de voz en chino, la tasa de error de caracteres (CER) se utiliza para medir el reconocimiento ASR. efecto.

Los métodos de cálculo de los dos son los mismos: normalmente utilizamos WER para representar este indicador en el campo chino.

La fórmula de cálculo para WER es la siguiente

#Deletions: elimina el número incorrecto de caracteres

#Inserciones: Insertar el número incorrecto de caracteres

#Sustituciones: sustituye el número incorrecto de caracteres

#PalabrasdeReferencia: Total de caracteres

 1.2 Error tipo III

En general, el denominador de la fórmula es el número total de caracteres y el numerador es la suma del número de caracteres para los tres tipos de errores. Veamos el significado de estos tres tipos de errores.

Para facilitar la descripción, la convención es la siguiente

REF: El contenido del texto correcto correspondiente al discurso, también llamado texto anotado, es decir, Referencia

HYP: Texto reconocido por voz a través del servicio ASR, es decir, Hipótesis

borrar error

Durante el proceso de transcripción del discurso, ASR no reconoció el texto incluido originalmente en el texto original. ejemplo:

La voz "¿Has comido?" se reconoce como "Has comido", pero no se reconoce la palabra "has".

Error de inserción

Durante el proceso de transcripción de voz, ASR reconoció erróneamente como texto el texto que no estaba incluido en el texto original, como el ruido. Por ejemplo:

La voz "¿Has comido?" se reconoce como "¿Has comido?", en la que se reconoce erróneamente la palabra "Yah".

error de sustitución

Durante el proceso de transcripción de texto de voz, ASR reconoció erróneamente el texto contenido en el texto original como otro texto. Por ejemplo:

 

La voz "¿Comiste?" fue reconocida como "¿Comiste?", en la que la palabra "?" fue mal reconocida y convertida en la palabra "灞".

en conclusión

Errores de eliminación: hay menos reconocimiento y se omiten las palabras originales del discurso.

Error de inserción: demasiado reconocimiento, se reconocen palabras que no están en el discurso.

Error de reemplazo: el reconocimiento es incorrecto y las palabras del discurso se reconocen como otras palabras.

Después de comprender estos tres tipos de errores, será fácil de entender si volvemos a mirar los campos anteriores.

 

En resumen, se puede ver

WER se refiere a la proporción del número de caracteres que contienen varios errores (eliminaciones, inserciones, sustituciones) en el texto resultante identificado por ASR en comparación con el número total de textos originales.

Ahora que entendemos el indicador WER, veamos cómo calcularlo para obtener estos valores.

1.3 Editar distancia

Cuando se proporcionan el texto del resultado del reconocimiento y el texto de la anotación, es fácil obtener el número total de caracteres #ReferenceWords y el número de errores de tipo III debe calcularse mediante la introducción de la "distancia de edición".

La parte numeradora de la fórmula WER, que es

Esa es la distancia de edición desde el texto del resultado del reconocimiento hasta el texto de la anotación.

Es decir, solo requerimos la distancia de edición desde el texto del resultado del reconocimiento hasta el texto anotado, dividida por el número de caracteres del texto anotado, para obtener el indicador WER.

Echemos un vistazo más de cerca a qué es la distancia de edición y cómo se calcula.

La distancia fue propuesta por el científico ruso Vladimir Levenshtein en 1965, también conocida como distancia de Levenshtein.

La distancia de edición se utiliza para medir la similitud entre dos cadenas y se usa ampliamente en la comparación de secuencias de ADN, detección ortográfica, cálculo de tasa de error y otros campos.

Se mide observando la cantidad mínima de procesos necesarios para transformar una cadena en otra. Cada procesamiento se denomina operación de edición, que incluye tres tipos:

  • Eliminar, eliminar un personaje
  • Insertar, insertar un carácter
  • Reemplazar, reemplazar un personaje

Como puede ver, las operaciones de edición aquí corresponden a los tres tipos de errores discutidos anteriormente.

Cuanto más corta sea la distancia de edición, más similares serán los dos textos; cuanto mayor sea la distancia de edición, más diferentes serán los dos textos.

La distancia de edición se puede calcular mediante la siguiente fórmula:

Mediante la fórmula anterior, el texto resultante del reconocimiento se calcula y se convierte al texto anotado al número mínimo de operaciones de edición, y se puede obtener su distancia de edición.

Los estudiantes que estén familiarizados con los algoritmos deben saber que calcular el valor mínimo del número total de operaciones ajustando la secuencia y el número de operaciones diferentes es un problema típico de programación dinámica (DP).

Sin embargo, esto está más allá del alcance del tema de este artículo. Los estudiantes que estén interesados ​​en el algoritmo DP pueden consultar la siguiente información para obtener más información:

1.4 Cálculo del WER

En resumen, para calcular WER, puede calcular la distancia de edición desde el resultado del reconocimiento hasta el texto anotado y luego ingresar la siguiente fórmula para obtener

 

Los parámetros son los siguientes.

 

Precisión de 1,5 palabras

Bien, ahora volvamos a la palabra tasa correcta (Word Correct) mencionada al principio ¿A qué se refiere este indicador y cuál es su relación con el WER?

En comparación con WER, la tasa de precisión de palabras ignora la cantidad de caracteres incorrectos insertados en el cálculo, es decir, los errores insertados no se incluyen en las estadísticas de errores.

En el sistema real, el módulo de análisis de tareas descendente procesará aún más los resultados del reconocimiento del ASR ascendente y procesará el texto insertado incorrectamente, por lo que solo necesitamos examinar la proporción de textos contenidos en el discurso que se reconocen correctamente. , es decir, precisión de la palabra.

Por lo tanto, los fabricantes de la industria suelen proporcionar la tasa de precisión de palabras junto con WER para medir el efecto de reconocimiento de ASR.

1.6 Herramientas de código abierto

Hasta ahora, hemos entendido el índice WER, el índice de precisión de palabras y los principios y algoritmos detrás de ellos.

En la industria, para evitar inconsistencias en los datos de los indicadores causadas por diferentes implementaciones y para permitir que varios fabricantes comparen fácilmente sus propios datos, generalmente se utilizan herramientas de código abierto para los cálculos.

Aquí utilizamos el código abierto Sclite del Instituto Nacional de Tecnología NIST como herramienta informática.

Al ingresar el texto del resultado del reconocimiento y el texto de la anotación, la herramienta puede calcular el WER correspondiente, el número de tres tipos de errores y los detalles correspondientes.

Uso de herramientas

Al proporcionar archivos de resultados de reconocimiento y archivos de texto de anotaciones que cumplen con un formato específico (trn), sclite puede calcular y generar informes de evaluación detallados (dtl) que incluyen WER, precisión de palabras y tres tipos de información de error.

A. Ejemplo de comando de llamada

# 命令格式 sclite -r reffile [ fmt ] -h hypfile [ fmt [ title ] ] OPTIONS
./bin/sclite -r /corpus/audio_file/16k_60s_all_100.trn trn -h /data/output/16k_zh-PY-16k_60s_all_100.trn trn -i spu_id -o dtlb

Archivo de anotaciones:/corpus/audio_file/16k_60s_all_100.trn

Resultado del reconocimiento:/data/output/16k_zh-PY-16k_60s_all_100.trn

b. Ejemplo de informe de evaluación (dtl)

 

 

Adjunto: Los estudiantes interesados ​​pueden obtener herramientas NIST a través del siguiente enlace del sitio web oficial

 

2. Práctica de evaluación

Hay un dicho popular en Internet: sé muchas verdades, pero todavía no puedo vivir una buena vida. Es más fácil decirlo que hacerlo.

De manera similar, aunque entendemos los indicadores de desempeño, los principios y las herramientas de código abierto de ASR, es posible que aún sintamos que no tenemos por dónde empezar.

Para reducir el umbral de prueba y facilitar que los clientes evalúen fácil y rápidamente el efecto de reconocimiento de sus escenarios comerciales en el servicio Tencent Cloud ASR , el equipo de aplicaciones de Tencent Cloud AI creó la herramienta de evaluación con un solo clic AI Studio, que permite a los usuarios completar el Evaluación con fundamento cero.

Ahora en beta cerrada, veamos cómo usarlo.

2.1 Vista previa de la interfaz

Enlace al sitio web oficial de AI Studio: AI Studio - Plataforma de herramientas para desarrolladores

Abra el sitio web oficial y consulte la siguiente página.

Haga clic en [Iniciar sesión] en la esquina superior derecha, lo que le llevará a la página de inicio de sesión del sitio web oficial de Tencent Cloud. Inicie sesión con la cuenta oficial de la nube.

La primera columna es la opción del servicio de evaluación, aquí seleccionamos [Reconocimiento de voz], el cuadro desplegable en el extremo derecho contiene dos interfaces de reconocimiento de voz: reconocimiento de archivos de grabación y reconocimiento de voz en tiempo real;

Dado que el modelo de algoritmo se ha optimizado específicamente para estos dos escenarios comerciales, solo necesita elegir la interfaz que utilizará.

La segunda columna explica cómo crear un conjunto de prueba y a qué prestar atención al etiquetar archivos.

La tercera columna es el campo que debe seleccionarse al enviar una tarea de prueba. Solo manténgala coherente con la metainformación del audio de prueba.

2.2 Guía de operación

A continuación utilizamos un ejemplo para mostrar cómo llevar a cabo un proceso de evaluación.

a. Preparar corpus de evaluación

Haga clic en el enlace de la plantilla de página para ver un formato de muestra del conjunto de prueba:

El corpus de prueba contiene dos partes:

  • Archivos de audio: datos de audio recopilados en escenarios empresariales, con una frecuencia de muestreo de 8k o 16k
  • Archivo de anotación: grabe manualmente el habla humana contenida en el audio en un archivo de texto

Entre ellos, los números en el archivo de anotaciones deben marcarse en mayúscula china, por ejemplo, el texto "Xiao Ming obtuvo 98 puntos en el examen" debe marcarse como "Xiao Ming obtuvo 98 puntos en el examen".

Para otras notas, consulte la página:

 

b.Enviar tarea de evaluación

Cree una nueva tarea de evaluación a continuación

Paso 1: seleccione los parámetros correspondientes

Según la información de audio, seleccione el idioma de reconocimiento correspondiente y la frecuencia de muestreo de audio.

Se han optimizado diferentes tipos de motores para escenarios específicos y tienen mejores efectos de reconocimiento en escenarios coincidentes. Simplemente elija aquí el tipo de motor más adecuado, de la siguiente manera

 

 

Paso 2: cargue el conjunto de prueba anotado

Comprima y empaquete el conjunto de prueba preparado y cárguelo a través de la página.

 

Paso 3: verifique el contenido del conjunto de prueba anotado

Aquí, el sistema analizará el conjunto de pruebas cargado, comparará el audio con el texto anotado y lo mostrará en la página para que los usuarios lo verifiquen y confirmen (dado que los resultados de la prueba están directamente relacionados con la precisión del texto anotado, es necesario asegúrese de que el archivo anotado sea correcto).

Haga clic en Confirmar para enviar y completar la creación de la tarea de evaluación.

C. Obtener resultados de evaluación

Durante la ejecución de la tarea, puede verificar el estado de la tarea a través de la lista de administración de tareas de evaluación en la parte inferior de la página de evaluación.

Después de que el estado de la tarea muestre [Éxito], haga clic en [Ver resultados] a la derecha para ver los resultados de la evaluación:

Puede ver los indicadores de rendimiento de la evaluación: tasa de precisión de palabras (es decir, la tasa de precisión de palabras mencionada anteriormente), WER y tasa de error de inserción/eliminación/reemplazo.

Al mismo tiempo, también puede hacer clic en la dirección de descarga a continuación para obtener el informe de evaluación y el archivo de resultados de identificación para su posterior análisis.

apéndice

Supongo que te gusta

Origin blog.csdn.net/tencentAI/article/details/128547180
Recomendado
Clasificación