En 2019, Google a lancé le logiciel d'enregistrement Recorder sous système Android pour ses téléphones mobiles Pixel, compatible avec les mémos vocaux sous iOS et prenant en charge l'enregistrement, la gestion et l'édition de fichiers audio. Depuis lors, Google a successivement ajouté un grand nombre de fonctionnalités basées sur l'apprentissage automatique à Recorder, notamment la reconnaissance vocale, la détection d'événements audio, la génération automatique de titres et la navigation intelligente.
Cependant, lorsque le fichier d'enregistrement est long et contient plusieurs haut-parleurs, certains utilisateurs de Recorder se sentiront gênés lors de l'utilisation. Parce que le texte obtenu grâce à la reconnaissance vocale ne peut à lui seul déterminer qui a prononcé chaque phrase. Lors de la conférence Made By Google de cette année, Google a annoncé la fonctionnalité d'annotation automatique des locuteurs de l'application Recorder. Cette fonctionnalité ajoutera des balises de locuteur anonymes (telles que « Speaker 1 » ou « Speaker 2 ») au texte reconnu vocalement en temps réel. Cette fonctionnalité améliorera grandement la lisibilité et la praticité des textes enregistrés. La technologie derrière cette fonctionnalité s’appelle la diarisation des haut-parleurs. Google a présenté pour la première fois son système de segmentation et de clustering d'empreintes vocales appelé Turn-to-Diarize lors de la conférence ICASSP 2022.
Image de gauche : enregistrement de texte avec l'annotation du locuteur désactivée. À droite : le texte enregistré avec l'annotation du locuteur activée.
Le système Turn-to-Diarize de Google contient plusieurs modèles et algorithmes hautement optimisés, qui permettent un traitement audio de plusieurs heures sur des appareils mobiles avec très peu de ressources informatiques. Effectuez une segmentation des empreintes vocales et un traitement de clustering en temps réel. . Le système se compose principalement de trois composants : un modèle de détection de changement de locuteur pour détecter le changement d'identité du locuteur, un modèle d'encodeur d'empreinte vocale pour extraire les caractéristiques vocales de chaque locuteur et un système à plusieurs étages qui peut compléter efficacement l'algorithme de clustering des locuteurs. Tous les composants fonctionnent entièrement sur l'appareil de l'utilisateur et ne dépendent d'aucune connexion au serveur.
Schéma d'architecture du système Turn-to-Diarize.
Le premier composant du système est un modèle de détection de transformation de haut-parleur basé sur un transducteur de transformateur (T-T). Ce modèle est capable de convertir la séquence de fonctionnalités acoustiques en une séquence de texte contenant le caractère spécial . Le caractère spécial indique un événement de transition de locuteur. Les articles précédents publiés par Google utilisaient des caractères spéciaux tels que ou pour indiquer l'identité d'un locuteur spécifique. Dans le dernier système, puisque le caractère ne se limite pas à des identités spécifiques, son application est également plus répandue.
Pour la plupart des applications, la sortie du système de segmentation et de regroupement d'empreintes vocales n'est généralement pas présentée directement à l'utilisateur, mais est combinée avec la sortie du modèle de reconnaissance vocale. Étant donné que le modèle de reconnaissance vocale a été optimisé pour le taux d'erreur sur les mots pendant le processus de formation, le modèle de détection de changement de locuteur est plus tolérant au taux d'erreur sur les mots, mais accorde plus d'attention à la précision du caractère spécial . Sur cette base, Google a proposé une nouvelle fonction de perte basée sur les caractères, qui permet une détection précise des événements de changement de haut-parleur avec seulement un modèle plus petit .
Une fois le signal audio segmenté en fonction des événements de conversion du locuteur, le système extrait le code d'intégration contenant les informations d'empreinte vocale pour chaque segment de locuteur via le modèle d'encodeur d'empreinte vocale, c'est-à-dire le vecteur d. Dans des articles précédents publiés par Google, les codes d’intégration d’empreintes vocales étaient généralement extraits d’audio de longueur fixe. En revanche, ce nouveau système présente de nombreuses améliorations. Premièrement, le nouveau système évite d'extraire les codes d'intégration d'empreinte vocale de segments contenant des informations sur plusieurs locuteurs, améliorant ainsi la qualité globale des codes d'intégration. Deuxièmement, le fragment de parole correspondant à chaque code d'intégration d'empreinte vocale est relativement long, il contient donc plus d'informations d'empreinte vocale correspondant au locuteur. Enfin, la séquence finale de code d'intégration d'empreinte vocale obtenue par cette méthode est plus courte, ce qui rend l'algorithme de regroupement ultérieur moins coûteux en termes de calcul.
La dernière étape de la segmentation et du clustering des empreintes vocales consiste à regrouper les séquences de codes d'intégration d'empreintes vocales obtenues au cours des étapes précédentes. Étant donné que les enregistrements générés par les utilisateurs à l'aide de l'application Recorder peuvent durer de quelques secondes à 18 heures, un défi majeur pour les algorithmes de clustering est de pouvoir gérer des séquences d'intégration d'empreintes vocales de différentes longueurs.
À cette fin, la stratégie de clustering en plusieurs étapes de Google combine intelligemment les avantages de plusieurs algorithmes de clustering différents. Pour les séquences plus courtes, la stratégie utilise le clustering hiérarchique agrégé (AHC). Pour les séquences de longueur moyenne, cette méthode utilise le regroupement spectral et utilise la méthode de marge maximale des valeurs propres pour estimer avec précision le nombre de locuteurs. Pour les séquences plus longues, cette méthode utilise d'abord le clustering hiérarchique agrégé pour prétraiter la séquence, puis appelle le clustering spectral, réduisant ainsi le coût de calcul de l'étape de clustering. Pendant tout le processus de traitement de streaming, en mettant en cache dynamiquement et en réutilisant les résultats de clustering précédents, la limite supérieure de la complexité temporelle et de la complexité spatiale de chaque appel d'algorithme de clustering peut être définie sur une constante.
La stratégie de clustering en plusieurs étapes est une optimisation clé pour les applications côté appareil. Parce que du côté des appareils, les ressources telles que le processeur, la mémoire et la batterie sont généralement rares. Cette stratégie peut toujours fonctionner dans un état de faible consommation même après plusieurs heures de traitement audio. La limite supérieure de la complexité constante de cette stratégie peut généralement être ajustée en fonction du modèle d'appareil spécifique pour atteindre un équilibre entre précision et performances.
Diagramme schématique de la stratégie de clustering en plusieurs étapes.
Étant donné que Turn-to-Diarize est un système de traitement de streaming en temps réel, lorsque le modèle traite plus d'audio, ses étiquettes de haut-parleur prédites deviendront également plus précises. À cette fin, l'application Recorder corrigera en permanence les étiquettes de locuteurs précédemment prédites pendant le processus d'enregistrement de l'utilisateur pour garantir que les étiquettes de locuteur que l'utilisateur voit sur l'écran actuel sont toujours des étiquettes plus précises.
Dans le même temps, l'interface utilisateur de l'application Recorder permet également aux utilisateurs de renommer l'étiquette du haut-parleur dans chaque enregistrement, par exemple, renommer « Speaker 2 » en « Car Dealer », ce qui facilite la lecture et la lecture par les utilisateurs. mémoire.
Recorder permet aux utilisateurs de renommer les balises des locuteurs pour améliorer la lisibilité.
Google a lancé sa puce Google Tensor auto-développée sur les derniers téléphones Pixel. Le système actuel de segmentation et de clustering d'empreintes vocales fonctionne principalement sur le module CPU de Google Tensor. À l'avenir, Google prévoit d'exécuter le système de segmentation et de clustering d'empreintes vocales sur le module TPU de Google Tensor afin de réduire davantage la consommation d'énergie. De plus, Google espère également étendre cette fonctionnalité à d'autres langues en plus de l'anglais à l'aide d'encodeurs d'empreintes vocales multilingues et de modèles de reconnaissance vocale.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!