#19 - Diarisation et pipelines IA : Structurer le chaos sonore avec précision

Pierre Vannier (00:00.927)
Bonjour à tous et bienvenue dans un nouvel épisode du podcast « Y'a pas que la data » où l'intelligence artificielle devient un prétexte pour des conversations aussi enrichissantes qu'inspirantes. Merci encore de votre fidélité, vos écoutes, vos partages, vos retours. a de plus en plus d'écoute et ça c'est cool. Je suis Pierre Vanier, je fondateur de Flint qui est une SM spécialisée qui accompagne les entreprises dans leur projet tech data et IA. Et comme toujours, je suis accompagné de Thomas Memoun, ingénieur en machine learning et qui est pour l'occasion à Montréal.

au Québec. Alors aujourd'hui nous avons le plaisir d'accueillir Hervé Breudin qui est un expert incontournable de l'analyse audio et vidéo. Hervé est notamment spécialisé dans la, accrochez-vous, la diarisation. Alors souvent ça fait peur aux gens mais c'est une technologie qui est vraiment fascinante et qui consiste à répondre à la question qui parle et quand. Grosso modo c'est la séparation des locutaires dans les flux audio. Tu me diras si je n'ai une bêtise Hervé.

en segmentant un enregistrement audio pour identifier les différents locuteurs, la diérisation ou la voix à des applications variées, des sous-titrages, du dubbing automatique, etc. Passons par l'analyse d'interaction dans les centres d'appels. Alors, Hervé, ce qu'il a de super cool, c'est qu'Hervé, il est chercheur, ingénieur, il met maintenant aujourd'hui les CEOs de Pianote AI. Alors Pianote, il nous le dira, mais ça s'écrit P-Y-A-2-N-O-T-E.

pour le jeu de mots avec à la fois piton et pianoté. Son approche nous invite à repenser la façon dont l'IA peut enrichir nos compréhensions du monde sonore et multimodal. C'est parti pour 45 minutes ensemble. Bonjour Thomas et bonjour Hervé. Comment allez-vous messieurs ?

Thomas (01:38.692)
Salut Pierre.

Hervé Bredin (01:41.108)
Bonjour. Très bien, merci. J'ai petite précision, je suis CISO et pas CIO. Occupe-toi la science.

Thomas (01:43.396)
très très bien.

Pierre Vannier (01:48.064)
CSO Chief Science Officer. C'est ça. Désolé pour là.

Hervé Bredin (01:52.116)
Voilà exactement.

Thomas (01:54.66)
Hervé, c'est un vrai plaisir de t'avoir avec nous aujourd'hui. Est-ce que dans un premier temps tu pourrais te présenter et ensuite nous présenter un peu plus en détail, c'est de la diarisation, je ne savais même pas que ça existait ce mot en français, et nous présenter plus en détail puis à note.

Hervé Bredin (02:09.556)
Oui, bien sûr, merci. Merci pour l'invitation déjà, et merci pour l'introduction. Donc oui, je suis Yves Bredin, suis chercheur au CNRS, créateur de la bibliothèque open source Pianote et maintenant donc directeur scientifique, c'est comme ça qu'on dit en français, ou CSO en anglais, de la start-up Pianote AI. Oui, donc la diarisation, en gros, ce n'est pas un mot qui existe en français.

c'est juste une francisation du mot anglais speaker diarization avec mon accent franglais mais... En gros la traduction française de diarisation je la préfère au mot anglais parce qu'elle résume bien ce qu'est la diarisation c'est segmentation et regroupement en locuteur c'est comme ça qu'on la traduit dans les papiers scientifiques en français donc en gros c'est une technologie qui...

Pierre Vannier (02:41.986)
Il est parfait, ça va très très bien.

Hervé Bredin (03:04.116)
qui consiste à répondre à d'abord une tâche de segmentation. Donc on va segmenter en tour de parole une conversation, enregistrement tel que ce podcast. Et ensuite, chacun des segments, on va les regrouper par identité du locuteur. Donc je préfère vraiment la traduction en français si bien qu'à la fin, a effectivement qui parle quand, a tant de débuts, tant de fins identifiant du locuteur. Et ce qu'il faut bien comprendre, c'est que...

C'est un problème un peu particulier dans le sens où on ne pas à priori ni l'identité des locuteurs qui participent à la conversation, ni leur nombre. Donc par exemple dans notre conversation là, on ne pas dire entre le temps T égale 10 et T égale 30 c'est Hervé qui parle, on va dire que c'est le locuteur 1 et tous mes tours de parole vont être étiquetés en tant que locuteur 1. Donc c'est une tâche de regroupement et pas de classification comme...

on peut l'avoir par ailleurs où il va falloir dire ça c'est un chien ça c'est un chat on n'a pas des classes prédéfinies les classes c'est des locuteurs qu'on n'a pas entendu au préalable dans l'ensemble d'apprentissage. J'étais un peu long mais je voulais bien préciser le...

Pierre Vannier (04:15.363)
Non, non, c'est important. Non, non, c'est super important.

Thomas (04:15.524)
j'ai une question par rapport à ça, j'ai une question par rapport à ça, je pensais que la diarisation c'était du speech to text mais en fait c'est un peu plus profond que ça ou...

Hervé Bredin (04:25.62)
En fait c'est pas du speech to text, c'est vraiment... on ne travaille pas sur la transcription de la parole. En sortie c'est vraiment des métadonnées temps de début, temps de fin, identité du locuteur. Mais par contre ça arrive très souvent en début de chaîne de traitement de speech to text après. Donc on va commencer par segmenter en tour de parole et ensuite on va pouvoir transcrire chacun des tours de parole séparément de sorte qu'à la fin tu as effectivement une transcription enrichie.

Non seulement tu as les mots mais tu as aussi qui l'a prononcé. Et comme l'a dit Pierre, ça permet de faire des applications, de développer des applications auxquelles on ne pas vraiment résoudre si on n'a que la transcription. Par exemple, quand on a une conversation entre un patient et un docteur, si on ne pas qui est qui,

Le résumé automatique, le diagnostic automatique pourrait être faussé. Le patient pourrait dire je veux ce médicament et le résumé automatique dire que la prescription c'est ce médicament alors que c'est bien le docteur qui doit l'avoir prononcé pour faire une bonne prescription.

