Organiza tus transcripciones en párrafos con Amazon Transcribe.

Organize your transcriptions into paragraphs with Amazon Transcribe.

Amazon Transcribe es un servicio de reconocimiento de voz que genera transcripciones de archivos de video y audio en varios idiomas y acentos admitidos. Viene con un conjunto de características completas, que incluyen identificación automática del idioma, soporte multi-canal y multi-orador, vocabularios personalizados y redacción de transcripciones.

Amazon Transcribe admite dos modos de operación: por lotes y en tiempo real. En el modo por lotes, se crea un trabajo de transcripción para procesar archivos que se encuentran en un cubo de Amazon Simple Storage Service (Amazon S3); en el modo en tiempo real, la fuente de audio se integra en tiempo real con Amazon Transcribe a través de llamadas HTTP/2 o Web Sockets.

En esta publicación, exploramos cómo organizar automáticamente la transcripción generada en párrafos mientras se encuentra en modo por lotes, aumentando la legibilidad de la transcripción generada.

Salida de transcripción

Amazon Transcribe utiliza representación JSON para su salida. Proporciona el resultado de transcripción en dos formatos diferentes: formato de texto y formato detallado.

El formato de texto proporciona la transcripción en conjunto, como un bloque de texto, mientras que el formato detallado proporciona la transcripción en forma de elementos transcritos ordenados en el tiempo, junto con metadatos adicionales por elemento. Ambos formatos existen en paralelo en el archivo de salida.

Dependiendo de las características seleccionadas durante la creación del trabajo de transcripción, Amazon Transcribe crea vistas adicionales y enriquecidas del resultado de transcripción. Vea el siguiente código de ejemplo:

{
    "jobName": "2x-speakers_2x-channels",
    "accountId": "************",
    "results": {
        "transcripts": [
            {
                "transcript": "Hola, bienvenido."
            }
        ],
        "speaker_labels": [
            {
                "channel_label": "ch_0",
                "speakers": 2,
                "segments": [
                ]
            },
            {
                "channel_label": "ch_1",
                "speakers": 2,
                "segments": [
                ]
            }
        ],
        "channel_labels": {
            "channels": [
            ],
            "number_of_channels": 2
        },
        "items": [
            
        ],
        "segments": [
        ]
    },
    "status": "COMPLETADO"
}

Las vistas son las siguientes:

  • Transcripciones – Representado por el elemento transcripts, contiene solo el formato de texto de la transcripción. En situaciones de varios altavoces y varios canales, se proporciona la concatenación de todas las transcripciones como un solo bloque.
  • Altavoces – Representado por el elemento speaker_labels, contiene tanto el formato de texto como el formato detallado de la transcripción agrupado por altavoz. Solo está disponible cuando la función de varios altavoces está habilitada.
  • Canales – Representado por el elemento channel_labels, contiene tanto el formato de texto como el formato detallado de la transcripción, agrupado por canal. Solo está disponible cuando la función de varios canales está habilitada.
  • Elementos – Representado por el elemento items, contiene solo el formato detallado de la transcripción. En situaciones de varios altavoces y varios canales, los elementos se enriquecen con propiedades adicionales que indican el altavoz y el canal.
  • Segmentos – Representado por el elemento segments, contiene tanto el formato de texto como el formato detallado de la transcripción, agrupado por transcripción alternativa. Solo está disponible cuando se habilita la función de resultados alternativos.

Metadatos de transcripción en la vista de elementos

En la vista de elementos, los elementos se proporcionan en forma de una lista ordenada en el tiempo, donde cada elemento contiene información adicional de metadatos:

{
    "results": {
        "items": [
            {
                "channel_label": "ch_0",
                "start_time": "1.509",
                "speaker_label": "spk_0",
                "end_time": "2.21",
                "alternatives": [
                    {
                        "confidence": "0.999",
                        "content": "Hola"
                    }
                ],
                "type": "pronunciación"
            },
            {
                "channel_label": "ch_0",
                "speaker_label": "spk_0",
                "alternatives": [
                    {
                        "confidence": "0.0",
                        "content": ","
                    }
                ],
                "type": "puntuación"
            },
            {
                "channel_label": "ch_0",
                "start_time": "2.22",
                "speaker_label": "spk_0",
                "end_time": "2.9",
                "alternatives": [
                    {
                        "confidence": "0.999",
                        "content": "bienvenido"
                    }
                ],
                "type": "pronunciación"
            },
            {
                "channel_label": "ch_0",
                "speaker_label": "spk_0",
                "alternatives": [
                    {
                        "confidence": "0.0",
                        "content": "."
                    }
                ],
                "type": "puntuación"
            }
        ]
    }
}

Los metadatos son los siguientes:

  • Tipo – El valor de tipo indica si el artículo específico es una puntuación o una pronunciación. Ejemplos de puntuaciones compatibles son coma, punto y signo de interrogación.
  • Alternativas – Un array de objetos que contiene la transcripción real, junto con el nivel de confianza, ordenado por nivel de confianza. Cuando la función de resultados alternativos no está habilitada, esta lista siempre tiene solo un elemento.
    • Confianza – Una indicación de cuán confiado está Amazon Transcribe acerca de la corrección de la transcripción. Utiliza valores de 0 a 1, donde 1 indica un 100% de confianza.
    • Contenido – La palabra transcrita.
  • Hora de inicio – Un puntero de tiempo del archivo de audio o video que indica el comienzo del artículo en formato ss.SSS.
  • Hora de finalización – Un puntero de tiempo del archivo de audio o video que indica el final del artículo en formato ss.SSS.
  • Etiqueta de canal – El identificador de canal, que está presente en el artículo solo cuando la función de identificación de canal estaba habilitada en la configuración del trabajo.
  • Etiqueta del hablante – El identificador de hablante, que está presente en el artículo solo cuando la función de partición de hablantes estaba habilitada en la configuración del trabajo.

