Comment étiqueter votre chemin vers une reconnaissance vocale automatique (ASR) précise

Les contributeurs
Aucun élément trouvé.
S'abonner à la newsletter
Partager cet article

Introduction

Cet article de blog explore le processus d'étiquetage des données vocales pour la reconnaissance automatique de la parole (ASR). La reconnaissance automatique de la parole est le processus de transcription de la langue parlée en texte, et elle nécessite de grandes quantités de données vocales non étiquetées ou faiblement étiquetées pour entraîner les modèles. Cependant, le pré-entraînement des modèles ASR sur ce type de données peut entraîner des erreurs et des biais, c'est pourquoi l'étiquetage des données vocales est crucial pour des performances précises et robustes. Ce billet traite des différents types de données vocales, des méthodes d'étiquetage, des techniques de contrôle de la qualité et des formats d'annotation utilisés pour entraîner les modèles de RPA. Il comprend également des informations sur les formats de données, la diarisation du locuteur, la durée des fichiers, l'augmentation des données et les avantages et inconvénients des différentes méthodes d'étiquetage. Il est essentiel de comprendre le type de données vocales utilisées et de développer une méthodologie d'étiquetage appropriée pour construire un modèle ASR parfait.

‍

‍

Qu'est-ce que la reconnaissance automatique de la parole (ASR) et pourquoi avons-nous besoin de données étiquetées ?

En bref, la RPA est le processus par lequel une machine peut comprendre et transcrire la langue parlée en texte. Aujourd'hui, les modèles de RPA tels que wav2vec 2.0 et Whisper sont entraînés sur de grandes quantités de données vocales non étiquetées ou faiblement étiquetées afin d'apprendre les modèles et les caractéristiques du langage parlé. Le pré-entraînement des modèles ASR sur ce type de données peut réduire la quantité de données étiquetées nécessaires pour obtenir de bonnes performances, mais il peut également entraîner des erreurs et des biais dans le modèle.

C'est pourquoi l'étiquetage des données vocales est essentiel pour construire le modèle parfait pour votre cas d'utilisation. Les données vocales étiquetées permettent aux modèles pré-entraînés d'apprendre une représentation plus précise et plus robuste de la langue parlée qu'ils rencontreront et de réduire les erreurs : Taux d'erreur de mot (WER) et taux d'erreur de caractère (CER).

Cet article de blog examinera les différents types de données vocales, les méthodes d'étiquetage, les techniques de contrôle de la qualité et les formats d'annotation utilisés pour former les modèles ASR. Alors, soyons funky et plongeons dans l'étiquetage des données vocales !

Types de données vocales

Les données vocales peuvent se présenter sous différentes formes, et chaque type présente des défis uniques en matière d'étiquetage. Voici quelques-uns des types de données vocales les plus courants :

  • Discours lu : Ce type de données vocales est scénarisé et l'orateur lit à partir d'un texte écrit. Le discours lu peut inclure des livres, des articles ou des discours préparés et est généralement le plus facile à étiqueter.
  • Discours spontané : Ce type de données vocales est naturel, non scénarisé et difficile à transcrire. Les discours spontanés peuvent inclure des interviews et des discours publics.
  • Discours conversationnel : Ce type de données vocales implique deux ou plusieurs locuteurs qui interagissent entre eux. Il peut s'agir d'interviews, de débats ou de conversations téléphoniques.

Chaque type de données vocales présente des défis uniques en matière d'étiquetage. Par exemple, la parole spontanée peut nécessiter plus d'informations contextuelles pour être transcrite avec précision, tandis que la parole lue peut nécessiter plus d'attention aux détails pour capturer des mots ou des phrases spécifiques. La parole conversationnelle peut nécessiter l'identification du locuteur et l'annotation du tour de parole pour différencier les locuteurs.

Il est essentiel de comprendre le type de données vocales utilisées pour développer la méthodologie d'étiquetage appropriée. En outre, le fait de disposer d'un ensemble diversifié de types de données vocales peut améliorer la robustesse et la précision des modèles ASR.

Données