Pierre Vannier (05:37.029)
Si on prend une image, juste pour que nos auditeurs comprennent, que quand on parle de flux audio, il faut bien s'imaginer que tout ce qu'on est en train de dire, c'est un flux audio, c'est une rivière de mots, tous plus poétiques les uns que les autres, qui coule de nos bouches respectives. Mais en fait, quand on doit l'analyser d'un point de vue informatique pour pouvoir en récupérer le sens, etc., il faut d'abord, exactement ce que tu dis, découper.

Et puis découpé, ça peut aller loin parce que découpé il faut segmenter. Mais quelle taille de segment ? Et puis ensuite il va falloir attribuer, reconnaître et j'imagine au bout d'un moment des patterns de voix et qu'ils fassent que au bout d'un moment l'IA et votre logiciel framework pianote s'aperçoivent que c'est moi Pierre qui parle, regrouper, timestampé, donc mettre des petits zoro datages de chaque segment.

pour que ça puisse, au lieu de faire un flux, avoir quelque chose de bien structuré.

Hervé Bredin (06:38.772)
Oui c'est ça, c'est vraiment de la structuration, arrive en début de chaîne comme je le disais, ensuite on transcrit et ensuite ce qui est classiquement fait c'est des LLM qui sont appliqués sur cette transcription attribuée à un locuteur pour pouvoir faire des résumés automatiques de réunion, des diagnostics comme j'ai parlé, ça peut être aussi du doublage là où la transcription a peut-être un peu moins d'importance mais le doublage permet de...

d'automatiquement traduire une vidéo d'une langue vers une autre, on veut aussi mettre la bonne voix sur la bonne personne dans un épisode de série télé. On veut toujours systématiquement mettre la même voix sur le même acteur et donc pouvoir automatiquement trouver tous les tours de parole du même acteur. C'est ce que permet la diarisation ou la segmentation et regroupement.

Pierre Vannier (07:29.959)
segmentation, groupement. Parce que à chaque fois qu'on dit diarisation, les gens ont peur quand même. T'as remarqué ?

Hervé Bredin (07:34.036)
C'est vrai que ça peut mener à des drôles de jeu de mots aussi, mais j'en parlerai pas ici, pas devant les enfants.

Thomas (07:42.052)
Et au-delà de ça, sur la diarisation, à quoi sert Pianote dans cet univers-là ?

Hervé Bredin (07:46.644)
Pianote, c'est vraiment répondre à cette question. Qui parle quand ? Elle arrive vraiment en début de chaîne et on ne répond qu'à cette question. La librairie Pianote Open Source ne répond qu'à cette question. Elle peut être étendue pour faire par exemple l'identification du locuteur. Donc plutôt que d'avoir juste un locuteur 1, si au préalable on a un enregistrement de ma voix, on peut créer des empreintes vocales en anglais. On utilise le terme Speaker Embedding.

En gros, l'idée c'est de projeter un petit bout de ma voix dans un espace à grande dimension. Et ce point dans cet espace à grande dimension, on espère que tous mes tours de parole soient proches de ce point là et les tours de de toi, Thomas ou Pierre soient fait éloignés dans ce point là. Si bien que ensuite quand je parle, quand tu parles, quand Pierre parle, on se retrouve projeté dans cet espace.

ça permet de faire des regroupements et des comparaisons du timbre de nos voix et de nous identifier de cette façon.

Pierre Vannier (08:52.041)
J'aimerais faire un bon en arrière que tu nous racontes, le démarrage de pianote. Tu es ingénieur de recherche, tu es travaillé au CNRS ou en labo de recherche.

Hervé Bredin (09:05.012)
Mmh.

Hervé Bredin (09:12.596)
Alors, je suis actuellement encore chercheur au CNRS et j'ai les deux casquettes actuellement. moi, j'ai soutenu ma thèse en 2007. Je travaillais déjà sur les traitements automatiques de la parole et même c'était sur les visages parlants. Du coup, la combinaison de la reconnaissance du visage et de la voix et pour améliorer des tâches de biométrie, enfin de la reconnaissance biométrique.

Pierre Vannier (09:18.984)
Ok.

Hervé Bredin (09:40.436)
Avec les deux indices, la voix et le visage, ça permettait d'obtenir des meilleurs résultats que juste la voix seule ou le visage seul. Et par ailleurs, j'ai aussi travaillé à ce moment-là sur le mouvement des lèvres pour s'assurer que le mouvement des lèvres correspondait bien au son qui était produit pour éviter et détecter des attaques de type rejeu. Parce qu'à l'époque, les deepfakes n'existaient pas et donc pour qu'un usurpateur d'identité puisse se faire passer pour quelqu'un, il suffisait de montrer une photo de la personne devant une caméra.

et il n'y avait aucun moyen de faire la différence. Maintenant, a la deepfake, c'est encore plus compliqué, c'est le jeu du chat et la souris. Bref, ça c'est ce que j'ai fait pendant ma thèse et ensuite, en 2008, j'ai obtenu un poste de chargé de recherche au CNRS. Et depuis, disons, 12 ans, je travaille quasi exclusivement sur cette problématique de la diarisation.

mais j'ai toujours travaillé sur cette question de l'indexation de contenu audiovisuel soit par la voix, soit par le visage, soit par la transcription de la voix. C'est quelque chose qui m'intéresse beaucoup. Donc, j'ai commencé à travailler sur ce problème de diarisation il y a 12 ans, je dirais. Et en tant que chercheur au CNRS, ma mission, c'est de faire avancer la science, mais aussi diffuser les nouvelles connaissances que je crée.

dans mes travaux de recherche. Et ma façon pour moi de faire ça, ça a été de systématiquement mettre mes résultats de recherche que j'écris dans des papiers, les intégrer aussi à une bibliothèque à une bibliothèque open source qui a grandi avec moi et qui a grandi avec mes travaux de recherche. Parce que c'est bien beau dans un papier de dire qu'on a 13 % d'erreurs sur tel jeu de données utilisée par les autres chercheurs académiques. Mais s'il a aucun moyen de le reproduire.

En fait c'est comme si c'était juste du vent. Donc voilà, j'ai vraiment eu l'envie dès le début de faire en sorte que tous mes travaux soient reproductibles et c'est comme ça que N.E. pianote.

