Tencent : synthèse vocale en temps réel améliorée

Les processeurs Intel® Xeon® Scalable de 3ᵉ génération alimentent Xiaowei, la plateforme d'accès aux services vocaux et vidéo intelligents de Tencent Cloud.

En bref :

  • Tencent travaille sur le développement de Xiaowei, sa plateforme d'accès aux services vocaux et vidéo intelligents. La plateforme, dont la synthèse vocale (TTS) est basée sur un vocodeur neuronal, effectue une conversion et une distribution TTS de grande qualité via des modèles acoustiques de bout en bout.

  • Elle utilise les processeurs Intel® Xeon® Scalable de 3ᵉ génération dotés des extensions BFloat et de la technologie Intel® Advanced Vector Extensions 512 qui réduisent considérablement l'accès à la mémoire, et prend en charge l'accélération matérielle lorsqu'elle est associée à la bibliothèque Intel® oneAPI Deep Neural Network Library.

author-image

Par

Les applications vocales intelligentes connaissent des avancées et une croissance sans précédent. Le marché chinois de la parole intelligente devrait atteindre 19,48 milliards de yuans d'ici la fin de 20211. Tencent s'est consacré à la recherche sur l'intelligence artificielle (IA) et aux innovations Internet pour épauler les fournisseurs d'appareils vocaux intelligents. L'entreprise travaille d'arrache-pied sur le développement de Xiaowei, sa plateforme d'accès aux services vocaux et vidéo intelligents. La plateforme, dont la synthèse vocale (TTS) est basée sur un vocodeur neuronal situé dans le cœur, effectue une conversion et une distribution TTS de grande qualité via des modèles acoustiques de bout en bout.

Bien que les modèles de vocodeur classiques comme WaveNet produisent un son de grande qualité, le niveau de complexité et de calcul qu'ils exigent ralentit la synthèse vocale, ce qui ne leur permet pas de répondre pleinement aux besoins en matière de performances concrètes dans des scénarios de production réels. L'accès continu à un grand nombre d'appareils constitue également un obstacle au débit de la plateforme. Augmenter la capacité des serveurs n'est tout simplement pas une solution idoine, car elle ferait bondir les coûts de déploiement. C'est pourquoi Tencent a décidé d'adopter des modèles de vocodeur encore plus avant-gardistes pour optimiser en profondeur la plateforme Xiaowei. En étroite collaboration avec Intel, Tencent a mis sur pied Parallel WaveNet (pWaveNet) et WaveRNN, des modèles de vocodeur personnalisés qui offrent à la plateforme des performances exceptionnelles en matière de synthèse vocale tout en réduisant efficacement le coût total de possession.

Ces solutions utilisent les processeurs Intel® Xeon® Scalable de 3ᵉ génération comme moteur de traitement principal. Outre l'augmentation du nombre de cœurs et de threads qui dote la plateforme de capacités de calcul renforcées, le processeur de nouvelle génération est également équipé d'extensions BFloat (BF16) et de la technologieIntel® Advanced Vector Extensions 512 (Intel® AVX-512), ce qui réduit considérablement l'accès à la mémoire et prend en charge l'accélération matérielle lorsque la plateforme est associée à la bibliothèqueIntel® oneAPI Deep Neural Network Library (oneDNN). Le cache de capacité supérieure du processeur permet également d'améliorer l'efficacité du traitement grâce à des taux de réussite du cache plus élevés. Les solutions personnalisées intégrant les technologies Intel® avancées évoquées ci-dessus ont permis à la plateforme Xiaowei d'offrir des performances de classe mondiale en matière de synthèse vocale aux entreprises et aux fournisseurs d'appareils. Les avis des acteurs du secteur étaient très élogieux.

Grâce aux améliorations continues du débit et des performances en temps réel, la plateforme Xiaowei a pu fournir des services vocaux intelligents de grande qualité pour les applications professionnelles. « L'apport des technologies matérielles et logicielles avancées d'Intel a permis aux solutions personnalisées basées sur les processeurs Intel® Xeon® Scalable de 3ᵉ génération de révéler les performances de la plateforme en matière de synthèse vocale. » - Qiao Tian, chercheur principal, Tencent Cloud

