Facebook Twitter Google

SPEECH TRAX : Suivi Vocal Des Locuteurs Célèbres
du paysage audiovisuel Français

Félicien Vallet, Jean Carrive, Hakim Nabi, Mathieu Derval

Ce travail a été réalisé en collaboration avec Jim Uro (Université de Technologie de Compiègne) et Jérémy Andriamakaoly (Télécom ParisTech) lors de leurs stages à l'Ina.

original

RÉSUMÉ

Nous décrivons ici le système Speech Trax qui vise à analyser le contenu audio de documents télévisés et radiophoniques. En particulier, nous nous concentrons sur la tâche de reconnaissance de locuteurs, très utile à des fins d'indexation. Tout d'abord, nous détaillons l'architecture globale du système et montrons les résultats obtenus pour une expérience à grande échelle (environ 1 300 locuteurs). Ensuite, nous présentons démonstrateur Speech Trax qui rassemble, en plus de ceux obtenus pour la reconnaissance de locuteurs, les résultats de différentes techniques de traitement automatique de la parole (segmentation et regroupement de locuteurs, transcription de la parole, etc.). Enfin, nous fournissons un aperçu des performances obtenues et proposons des pistes d'amélioration.

1 Introduction

Comme cela est présenté dans [8] la reconnaissance de locuteur est un sujet de recherche de première importance et cela depuis plusieurs dizaines d'années. Cependant, le challenge que représente le traitement de données massive ou big data commence tout juste a être relevé. Les auteurs proposent par exemple dans [7] une comparaison statistique d'énonciations accompagnée de méthode de hashing (KLSH : kernelized locality-sensitive hashing) pour reconnaître des locuteurs au sein d'une population très importante (environ 10 000 locuteurs). De façon similaire, dans [17] est présenté un système basé sur l'approche i-vecteur, l'état de l'art en matière de reconnaissance de locuteurs et sur les méthodes de hashing LSH. La combinaison de ces technologies permet d'accélérer la comparaison d'une cible pour un référentiel de 1 000 modèles de voix sans pour autant dégrader trop les performances. Enfin, il faut noter les challenges organisées par l'Institut des Standards et Technologies Américain NIST, et en particulier les campagnes d'évaluation Speaker Recognition Evaluation et i-vector Machine Learning Challenge. Cependant, dans le cas présentés précédemment les segments de parole proviennent soit de base de données spécialisées  [7], de données téléphoniques pour les évaluations NIST ou de Tech Talks postés sur YouTube [17].  

La reconnaissance de locuteurs dans un contexte audiovisuel commence toutefois à attirer l'attention. Ainsi dans [6] les auteurs lient environ 1 800 heures de télévision néerlandaise à l'aide de technique de segmentation et regroupement de locuteurs (speaker diarization). De la même façon, le prototype développé par la BBC rassemble un total de 3 années d'audio (soit environ 70 000 programmes). Le module de reconnaissance de locuteurs du prototype est présenté dans [14]. Dans ce cas, des modèles de voix sont construits pour 780 personnes à l'aide de modèles de mélange gaussiens (GMM) et les comparaison avec un locuteur cible se font à l'aide de la divergence de Kullback-Leibler implémentée dans un index LSH. Enfin, un dernier exemple d'utilisation de données audiovisuelles pour la reconnaissance de locuteurs peut être trouvé dans [3]. Il s'agit en particulier des données du challenge REPERE [4]. Les auteurs étudient en particulier la mise en place d'un dispositif i-vecteur à travers un protocole visant à la reconnaissance pour un dictionnaire de 533 locuteurs.

2 Reconnaissance de Locuteurs

Dans cette section, nous nous concentrons sur la fonction de reconnaissance de locuteurs de notre démonstrateur. En particulier, nous décrivons comment notre dictionnaire de locuteurs est créé et détaillons les choix de mise en œuvre effectués pour le système de reconnaissance lui-même.

2.1 Création du dictionnaire de locuteurs

La création d'ensembles de bases de données multimédias à grande échelle est devenue un enjeu scientifique en soi. En effet, l'annotation manuelle de centaines ou milliers d'heures de vidéo et/ou audio se révèle être impossible en pratique. Nous présentons ici l'approche semi-automatique que nous avons suivie pour construire ce qui est, à notre connaissance, la plus grande base de locuteurs constituée à partir de données audiovisuelles.