Pour étiqueter les données, il faut d'abord s'assurer qu'elles sont dans un format approprié. Nous n'aborderons pas la collecte des données dans ce billet de blog, mais nous commencerons par ce qu'il faut faire lorsque les données sont disponibles et que vous souhaitez affiner votre modèle. Plusieurs étapes doivent être prises en compte.

*Si nous prenons le terme "format" dans son sens le plus courant pour les ingénieurs :

ÉchantillonsLes formats .wav et .mp3 sont les plus courants pour les échantillons audio et sont compatibles avec la plupart des bibliothèques audio Python et des logiciels d'annotation.

Transcriptions: Le schéma JSON est votre ami. Le format exact varie en fonction du logiciel d'annotation utilisé.

Diarisation de l'orateur

Le prétraitement par la diarisation du locuteur est toujours nécessaire pour l'inférence sur des modèles comme wav2vec 2.0. Sinon, vous vous retrouverez avec la transcription des deux locuteurs dans un seul bloc de texte.

Pas de diarisation (à gauche), diarisation du locuteur sans attribution (au milieu), diarisation du locuteur et attribution (à droite).

Whisper permet la diarisation du locuteur mais pas l'attribution du locuteur, ce qui signifie que vous obtiendrez des blocs de parole distincts dans la sortie mais que vous ne saurez pas à qui ils appartiennent.