L'IA se déploie dans tous les secteurs et les entreprises émergentes spécialisées dans la fabrication de produits intelligents développent des solutions telles que la navigation vocale, les livres audio, le service client intelligent et les applications de saisie et de reconnaissance vocales basées sur la technologie de synthèse vocale afin de former un cercle complet d'interactions entre l'Homme et la machine. Malgré l'aspect pratique de ces fonctionnalités, beaucoup ont constaté que ces produits pouvaient varier considérablement au niveau des performances et des modes de fonctionnement de l'IA. L'expérience utilisateur doit être améliorée. Cela est en grande partie dû à la différence des plateformes sur lesquelles ces applications sont développées. Par conséquent, les entreprises n'ont pu tirer parti des avantages offerts par ces données ou cette technologie pour fournir des services vocaux intelligents de grande qualité, ni créer une synergie grâce à la connectivité des appareils.

La plateforme d'accès aux services vocaux et vidéo intelligents Xiaowei a été conçue pour surmonter ce goulot d'étranglement. Les capacités vocales et sémantiques de l'IA sont associées aux services de Tencent Cloud pour offrir aux utilisateurs une plateforme avec des performances d'IA améliorées. Grâce au portefeuille riche et aux capacités big data de Tencent, les utilisateurs peuvent également accéder à un large éventail de solutions intégrant les capacités de la plateforme intermédiaire de Tencent dans divers scénarios. Prenez les hôtels intelligents par exemple. Avec l'apport du matériel Xiaowei, des solutions telles que les demandes de renseignements et le contrôle des chambres intelligents sont automatiquement dotées de riches fonctions sensorielles comme la vision et l'audition. Mieux encore, ces produits peuvent être reliés à des applications mobiles courantes comme WeChat, WeChat Map et WeChat Music pour fournir aux utilisateurs une expérience facile et fluide. Dans le domaine des transports, la plateforme améliore considérablement l'expérience utilisateur en exploitant les grandes applications de divertissement telles que QQ Music et Tencent News, en plus de permettre aux constructeurs automobiles d'offrir des interactions intelligentes comme la navigation vocale assistée embarquée. La plateforme Xiaowei de Tencent a aussi été largement exploitée dans d'autres domaines comme l'enseignement, les finances et les médias.

Tout en travaillant avec ses utilisateurs pour développer un écosystème de produits robuste, Tencent n'a jamais cessé d'optimiser ses modèles de vocodeur en mettant à niveau la capacité de synthèse vocale du cœur de sa plateforme pour faire franchir un palier à l'expérience des utilisateurs. La technologie de synthèse vocale peut être utilisée pour convertir des entrées de texte externes ou des données générées par ordinateur en paroles à la consonance naturelle. C'est un processus au cours duquel le vocodeur effectue des calculs et des analyses pour produire des signaux vocaux. Le choix du modèle a un impact majeur sur les résultats de la synthèse. Les vocodeurs traditionnels comme le WaveNet sont des modèles autorégressifs profonds basés sur des réseaux neuronaux convolutifs (CNN). La sortie de la couche précédente est introduite à l'extrémité de la couche d'entrée pour une itération convolutive. La qualité vocale générée se rapproche de celle d'une voix humaine naturelle. Néanmoins, le modèle WaveNet traditionnel présente les inconvénients suivants dans la pratique.

  • Premièrement, la structure complexe de WaveNet implique le besoin d'une puissance de calcul supérieure et une vitesse de synthèse moins satisfaisante. Le modèle peut ne pas être capable de réaliser des scénarios d'interaction vocale intelligente qui exigent des performances élevées en temps réel.
  • Deuxièmement, la prédominance croissante des applications vocales intelligentes signifie que la plateforme Xiaowei doit prendre en charge une grande variété de périphériques. Par conséquent, l'augmentation de la charge de travail (débit) nécessite des modèles de vocodeur aux performances plus élevées en matière de synthèse vocale.

De ce fait, Tencent avait urgemment besoin d'une solution de synthèse vocale de pointe capable de répondre aux exigences de débit en temps réel. Pour résoudre ces problèmes, Tencent s'est tourné vers Intel, leader du secteur et partenaire de longue date, pour développer deux solutions de synthèse vocale personnalisées, notamment le vocodeur pWaveNet et le vocodeur WaveRNN, afin d'améliorer davantage les performances de sa plateforme.

Solution de vocodeur personnalisée Parallel WaveNet