Identificación de párrafos

La identificación de párrafos se basa en información de metadatos en la vista de artículos. En particular, utilizamos información de inicio y finalización junto con el tipo y contenido de la transcripción para identificar oraciones y luego decidir qué oraciones son los mejores candidatos para los puntos de entrada de párrafos.

Se considera que una oración es una lista de elementos de transcripción que existe entre elementos de puntuación que indican un punto final. Las excepciones son el comienzo y el final de la transcripción, que son por defecto los límites de la oración. La siguiente figura muestra un ejemplo de estos elementos. La identificación de oraciones es sencilla con Amazon Transcribe porque la puntuación es una función incorporada, junto con los tipos de puntuación coma, punto y signo de interrogación. En este concepto, utilizamos un punto completo como límite de oración.

No todas las oraciones deberían ser puntos de párrafo. Para identificar párrafos, presentamos una nueva perspectiva a nivel de oración llamada retraso inicial, como se ilustra en la siguiente figura. Utilizamos un retraso inicial para definir el retraso de tiempo que el hablante introduce en la pronunciación de la oración actual en comparación con la anterior. El cálculo del retraso inicial requiere la hora de inicio de la oración actual y la hora de finalización de la anterior por hablante. Debido a que Amazon Transcribe proporciona tiempos de inicio y finalización por elemento, el cálculo requiere el uso de los primeros y últimos elementos de las oraciones actuales y anteriores, respectivamente.

Conociendo los retrasos iniciales de cada oración, podemos aplicar un análisis estadístico y determinar la importancia de cada retraso en comparación con la población total de retrasos. En nuestro contexto, los retrasos significativos son aquellos que superan la duración típica de la población. El siguiente gráfico muestra un ejemplo. Para este concepto, decidimos aceptar las oraciones con retrasos iniciales mayores que el valor medio como significativos e introducir un punto de párrafo al comienzo de cada una de estas oraciones. Aparte del valor medio, hay otras opciones, como aceptar todos los retrasos iniciales mayores que la mediana o el tercer cuartil o el valor del límite superior de la población.

Agregamos un paso adicional al proceso de identificación de párrafos, teniendo en cuenta el número de palabras contenidas en cada párrafo. Cuando los párrafos contienen un número significativo de palabras, ejecutamos una operación de división, lo que agrega un párrafo más al resultado final.

En el contexto de la cantidad de palabras, definimos como significativos los conteos de palabras que superan el valor del límite superior. Tomamos esta decisión deliberadamente, para restringir las operaciones de división a los párrafos que realmente se comportan como valores atípicos en nuestros resultados. El siguiente gráfico muestra un ejemplo. La operación de división selecciona el nuevo punto de entrada de párrafo considerando la perspectiva del máximo retraso inicial de la oración. De esta manera, el nuevo párrafo se introduce en la oración que exhibe el mayor retraso inicial dentro del párrafo actual. Las divisiones se pueden repetir hasta que ningún conteo de palabras supere el valor del límite superior seleccionado, en nuestro caso el valor del límite superior. La siguiente figura muestra un ejemplo.

Conclusión

En este artículo, presentamos un concepto para introducir automáticamente párrafos en sus transcripciones, sin intervención manual, basado en los metadatos que Amazon Transcribe proporciona junto con la transcripción actual. Este concepto no es específico del idioma o acento, ya que se basa en metadatos no lingüísticos para sugerir puntos de entrada de párrafo. Las variaciones futuras pueden incluir información gramatical o semántica por caso de idioma, mejorando aún más la lógica de identificación de párrafos.

Si tiene comentarios sobre este artículo, envíe sus comentarios en la sección de comentarios. Esperamos saber de usted. Consulte las características de Amazon Transcribe para obtener características adicionales que le ayudarán a obtener el máximo valor de sus transcripciones.

We will continue to update Zepes; if you have any questions or suggestions, please contact us!

Share:

Was this article helpful?

93 out of 132 found this helpful

Discover more

Inteligencia Artificial

Luma AI lanza Genie un nuevo modelo de IA generativa en 3D que te permite crear objetos en 3D a partir de texto.

En el modelado 3D, crear objetos 3D realistas a menudo ha sido una tarea compleja y que consume mucho tiempo. Las per...

Inteligencia Artificial

Investigadores de UBC Canadá presentan un nuevo algoritmo de IA que mapea las rutas más seguras para los conductores en la ciudad

Las aplicaciones de navegación son aplicaciones que proporcionan indicaciones de navegación en tiempo real. La mayorí...

Inteligencia Artificial

Presentación de Investigación de Google AI, Translatotron 3 Una arquitectura novedosa de traducción de voz a voz sin supervisión

La traducción de voz a voz (S2ST, por sus siglas en inglés) ha sido una tecnología transformadora para romper las bar...