Thomas (11:51.236)
Mon côté aussi j'ai vraiment pas mal de questions mais je voudrais juste rebondir sur un point. moment tu mentionnais que vous aviez un modèle qui était open source. J'ai fait un peu de recherche de mon côté et j'ai vu que vous aviez trois modèles différents qui sont adossés à PyTorch que vous utilisez d'Inphase pour partager les modèles. Est-ce que tu peux nous expliquer un peu plus en détail comment fonctionnent les trois modèles, pourquoi le choix de l'open source pour un modèle, est-ce que ça apporte d'utiliser un modèle ou un autre ?

Hervé Bredin (12:16.116)
Oui mais pour ça je peux rentrer un peu plus en détail sur comment fonctionne en tout cas la grande tendance actuelle des systèmes de segmentation et regroupement en locuteur. Généralement on a deux raisons de neurones en interne. En gros il a un premier raison de neurones qui est en charge de segmenter le signal de parole donc il prend en entrée des morceaux d'audio et il va les découper et aussi...

Thomas (12:19.844)
Le plaisir.

Hervé Bredin (12:45.076)
en gros détecter les zones de parole superposées, donc détecter les changements de locuteur, détecter les zones de parole superposées, détecter les zones de non-parole, parce qu'il faut savoir aussi les silences. Ce n'est pas forcément les silences, j'appelle ça, j'ai bien fait attention de dire les zones de non-parole parce que l'idée c'est aussi d'être robuste à des environnements acoustiques un peu adverses. Et donc d'ailleurs ces raisons neuronnes sont entraînées en en ajoutant un peu artificiellement des bruits lors de l'apprentissage pour être robuste à des bruits qui pourraient se produire.

Pierre Vannier (12:52.716)
Les silences, ouais.

Hervé Bredin (13:14.996)
en production. donc ces modèles, je les ai effectivement diffusés sur la plateforme Hugging Face et d'ailleurs c'est probablement cette plateforme aussi qui a rendu Pianote aussi populaire je pense parce que les gens l'ont trouvée facilement avec leur moteur de recherche j'imagine sur Hugging Face, ces modèles là. Il y avait aussi le fait que ça marchait bien.

Mais le fait que la visibilité donnée par la plateforme Hugging Face a beaucoup aidé. Juste à titre indicatif, là actuellement les modèles, parce que j'y reviendrai mais il plusieurs modèles effectivement comme tu l'as dit, les modèles ils sont téléchargés actuellement plus de 30 millions de fois par mois sur la plateforme Hugging Face. C'est 60 000 utilisateurs uniques des modèles aussi qui les téléchargent sur Hugging Face. Ça c'est depuis...

2022 je crois où j'ai commencé à obtenir des statistiques sur l'utilisation de la librairie piano et des modèles priontélés. Ça m'a beaucoup surpris quand je me suis rendu compte de la popularité du truc. Moi j'étais le petit chercheur qui travaillait sur son projet et j'ai essayé de faire les choses bien, j'ai essayé de faire en sorte que l'outil soit utilisable par mes pères chercheurs mais aussi par...

Pierre Vannier (14:17.486)
impressionnant.

Hervé Bredin (14:38.644)
les développeurs du dimanche mais je me suis aussi rendu compte rapidement que l'industrie s'en était emparée en fait et au travers justement de ces statistiques. J'ai divergé un petit peu là, je parlais des modèles mais oui voilà les modèles sont en fait Pianote c'est deux choses c'est le code source qui est open source et les modèles qui sont aussi avec une licence très permissive qui sont open source tout ce que je demande en fait aux utilisateurs c'est de se manifester.

remplissant un formulaire et c'est comme ça que j'ai des statistiques pas d'utilisation parce qu'on fait pas de... il n'y a pas de télémétrie à proprement parler mais sur les fichiers que les fichiers sont traités en local par nos par les utilisateurs de pianote mais au moins on a une idée du nombre d'utilisateurs uniques et voilà ça permet de faire une idée de la popularité du...

Pierre Vannier (15:30.865)
Stacks technologiques, comme son nom l'indique beaucoup de pitons, mais d'autres technos, choix d'architecture, rentrant un petit peu dans le côté un petit peu technique. que de ce que j'ai vu, Pianote c'est un peu une suite en fait de briques. Si tu vas sur le site de Pianote, tu plein de composants différents qui ont été, j'imagine,

composé et conçu au fur et mesure de ces 12 ans de recherche et de travaux de recherche sur cette problématique-là. Et du coup, peux nous en dire un petit peu plus. Et d'abord, c'est quoi la communauté aujourd'hui Pianote ? Est-ce que tu acceptes qu'il y ait des gens qui viennent sur tes ripos, venir faire des pull requests, etc. Tu as vraiment ce notion de communauté et d'open source derrière ?

Hervé Bredin (16:24.884)
Alors l'outil est open source, les modèles sont open source. Si on peut parler d'open source pour des modèles, en tout cas ils sont libres, limes d'utilisation. Mais la communauté est plus consommatrice que contributrice. J'ai des rapports de bugs, j'ai quelques petites pull requests mais jamais sur le cœur à proprement parler de la technologie. C'est peut-être aussi un biais dû à...

Pierre Vannier (16:39.856)
Ici Patrice.

Hervé Bredin (16:54.26)
moi en fait c'est vrai que je l'ai développé depuis zéro et le projet est vraiment focalisé sur ce problème précis, ajouter des fonctionnalités pour rendre le truc une usine à gaz ça m'intéresse pas forcément mais en vrai j'ai pas tant de pull requests de contribution de cette nature là de toute façon. la communauté est très très consommatrice c'est quelque chose que j'aimerais faire un peu évoluer par exemple sous la forme de

espérer que les gens qui utilisent Pianote pour entraîner leur propre modèle les partagent un peu plus largement. Si là sur Inphase quand on cherche des modèles Pianote, a pas tant de modèles Pianote autre que ceux sous l'organisation Pianote en vrai. ça commence à arriver, il a des boîtes, dernièrement il a la société REV qui a diffusé deux modèles de diarisation qu'ils ont entraîné sur leurs données privées.

Pierre Vannier (17:30.099)
Hmm.

Pierre Vannier (17:38.578)
Mmh.