2.1.1 Collecte Automatique de Segments de Parole

Comme décrit dans nos précédents travaux [16], nous proposons de recueillir automatiquement des segments de parole pour les locuteurs du PAF (Paysage Audiovisuel Français). Pour cela nous nous basons sur l'hypothèse simpliste qui stipule que lors d'un journal télévisé, lorsque le nom d'une personne apparaît à l'écran, cette personne est en train de parler (voir Figure 1). Un système de reconnaissance optique de caractères (OCR : Optical Character Recognition) présenté dans [11] est utilisé pour détecter les noms apparaissant à l'écran. Ensuite, une comparaison entre le texte retranscrit et une liste de personnes de référence issue du thésaurus de l'Ina est effectuée en utilisant la distance de Levenshtein. Si une correspondance est trouvée, le tour de parole correspondant obtenu en utilisant l'outil LIUM Speaker Diarization [15] est associé à l'identité de la personne.

Figure 1. Association entre nom de personnalité et segment de parole.

original

Un total d'environ 5000 heures de journaux télévisés et magazines ont été traitées de cette façon. Dans [16] nous présentons une analyse approfondie des erreurs occasionnées par cette approche. Cette analyse souligne que l'hypothèse est correcte dans la plupart des cas (environ 72% du temps) mais aussi que de grandes disparités sont observées entre locuteurs, seule une partie d'entre eux montrant assez de temps de parole pour produire un modèle de voix fiable. Pour contrebalancer le dictionnaire de locuteurs ainsi produit, nous proposons de recueillir des segments de parole supplémentaires pour des personnalités qui ne passent pas souvent à la télévision. Pour cela, nous utilisons un système automatisée de requête sur Google Video. Les vidéos résultats de la requête sont téléchargés et soumises à l'outil LIUM Speaker Diarization. Ensuite, les segments de la personne avec le temps de parole le plus long sont étiquetés avec le nom de la personnalité visée.

2.1.2 Validation manuelle du dictionnaire de locuteurs

Les méthodes de reconnaissance reposent très largement sur la qualité des données d'entraînement. Malheureusement, les méthodes automatisées décrites précédemment pour la constitution d'un dictionnaire de locuteurs ne permettent pas d'atteindre le niveau de qualité nécessaire. Par conséquent, une interface web a été conçue pour valider manuellement les segments de parole attribué à une personnalité donnée. Celle-ci nous permet de confirmer ou infirmer pour chaque segment recueilli l'identité du locuteur supposé. La Figure 2 propose une illustration de cette interface.

Figure 2. Interface de validation des segments de parole.

original

À la fin du processus de validation, un total de 2 290 personnalités constituent notre dictionnaire de locuteurs. Cependant,il faut noter que malgré nos efforts pour le réduire, ces dictionnaires sont par nature fortement déséquilibrés. En plus du nombre de fichiers et du temps cumulé au total et en moyenne, le Tableau 1 présente le nombre de sessions. Nous qualifions comme appartenant à une même session acoustique, les segments de parole d'une même personne pour un même programme (par exemple, toutes les interventions de David Pujadas pour le journal télévisé du 25 avril 2014). Cette information est d'une importance capitale. En effet pour l'évaluation du processus de reconnaissance de locuteurs, les segments appartenant à une session ne peuvent pas être utilisés à la fois dans l'ensemble d'apprentissage et dans l'ensemble de test. Cela conduirait à des résultats biaisée car les mêmes conditions acoustiques seraient à la fois apprises et évaluées.

Tableau 1. Composition du dictionnaire de locuteurs.

nombre de sessions

nombre de segments

durée totale

total

17 438

32 053

~120 heures

moyenne par locuteur

7,6

14,0

~3 minutes 10 secondes

2.2 Méthode Implémentée

Les techniques à l'état de l'art pour la reconnaissance de l'art pour la reconnaissance de locuteurs reposent désormais sur le paradigme i-vecteur. Comme indiqué dans [1], un i-vecteur est une représentation compacte d'une énonciation d'un locuteur après projection dans un espace de variabilité totale de faible dimension. Ce sous-espace est obtenu par analyse factorielle et ne fait pas de distinction entre l'information propre au locuteur et celle due au canal/session. Le supervecteur GMM dépendant du locuteur et du canal, M , résultat de la concaténation des moyennes GMM peut être défini comme :