Le modèle pWaveNet a été choisi non seulement pour sa légèreté, mais aussi pour l'introduction de la technologie de distillation par densité de probabilité dans le premier modèle WaveNet. En d'autres termes, un modèle WaveNet préformé agit comme le « professeur » qui guide le réseau « étudiant », qui fait des prévisions dans le cadre d'opérations réelles. Le réseau « étudiant » est plus petit et reçoit un bruit blanc aléatoire en entrée. Il tire des enseignements de la distribution des probabilités du professeur et effectue des ajustements continus pour réduire l'écart avec le « professeur » et optimiser les résultats. Alors que le modèle WaveNet repose sur la génération séquentielle, avec chaque échantillon d'entrée tiré de la sortie précédente, le réseau étudiant pWaveNet tire des enseignements de chaque échantillon audio du professeur au lieu de ses propres résultats précédents. Cela aboutit à des calculs parallèles et à la génération de la séquence entière d'échantillons de sortie en un seul passage, ce qui réduit considérablement le temps nécessaire à la synthèse vocale.

Figure 1 : structure du modèle Parallel WaveNet.

Cependant, l'architecture des réseaux étudiants du modèle pWaveNet était toujours basée sur le réseau neuronal convolutif. Les opérations convolutives sont plus petites, mais en général, plus gourmandes en calcul que les opérations arithmétiques standard. Pour rendre compte de cela, Tencent a personnalisé le modèle pWaveNet en transformant les con1D en une combinaison de plusieurs multiplications GEMM (General Matrix Multiply). Ce faisant, la topologie du réseau a été simplifiée et les calculs réduits. En outre, le mécanisme de parallélisme OpenMP a été introduit afin de maximiser les avantages de pWaveNet dans le traitement parallèle. Ces modifications ont permis au modèle personnalisé de faire des synthèses plus rapides sans sacrifier la qualité.

Solution de vocodeur personnalisée WaveRNN

Au-delà de la recherche de vitesse, la plateforme Xiaowei devait également faire face à l'augmentation du nombre d'appareils connectés, qui a conduit à une demande encore plus importante en matière de débit global. Cela signifie que dans les situations qui nécessitent le calcul d'un grand nombre d'instances, chaque cœur doit traiter autant d'instances que possible. Le moyen le plus direct d'augmenter le débit par cœur est de réduire davantage le calcul.

Pour résoudre ce problème, Tencent a choisi le modèle avancé WaveRNN, sur la base duquel a été développée une solution de synthèse vocale WaveRNN aux performances élevées. Le WaveRNN est essentiellement un réseau récurrent à couche unique avec une double couche softmax. La séquence d'échantillonnage de 16 bits est divisée en deux parties : la partie grossière (8 bits de poids fort) et la partie fine (8 bits de poids faible). Les prévisions sont réalisées par le réseau GRU (Gated Recurrent Unit) en conséquence. La structure du réseau récurrent à couche unique implique que seulement cinq étapes de calcul sont nécessaires pour la prévision d'un échantillon de 16 bits, beaucoup moins que celles requises dans le réseau neuronal profond de WaveNet.

Figure 2 : structure du modèle WaveRNN.

Profitant de sa structure inhérente, Tencent a davantage personnalisé le modèle WaveRNN pour réduire le calcul et accélérer la synthèse vocale. Le réseau de fréquence d'échantillonnage qui constitue l'élément central du modèle personnalisé WaveRNN demeure un réseau récurrent à couche unique avec une double couche softmax. Le modèle personnalisé se distingue par le fait qu'il sépare la partie linéaire de l'entrée d'origine qui recevra une prévision basée sur l'interface LPC, ce qui réduit en grande partie la complexité du calcul. La séquence d'échantillonnage est également divisée en plusieurs sous-bandes. Le calcul de la sous-bande suivante commence dès que celui de la sous-bande précédente a été effectué, ce qui augmente efficacement la vitesse de calcul globale. De plus, la solution utilise une technologie éparse (sparse) pour réduire la demande de bande passante et le temps de calcul global du réseau. Les grands modèles épars peuvent mieux équilibrer la puissance de calcul dans des environnements multicœurs que les petits modèles denses.

Figure 3 : structure du modèle de vocodeur personnalisé WaveRNN.