Hervé Bredin (17:51.284)
via Pianote et donc on peut utiliser dans Pianote directement. Donc ça commence à être, je sens un petit fourmillement de ce côté là sur le partage des modèles.

Pierre Vannier (18:04.754)
Et tout ce qui est stack techno, architecture, etc. Tu peux nous en parler sans non plus trop descendre dans le kernel. C'est quoi ? C'est à la base, des choix du coup ultra performants et du C ou du C++ ou des langages vraiment bas niveau pour le coeur ou tu es resté sur du python finalement ?

Hervé Bredin (18:25.62)
Ouais non, c'est rester sur du piton et du Pytorch. fait, ça vient vraiment de l'origine du projet. Moi, en tant que chercheur, mon objectif principal, c'est de baisser les taux d'erreur de diarisation. Je n'ai pas été vraiment intéressé par la rapidité d'exécution et tout ça. donc, en vrai, c'est très haut niveau. C'est piton pour la glu entre les modèles Pytorch.

C'est les modèles PyTorch qui donnent des prédictions et Python qui fait la glue entre ces modèles pour la fin pournir. Et ça fonctionne bien comme ça, a l'air de plaire aux gens là. Sur des machines, j'ai dit que je n'ai pas travaillé sur la vitesse d'exécution mais au final on est capable de traiter avec les meilleurs GPU actuelles qui sont, on est capable de traiter une heure d'audio en une douzaine de secondes.

Pierre Vannier (18:56.435)
Et ça fonctionne bien comme ça.

Pierre Vannier (19:19.507)
ouais c'est quand même pas mal ouais.

Hervé Bredin (19:21.524)
Et ça sans optimisation parce que PyTorch en fait est déjà... Voilà c'est building on the shoulders of giants quoi, comme on dit.

Pierre Vannier (19:27.925)
Parce que moi j'avais essayé des API, tu vois, j'avais essayé Assembly AI ou d'autres API et pour transcrire plus, diariser certains flux audio, c'était beaucoup beaucoup plus long que 12 secondes pour une heure.

Hervé Bredin (19:48.532)
Ce qui bien avec la diarisation, que ça permet d'accélérer ce qui vient après. Si tu commences par appliquer de la diarisation, tu vas enlever toutes les zones de non-speech, tu n'as pas besoin de les envoyer à un système de transcription. Donc, seules les zones de parole vont être transcrites. Et de même, bien segmenter le signal de parole permet d'envoyer des bouts d'audio qui ne sont pas coupés au milieu d'une phrase, pas coupés au milieu d'un mot.

Pierre Vannier (20:03.252)
Merci.

Hervé Bredin (20:15.348)
si bien qu'on peut espérer que les taux d'erreur de transcription soient aussi réduits grâce à la diarisation.

Thomas (20:23.556)
Je me posais la question vraiment pour ma culture, la partie de diarisation dans la partie audio du machine learning, est-ce que c'est principalement avoir plus de données pour proposer des modèles plus performants, ou c'est vraiment un objectif d'optimiser des algorithmes ? C'est-à-dire est-ce que le fait d'avoir plus de puissance de calcul, ça aide profondément à avoir de meilleurs résultats de sortie, ou il faut obtenir beaucoup de données, ces douze ans de données où tu as appris

Hervé Bredin (20:40.852)
A

Thomas (20:52.292)
ou ce pas du tout relié à ça.

Hervé Bredin (20:54.74)
Alors les données utilisées par Piano Audio, la librairie open source pour entraîner, c'est des données publiques issues des benchmarks. C'est quelque chose dont on pourrait parler des benchmarks. La communauté de diarisation, la communauté scientifique de diarisation et speech processing, enfin le traitement automatique de la parole en général, est très friande de benchmarks publics où chaque année on va avoir

un groupe de personnes qui vont collecter des données ou récupérer des données déjà collectées, mais les mettre en forme, les diffuser à tous les participants. C'est comme un tournoi, comme une compétition. gros, tous les participants, généralement des laboratoires, des laboratoires académiques vont tous travailler sur les mêmes données dans un laps de temps délimité pour fournir en la sortie de leurs algos sur une tâche bien précise, par exemple la diarisation. Moi, j'ai beaucoup profité du...

du challenge qui s'appelait Die Hard, donc un jeu de mots sur Diearization is Hard et un jeu de mots sur les films avec Bruce Willis, vous l'aurez compris. en gros, y eu un gros travail de collecte et d'étiquetage des données pour cette tâche de diarisation qui a vraiment fait avancer la communauté de diarisation, en particulier sur la notation précise pour calculer des métriques.

La métrique qui permet de comparer deux systèmes de diarisation, c'est ce qu'on appelle la diarisation error rate, donc le taux d'erreur de diarisation. C'est la somme de trois types d'erreurs. Ce qu'on appelle les fausses alarmes, c'est quand on dit qu'il de la parole alors qu'il n'y en a pas. Les détections ratées ou misdetections dans la littérature, c'est l'inverse quand on dit qu'il a pas de parole alors qu'il y en avait. Et puis la confusion en locuteur, c'est quand on se trompe de locuteur.

En gros, à noter précisément les frontières de tour de parole et les zones de parole superposées, c'est vraiment très important pour avoir ces trois métriques vraiment précises et pouvoir comparer différents systèmes en particulier sur les zones de superposées. Je ne pas si vous avez déjà essayé en éditant par exemple un podcast d'anoter précisément où commence la zone de parole superposée, où elle se termine. C'est super dur.

Hervé Bredin (23:18.26)
Et donc avoir ces jeux de données issus de la communauté académique qui permettent de l'entraîner nos... Enfin, sinon entraîner au mieux bien évaluer nos systèmes, c'est vraiment super important. Donc la donnée est clairement super importante. Le titre du podcast, S'il a pas que la data, c'était... En vrai, c'est un peu frustrant, mais souvent quand même la donnée fait que c'est ça qui fait la différence.

Après, la diarisation, n'est pas un problème où la donnée brute, le calcul brut permet de résoudre le problème. Pour la même raison que j'ai expliqué au début, c'est qu'on ne connaît pas a priori les gens qui vont parler dans la conversation. Donc on ne pas entraîner des modèles de chacune de ces personnes. Il faut généraliser.