M = m + T w

avec m le supervecteur moyen issu du modèle du monde (UBM : Universal Background Model) et capturant l'information indépendant du locuteur et du canal/session. La matrice de faible rang T définit l'espace de variabilité totale et le vecteur w représente le facteur dépendant du locuteur et du canal dans l'espace de variabilité totale. Ce dernier est également appelé i-vecteur.

Nous avons choisi d'utiliser un système de reconnaissance similaire à celui présenté dans [3]. Nous nous basons donc sur l'utilisation du toolkit ALIZE v3.0 [9]. Cependant, à la différence de [3] et à la suite d'expériences préliminaires, nous avons décidé d'adopter la méthode de scoring PLDA (Probabilistic Linear Discriminant Analysis) définit dans [13]. Le modèle du monde (UBM), la matrice de variabilité totale T et les matrices liées à l'utilisation de la méthode PLDA ont été apprises sur des données provenant du challenge REPERE [4].

3 expérience en Monde Fermé

De manière à évaluer le système de reconnaissance de locuteurs décrit précédemment, nous avons réalisé une expérience en mode fermé à partir de notre dictionnaire de locuteurs.

3.1 Protocole

Dans une évaluation en mode fermé, tous les locuteurs cibles possèdent possèdent un modèle de voix correspondant appris préalablement. Pour cela, le dictionnaire de locuteurs est divisé en deux parties, la première dédiée à la création de modèles de voix et l'autre à la réalisation de tests. Contrairement au protocole présenté dans [17], nous prenons grand soin de ne pas mélanger les segments appartenant à une même session à la fois dans l'ensemble d'apprentissage et dans l'ensemble de test. De plus, pour garantir un volume équilibré de données entre les différents intervenants, nous limitons le nombre maximum de sessions considérées par personne à 10 au total. Nous attribuons ensuite les sessions et les segments de la même façon que dans [3], ce qui signifie qu'un minimum de 30 secondes et un maximum de 150 secondes sont fixés pour la phase d'apprentissage. Ainsi, avec toutes ces contraintes, le nombre de sessions à ajouter dans l'ensemble d'apprentissage permettant la construction des modèles i-vecteurs est déterminé comme suit pour un locuteur i :

n train sessions i = m i n 5 ; n total sessions 2

avec 3 0 sec. j = 1 n train sessions i k = 1 n segments j d u r a t i o n seg (k) 1 5 0 sec.

n test sessions i = n total sessions i - n train sessions i


Il est à noter qu'une grande variance est observée dans le nombre de segments pouvant appartenir à une session. Ainsi, pour assurer que le processus est statistiquement pertinent, nous générons aléatoirement 5 ensembles d'apprentissage et de test et moyennons les performances obtenues.

3.2 Résultats

Le Tableau 2 présente les résultats moyens obtenus avec notre système de reconnaissance de locuteurs pour 1 290 intervenants suivant les conditions décrites précédemment. Les scores sont calculés à la fois au niveau du segment et au niveau de la session.

Tableau 2. Performance du système de reconnaissance de locuteurs.

EER

précision

rappel

précision@10

rappel@10

segment

7,3%

63,6%

65,9%

89,4%

83,5%

session

6,2%

69,5%

67,4%

94,8%

84,4%

En plus des métriques classiques précision, rappel et taux d'erreur égal (EER : Equal Error Rate, taux pour lequel les erreurs d'acceptation et de rejet sont égales) nous proposons les mesures précision@10 et rappel@10 . Celles-ci permettent de mesurer si un locuteur cible se situe parmi les 10 premiers résultats renvoyés par le système. Il s'agit d'une approche légèrement différente de la métrique classique P @ n qui est basée sur les pages de résultats de moteur de recherche web et qui est défini par P @ n = r / n avec r le nombre de documents pertinents renvoyés dans les n premiers résultats.

Les résultats mettent en évidence le fait que l'identification par session fonctionne mieux que par segment, ce qui est en adéquation avec les résultats obtenus dans [3] à l'aide d'une segmentation de référence. En outre, on peut noter que par rapport à la métrique classique, précision@10 et rappel@10 mettent en évidence le fait que le locuteur cible est la plupart du temps trouvé parmi les 10 premiers candidats renvoyés par le système.