Les deux clés pour augmenter la vitesse de synthèse sont : accélérer la vitesse de lecture/écriture des données en mémoire et améliorer l'efficacité d'exécution des données. Les extensions BF16 et Intel AVX-512 intégrées aux processeurs Intel® Xeon® Scalable de 3ᵉ génération nous ont aidés à atteindre ces deux objectifs dans nos modèles personnalisés. Le vocodeur personnalisé pWaveNet a permis à la plateforme d'atteindre un facteur temps réel (RTF) de 0,036 pour la synthèse vocale avec un niveau de qualité de MOS de 4,4. « Le vocodeur personnalisé WaveRNN bénéficie également d'une vitesse de synthèse vocale plus rapide tout en gérant des charges de travail plus importantes. » - Qiao Tian, chercheur principal, Tencent Cloud

La solution d'optimisation des modèles de vocodeur personnalisés a apporté d'importantes améliorations à la plateforme Xiaowei de Tencent

Réponse plus rapide : le modèle de vocodeur pWaveNet est avantageux en matière de calcul parallèle grâce à la structure de réseau simplifiée et à l'autonomisation du processeur Intel® Xeon® Scalable de 3ᵉ génération. La synthèse est plus rapide, sans incident sur la qualité vocale. Les nouvelles solutions ont prouvé qu'elles atteignent une fréquence temps réel de 0,036 pendant la synthèse vocale2, avec une note moyenne d'opinion (MOS) de 4,4.

Performances améliorées : grâce à une structure de modèle simplifiée, ainsi qu'au traitement linéaire, à la division en sous-bandes, à la technologie éparse et autres, le modèle de vocodeur WaveRNN a efficacement réduit le calcul. Lorsqu'elle est utilisée avec les processeurs Intel® Xeon® Scalable, la plateforme bénéficie de performances TTS améliorées tout en étant capable de gérer des charges de travail plus importantes. Les performances sur un cœur de processeur exécutant 100 instances se sont avérées presque identiques à celles d'un cœur exécutant une seule instance3.

Puissance de calcul supérieure : grâce à la technologie d'accélération matérielle embarquée, au cœur puissant et à la plus grande mémoire cache du processeur Intel® Xeon® Scalable de nouvelle génération, la plateforme Xiaowei à pu obtenir des performances plus élevées. Cela a permis à la plateforme de servir davantage d'entreprises et de créer un écosystème intelligent de qualité qui renforce les innovations en matière d'IA.

Intel améliore considérablement les solutions de synthèse vocale

Après avoir choisi la structure parfaite pour son modèle, Tencent a opté pour le matériel avancé d'Intel comme support sous-jacent pour maximiser les performances de l'ensemble de la solution. Les deux solutions de vocodeur personnalisées (les modèles PWaveNet et WaveRNN) utilisent les processeurs Intel® Xeon® Scalable de 3ᵉ génération. Disposant de 28 cœurs, ces processeurs sont capables de fournir une puissance de calcul améliorée tout en répondant aux exigences de la plateforme Xiaowei en matière de débit. Les instructions embarquées BF16 jouent un rôle essentiel en améliorant efficacement l'utilisation de la mémoire. Lorsqu'elles sont associées aux instructions Intel® AVX-512 et à la bibliothèque Intel® oneAPI Deep Neural Network Library, le matériel peut être accéléré. Le cache de très grande capacité du nouveau processeur offre des performances de traitement supplémentaires, qui à leur tour font franchir un nouveau seuil de performance à la synthèse vocale.

Les instructions Intel® BF16 réduisent les temps de lecture/écriture de la mémoire

BF16 est un nouveau format à virgule flottante avec 1 bit de signe, 8 bits d'exposant et 7 bits de mantisse. Il peut être considéré comme une version abrégée du FP32 sans les 16 derniers bits de mantisse. Le BF16 a exactement la même taille d'exposant que le FP32. Par conséquent, il conserve une plage dynamique similaire, c'est-à-dire, un niveau de précision similaire. Diminuer les bits de mantisse réduit cependant considérablement le calcul tout en améliorant le stockage de la mémoire et les performances en lecture/écriture. Utiliser le BF16 dans les solutions d'optimisation des modèles a permis d'obtenir une qualité vocale de niveau du FP32, mais avec un temps de synthèse beaucoup plus court.

