{"id":20858,"date":"2020-11-06T00:00:00","date_gmt":"2020-11-06T00:00:00","guid":{"rendered":"https:\/\/localhost:10083\/sin-categorizar\/how-to-add-speaker-tags-to-audio-files-for-transcription-es\/"},"modified":"2023-04-06T17:07:09","modified_gmt":"2023-04-06T15:07:09","slug":"diarizacion-de-interlocutores","status":"publish","type":"post","link":"https:\/\/wp-staging.amberscript.com\/es\/blog\/diarizacion-de-interlocutores\/","title":{"rendered":"C\u00f3mo identificar interlocutores en transcripciones de audio"},"content":{"rendered":"\n<p><em>Esta entrada del blog analizar\u00e1 el proceso de diarizaci\u00f3n, que consiste en a\u00f1adir etiquetas de interlocutor a un archivo de audio para una transcripci\u00f3n. Describir\u00e1 las t\u00e9cnicas para trabajar con vectores de interlocutor y ofrecer\u00e1 una manera f\u00e1cil de realizarlo usando nuestra herramienta.<\/em><\/p>\n\n\n\n<h2 class=\"wp-block-heading\">\u00bfQu\u00e9 es la diarizaci\u00f3n de interlocutores?<\/h2>\n\n\n\n<p>A\u00f1adir etiquetas de interlocutor a una transcripci\u00f3n o responder a la pregunta \u00ab\u00bfqui\u00e9n habl\u00f3 cu\u00e1ndo?\u00bb es una tarea llamada diarizaci\u00f3n.<\/p>\n\n\n\n<p>Esta tarea no es tan f\u00e1cil como parece, porque los algoritmos no tienen ni de cerca el mismo nivel de comprensi\u00f3n del sonido que tenemos nosotros. Se trata de encontrar el n\u00famero de interlocutores y cu\u00e1ndo estos hablaron, usando la se\u00f1al de la onda de sonido.<\/p>\n\n\n\n<p>Adem\u00e1s, es un paso necesario en los sistemas de Reconocimiento Autom\u00e1tico del Habla, ya que nos permite organizar la transcripci\u00f3n del texto y tener informaci\u00f3n adicional sobre el audio.<\/p>\n\n\n\n<p>En Amberscript, analizamos diferentes enfoques e integramos el mejor en nuestro producto. En este post, encontrar\u00e1s algunos elementos sobre cu\u00e1les son las t\u00e9cnicas existentes, seguidos de una breve\u00a0<a href=\"https:\/\/wp-staging.amberscript.com\/es\/blog\/diarizacion-de-interlocutores\/\">gu\u00eda sobre c\u00f3mo a\u00f1adir etiquetas de interlocutor utilizando nuestra herramienta.<\/a><\/p>\n\n\n\n<h2 class=\"wp-block-heading\">\u00bfPor qu\u00e9 la diarizaci\u00f3n de interlocutores es un proceso complicado?<\/h2>\n\n\n<div class=\"image-block-wrapper\">\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/cdn.shortpixel.ai\/client\/to_avif,q_glossy,ret_img,w_1556,h_271\/https:\/\/wp-staging.amberscript.com\/wp-content\/uploads\/2020\/11\/Diagrama-de-diarizacio%CC%81n.png\" alt=\"\" title=\"Diagrama de diarizaci\u00f3n\"\/><\/figure>\n<\/div>\n\n\n<p>La diarizaci\u00f3n de interlocutores no es f\u00e1cil, ya que supone muchos pasos. Te explicamos r\u00e1pidamente como funciona el proceso:<\/p>\n\n\n\n<p>Primero, tienes que dividir el audio en segmentos de habla. Eso significa quitar las partes sin habla y dividir los segmentos de audio en turnos de interlocutor, as\u00ed terminar\u00e1s con segmentos que involucran a un solo interlocutor.<\/p>\n\n\n\n<p>Despu\u00e9s de la divisi\u00f3n, debes encontrar una manera de reagrupar los segmentos que pertenecen al mismo hablante bajo la misma identificaci\u00f3n de interlocutor. Esta misma tarea se divide en varios pasos.<\/p>\n\n\n\n<p>Debes extraer un vector de interlocutor para los segmentos y luego agruparlos para finalmente reagrupar los vectores en el mismo grupo bajo la misma etiqueta parlante. La dificultad de esta tarea es el origen del&nbsp;<a href=\"https:\/\/arxiv.org\/pdf\/1906.07839.pdf\" target=\"_blank\" rel=\"noopener\">desaf\u00edo de diarizaci\u00f3n llamado DIHARD.<\/a><\/p>\n\n\n\n<p>Ahora, veremos c\u00f3mo extraer dichos vectores de interlocutor.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Generaci\u00f3n autom\u00e1tica de vectores de interlocutor<\/h2>\n\n\n\n<p>Normalmente, hacer los segmentos de actividad no es la parte m\u00e1s complicada. Esto se llama Detecci\u00f3n de la Actividad del Habla o Detecci\u00f3n de la Actividad de la Voz . Normalmente se realiza utilizando alg\u00fan umbral de la actividad en un momento dado en el audio.<\/p>\n\n\n\n<p>Lo que es m\u00e1s dif\u00edcil es la tarea de hacer vectores de interlocutor de los segmentos obtenidos. Para ello, se pueden comprobar diferentes t\u00e9cnicas para extraer el vector de interlocutor (llamado diarizaci\u00f3n de interlocutores) en la tabla siguiente:<\/p>\n\n\n<div class=\"single-block\">\n    <div class=\"single-images\">\n        <div class=\"grid-x\">\n            <div class=\"cell large-11\">\n                            \n                <table border=\"0\"><thead><tr><th>NOMBRE<\/th><th>HERRAMIENTA INTERNA<\/th><\/tr><\/thead><tbody><tr><td>i-vectors<\/td><td>Modelos estad\u00edsticos<\/td><\/tr><tr><td>x-vectors\t<\/td><td>Redes neuronales con retardo de tiempo<\/td><\/tr><tr><td>d-vectors\t<\/td><td>Redes neuronales recurrentes<\/td><\/tr><tr><td>ClusterGAN<\/td><td>Redes adversas generativas<\/td><\/tr><\/tbody><\/table>            <\/div>\n        <\/div>\n    <\/div>\n<\/div>\n\n\n\n\n\n<p>La lista completa ser\u00eda mucho m\u00e1s larga, pero podemos limitarla a estas t\u00e9cnicas que son las m\u00e1s comunes.<\/p>\n\n\n\n<p>I-vector se basa en las Cadenas Ocultas de Markov en los Modelos de Mezcla Gaussiana: dos modelos estad\u00edsticos para estimar el cambio de hablante y determinar los vectores de interlocutor basados en un conjunto de hablantes conocidos. Es una t\u00e9cnica heredada que todav\u00eda puede ser utilizada.<\/p>\n\n\n\n<p>Los sistemas de vectores X y d se basan en redes neuronales entrenadas para reconocer un conjunto de interlocutores. Estos sistemas son mejores en t\u00e9rminos de rendimiento, pero requieren m\u00e1s datos de entrenamiento y configuraci\u00f3n. Sus caracter\u00edsticas se utilizan como vectores de interlocutor.<\/p>\n\n\n\n<p>ClusterGAN lleva esto un paso m\u00e1s all\u00e1 e intenta transformar un vector de interlocutor existente en otro que contenga mejor informaci\u00f3n utilizando 3 redes neuronales que compiten entre s\u00ed.<\/p>\n\n\n\n<p>Cuando este paso est\u00e1 hecho, obtendremos vectores de interlocutor para cada segmento.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Agrupaci\u00f3n de los vectores de interlocutor<\/h2>\n\n\n\n<p>Despu\u00e9s de conseguir esos vectores de altavoz, tienes que agruparlos. Esto significa agrupar los vectores hablantes que son similares, por lo tanto es probable que pertenezcan al mismo hablante.<\/p>\n\n\n\n<p>El problema en este paso es que no necesariamente se sabe el n\u00famero de hablantes de un determinado archivo (o conjunto de archivos), por lo que no se est\u00e1 seguro de cu\u00e1ntos grupos se desea obtener. Un algoritmo puede intentar adivinarlo, pero puede equivocarse.<\/p>\n\n\n\n<p>Una vez m\u00e1s, existen varios algoritmos que pueden utilizarse para realizar esta tarea, los m\u00e1s comunes se incluyen en el cuadro siguiente:<\/p>\n\n\n<div class=\"single-block\">\n    <div class=\"single-images\">\n        <div class=\"grid-x\">\n            <div class=\"cell large-11\">\n                            \n                <table border=\"0\"><thead><tr><th>NOMBRE<\/th><th>HERRAMIENTA<\/th><\/tr><\/thead><tbody><tr><td>K-means<\/td><td>Agrupamiento interactivo<\/td><\/tr><tr><td>PLDA<\/td><td>Modelos estad\u00edsticos<\/td><\/tr><tr><td>UIS-RNN<\/td><td>Redes neuronales recurrentes<\/td><\/tr><\/tbody><\/table>            <\/div>\n        <\/div>\n    <\/div>\n<\/div>\n\n\n\n\n\n<p><a href=\"https:\/\/www.odyssey2016.org\/papers\/pdfs_stamped\/12.pdf\" target=\"_blank\" rel=\"noopener\">PLDA hace referencia a una t\u00e9cnica de puntuaci\u00f3n usada en otro algoritmo.<\/a>&nbsp;K-means es normalmente la forma est\u00e1ndar de agrupaci\u00f3n, pero hay que definir una distancia entre dos vectores de interlocutor y PLDA es realmente m\u00e1s adecuado para este caso.<\/p>\n\n\n\n<p><a href=\"https:\/\/ai.googleblog.com\/2018\/11\/accurate-online-speaker-diarization.html\" target=\"_blank\" rel=\"noopener\">UIS-RNN es una t\u00e9cnica reciente que permite la decodificaci\u00f3n<\/a>&nbsp;en l\u00ednea, agregando nuevos interlocutores a medida que aparecen y es muy prometedora.<\/p>\n\n\n\n<p>Despu\u00e9s del paso de agrupaci\u00f3n, puedes a\u00f1adir las etiquetas de los interlocutores a los segmentos que pertenecen a la misma agrupaci\u00f3n, de modo que terminas con etiquetas para cada segmento.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">\u00bfQu\u00e9 queda despu\u00e9s de la diarizaci\u00f3n de interlocutores para una transcripci\u00f3n completa?<\/h2>\n\n\n\n<p>Cuando este paso est\u00e1 hecho, terminamos con vectores de interlocutor para cada segmento.<\/p>\n\n\n\n<p>El resultado de la transcripci\u00f3n ser\u00e1 entonces una transcripci\u00f3n completa con las palabras del archivo de audio, m\u00e1s los interlocutores asociados a cada parte del texto.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">C\u00f3mo a\u00f1adir etiquetas de interlocutor usando la herramienta de Amberscript<\/h2>\n\n\n\n<p>Ahora en la parte real, \u00bfc\u00f3mo puedes a\u00f1adir dichas etiquetas de interlocutor sin tener que realizar todos los pasos t\u00e9cnicos anteriores?<\/p>\n\n\n\n<p>Puedes simplemente dirigirte a&nbsp;<a href=\"https:\/\/wp-staging.amberscript.com\/es\/\">nuestro sitio web<\/a>&nbsp;e iniciar sesi\u00f3n. Cuando esto est\u00e9 hecho, podr\u00e1s subir un archivo y seleccionar el n\u00famero de hablantes (para mayor precisi\u00f3n) y luego \u00a1dejar que el algoritmo se ejecute!<\/p>\n\n\n\n<p>No tienes que preocuparte de qu\u00e9 t\u00e9cnica elegir. Despu\u00e9s de unos minutos, su archivo ser\u00e1 transcrito completamente, y podr\u00e1 comprobar en el editor si las etiquetas de los interlocutores han sido a\u00f1adidas correctamente.<\/p>\n\n\n\n<p>Puedes incluso corregir los errores si encuentras, y luego descargar tu transcripci\u00f3n lista para ser publicada.<\/p>\n\n\n\n\n\n\n<h2 class=\"wp-block-heading\">Conclusi\u00f3n<\/h2>\n\n\n\n<p>Para concluir, digamos que hay muchas t\u00e9cnicas de diarizaci\u00f3n disponibles y que este proceso es realmente complicado, pero construimos una herramienta usando la mejor t\u00e9cnica disponible para permitirte a\u00f1adir etiquetas de interlocutor a tus archivos de audio para que puedas obtener la mejor transcripci\u00f3n.<\/p>\n","protected":false},"excerpt":{"rendered":"<p><b>Como identificar interlocutores en transcripciones de audio<\/b> <\/p>\n<p>Este post del blog analizar\u00e1 el proceso de diarizaci\u00f3n de interlocutores para una transcripci\u00f3n.<\/p>\n","protected":false},"author":70,"featured_media":20859,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"inline_featured_image":false,"footnotes":""},"categories":[148],"tags":[155],"class_list":["post-20858","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-blog","tag-transcripcion-automatica"],"acf":{"text":"","link":"","questions":""},"_links":{"self":[{"href":"https:\/\/wp-staging.amberscript.com\/es\/wp-json\/wp\/v2\/posts\/20858","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/wp-staging.amberscript.com\/es\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/wp-staging.amberscript.com\/es\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/wp-staging.amberscript.com\/es\/wp-json\/wp\/v2\/users\/70"}],"replies":[{"embeddable":true,"href":"https:\/\/wp-staging.amberscript.com\/es\/wp-json\/wp\/v2\/comments?post=20858"}],"version-history":[{"count":0,"href":"https:\/\/wp-staging.amberscript.com\/es\/wp-json\/wp\/v2\/posts\/20858\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/wp-staging.amberscript.com\/es\/wp-json\/wp\/v2\/media\/20859"}],"wp:attachment":[{"href":"https:\/\/wp-staging.amberscript.com\/es\/wp-json\/wp\/v2\/media?parent=20858"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/wp-staging.amberscript.com\/es\/wp-json\/wp\/v2\/categories?post=20858"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/wp-staging.amberscript.com\/es\/wp-json\/wp\/v2\/tags?post=20858"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}