Il faut aussi, on ne pas connaître a priori le nombre de classes, donc le nombre de locuteurs qui vont intervenir dans une conversation. Donc il faut être capable d'entraîner des systèmes qui permettent de traiter des conversations avec seulement deux locuteurs et d'autres avec 20 locuteurs. donc pour pouvoir généraliser à ce type de choses, il suffit pas d'augmenter la quantité de

J'aime bien prendre cette comparaison quand on fait de la transcription de la parole, l'unité sur laquelle on entraîne c'est le mot. On a un mot en entrée, en sortie c'est sa transcription. C'est plus compliqué que ça mais l'unité c'est le mot. En diarisation, l'unité c'est une conversation entière. Donc si on veut, si pour la transcription de la parole on entraîne sur un million de mots, je dis ça un peu c'est beaucoup plus que ça mais pour avoir l'équivalent en diarisation c'est un million.

de conversation. Ce n'est pas du la même échelle dans une conversation. ne pas, il faudrait faire le calcul à la fin de ce podcast, mais savoir combien de mots on a prononcé. Donc jamais on arrivera à collecter suffisamment de données pour être au même niveau. Donc il faut travailler sur la partie algorithmique et c'est pour ça qu'on a aussi ce découpage de la diarhérisation en deux étapes, segmentation et regroupement. Le regroupement, est en fait façon non supervisée.

Hervé Bredin (25:42.228)
sans avoir besoin de données étiquetées. Par contre, le modèle de séventation peut vraiment profiter de grosses quantités de données étiquetées, variées.

Thomas (25:56.388)
ça me permet de rebondir sur un autre point donc vous proposez actuellement chez Pianote trois modèles donc le open, le turbo et le précision et en fait il y a un trade-off entre vitesse, précision, le nombre de paramètres et justement l'accuracité, la précision dont tu parles c'est ces trois grosses métriques que vous utilisez de façon générale et qu'est que ça change le nombre de paramètres qu'est qu'on peut changer dans un modèle de diarisation

Hervé Bredin (26:24.468)
Jusqu'ici, tout ce que j'ai dit, je parlais vraiment de la partie open source. on commence à parler de ma casquette directeur scientifique de Piano.ai. oui, Piano.ai en gros est née quand je me suis rendu compte qu'il y avait vraiment beaucoup d'utilisateurs de pianos open source dans l'industrie.

Thomas (26:31.94)
...

Hervé Bredin (26:50.388)
En fait, sans m'en rendre compte, j'avais créé au fil des ans un produit que les gens utilisaient déjà. Dès le début, fait, quand j'ai développé cette bibliothèque open source, j'avais en tête mon utilisateur final. Je voulais que ce soit facile à utiliser. vrai, avec Pianote open source, on peut obtenir une diarisation en deux lignes de code Python. Et je pense que c'est aussi ça qui fait la popularité du truc. Mais donc, pour revenir sur Pianote AI,

C'est né de cette observation que la librairie open source était très populaire et que j'avais créé ce produit et je me dis maintenant je vais essayer d'en faire un vrai produit. C'était un produit académique entre guillemets même s'il était utilisé dans l'industrie je vais essayer d'en faire un vrai produit. Donc y a plusieurs façons effectivement de faire un produit autour de cette bibliothèque open source, c'est améliorer la précision du modèle, c'est pour ça qu'on a appelé le modèle ainsi, précision.

et pas aller très loin ici pour l'instant. Ou alors de l'autre côté, c'est améliorer la vitesse d'exécution et idéalement on aimerait améliorer les deux. Et d'ailleurs le modèle précision, on a fait un effort tout particulier pour qu'il soit à la fois plus rapide et meilleur aussi. en gros le modèle précision, a un modèle qui a été évidemment entraîné sur plus de données mais on travaille, on parle pas de...

de 100, 1000, 1 million de fois plus de données que les modèles open source. Pour l'instant, le modèle a juste été entraîné avec des architectures de réseaux de neurones un peu plus grosses, en réfléchissant, en modélisant un petit peu mieux aussi la partie algorithmique que j'ai décrite au préalable. Et donc en combinant tout ça, on obtient un système qui est bien meilleur que la version open source.

moyenne, est 20 % plus précis selon les benchmarks. Il va y des benchmarks où on est déjà très bon dans la version open source et donc le gain est assez minime en termes de précision mais il va être quand même important en termes de vitesse d'exécution, ça peut avoir son intérêt. Et il d'autres jeux de données vraiment très brutés, par exemple j'ai un jeu de données académique sur lequel on a fait des tests qui s'appelle Ego4D, c'est des données de wearables.

Hervé Bredin (29:12.404)
En gros, une caméra qui est portée à longueur de journée, c'est un jeu de données qui a été collecté par Meta, je crois. Ils ont organisé d'ailleurs une campagne d'évaluation autour de ce jeu de données. Ce pas juste pour la réalisation, c'est aussi pour prédire les mouvements des mains, enfin tout ce qui se passe autour de l'humain qui porte cette caméra et ce micro. Et donc sur ce jeu de données, la version open source est à 50 % d'erreur. On se trompe 50 % du temps.

Et on a un gain, je ne plus exactement combien il est sur la précision, on doit être autour de 35-40, ça devient, on se rapproche de quelque chose d'utilisable. Alors que c'est vrai que la tâche, même un humain, elle est vraiment super difficile sur ce cas. J'ai un exemple d'une vidéo, il a quelqu'un dans un magasin, il a une vendeuse à l'autre bout du magasin qui lui parle, il faut être capable de détecter son tour de parole. C'est vraiment des tâches très difficiles. Donc c'est pour ça qu'on est à des taux d'erreur très...

aimé. tout ce que je dis actuellement c'est en batch, c'est à dire qu'on fait l'hypothèse que la conversation a été enregistrée au préalable et on la traite dans sa totalité. C'est un problème plus difficile que si on fait du streaming. Parce que du streaming on n'a pas accès à la totalité, faut au fur et mesure détecter quand il a des nouveaux locuteurs qui parlent.

Pierre Vannier (30:29.342)
si tu fais du streaming. Ouais.

Pierre Vannier (30:38.398)
Hmm.

Hervé Bredin (30:40.436)
le bon compromis entre latence et précision. On ne pas se permettre d'afficher un modèle de streaming qui a une minute de latence selon les cas d'usage. Si la diarisation en streaming arrive en début de chaîne d'un système par exemple de chat GPT 4.0 par exemple, voudrait interagir ou on veut que la latence soit super faible, il faut pas la diarisation rajoute une latence déjà qu'on peut.