Il est donc conseillé d'utiliser la diarisation des locuteurs pour le réglage fin et l'inférence pour wav2vec 2.0 et Whisper. Si les données ne sont pas encore collectées, vous pouvez demander à ce que les différents locuteurs soient enregistrés sur des canaux différents (par exemple si la source d'entrée est un appel téléphonique) pour externaliser l'étape de diarisation et garantir de meilleurs résultats. Si cela n'est pas possible, un simple diariseur est généralement l'outil de choix, mais vous pouvez lire notre blog sur la diarisation des locuteurs pour vous aider à trouver l'outil optimal pour vos données.

Durée du fichier

Les étiqueteurs vous remercieront s'ils doivent annoter des bribes de fichiers audio plutôt qu'un appel téléphonique entier de 5 minutes en une seule fois. Whisper est réglé sur des morceaux de 30 secondes de données, wav2vec 2.0 sur des dizaines de secondes. Vous pouvez utiliser des données étiquetées coupées en bribes plus courtes (ou plus longues), mais elles seront complétées (ou tronquées) par le script de réglage fin en conséquence. D'après notre expérience, la longueur optimale pour l'annotation se situe entre 5 et 8 secondes.

Il est conseillé de ne pas nettoyer votre audio des silences ou des bruits de fond (comme la musique ou la toux), car votre modèle doit également apprendre à gérer le bruit et l'absence de parole. Vous ne voulez pas que le modèle soit affiné sur des données artificiellement propres. Ce qu'il voit maintenant doit être ce qu'il obtiendra plus tard.

Augmentation des données

Pour rendre votre modèle plus robuste, vous pouvez envisager d'augmenter vos échantillons afin d'accroître la diversité et la quantité de votre ensemble de données en générant artificiellement de nouvelles données à partir de données existantes. Cela peut s'avérer particulièrement utile pour les accents ou dialectes sous-représentés. Les techniques qui peuvent être utilisées pour l'augmentation des données vocales sont les suivantes :

  • Changement de tonalité: pour simuler différents accents ou états émotionnels.
  • Décalage du tempo / décalage du volume / insertion de silence: modification de la durée de l'enregistrement vocal pour simuler des variations dans la parole ou pour ajouter des pauses dans la parole).
  • Réduction du bruit / injection: ajout ou suppression de la musique, du bruit blanc, des conversations de fond, ... de l'enregistrement.
  • Distorsion de canal : ajout de réverbération ou d'écho pour simuler différents environnements d'enregistrement.

Ces techniques peuvent être utilisées isolément ou en combinaison, mais elles peuvent diminuer la qualité de votre ensemble de données ou apprendre au modèle des comportements inattendus.

Étiquetage

Méthodes

L'étiquetage des données vocales peut prendre du temps et nécessiter beaucoup de travail, et plusieurs méthodes sont disponibles pour cette tâche. Chaque méthode a ses avantages et ses inconvénients, et la méthode appropriée dépend de la taille de l'ensemble de données, de la complexité du discours et des ressources disponibles. Voici les deux méthodes d'étiquetage les plus courantes utilisées pour les données vocales qui incluent l'étiquetage manuel :

  • Transcription humaine: Cette méthode implique que des annotateurs humains écoutent les données vocales et les transcrivent manuellement. L'étiquetage manuel est considéré comme l'étalon-or pour l'étiquetage des données vocales, car il fournit des annotations de haute qualité avec une grande précision. Toutefois, cette méthode est longue et coûteuse, en particulier pour les grands ensembles de données.
  • Transcription assistée par ordinateur (également appelée assistée par modèle ou hybride): Cette méthode utilise des outils de reconnaissance automatique de la parole (ASR) pour transcrire les données vocales et corriger manuellement les erreurs. L'étiquetage semi-automatique permet de réduire considérablement le temps et le coût de l'étiquetage manuel tout en garantissant des annotations de haute qualité, qui peuvent être encore plus précises que sans assistance informatique (voir la figure ci-dessous). Le principal inconvénient de cette méthode est que les transcriptions fournies peuvent conduire à un biais de confirmation pour, par exemple, les fautes d'orthographe, l'inclusion/exclusion de mots vides ou de ponctuation, etc.
Figure du papier WhisperCette figure montre les distributions WER de 25 enregistrements de l'ensemble de données Kincaid46 transcrits par Whisper, 4 systèmes ASR commerciaux (A-D), un service de transcription humaine assistée par ordinateur (E) et 4 services de transcription humaine (F-I)). Cela montre que les annotations assistées par ordinateur peuvent non seulement réduire le temps et les coûts, mais aussi améliorer la précision.

Métadonnées

En fonction de vos besoins, vous pourriez vouloir annoter des métadonnées telles que

  • Sujet ou domaine (médical, juridique, ...)
  • Identification du locuteur, langue/dialecte ou émotion
  • Niveau ou type de bruit de fond
  • Canal ou dispositif d'enregistrement

Ces informations peuvent fournir aux modèles ASR davantage d'informations contextuelles pour les aider à mieux comprendre et transcrire les données vocales et à évaluer les performances du modèle sur différentes caractéristiques.

Logiciel d'annotation

De nombreux outils et logiciels sont disponibles pour étiqueter les données vocales, allant de simples éditeurs de texte à des logiciels d'annotation spécialisés. Chez ML6, nous aimons Label Studio, qui offre le plus de possibilités de personnalisation et de fonctionnalités élaborées pour de nombreux domaines. Voici quelques-unes de ses caractéristiques:

  • Prétranscriptions (pour l'étiquetage assisté par ordinateur)
  • Événements audio (par exemple pour la diarisation du locuteur)
  • Cases à cocher personnalisées (par exemple pour les métadonnées)
Capture d'écran d'un exemple d'environnement d'étiquetage. Emprunté à l'article du blog Label Studio sur l'étiquetage des données audio.

Un logiciel d'annotation comme Label Studio facilite l'étiquetage d'informations supplémentaires, comme les métadonnées. Il peut également se connecter à votre base de données pour récupérer les extraits audio (et les pré-transcriptions) et enregistrer les transcriptions avec les métadonnées (sous forme de JSON). Label Studio permet également une boucle d'entraînement itérative qui utilise les données annotées par des humains pour améliorer les pré-transcriptions des échantillons qui doivent encore être étiquetés. Un blog sur l'étiquetage des données audio avec Label Studio est disponible ici.

Lignes directrices en matière d'étiquetage

Quels que soient l'outil et la méthode choisis, il est essentiel de disposer d'un guide d'étiquetage, de dispenser une formation pratique et d'analyser les erreurs pour garantir la cohérence et l'exactitude des données (quel que soit le domaine de vos données) :

Un guide d'étiquetage doit expliquer comment utiliser le logiciel choisi. Il fournit des instructions claires sur l'annotation des différents aspects de la parole, tels que l'identification du locuteur, la transcription et les métadonnées. Cela permet de s'assurer que tous les annotateurs comprennent ce que l'on attend d'eux et que les annotations sont cohérentes d'un annotateur à l'autre.

L'étiquetage des données vocales nécessite un alignement important entre les étiqueteurs. Vous devez vous assurer que ces étiqueteurs restent cohérents en ce qui concerne l'étiquetage des nombres ("1" contre "un"), des majuscules ("jebois du café" contre "je bois du café"), des caractères spéciaux ("größer" contre "groesser"), des abréviations ("fe" contre "f.e." contre "par exemple", ou "ML6" contre "Em El Six"), de la ponctuation, des mots interrompus au début ou à la fin d'un échantillon ("" contre "good-" contre "goodbye"), des mots de remplissage ("euhm"), et bien d'autres choses encore. Il est également conseillé d'inclure une liste de mots spécifiques au domaine (= jargon) dans le guide d'étiquetage. En outre, il est essentiel d'établir un accord inter-évaluateurs entre les annotateurs afin de s'assurer qu'ils appliquent tous le guide d'étiquetage de manière cohérente. L'accord inter-juges est l'accord entre les annotateurs lorsqu'ils étiquettent les mêmes données vocales, qui peut être calculé avec le kappa de Cohen au niveau des mots et des caractères des annotations. L'établissement d'accords inter-annotateurs peut aider à identifier et à traiter les divergences ou les désaccords entre les annotateurs, améliorant ainsi la précision et la fiabilité globales des données vocales étiquetées.

Il est également recommandé d'organiser un atelier pratique au cours duquel le logiciel d'étiquetage est présenté. Certains échantillons sont étiquetés par tous les annotateurs afin de s'assurer que tout le monde obtient les mêmes résultats. Les questions peuvent être abordées directement et un consensus sur les cas limites peut être trouvé et, si nécessaire, ajouté ou expliqué plus en détail dans le manuel d'étiquetage.

Au cours du processus d'étiquetage, une analyse des erreurs doit être effectuée régulièrement : recueillez un échantillon représentatif des données vocales étiquetées, identifiez les types d'erreurs ou d'incohérences, classez-les, déterminez leur fréquence et analysez les causes sous-jacentes. Votre guide d'étiquetage doit être révisé en conséquence et les annotateurs doivent recevoir une formation supplémentaire. Dans certains cas, il est nécessaire de passer à un autre outil ou une autre méthode d'étiquetage.

Vous pouvez consulter la section "Étiquetage des données" d'un autre article de blog que nous avons écrit ici pour plus de détails.

Conclusion

En conclusion, l'étiquetage des données vocales est essentiel pour développer des modèles ASR précis et robustes. Les données vocales étiquetées permettent aux modèles pré-entraînés d'apprendre une représentation plus précise et plus robuste de la langue parlée, ce qui peut réduire les erreurs d'orthographe et améliorer les performances globales du modèle. Toutefois, l'étiquetage des données vocales peut prendre beaucoup de temps et nécessiter une main-d'œuvre importante, et plusieurs méthodes et outils sont disponibles.

Il est essentiel de choisir la méthodologie d'étiquetage et les mesures de contrôle de la qualité appropriées en fonction du type de données vocales utilisées et des ressources disponibles. En outre, le fait de disposer d'un ensemble diversifié de types de données vocales et d'inclure des informations de métadonnées peut améliorer la robustesse et la précision des modèles ASR.

Enfin, une analyse régulière des erreurs et la révision du guide d'étiquetage peuvent garantir la cohérence et la précision des données vocales étiquetées. Avec les bons outils, les bonnes méthodologies et les bonnes mesures de contrôle de la qualité, vous pouvez étiqueter votre chemin vers des modèles ASR précis et robustes.

Restez à l'écoute pour d'autres articles de blog sur ASR, tels que l'optimisation de l'hébergement de Whisper ou les détails de son réglage !

Articles de blog connexes :

‍

Postes connexes

Voir tout le contenu
Aucun résultat n'a été trouvé.
Il n'y a pas de résultats correspondant à ces critères. Essayez de modifier votre recherche.
Grand modèle linguistique
Modèles de fondation
Entreprise
Personnes
Données Structurées
Chat GPT
Durabilité
Voix et son
Développement frontal
Protection des données et sécurité
IA responsable/éthique
Infrastructure
Hardware et capteurs
MLOps
IA générative
Natural Language Processing
Vision par ordinateur