4 Le  Démonstrateur Speech Trax

Le but du démonstrateur Speech Trax est de proposer de nouvelles façons d'explorer les collections audiovisuelles en se basant sur les interventions orales de personnalités du Paysage Audiovisuel Français. D'un point de vue documentaire, il s'agit également de proposer une première indexation, brute et imparfaite, des contenus conservés à l'Ina afin d'aider à leur description détaillée. Pour cela, nous utilisons une approche similaire à celle présentée dans [14]. Comme le montre le diagramme de la Figure 3, Speech Trax repose sur diverses techniques de traitement automatique de la parole: discrimination parole/musique, segmentation et regroupement en locuteurs, reconnaissance de locuteurs et transcription de la parole.

Figure 3. Architecture du démonstrateur Speech Trax.

original

4.1 Choix du corpus

Un corpus d'environ 250 heures de journaux télévisés et radiophoniques et de magazines a été sélectionné. Il provient de de 6 chaînes publiques: 3 pour la télévision (France 2, France 5, France 24) et 3 pour la radio (France Inter, France Info, France Culture). Le choix a été fait de traiter des données du mois de mars 2014 en raison des événements importants qui ont eu lieu à cette époque: élections locales françaises, écoutes téléphoniques de l'ancien président Sarkozy,  invasion de l'Ukraine par les troupes russes, disparition du vol Malaysia Airlines 370, etc. Les programmes ont été découpés en tranches de 15 minutes à la fois de réduire les erreurs de segmentation et regroupement de locuteurs et pour faciliter la navigation à l'intérieur des média pour l'utilisateur. De plus, les séquences publicitaires ont été manuellement identifiées et éliminées, ce qui est l'unique opération manuelle réalisée.

4.2 Mise en Œuvre

Comme décrit dans la Figure 3, la première étape du démonstrateur consiste à identifier les zones de parole en exécutant un algorithme de discrimination parole/musique. Pour cela, nous avons utilisé l'approche proposée dans [10]. Une fois les pistes de paroles identifiées, l'outil de LIUM Speaker Diarization [15] est utilisé pour fournir une segmentation et un regroupement en locuteurs pour les programmes analysés. Il est ensuite possible de soumettre chacun des locuteurs ainsi circonscrit au système de reconnaissance décrit plus haut.

Cependant, il est important de considérer que dans ce cas les segments de parole testés sont produits par la segmentation et le regroupement en locuteurs, ce qui est susceptible d'introduire des erreurs. A partir du dictionnaire décrit plus haut, un sous-ensemble 1 783 intervenants possédant au moins 45 secondes de parole est utilisé pour constituer les modèles de voix. Enfin, nous utilisons le système commercial VoxSigma de Vocapia Research pour la génération de transcription automatique de la parole.

4.3 Navigation

Speech Trax est une application web responsive et flat-design. Toutes les actions sont accessiblessur une page unique. Le lecteur vidéo utilisé est amalia.js, le player vidéo HTML5 open-source de l'Ina [5]. La Figure 4 fournit une vue du player amalia.js Speech Trax permet à un utilisateur de naviguer à l'intérieur d'un corpus de documents radio et télé selon les interventions de locuteurs célèbres. Pour cela, l'utilisateur peut entrer le nom d'une personne dont il souhaite retrouver les interventions dans la barre de recherche. Un module d'auto-complétion lui montre si cette personne a été identifiée dans le corpus. Ensuite, l'utilisateur a juste besoin de sélectionner l'extrait de son choix pour écouter l'intervention du locuteur. Pour les données télévisuelles, les images illustratives sont extraites automatiquement en fonction des interventions de la personne. Une fois un programme affiché à l'écran, l'utilisateur peut aussi naviguer à travers les médias et accéder à toutes les interventions d'un locuteur identifié en cliquant sur la loupe à côté de son nom. Enfin, à la droite du nom, l'utilisateur peut également prendre connaissance de la confiance avec laquelle la décision à été prise par le système de reconnaissance.

Figure 4. Vue principale du démonstrateur Speech Trax.

original

4.4 Performances