peut pas rattraper de toute façon. selon les cas d'usage, on peut choisir le meilleur compromis entre latence et précision du modèle.

Pierre Vannier (31:20.512)
Du coup, Hervé, me donne l'idée d'une question. Parce que nous, s'est rencontrés à Paris il y a quelques semaines. C'était pour l'ouverture, l'inauguration des bureaux d'OpenAI.

Et en fait ce qu'on ne pas forcément c'est que déjà Pianote est utilisé dans plein de solutions existantes finalement ou en partenariat ou en co-développement. Ça tu peux nous en parler un petit peu votre moteur est utilisé par des acteurs déjà existants et qui sont des gros acteurs quoi quand même.

Hervé Bredin (32:00.916)
Je peux vous parler des choses qui effectivement sont publiques. exemple, on a annoncé un partenariat avec Gladia qui utilise notre diarisation pour certains des flux.

Pierre Vannier (32:14.945)
qui est une boîte française qui fait du coup du speech to text, text to speech et la boîte à outils un petit peu de para pays en fait.

Hervé Bredin (32:25.268)
Oui, voilà c'est ça tout ce qui est autour de l'intelligence audio. crois qu'ils a fait ça comme ça, extraire un maximum de données de l'audio. Je sais par exemple, ces publics aussi, Qtai a utilisé Pianote pas, Pianote n'est pas utilisé au moment de l'inférence, Pianote a été utilisé pour, c'est un cas d'usage qu'on voit beaucoup parmi nos clients en particulier en doublage, en gros Pianote est utilisé pour nettoyer des grands jeux de données d'apprentissage.

Donc je m'explique, pour entraîner les voix de synthèse, pour entraîner Moshi par exemple de Q-Tile, cet assistant conversationnel à très faible latence, en gros, j'imagine que, je ne pas tous les détails, mais dans le papier il expliquait que la segmentation de pianote a été utilisée pour vraiment déterminer où s'arrêtent les tours de parole dans le corpus d'apprentissage pour bien segmenter et ensuite...

donner ça à manger à toute la pipeline d'entraînement de Moshi. Et c'est aussi utilisé par des entreprises de doublage qui vont segmenter proprement les jeux de données de sorte que pour entraîner une voix de synthèse, ils sont sûrs à 100 % que ce qu'ils donnent à manger à leurs algos d'apprentissage ne contiennent qu'une seule personne. Voilà, c'est ça.

Pierre Vannier (33:28.45)
Mmh.

Pierre Vannier (33:47.714)
C'est de la data valable finalement.

Hervé Bredin (33:51.06)
c'est de la data propre où la parole superposée a été supprimée, enfin au moins détectée et du coup jetée à la poubelle, de façon à... on nous a parlé d'un artefact intéressant, c'est que si c'est le mot de garbage in, garbage out, si dans le corpus d'apprentissage, par exemple, ma voix, et de temps en temps, a mon fils qui vient parler par dessus,

Pierre Vannier (33:54.754)
nettoyer.

Hervé Bredin (34:17.46)
et bien la voix de synthèse, entraînée à partir de ma voix, va de temps en temps avoir des artefacts avec la voix de mon fils qui va être entendue comme ça alors qu'elle n'a pas lieu d'être. Et donc pouvoir détecter ces zones-là, bien nettoyer les jeux d'apprentissage, c'est là où Pianote est super utile en particulier parce que sur les zones de paroles superposées, c'est là où vraiment on est, je pense, meilleurs que la concurrence.

Pierre Vannier (34:19.651)
Il y aura les deux.

Pierre Vannier (34:27.779)
Merci.

Pierre Vannier (34:43.525)
Donc ça veut dire que, excuse-moi, dans les modèles où tu fais de l'interaction real-time, donc temps réel de discussion avec un agent conversationnel, ils peuvent utiliser aussi Pianote pour entraîner et en fait être capable de prédire potentiellement quand est-ce que la parole de l'autre va s'arrêter et quand est-ce qu'il... Du coup, pour avoir un meilleur temps de réactivité, c'est ce que tu disais avec Moshi et Q-Tie ?

Hervé Bredin (35:08.084)
Possiblement, il faudrait je plus en détail, oui tout à fait. En détectant très précisément la fin de tour de parole, c'est ce qu'on appelle le « pointing » dans le jargon de la littérature scientifique, détecter vraiment quand une personne a terminé de parler. Effectivement, c'est indispensable pour éviter que l'assistant vocal vienne trop souvent couper la parole ou alors qu'il y un trop...

Pierre Vannier (35:09.636)
possiblement. Ouais ouais, non mais c'est intéressant ouais parce que...

Hervé Bredin (35:35.38)
grand laps de temps entre le moment où la personne a posé sa question et où elle a sa réponse. En gros, peut voir ça comme une diarisation avec une latence négative. On va essayer de prédire quand le tour de parole ou le changement de locuteur va se produire.

Thomas (35:50.308)
Je me posais la question, alors est-ce qu'aujourd'hui on a vraiment des cas d'usage où la diarisation a besoin d'être en temps réel ? Est-ce que ça changerait profondément les choses si on arrivait à faire une différence en temps réel ?

Hervé Bredin (36:03.348)
Il y a des applications par exemple sur du meeting. Je me rappelle, j'avais été contacté il y a quelques temps quand j'étais encore à fond dans la partie optimisation de piano de côté académique par une boîte qui essayait de faire un assistant de réunion pour évaluer la qualité du déroulement d'une réunion pour voir si par exemple

il n'y avait pas quelqu'un qui monopolisait trop la parole ou une autre qui avait tendance à couper la parole systématiquement à quelqu'un d'autre.

Pierre Vannier (36:38.405)
Pour mettre un énorme red flag quand tu interromps trop ou quand tu parles trop, sais, t'as ton micro qui se mute automatiquement.

Hervé Bredin (36:45.396)
Exactement, mais sinon rien que pour de la transcription en temps réel, c'est vraiment utile, en particulier la détection de changement de l'ocuteur. C'est ce que je disais tout à l'heure, pour envoyer des tours de parole clean à la transcription qui vient après, whisper, plutôt que d'envoyer des morceaux qui sont mal coupés, peut vraiment aider d'avoir de la diarisation en streaming.

