Maison > Article > Périphériques technologiques > Vous ne trouvez pas le modèle pré-entraîné pour la parole chinoise ? Les versions chinoises Wav2vec 2.0 et HuBERT arrivent
Wav2vec 2.0 [1], HuBERT [2] et WavLM [3] et d'autres modèles de pré-entraînement vocal ont été considérablement améliorés grâce à l'apprentissage auto-supervisé sur des dizaines de milliers d'heures de données vocales non étiquetées (telles que Libri-light) Amélioration des performances des tâches vocales en aval telles que la reconnaissance automatique de la parole (ASR), la synthèse vocale (TTS) et la conversation vocale (VC). Cependant, ces modèles ne disposent pas de versions publiques chinoises, ce qui les rend difficiles à appliquer dans des scénarios de recherche sur la langue chinoise.
WenetSpeech [4] est un ensemble de données vocales multi-domaines de plus de 10 000 heures publié conjointement par le groupe de recherche sur le traitement audio, vocal et linguistique de NPU (ASLP@NPU), Mobvoi et Hillshell. Afin de combler le manque dans les modèles de pré-entraînement à la parole chinoise, nous avons open source les versions chinoises des modèles Wav2vec 2.0 et HuBERT basées sur 10 000 heures de formation aux données WenetSpeech.
Afin de vérifier les performances du modèle pré-entraîné, nous l'avons vérifié sur la tâche ASR. Les résultats expérimentaux montrent que sur la tâche ASR avec 100 heures de données supervisées, la représentation vocale apprise par le modèle de pré-entraînement présente une amélioration significative des performances par rapport aux fonctionnalités acoustiques traditionnelles de FBank. Elle peut même être obtenue avec seulement 100 heures de données supervisées. et 1000 heures de supervision avec des résultats comparables.
Lien du modèle : https://github.com/TencentGameMate/chinese_speech_pretrain
Figure 1 : structure du modèle ve c 2.0 (Baevski et al. . , 2020)
Wav2vec 2.0 [1] est un modèle de pré-entraînement vocal non supervisé publié par Meta en 2020. Son idée principale est de construire une cible d'entraînement supervisée auto-construite grâce à la quantification vectorielle (VQ), de masquer l'entrée en grande quantité, puis d'utiliser la fonction de perte d'apprentissage contrastive pour l'entraînement. La structure du modèle est illustrée dans la figure 1 ci-dessus. L'extracteur de fonctionnalités basé sur le réseau neuronal convolutationnel (CNN) code l'audio d'origine en une séquence de fonctionnalités de trame et convertit chaque fonctionnalité de trame en une fonctionnalité discrète Q via le module VQ, qui est utilisé comme cible auto-supervisée. Dans le même temps, la séquence de caractéristiques de la trame subit une opération de masquage puis entre dans le modèle Transformer [5] pour obtenir la représentation contextuelle C. Enfin, la distance entre la représentation contextuelle de la position du masque et la caractéristique discrète q correspondante est raccourcie en comparant la fonction de perte d'apprentissage, c'est-à-dire la paire d'échantillons positifs. Dans l'article original, le modèle Wav2vec 2.0 BASE utilise une structure Transformer à 12 couches et est entraîné avec 1 000 heures de données LibriSpeech. Le modèle LARGE utilise une structure Transformer à 24 couches et est entraîné avec 60 000 heures de données Libri-light. En termes de temps d'entraînement, le modèle BASE utilise 64 cartes graphiques V100 pour s'entraîner pendant 1,6 jour, et le modèle LARGE utilise 128 cartes graphiques V100 pour s'entraîner pendant 5 jours. Lors de l'évaluation ASR en aval, même en utilisant seulement 10 minutes de données supervisées, le système a quand même obtenu un résultat de taux d'erreur sur les mots (WER) de 4,8.
Figure 2 : Structure du modèle HuBERT (Hsu et al., 2021)
HuBERT [2] est un modèle publié par Meta en 2021, et la structure du modèle est similaire à Wav2ve c 2.0, la différence réside dans la méthode de formation. Wav2vec 2.0 discrétise les fonctionnalités vocales en tant que cible auto-supervisée pendant la formation, tandis que HuBERT obtient la cible de formation en effectuant un regroupement K-means sur les fonctionnalités MFCC ou HuBERT. Le modèle HuBERT adopte une méthode de formation itérative. La première itération du modèle BASE effectue un clustering sur les fonctionnalités MFCC. La deuxième itération effectue un clustering sur les fonctionnalités de la couche intermédiaire du modèle HuBERT obtenu dans la première itération. La deuxième itération du modèle BASE extrait les fonctionnalités pour le clustering. À en juger par les résultats expérimentaux de l'article original, le modèle HuBERT est meilleur que Wav2vec 2.0, en particulier lorsque les tâches en aval ont très peu de données d'entraînement supervisées, comme 1 heure et 10 minutes.
Configuration expérimentaleNous utilisons 10 000 heures de données chinoises de l'ensemble WenetSpeech [4] train_l comme données de pré-entraînement non supervisées. Les données proviennent principalement de YouTube et de podcasts, couvrant différents types de scènes d'enregistrement, de bruit de fond, de styles de parole, etc. Ses domaines comprennent principalement les livres audio, les narrations, les documentaires, les séries télévisées, les interviews, les actualités, les lectures, les discours, les émissions de variétés et autres, etc. 10 scènes majeures. Nous avons formé les modèles Wav2vec 2.0 et HuBERT respectivement sur la base de la boîte à outils Fairseq [6], en suivant la configuration du modèle de [1, 2], et chaque modèle pré-entraîné comprend deux tailles : BASE et LARGE. Pour le modèle BASE, nous utilisons 8 cartes graphiques A100, l'accumulation de gradient est de 8 et simulons 64 cartes graphiques pour la formation. Pour le modèle LARGE, nous utilisons 16 cartes graphiques A100 avec une accumulation de gradient de 8, simulant 128 cartes graphiques pour la formation.
Vérification des tâches de reconnaissance vocale en avalAfin de vérifier l'effet du modèle pré-entraîné sur la tâche ASR en aval, nous suivons la configuration expérimentale du modèle Conformer [10] dans la boîte à outils ESPnet [7,8,9] , c'est-à-dire que le modèle pré-entraîné est utilisé comme L'extracteur de fonctionnalités effectue une sommation pondérée des représentations de couche cachée du modèle de pré-entraînement d'extraction de parole d'entrée, et la représentation vocale résultante remplacera les fonctionnalités FBank traditionnelles comme entrée du Modèle conforme ASR.
Nous avons utilisé l'ensemble d'entraînement Aishell de 178 heures comme données supervisées pour l'entraînement et avons comparé les mots en utilisant respectivement les fonctionnalités FBank, les fonctionnalités du modèle Wav2vec 2.0 BASE/LARGE et les fonctionnalités du modèle HuBERT BASE/LARGE. Résultats du taux d’erreur de caractère (CER). Dans le même temps, nous avons également comparé son effet sur l'ensemble de tests Aishell lors de l'utilisation de l'ensemble WenetSpeech train_l de 10 000 heures de données chinoises pour la formation. Les données d'entraînement utilisent une vitesse variable (0,9, 1,0, 1,1 fois) et la technologie d'augmentation des données SpecAugment, la méthode de décodage est la recherche de faisceau et un modèle de langage basé sur Transformer est utilisé pour la nouvelle notation.
Tableau 1 : Résultats du taux d'erreur de mots (CER%) de différents modèles sur l'ensemble de test Aishell
Comme le montrent les résultats du tableau 1, en combinant des dizaines de milliers d'heures de données non supervisées. Le modèle de pré-entraînement entraîné et les effets des tâches ASR en aval ont été considérablement améliorés. En particulier lors de l'utilisation du modèle HuBERT LARGE, une amélioration relative d'environ 30 % du CER a été obtenue sur l'ensemble de test, obtenant ainsi les meilleurs résultats de l'industrie sous 178 heures de données de formation supervisées.
Nous avons utilisé l'ensemble WenetSpeech train_s de 100 heures de données chinoises comme données supervisées pour la formation, et avons comparé l'utilisation des fonctionnalités FBank, les fonctionnalités du modèle Wav2vec 2.0 BASE/LARGE et HuBERT BASE/LARGE caractéristiques du modèle respectivement. Dans le même temps, nous avons également comparé les résultats du modèle en utilisant l'ensemble WenetSpeech train_m pour 1 000 heures et l'ensemble train_l pour 10 000 heures de fonctionnalités FBank de données chinoises. Les données d'entraînement n'utilisent pas la technologie d'augmentation des données à vitesse variable ou SpecAugment, la méthode de décodage est la recherche par faisceau et aucune nouvelle notation de modèle de langage n'est utilisée.
Tableau 2 : Résultats du taux d'erreur de mots (CER%) de différents modèles sur l'ensemble de tests WenetSpeech
Comme le montrent les résultats du tableau 2, en combinant des dizaines de milliers d'heures de données non supervisées Avec le modèle pré-entraîné entraîné, les résultats ASR en aval sont grandement améliorés. Surtout lorsque vous utilisez HuBERT LARGE comme extracteur de représentation vocale, le modèle ASR formé avec 100 heures de données supervisées est plus performant que le modèle formé avec 1 000 heures de fonctionnalités FBank, et est même proche du modèle formé avec 10 000 heures de données.
Pour plus de résultats expérimentaux sur les tâches vocales en aval, veuillez suivre le lien GitHub (https://github.com/TencentGameMate/chinese_speech_pretrain). Tout le monde est invité à utiliser le modèle de pré-formation à la parole chinoise que nous proposons pour effectuer des travaux de recherche et explorer l'application du modèle de pré-formation à la parole en chinois et dans des scénarios associés.
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!