Figure 4 : structure des formats à virgule flottante BF16 et FP32.

Les instructions Intel® AVX-512 améliorent l'efficacité d'exécution

Intel® AVX-512 est un jeu d'instructions utilisé pour effectuer des opérations SIMD (Single Instruction Multiple Data) sur le processeur. Les performances sont améliorées en permettant à un seul processeur de contrôler plusieurs registres et d'effectuer des opérations de données en parallèle. Intel® AVX-512 dispose d'instructions de 512 bits pour regrouper plus d'opérations par cycle d'horloge. Il prend également en charge 3 opérandes, qui peuvent créer des instructions complexes et avancées pour remplacer plusieurs instructions simples et individuelles afin d'améliorer la flexibilité des instructions, de réduire l'accès à la mémoire et de maximiser l'efficacité d'exécution de chaque cœur.

Le cache de très grande capacité du processeur augmente les performances de traitement

Les données fréquemment utilisées sont stockées dans la mémoire cache située entre le processeur et la mémoire. Le processeur est beaucoup plus rapide que la mémoire en matière de lecture/écriture. C'est la raison pour laquelle la mémoire cache est essentielle car elle fournit un stockage temporaire plus rapide que la mémoire, permettant au processeur de perdre moins de temps à attendre les données. Un processeur consulte d'abord la mémoire cache à proximité pour trouver les données nécessaires, puis la mémoire si les données sont introuvables. Le cache de très grande capacité du processeur d'Intel augmente efficacement le taux de réussite du cache et améliore les performances du processeur.

Figure 5 : augmentation des performances des solutions personnalisées.

Test de performance et validation des solutions

Les performances améliorées fournies par les solutions personnalisées ont été vérifiées conjointement par Tencent et Intel sur les processeurs Intel® Xeon® Scalable de 3ᵉ génération. Le débit et la fréquence en temps réel de la synthèse vocale ont été mesurés à l'aide du BF16 et du FP32 respectivement, afin d'offrir un support de données pour l'expansion future de la plateforme Xiaowei.

Avec le même niveau de qualité (MOS de 4,4), le modèle personnalisé pWaveNet a atteint un RTF de 0,036 et des performances 1,89 fois plus rapides en utilisant le BF16 par rapport au FP322 Le modèle personnalisé WaveRNN a également fait preuve de performances exceptionnelles. On n'a noté qu'une légère différence au niveau des performances entre l'exécution d'une instance et l'exécution de 100 instances sur un seul cœur. Avec le même niveau de qualité (MOS de 4,5), le débit total a atteint 305,1 tandis qu'une vitesse d'accélération des performances 1,54 fois plus rapide a été obtenue en utilisant le BF16 par rapport au FP323.

Perspectives d'avenir

La collaboration entre Tencent et Intel a donné naissance à de nombreuses plateformes et de nombreux systèmes avancés. Grâce aux processeurs Intel® Xeon® Scalable de 3ᵉ génération, les solutions personnalisées ont fourni des performances exceptionnelles dans les scénarios d'application de synthèse vocale. Pour la suite, les deux entreprises prévoient de poursuivre leur collaboration en intégrant davantage de technologies matérielles et logicielles avancées d'Intel et en développant de nouveaux scénarios professionnels. Cela permettra à de nombreuses industries de devenir intelligentes en exploitant de nouvelles valeurs en matière de reconnaissance vocale ou d'empreintes vocales et d'autres disciplines clé de l'IA ; et de progresser vers un écosystème intelligent où les solutions logicielles et matérielles sont pleinement intégrées.

En plus de la plateforme Xiaowei, Tencent et Intel continueront de travailler ensemble pour tirer parti de l'excellente infrastructure offerte par la plateforme Intel® Xeon® Scalable de nouvelle génération afin d'offrir aux utilisateurs des services plus agiles, plus rentables, plus fiables, plus diversifiés et plus innovants en matière d'architecture Cloud, de cloudification des données, d'IA, de calcul intensif et de sécurité. Les utilisateurs bénéficieront d'une réduction des coûts d'administration et de maintenance des systèmes, d'une meilleure agilité dans le déploiement et le lancement des services ainsi que d'une plus grande liberté pour se concentrer sur l'innovation au sein des entreprises afin de prendre le dessus sur la concurrence féroce du marché.