Optimiser la diarisation des locuteurs pour des résultats plus rapides
Méthodes pour accélérer la diarisation des locuteurs sans sacrifier la précision.
― 8 min lire
Table des matières
La diarisation des locuteurs, c'est une technologie qui aide à répondre à la question : "Qui a parlé quand ?" C'est super utile dans des fichiers audio où plein de gens parlent, comme dans des réunions ou des interviews. Savoir quand chaque locuteur parle est important pour transcrire l'audio correctement. Ce processus est particulièrement crucial dans des domaines comme les réunions en ligne, les audiences judiciaires et les appels de résultats, où avoir une transcription rapide peut donner un avantage concurrentiel.
Diarisation des Locuteurs en Ligne
Dans certaines situations, c'est crucial que la transcription se fasse avec très peu de retard. Ce type de diarisation des locuteurs est appelé diarisation des locuteurs en ligne. Le pipeline DIART est un système conçu pour ça. Il se compose de deux parties principales : un modèle de segmentation qui identifie quand un locuteur est actif et un modèle d'embedding qui représente la voix de chaque locuteur. Le modèle d'embedding prend généralement le plus de temps, ce qui nous pousse à chercher des moyens de le rendre plus rapide.
Optimiser la Vitesse dans le Pipeline DIART
L'objectif principal ici est de rendre le système DIART plus rapide sans perdre trop de précision dans les résultats. Plusieurs méthodes peuvent être appliquées pour améliorer la vitesse du modèle d'embedding. Ces méthodes incluent la décomposition du modèle en parties plus simples (Distillation de connaissances), la suppression des parties inutiles (Élagage), la réduction de la complexité des valeurs utilisées (Quantification) et la fusion des couches (Fusion de couches). On va regarder chaque méthode pour voir leur efficacité.
Distillation de Connaissances
Dans la distillation de connaissances, un modèle complexe, appelé le professeur, aide à entraîner un modèle plus simple, connu sous le nom d'étudiant. L'idée est d'apprendre à l'étudiant à imiter les prédictions du professeur. En théorie, cela permet au modèle étudiant de performer de manière similaire au professeur tout en étant moins complexe, ce qui signifie qu'il peut fonctionner plus vite et nécessite moins de mémoire. Cette méthode est particulièrement utile pour les modèles d'apprentissage profond comme les réseaux de neurones convolutionnels (CNN).
Élagage
L'élagage vise à réduire la taille d'un réseau de neurones en supprimant certaines de ses connexions. Cela peut se faire de deux manières : l'élagage structuré, qui enlève des sections entières du modèle, et l'élagage non structuré, qui annule des connexions individuelles. Bien que l'élagage aide à simplifier les modèles, il ne va pas toujours les rendre plus rapides comme prévu. Parfois, enlever des parties ne conduit pas à une taille de modèle plus petite ou à une performance plus rapide.
Quantification
La quantification réduit la quantité de données nécessaires pour représenter les poids et les activations du modèle. Le plus souvent, cela consiste à passer d'un format plus complexe à un format plus simple qui utilise moins de bits. Par exemple, utiliser un format qui utilise 8 bits au lieu de 32 bits pour les poids du modèle. Cela conduit généralement à un traitement plus rapide et utilise moins de mémoire, ce qui peut être bénéfique pour la performance.
Fusion de Couches
La fusion de couches consiste à prendre plusieurs couches du modèle et à les combiner en une seule. En procédant ainsi, moins d'opérations sont nécessaires lors de l'exécution du modèle, ce qui peut accélérer les choses. Cette technique fonctionne bien pour les modèles qui ont une série de couches pouvant être exécutées ensemble.
Utilisation de Différents Formats
Une autre méthode pour améliorer la vitesse consiste à changer le modèle en un format différent qui utilise un autre système d'exécution. Le format ONNX est une de ces options. Il permet des améliorations matérielles potentielles pouvant conduire à des vitesses de traitement plus rapides. Cependant, dans certains cas, la conversion vers ce format pourrait augmenter la latence au lieu de la réduire.
Méthode de Recherche
Pour voir comment fonctionnent ces méthodes d'optimisation, une expérience structurée a été réalisée. D'abord, une version plus petite du modèle d'embedding a été créée et entraînée en utilisant la distillation de connaissances. Après ça, d'autres méthodes d'amélioration de la vitesse ont été appliquées à ce modèle optimisé pour évaluer leur efficacité à améliorer la vitesse tout en maintenant la précision.
Collecte de Données
Pour les expériences, un ensemble de données spécifique appelé AMI corpus a été utilisé pour entraîner le modèle d'embedding réduit. Cet ensemble de données comprend différents enregistrements audio qui peuvent aider le modèle à apprendre à différencier les locuteurs. Un autre ensemble de données, Voxconverse, a été utilisé pour tester la performance des modèles optimisés. Cette combinaison a permis une évaluation approfondie de l'efficacité des changements effectués.
Modèles d'Apprentissage Automatique
Le pipeline DIART se compose d'un modèle d'embedding et d'un modèle de segmentation. Le modèle d'embedding prend des entrées audio et les transforme en représentations qui saisissent la voix de chaque locuteur. Le modèle de segmentation classifie ensuite ces représentations pour identifier qui parle à chaque moment.
Configuration Expérimentale
Dans cette partie, la structure de l'expérience est décrite. Ça commence par l'entraînement du modèle d'embedding réduit et l'utilisation de la distillation de connaissances. Après l'entraînement, diverses méthodes d'optimisation sont appliquées pour voir comment elles affectent la performance du modèle.
Résultats des Méthodes d'Optimisation
Les résultats ont montré que la distillation de connaissances a conduit à une légère augmentation de la vitesse, mais il y a aussi eu une petite baisse de l'exactitude. Les méthodes d'élagage n'ont pas significativement amélioré la vitesse. Cependant, la fusion de couches et la quantification ont apporté des bénéfices notables en vitesse sans nuire à l'exactitude. Par contre, la conversion du modèle en format ONNX a, de manière inattendue, réduit la vitesse.
Distillation de Connaissances
Quand le modèle plus petit entraîné avec la distillation de connaissances a été comparé au modèle original plus grand, il nécessitait moins de mémoire et s'exécutait plus vite. Cependant, l'exactitude a pris un petit coup. Cela suggère qu'un entraînement supplémentaire avec plus de données pourrait aider à regagner une partie de l'exactitude.
Élagage
Les effets de l'élagage étaient négligeables en termes de vitesse. Bien que le processus ait augmenté la parcimonie du modèle, il n'a pas diminué le nombre total de paramètres comme prévu. Cela indique que l'élagage peut seulement modifier les connexions existantes plutôt que de simplifier le modèle dans son ensemble.
Fusion de Couches
La fusion de couches a entraîné une augmentation notable de la vitesse. La taille du modèle est restée la même, mais moins d'opérations étaient nécessaires grâce à la combinaison des couches. Cette méthode s'est avérée efficace pour accélérer le processus tout en maintenant le même niveau de précision.
Quantification
La quantification int8 a réduit efficacement la mémoire requise pour le modèle et amélioré la vitesse. Cette méthode change la façon dont les poids sont stockés, entraînant une diminution de la quantité de données traitées lors de l'inférence, ce qui mène à des résultats plus rapides.
Format ONNX
La conversion au format ONNX n'a pas produit les améliorations de vitesse attendues. Au contraire, cela a augmenté le temps de traitement. Ce résultat inattendu indique qu'il y a besoin d'investiguer davantage pour savoir pourquoi cela a pu se produire.
Conclusion
En conclusion, l'application de diverses méthodes d'optimisation sur le pipeline DIART a conduit à des résultats différents. Des techniques comme la distillation de connaissances, la fusion de couches et la quantification se sont révélées efficaces pour améliorer la vitesse du modèle tout en gardant l'exactitude relativement constante. Cependant, des méthodes comme l'élagage n'ont pas apporté de bénéfices en termes de vitesse ou de taille de mémoire.
Le travail a mis en avant les défis et succès potentiels qui viennent avec l'optimisation des modèles pour la diarisation des locuteurs. Les futures explorations pourraient se concentrer sur l'optimisation des procédures d'entraînement pour améliorer l'exactitude et approfondir les résultats inattendus de la conversion ONNX. Dans l'ensemble, cela montre que les approches classiques d'optimisation peuvent être bénéfiques pour les modèles utilisés dans la diarisation des locuteurs et des applications similaires.
Titre: An approach to optimize inference of the DIART speaker diarization pipeline
Résumé: Speaker diarization answers the question "who spoke when" for an audio file. In some diarization scenarios, low latency is required for transcription. Speaker diarization with low latency is referred to as online speaker diarization. The DIART pipeline is an online speaker diarization system. It consists of a segmentation and an embedding model. The embedding model has the largest share of the overall latency. The aim of this paper is to optimize the inference latency of the DIART pipeline. Different inference optimization methods such as knowledge distilation, pruning, quantization and layer fusion are applied to the embedding model of the pipeline. It turns out that knowledge distillation optimizes the latency, but has a negative effect on the accuracy. Quantization and layer fusion also have a positive influence on the latency without worsening the accuracy. Pruning, on the other hand, does not improve latency.
Auteurs: Roman Aperdannier, Sigurd Schacht, Alexander Piazza
Dernière mise à jour: 2024-08-05 00:00:00
Langue: English
Source URL: https://arxiv.org/abs/2408.02341
Source PDF: https://arxiv.org/pdf/2408.02341
Licence: https://creativecommons.org/licenses/by-sa/4.0/
Changements: Ce résumé a été créé avec l'aide de l'IA et peut contenir des inexactitudes. Pour obtenir des informations précises, veuillez vous référer aux documents sources originaux dont les liens figurent ici.
Merci à arxiv pour l'utilisation de son interopérabilité en libre accès.