Le traitement du corpus décrit plus haut a permis l'identification de 533 locuteurs uniques, la plupart d'entre-eux étant des présentateurs, chroniqueurs, sportifs, hommes politiques ou experts. Il est à noter que le seuil de validation a été volontairement fixé assez élevé afin d'améliorer l'expérience utilisateur et ne pas proposer de résultats trop bruités. Pour une utilisation professionnelle, ce seuil serait réglé plus bas afin d'assurer une plus grande exhaustivité des résultats. De façon générale, de meilleures performances semblent être obtenues pour les données radio que pour celles issues de la télévision. Un argument pourrait être que peut-être la parole à la radio est plus propre car l'auditeur ne dispose d'aucun support visuel. De plus, il est intéressant de noter que, comme indiqué dans le Tableau 3, il y a en moyenne moins de locuteurs dans les programmes de radio traitées que dans leurs ceux de télévision.

Tableau 3. Nombre de locuteurs, identifiés ou non, en fonction de la chaîne et par tranche de 15 minutes (les 3 premières sont des chaînes TV, les 3 dernières des chaînes radio).

FR2

FR5

F24

FIT

FIF

FCR

nombre de locuteurs

19,1

9,0

11,8

11,7

12,5

8,5

La répartition des locuteurs identifiés sur les différentes chaînes est également intéressante. Le Tableau 4 révèle que la grande majorité des locuteurs n'est présente que sur une unique chaîne. A regarder de plus près, cette population est essentiellement constituée de présentateurs, journalistes, chroniqueurs, etc. A l'autre extrémité du spectre, quelques personnalités sont présentes sur toutes les chaînes. Il est intéressant de noter que toutes ces personnalités sont des hommes et femmes politiques : François Hollande, Laurent Fabius, Jean-Claude Gaudin, Marine Le Pen, Jean-François Copé, etc. Il faut également garder en tête que les politiques sont parmi les locuteurs avec le plus de segments dans le dictionnaires et donc parmi ceux les plus à même à être reconnus.

Tableau 4. Répartition des locuteurs identifiés par chaînes analysées.

1 chaîne

2 chaînes

3 chaînes

4 chaînes

5 chaînes

6 chaînes

nombre de locuteurs

389

85

33

15

8

3

Enfin, en utilisant la désormais célèbre terminologie du zoo introduite dans [2], on peut remarquer que plusieurs intervenants semblent être des loups. Cela signifie qu'ils sont particulièrement prompts à être pris pour d'autres locuteurs. Autrement dit, leur segments de parole sont très souvent susceptible d'être considérés comme étant ceux d'un autre. Des personnalités telles que Benjamin Millepied, Manu Payet ou Béatrice Idiard-Chamois semblent certainement être des loups dans le cadre de notre démonstrateur. Selon toute vraisemblance, cela s'explique par des modèles de parole bruités. Enfin, il est également intéressant de noter que de nombreuses erreurs sont causées par la parole téléphonique. Par exemple, le locuteur Alain Cayzac, qui doit posséder des segments de paroles issus de conversation ou interviews téléphoniques dans son modèle de la parole, est souvent identifié quand une personne est interviewée au téléphone. A l'avenir, une simple identification de la largeur de bande du signal audio pourrait facilement permettre de rejeter ces segments.

5 Conclusions et Perspectives

Se fondant sur diverses techniques de l'état de l'art en matière de traitement automatique de la parole, Speech Trax est une première tentative pour indexer et identifier des locuteurs célèbres dans le contexte d'archivage de l'Ina. Les résultats sont très encourageants. Les utilisations futures de Speech Trax pourraient permettre aux utilisateurs de naviguer différemment dans des fonds archives. Par exemple en générant de nouvelles requêtes: trouver les médias dan lesquels une personne A parle avec une personne B ou chercher les contenu dans lesquels une personne C parle d'un sujet D, etc.  

Toutefois, une amélioration des performances pourrait être obtenue en utilisant la multimodalité pour confirmer, corriger ou invalider l'identité de locuteurs reconnus. Les technologies telles que la transcription de la parole, la reconnaissance optique de caractères ou la reconnaissance de visages pourraient être directement intégrées pour améliorer les résultats d'identification comme cela se fait dans la tâche Multimodal person discovery in broadcast TV [12]. En outre, comme proposé dans [14] , l'Ina pourrait également mettre en œuvre des techniques de crowdsourcing pour étendre la taille du dictionnaire de locuteur, mais aussi pour le nettoyer si nécessaire, permettant ainsi une amélioration constante du système.