Thomas (37:10.276)
C'est hyper intéressant, je voulais qu'on parle un peu des évolutions technologiques du futur. Est-ce que les Large Language Models ou peut-être même les modèles de vision ont eu un impact sur l'audio de façon générale, la diarisation mais l'audio depuis leur arrivée ?

Hervé Bredin (37:28.372)
On voit clairement une tendance actuelle sur le côté multimodal des LLM. a commencé tout naturellement par... Les LLM ont commencé tout naturellement par le texte parce que c'était là où il y avait beaucoup de données, faciles à collecter. donc maintenant, on peut dire quand même que la modalité textuelle commence à être bien maîtrisée dans les LLM.

Et donc c'était la façon d'interagir avec un chatbot, c'était via du texte sur le clavier. Et maintenant on se rend compte effectivement que l'audio, c'est un peu pour ça qu'on crée Piano T.I. aussi, la société, la startup, parce qu'on se rend compte que la façon la plus simple d'interagir avec tout un chacun, ensemble, nous on parle. donc la suite logique, a été de passer à la transcription.

donc la transcription de la parole, et passer par le mot de texte et ensuite balancer ça dans un LLM. Mais maintenant les modèles type Moshi de Qtie en fait ils font du end to end directement. C'est pas tout à fait correct de dire ça mais...

Pierre Vannier (38:40.648)
Il n'y a pas d'étape intermédiaire où tu transformes la voix en texte, c'est ça ?

Hervé Bredin (38:45.588)
Voilà, on peut résumer ça comme ça. en tout cas, c'est la direction que prennent les travaux, faire vraiment du speech to speech. Le doublage, c'est du speech to speech, les chatbots, du speech to speech aussi. donc, clairement, je ne pas dire que les LLM ont vraiment influé, par exemple, sur mes travaux de recherche à moi. Ils ont influé dans le sens où

Les transformeurs, les architectures sous-jacentes, ont explosé dans le texte et du coup maintenant on les utilise aussi dans l'audio. Il n'y a pas de secret de ce côté-là. Donc peut-être c'est plus sur les briques technologiques. fait tous ces domaines sont très perméables et donc quand il a une révolution qui arrive dans un domaine, naturellement on va l'essayer dans un autre domaine. Mais il a quelques travaux qui essayent par exemple de faire du post-traitement.

de diarisation grâce à des LLM. C'est plutôt le post-traitement de transcription attribué en locuteur grâce à des LLM qui vont, par exemple si la diarisation s'arrête un mot trop tôt et découpe je sais pas si je dis bonjour comment va et ensuite il a tu quelque chose, si ça coupe après comment va le LLM va être capable de corriger cette erreur de diarisation.

Donc il y a un truc de Google qui est sorti récemment qui s'appelle diarisation LM qui fait ça en gros. Faut voir ça comme un post traitement de la diarisation. On peut aussi espérer que les LLM puissent par exemple automatiquement inférer le nom des personnes d'une conversation. Comme je disais au début, la diarisation c'est juste locuteur 1, locuteur 2, locuteur 3. Mais au début on s'est présenté tous les trois. Et donc le LLM appliqué sur la transcription diarisée

doit pouvoir dire que le locuteur 1 c'était Hervé depuis tout à l'heure et le 3 c'était Pierre. Je vois plutôt ça comme une combinaison de différents outils plutôt que... En tout cas pour la diarisation, suis pas sûr, suis pas convaincu, enfin l'avenir le dira, mais je suis pas convaincu qu'un LLM aussi multimodal soit-il puisse vraiment répondre à la question précise de la diarisation.

Hervé Bredin (41:08.66)
Vraiment ce qui fait la spécificité de la diarisation c'est la précision aussi sur la segmentation à proprement parler. Vraiment trouver les temps de début, les temps de fin, en fait tous ces LLM ne pas entraînés avec des données étiquetées de cette nature là. Et donc avoir un système vraiment dédié à cette tâche, je pense que ce n'est pas demain la veille qu'ils disparaissent.

Thomas (41:34.148)
Je me posais la question, est-ce qu'on pourrait utiliser la diarisation à des enjeux sécuritaires, puisque depuis quelque temps, on parle de plus en plus des reproductions de voix. Je ne sais pas du tout le terme qu'il faut utiliser, c'est-à-dire qu'on parle là pendant une heure dans un podcast et on est capable de recopier nos trois voix. Est-ce que la diarisation, peut-être qu'il a peut-être quelques transformations effectuées, pourrait reconnaître ma vraie voix, de ma voix synthétisée ? C'est quelque chose de complètement impossible.

Hervé Bredin (42:02.1)
La diarrhisation en soi, non, elle aurait plutôt tendance à regrouper toutes les occurrences de ta voix synthétisée dans un même groupe et probablement, j'ai pas fait d'expérience sur des données de synthèse comme ça, je ne sais pas si par exemple nos systèmes sont capables de mettre ta voix réelle et ta voix de synthèse dans des blocs séparés. En revanche, pour des sécuritaires, oui, la diarrhisation peut être utilisée pour...

accélérer le processus d'écoute téléphonique dans le cadre, je ne pas, a des attentats qui sont sur le... enfin qui sont en train d'être réalisés ou préparés. Il faut répondre très rapidement, détecter très rapidement en écoutant des tonnes de conversations téléphoniques, ce qui se dit, qui parle à qui, pour pouvoir enfin... voilà ça je pense que la diarisation pour tout ce qui est écoute.

Thomas (42:44.068)
méditer.

Hervé Bredin (43:00.212)
Peut-être que le streaming, tout à l'heure j'avais pas trop d'exemples à ta question sur le streaming, mais peut-être que le fait de donner une diarisation en streaming le plus rapidement possible sur ces cas d'usage là, réagir super vite à des tentatives d'attentats, via les écoutes téléphoniques ça peut être très utile. Tout ce qui est fait indexation de grandes bases, grandes archives,

des coups de téléphonique mais en gros c'est des applications aussi potentiellement culturelles. On discute avec l'INA par exemple qui a des archives énormes.

Pierre Vannier (43:36.717)
J'ai pensé immédiatement à ça à l'INA, qui est une archive monstrueuse en termes de data en fait.

