{"id":16377,"date":"2020-09-07T00:00:00","date_gmt":"2020-09-07T00:00:00","guid":{"rendered":"https:\/\/localhost:10083\/non-classifiee\/how-to-add-speaker-tags-to-audio-files-for-transcription-fr\/"},"modified":"2021-04-23T13:41:55","modified_gmt":"2021-04-23T13:41:55","slug":"comment-creer-speaker-vector","status":"publish","type":"post","link":"https:\/\/wp-staging.amberscript.com\/fr\/blog\/comment-creer-speaker-vector\/","title":{"rendered":"Comment cr\u00e9er des \u00ab speaker vector \u00bb aux fichiers audio pour la transcription ?"},"content":{"rendered":"\n<p><em>Ce blog traite du processus de diarisation, qui consiste \u00e0 cr\u00e9er des \u00ab&nbsp;speaker vector &nbsp;\u00bb \u00e0 un fichier audio pour une transcription. Il d\u00e9crit rapidement les techniques pour travailler avec des \u00ab&nbsp;speaker vector&nbsp;\u00bb et vous donne un moyen facile de l\u2019ex\u00e9cuter \u00e0 l\u2019aide de notre outil.<\/em><\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Qu\u2019est ce que la diarisation ?<\/h2>\n\n\n\n<p>Ajouter des balises de locuteurs \u00e0 une transcription ou r\u00e9pondre \u00e0 la question \u00ab&nbsp;qui parle quand ?&nbsp;\u00bb est un principe appel\u00e9 la diarisation.<\/p>\n\n\n\n<p>Cette t\u00e2che n\u2019est pas aussi facile qu\u2019il n\u2019y para\u00eet, car les algorithmes n\u2019ont presque pas le m\u00eame niveau de compr\u00e9hension du son que nous. Il s\u2019agit de trouver le nombre de locuteurs et le moment o\u00f9 ils parlent en utilisant le signal de l\u2019onde sonore.<\/p>\n\n\n\n<p>C\u2019est \u00e9galement une \u00e9tape n\u00e9cessaire dans les syst\u00e8mes de reconnaissance vocale automatique, car elle nous permet d\u2019organiser la transcription du texte et d\u2019avoir des informations suppl\u00e9mentaires sur l\u2019audio.<\/p>\n\n\n\n<p>Chez Amberscript, nous avons analys\u00e9 diff\u00e9rentes approches et int\u00e9gr\u00e9 la meilleure dans notre produit. Dans cet article, vous trouverez quelques \u00e9l\u00e9ments sur les techniques existantes, suivis d\u2019un petit guide sur la fa\u00e7on de cr\u00e9er des \u00ab&nbsp;speaker vector&nbsp;\u00bb \u00e0 l\u2019aide de notre outil.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Pourquoi la diarisation est-elle une t\u00e2che compliqu\u00e9e ?<\/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\/09\/Diagramme-de-pipeline-de-diarisation.png\" alt=\"\" title=\"Diagramme de pipeline de diarisation\"\/><\/figure>\n<\/div>\n\n\n<p>Cr\u00e9er des \u00ab&nbsp;speaker vector&nbsp;\u00bb n\u2019est pas facile, car cela implique de nombreuses d\u2019\u00e9tapes. D\u00e9crivons rapidement le pipeline habituel.<\/p>\n\n\n\n<p>Tout d\u2019abord, vous devez diviser l\u2019audio en segments de discours. Cela signifie supprimer les parties sans parole et diviser les segments audio apr\u00e8s chaque changement d\u2019interlocuteur, de sorte que vous vous retrouvez avec des segments impliquant un seul locuteur uniquement.<\/p>\n\n\n\n<p>Apr\u00e8s le fractionnement, vous devez trouver un moyen de regrouper les segments appartenant au m\u00eame locuteur sous le m\u00eame tag de locuteur. Cette t\u00e2che est elle-m\u00eame divis\u00e9e en plusieurs \u00e9tapes.<\/p>\n\n\n\n<p>Vous devez extraire un \u00ab&nbsp;speaker vector&nbsp;\u00bb pour les segments, puis regrouper les \u00ab&nbsp;speaker vector&nbsp;\u00bbpour enfin les regrouper dans le m\u00eame cluster sous la m\u00eame balise de locuteur. La difficult\u00e9 de cette t\u00e2che est \u00e0 l\u2019origine du&nbsp;<a href=\"https:\/\/arxiv.org\/pdf\/1906.07839.pdf\" target=\"_blank\" rel=\"noopener\">d\u00e9fi de diarisation appel\u00e9 DIHARD<\/a>.<\/p>\n\n\n\n<p>Passons maintenant \u00e0 l\u2019extraction desdits \u00ab&nbsp;speaker vector&nbsp;\u00bb.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">La diarisation automatique<\/h2>\n\n\n\n<p>Habituellement, la cr\u00e9ation des segments n\u2019est pas la partie la plus compliqu\u00e9e. C\u2019est ce qu\u2019on appelle la d\u00e9tection d\u2019activit\u00e9 de parole (DAP) ou la d\u00e9tection d\u2019activit\u00e9 vocale (DAV). Cela se fait g\u00e9n\u00e9ralement en utilisant un certain seuil sur l\u2019activit\u00e9 \u00e0 un moment donn\u00e9 sur l\u2019audio.<\/p>\n\n\n\n<p>Le plus difficile est de cr\u00e9er des \u00ab&nbsp;speaker vector&nbsp;\u00bb \u00e0 partir des segments obtenus. Pour cela, vous pouvez v\u00e9rifier diff\u00e9rentes techniques pour extraire le \u00ab&nbsp;speaker vector&nbsp;\u00bb (appel\u00e9 int\u00e9gration du locuteur) dans le tableau ci-dessous:<\/p>\n\n\n<div class=\"flex_column av_one_full  flex_column_div av-zero-column-padding first  avia-builder-el-0  el_before_av_one_full  avia-builder-el-first  \" style=\"border-radius: 0px;\">\n<div class=\"av-special-heading av-special-heading-h1  blockquote modern-quote modern-centered  avia-builder-el-1  avia-builder-el-no-sibling  av-inherit-size \" style=\"padding-bottom: 10px; font-size: 40px;\">\n<table class=\"avia-table avia-data-table avia-table-1  avia-builder-el-22  el_after_av_textblock  el_before_av_textblock  avia_pricing_default \" style=\"font-size: 13px;\">\n<tbody>\n<tr class=\"avia-heading-row\">\n<th class=\"\">NOM<\/th>\n<th class=\"\">Outil interne<\/th>\n<\/tr>\n<tr class=\"\">\n<td class=\"\">i-vectors<\/td>\n<td class=\"\">Mod\u00e8les statistiques<\/td>\n<\/tr>\n<tr class=\"\">\n<td class=\"\">x-vectors<\/td>\n<td class=\"\">R\u00e9seaux de neurones \u00e0 temporisation<\/td>\n<\/tr>\n<tr class=\"\">\n<td class=\"\">d-vectors<\/td>\n<td class=\"\">R\u00e9seaux de neurones r\u00e9currents<\/td>\n<\/tr>\n<tr class=\"\">\n<td class=\"\">ClusterGAN<\/td>\n<td class=\"\">R\u00e9seaux antagonistes g\u00e9n\u00e9ratifs<\/td>\n<\/tr>\n<\/tbody>\n<\/table><\/div><\/div>\n\n\n<p>La liste compl\u00e8te serait beaucoup plus longue, mais on peut la limiter \u00e0 ces techniques qui sont les plus courantes.<\/p>\n\n\n\n<p>\u00abLe I-vector est bas\u00e9 sur des cha\u00eenes de Markov cach\u00e9es sur des mod\u00e8les de m\u00e9lange gaussien: deux mod\u00e8les statistiques pour estimer le changement de locuteur et d\u00e9terminer les \u00ab&nbsp;speaker vector&nbsp;\u00bb sur la base d\u2019un ensemble de locuteurs connus. Il s\u2019agit d\u2019une technique h\u00e9rit\u00e9e qui peut encore \u00eatre utilis\u00e9e<\/p>\n\n\n\n<p>\u00ab&nbsp;Les syst\u00e8mes X-vector et d-vectors sont bas\u00e9s sur des r\u00e9seaux neuronaux form\u00e9s pour reconna\u00eetre un ensemble de locuteurs. Ces syst\u00e8mes sont meilleurs en termes de performances, mais n\u00e9cessitent plus de donn\u00e9es, d\u2019entra\u00eenement et de configuration. Leurs fonctionnalit\u00e9s sont utilis\u00e9es comme \u00ab&nbsp;speaker vector&nbsp;\u00bb.<\/p>\n\n\n\n<p>ClusterGAN va plus loin et tente de transformer un \u00ab&nbsp;speaker vector&nbsp;\u00bb existant en un autre qui contient de meilleures informations en utilisant 3 r\u00e9seaux de neurones en comp\u00e9tition les uns contre les autres.<\/p>\n\n\n\n<p>Lorsque cette \u00e9tape est termin\u00e9e, nous nous retrouvons avec des \u00ab&nbsp;speaker vector&nbsp;\u00bb pour chaque segment.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Regroupement des \u00ab&nbsp;speaker vector&nbsp;\u00bb<\/h2>\n\n\n\n<p>Apr\u00e8s avoir obtenu ces \u00ab&nbsp;speaker-vector&nbsp;\u00bb, vous devez les regrouper. Cela signifie qu\u2019ils faut les regrouper s\u2019ils sont similaires, donc susceptibles d\u2019appartenir au m\u00eame locuteur.<\/p>\n\n\n\n<p>Le probl\u00e8me \u00e0 cette \u00e9tape est que vous ne connaissez pas n\u00e9cessairement le nombre d\u2019interlocuteurs pour un fichier (ou un ensemble de fichiers) donn\u00e9, vous ne savez donc pas combien de clusters vous souhaitez obtenir. Un algorithme peut essayer de le deviner, mais peut se tromper.<\/p>\n\n\n\n<p>Encore une fois, plusieurs algorithmes existent et peuvent \u00eatre utilis\u00e9s pour effectuer cette t\u00e2che, les plus courants sont donc inclus dans le tableau ci-dessous:<\/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>NOM<\/th><th>OUTIL INTERNE<\/th><\/tr><\/thead><tbody><tr><td>K-means\t<\/td><td>Clustering it\u00e9ratif<\/td><\/tr><tr><td>PLDA<\/td><td>\tMod\u00e8les statistiques<\/td><\/tr><tr><td>UIS-RNN<\/td><td>R\u00e9seau neuronal r\u00e9current<\/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 fait r\u00e9f\u00e9rence \u00e0 une technique de notation utilis\u00e9e dans un autre algorithme.<\/a>&nbsp;K-means est g\u00e9n\u00e9ralement la m\u00e9thode standard pour le clustering, mais si vous devez d\u00e9finir une distance entre deux \u00ab&nbsp;speaker vector&nbsp;\u00bb, PLDA est en fait plus appropri\u00e9 dans ce cas.<\/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 est une technique r\u00e9cente qui permet le d\u00e9codage en ligne<\/a>, en ajoutant de nouveaux interlocuteurs au fur et \u00e0 mesure de leur apparition et qui est tr\u00e8s prometteuse.<\/p>\n\n\n\n<p>Apr\u00e8s l\u2019\u00e9tape du regroupement, vous pouvez ajouter les balises des locuteurs aux segments qui appartiennent au m\u00eame cluster, de sorte que vous vous retrouvez avec des balises pour chaque segment.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Que reste-t-il \u00e0 faire apr\u00e8s la diarisation pour une transcription compl\u00e8te?<\/h2>\n\n\n\n<p>Lorsque cette \u00e9tape est termin\u00e9e, nous nous retrouvons avec des \u00ab&nbsp;speaker vector&nbsp;\u00bb pour chaque segment.<\/p>\n\n\n\n<p>La sortie de la transcription sera alors une transcription compl\u00e8te avec les mots du fichier audio, plus les locuteurs associ\u00e9s \u00e0 chaque partie du texte.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Comment ajouter des \u00ab&nbsp;speaker vector&nbsp;\u00bb \u00e0 l\u2018aide de l\u2019outil Amberscript ?<\/h2>\n\n\n\n<p>Maintenant, sur la partie r\u00e9elle, comment pouvez-vous ajouter lesdits \u00ab&nbsp;speaker vector&nbsp;\u00bb sans avoir \u00e0 effectuer toutes les \u00e9tapes techniques ci-dessus?<\/p>\n\n\n\n<p>Vous pouvez simplement vous rendre sur&nbsp;<a href=\"https:\/\/wp-staging.amberscript.com\/fr\/\">notre site Web<\/a>&nbsp;et vous connecter. Lorsque cela sera fait, vous pourrez t\u00e9l\u00e9charger un fichier et s\u00e9lectionner le nombre de locuteurs (pour une meilleure pr\u00e9cision), puis laisser l\u2019algorithme fonctionner!<\/p>\n\n\n\n<p>Vous n\u2019avez pas \u00e0 vous soucier de la technique \u00e0 choisir. Apr\u00e8s quelques minutes, votre fichier sera enti\u00e8rement transcrit et vous pourrez v\u00e9rifier dans l\u2019\u00e9diteur si les \u00ab&nbsp;speaker vector&nbsp;\u00bb ont \u00e9t\u00e9 correctement ajout\u00e9es.<\/p>\n\n\n\n<p>Vous pouvez m\u00eame corriger les erreurs si vous en trouvez, puis t\u00e9l\u00e9charger votre transcription pr\u00eate pour la publication.<\/p>\n\n\n\n\n\n\n<h2 class=\"wp-block-heading\">Conclusion<\/h2>\n\n\n\n<p>Pour conclure, disons qu\u2019il existe de nombreuses techniques de diarisation disponibles et que ce processus est vraiment compliqu\u00e9, mais nous avons cr\u00e9\u00e9 un outil utilisant la meilleure technique disponible pour vous permettre de cr\u00e9er des \u00ab&nbsp;speaker vector&nbsp;\u00bb \u00e0 vos fichiers audio afin que vous puissiez obtenir la meilleure transcription.<\/p>\n\n\n\n<p>Vous pourriez \u00e9galement \u00eatre int\u00e9ress\u00e9 par cette lecture:<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li><a href=\"https:\/\/wp-staging.amberscript.com\/fr\/blog\/comment-transcrire-audio-en-texte\/\">Comment transcrire un audio : 3 fa\u00e7ons de convertir l\u2019audio en texte<\/a><\/li><\/ul>\n\n\n\n<p><\/p>\n","protected":false},"excerpt":{"rendered":"<p><b>Comment cr\u00e9er des \u00ab\u00a0speaker vector\u00a0\u00bb aux fichiers audio ?<\/b><\/p>\n<p>Ce blog traite du processus de diarisation, qui consiste \u00e0 cr\u00e9er des \u00ab\u00a0speaker vector\u00a0\u00bb \u00e0 un fichier audio pour une transcription.<\/p>\n","protected":false},"author":70,"featured_media":13907,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"inline_featured_image":false,"footnotes":""},"categories":[143],"tags":[],"class_list":["post-16377","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-blog"],"acf":{"text":"","link":null,"questions":null},"_links":{"self":[{"href":"https:\/\/wp-staging.amberscript.com\/fr\/wp-json\/wp\/v2\/posts\/16377","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/wp-staging.amberscript.com\/fr\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/wp-staging.amberscript.com\/fr\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/wp-staging.amberscript.com\/fr\/wp-json\/wp\/v2\/users\/70"}],"replies":[{"embeddable":true,"href":"https:\/\/wp-staging.amberscript.com\/fr\/wp-json\/wp\/v2\/comments?post=16377"}],"version-history":[{"count":0,"href":"https:\/\/wp-staging.amberscript.com\/fr\/wp-json\/wp\/v2\/posts\/16377\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/wp-staging.amberscript.com\/fr\/wp-json\/wp\/v2\/media\/13907"}],"wp:attachment":[{"href":"https:\/\/wp-staging.amberscript.com\/fr\/wp-json\/wp\/v2\/media?parent=16377"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/wp-staging.amberscript.com\/fr\/wp-json\/wp\/v2\/categories?post=16377"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/wp-staging.amberscript.com\/fr\/wp-json\/wp\/v2\/tags?post=16377"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}