Bibliographie

[1] N. Dehak, P. Kenny, R. Dehak, P. Dumouchel, and P. Ouellet. Front-end factor analysis for speaker verification. IEEE Transactions on Audio, Speech, and Language Processing , 19(4):788 – 798, 2011.

[2] G. Doddington, W. Liggett, A. Martin, M. Przybocki, and D. Reynolds. Sheep, goats, lambs and woves: A statistical analysis of speaker performance in the nist 1998 speaker recognition evaluation. In International Conference on Spoken Language Processing , Sydney, Australia, december 1998.

[3] C. Fredouille and D. Charlet. Analysis of i-vector framework for speaker identification in tv-shows. In Interspeech , Singapore, september 2014.

[4] A. Giraudel, M. Carré, V. Mapelli, J. Kahn, O. Galibert, and L. Quintard. The REPERE Corpus : a multimodal corpus for person recognition. In International Conference on Language Resources and Evaluation , Istanbul, Turkey, may 2012.

[5] N. Hervé, P. Letessier, M. Derval, and H. Nabi. Amalia.js : an open-source metadata driven html5 multimedia player. In ACM Conference on Multimedia , Brisbane, Australia, october 2015.

[6] M. Huijbregts and D. van Leeuwen. Towards automatic speaker retrieval for large multimedia archives. In International Workshop on Automated Information Extraction in Media Production , Florence, Italy, october 2010.

[7] W. Jeon and Y.-M. Cheng. Efficient speaker search over large populations using kernelized locality-sensitive hashing. In International Conference on Acoustics, Speech and Signal Processing , Kyoto, Japan, march 2012.

[8] T. Kinnunen and H. Li. An overview of text-independent speaker recognition: from features to supervectors. Speech Communication , 52(1):12 – 40, 2010.

[9] A. Larcher, J.-F. Bonastre, B. Fauve, K.-A. Lee, C. Lévy, H. Li, J. Mason, and J.-Y. Parfait. Alize 3.0-open source toolkit for state-of-the-art speaker recognition. In Interspeech , Lyon, France, september 2013.

[10] J. Pinquier and R. André-Obrecht. Audio indexing: Primary components retrieval - robust classification in audio documents. Multimedia Tools and Applications , 30(3):313 – 330, 2006.

[11] J. Poignant, L. Besacier, G. Quénot, and F. Thollard. From text detection in video to person identification. In International Conference on Multimedia and Expo , Melbourne, Australia, july 2012.

[12] J. Poignant, H. Bredin, and C. Barras. Multimodal person discovery in broadcast tv at mediaeval 2015. In MediaEval 2015 Workshop , Wurzen, Germany, september 2015.

[13] S. J. Prince and J. H. Elder. Probabilistic linear discriminant analysis for inferences about identity. In International Conference on Computer Vision , Rio de Janeiro, Brazil, october 2007.

[14] Y. Raimond and T. Nixon. Identifying contributors in the BBC World Service Archive. In Interspeech , Singapore, september 2014.

[15] M. Rouvier, G. Dupuy, P. Gay, E. Khoury, T. Merlin, and S. Meignier. An open-source state-of-the-art toolbox for broadcast news diarization. In Interspeech , Lyon, France, august 2013.

[16] F. Salmon and F. Vallet. An effortless way to create large-scale datasets for famous speakers. In International Conference on Language Resources and Evaluation , Reykjavik, Iceland, may 2014.

[17] L. Schmidt, M. Sharifi, and I. L. Moreno. Large-scale speaker identification. In IEEE Transactions on Acoustics, Speech and Signal Processing , Florence, Italy, may 2014.

Remerciements

Nous souhaitons ici remercier les développeurs ayant participé à ce projet, mais dont les noms ne peuvent être cités pour des raisons légales. Nous souhaitons également remercier Élisabeth Chapalain de l'Ina pour son aide pour la validation des segments de parole du dictionnaire de locuteurs ainsi que nos partenaires académiques Dr. Sylvain Meignier et Dr. Anthony Larcher du LIUM et Dr. Julien Pinquier de l'IRIT.