Hervé Bredin (43:42.612)
Voilà, du coup pouvoir segmenter, structurer leurs archives et ensuite aller dire trouver toutes les destinations des journalistes aussi, les journalistes qui auraient envie de trouver tout ce qui a été dit par tel ou tel homme ou femme politique. Voilà, c'est ce genre d'application intéressante du fact checking. Effectivement, a comme...

toute technologie ça peut avoir deux côtés, un bon côté et un mauvais côté. Moi effectivement, me dis que ce que je fais, peut aussi être utilisé pour faire de la surveillance de masse, ça ne fait pas trop rêver. Mais de l'autre côté, je me dis que ça peut être utilisé pour faire du fact checking et éviter que des fake news soient diffusés dans la société et se répandent. c'est un problème.

Pierre Vannier (44:25.101)
répandent bien sûr.

Hervé Bredin (44:32.66)
ça fait toujours un peu peur. C'est vrai que si je faisais de la diarrhisation de chant d'oiseau, il y aurait peut-être un peu moins d'applications un peu malsaines.

Thomas (44:45.348)
On arrive tranquillement vers la fin de l'épisode. là, l'épisode est tourné en mois de décembre. On ne pas s'il apparaîtra à la fin de l'année 2024, au début de l'année 2025. Mais en tout cas, lors du dernier épisode, a eu Flavien Shervet. Il posait la question suivante. Quelle sera la prochaine innovation qui va vraiment faire beaucoup de bruit en IA ? Indirectement, c'est une question pour dire qu'est-ce qui va péter en 2025 selon toi.

Pierre Vannier (45:13.134)
La question boule de cristal, c'est ça.

Hervé Bredin (45:13.428)
J'espère que ce sera la diarisation en streaming. Effectivement, voit de plus en plus les gens de plus en plus à l'aise pour interagir de façon vocale avec les assistants, avec Lya et c'est vrai que c'est un vecteur super naturel pour tout un chacun. On n'a pas besoin d'écrire, on n'a pas besoin de...

Pierre Vannier (45:28.302)
Avec l'IA.

Hervé Bredin (45:39.828)
Après c'est vrai que c'est souvent les coordonniers les moins bien chaussés, va dire. Moi j'ai du mal en fait en vrai à interagir avec une machine à l'oral comme ça, la tendance à l'air de montrer que, enfin, il y a plein de boîtes qui montent ce type d'assistant vocal, donc il a probablement quelque chose qui va mûrir et qui va exploser de ce côté là. Donc ça c'était un peu la réponse facile et je prêche dans ma chaumière.

Sinon c'est difficile. Le côté multimodal effectivement, le côté multimodal des modèles qui sont capables d'intégrer toute source de données audio, texte, vidéo...

Pierre Vannier (46:23.664)
Ouais, il a Greg Brockman qui a fait une démo très très récente, Greg qui est bosse chez OpenAI, une vidéo où O-One intègre voix en temps réel plus vision. du coup, fait, finalement, la conjugaison de ces deux modalités apporte quelque chose de vraiment assez puissant en termes d'interaction et d'interaction au machine finalement.

cool. du coup, je vais poser la question au miroir. Tu ne connais pas le ou la prochaine invitée, mais quelles questions as-tu en tête ? Quelles questions tu voudrais lui poser ?

Hervé Bredin (47:15.86)
Je sais pas peut-être... c'est vrai que moi mon histoire a commencé avec l'open source, travaux de recherche. sais pas, poser la question du point de vue sur l'open source, est-ce c'est forcément bénéfique ? Est-ce que ça peut avoir des effets négatifs ou est-ce dangereux de pouvoir mettre dans les mains de n'importe qui tous ces outils ?

Pierre Vannier (47:38.897)
ou dangereux.

Hervé Bredin (47:45.172)
open source. Je suis persuadé que l'open source a forcément... J'ai pas besoin de donner la réponse à ma propre question en fait.

Pierre Vannier (47:55.601)
Non ! Mais ça y est, on connait ton avis ! De toute façon, excuse-moi, t'aurais pas créé un framework open source depuis une dizaine d'années sinon, je pense. On connait un petit peu ton avis là-dessus quoi.

Hervé Bredin (48:02.58)
Voilà, c'est ça. Donc oui, peut-être une question sur l'open source. Est-ce que l'open source, c'est l'avenir de l'IA, on va dire ? on va poser ça comme ça.

Pierre Vannier (48:13.073)
C'est une vraie question parce qu'on voit que des entreprises ont choisi des business model plutôt ouvert, fermé, semi ouvert, semi fermé. L'industrie se pose beaucoup de questions par rapport à ça et puis il aussi les détracteurs de l'IA qui disent à tout mettre en open source, en risque que ça tombe dans de mauvaises mains etc. Et effectivement c'est des vrais sujets parce qu'aujourd'hui c'est des outils

extrêmement puissant et effectivement, grande puissance, grande responsabilité quitte d'être complètement ouvert. Super question. Moi j'aimerais vous remercier Hervé, c'était ton premier podcast mais tu t'en es sorti comme un chef. Franchement, on dirait que tu fait ça absolument tôt de ta vie. Thomas, n'en parlons pas.

Hervé Bredin (49:04.756)
...

Pierre Vannier (49:12.819)
depuis montréal je remercie vraiment tous nos auditeurs auditrices ceux qui nous regardent aussi sur youtube merci beaucoup pour votre fidélité n'hésitez pas à mettre un petit pouce un petit like un petit truc un petit mot on nous envoyer une lettre ou même nous envoyer une lettre pour votre liste du père noël on verra ce qu'on peut faire pour vous merci beaucoup on vous embrasse et à la prochaine merci herve merci thomas

Thomas (49:33.124)
Merci Hervé, merci Pierre.

Hervé Bredin (49:33.876)
Merci, au revoir.

Créateurs et invités

Pierre Vannier
Hôte
Pierre Vannier
Fondateur et PDG Flint, Dev Backend / IA, agitateur Tech ✨
Thomas Meimoun
Hôte
Thomas Meimoun
Machine Learning Engineer / Data Scientist
Hervé Bredin
Invité
Hervé Bredin
Co-Founder & CSO de Pyannote.AI
#19 - Diarisation et pipelines IA : Structurer le chaos sonore avec précision
Diffusé par