Ce référentiel fournit une démo et un modèle pré-formé pour le papier
Synthèse de texte vocale multilingue pour les langues turques en utilisant la translittération
Le modèle prend en charge dix langues turques, notamment en Azerbaïdjanais, au bashkir, au Kazakh, au Kirghiz, Sakha, Tatar, Turc, Turkmènes, ouïghour et ouzbek. Parlées à travers une large zone géographique s'étendant des Balkans à travers l'Asie centrale et le nord-est de la Sibérie, ces langues partagent un large éventail de caractéristiques linguistiques communes, telles que l'harmonie des voyelles, l'agglutination étendue, l'ordre sujet-objet-verbe et l'absence de genre grammatique et d'articles.
Notre étude est devenue réalisable grâce à un corpus de discours à grande échelle et open source appelé Kazakhtts2. Le corpus contient cinq voix (trois femmes et deux mâles) et plus de 270 heures de données transcrites de haute qualité. Kazakhtts2 est accessible au public, ce qui permet une utilisation académique et commerciale.
Pour permettre la synthèse de la parole pour les langues turques, nous avons construit un module de conversion basé sur IPA. Le convertisseur basé sur l'IPA prend des lettres des alphabets d'autres langues turques et les convertit en lettres de l'alphabet kazakh. À cette fin, les lettres entrées sont d'abord converties en représentations IPA correspondantes. Ensuite, les symboles IPA sont convertis en lettres de l'alphabet kazakh, qui peuvent être utilisés comme entrée pour les modèles TTS construits.
Les mappages des alphabets turcs sur les symboles IPA ont été créés manuellement en fonction de notre expertise, car nous n'avons pas pu trouver une cartographie complète qui permettrait une conversion sans erreur du turc au kazakh et couvrirait toutes les langues adressées. Étant donné que Kazakh est utilisé comme langue source, nous n'avons sélectionné que 42 symboles IPA correspondant aux 42 lettres de l'alphabet kazakh. Il convient de mentionner que, parmi les langues turques en question, le kazakh - avec le bashkir - a le plus de lettres et contient une grande majorité des phonèmes des langues cibles. Les mappages développés peuvent également être utilisés comme guide pour d'autres travaux visant à construire des systèmes multilingues pour les langues turques, telles que la reconnaissance vocale, la traduction de la parole, etc. La cartographie des alphabets turques sur des symboles IPA peut être trouvée ici.
Voici les liens vers les dix questionnaires utilisés dans l'étude pour collecter des évaluations subjectives. Ces questionnaires ont été distribués sur des plateformes de médias sociaux populaires opérant dans les langues turques. Si vous êtes intéressé, n'hésitez pas à les vérifier. Votre participation et votre contribution sont grandement appréciées pour nous aider à recueillir des données précieuses pour nos recherches. Vos idées contribueront à une compréhension plus approfondie du sujet sous enquête.
Chaque questionnaire se compose de 20 courtes questions et devrait vous prendre environ 5 minutes. Aucune connaissance de base n'est requise.
On vous demandera de
Merci pour votre temps et votre considération.
Azerbaïdjani ▫️ Bashkir ▫️ Kazakh ▫️ Kirghiz ▫️ Sakha ▫️ Tatar ▫️ turc ▫️ Turkmène ▫️ Oughur ▫️ Ouzbeke
Les statistiques d'enquête pour le nombre de l'évaluateur (R), le sexe (F&M) et l'âge (<45 et 45+) et les résultats d'évaluation de la qualité globale (Q), de la compréhensibilité (C) et de l'intelligibilité (i) de la parole synthétisée.
| Langue | R | F | M | <45 | 45+ | Q | C | je |
|---|---|---|---|---|---|---|---|---|
| azerbaïdjanais | 47 | 22 | 25 | 22 | 25 | 2.93 | 90% | 52% |
| Bashkir | 11 | 8 | 3 | 4 | 7 | 2.67 | 92% | 47% |
| Kazakh | 151 | 89 | 62 | 120 | 31 | 4.18 | 97% | 80% |
| Kirghiz | 14 | 12 | 2 | 6 | 8 | 3.54 | 86% | 43% |
| Sakha | 254 | 155 | 99 | 147 | 107 | 2.85 | 93% | 15% |
| tatar | 15 | 12 | 3 | 3 | 12 | 2.82 | 79% | 17% |
| turc | 18 | 6 | 12 | 15 | 3 | 3.25 | 91% | 61% |
| Turkmène | 6 | 0 | 6 | 6 | 0 | 2.37 | 67% | 57% |
| Ouïghour | 10 | 6 | 4 | 6 | 4 | 3.01 | 45% | 26% |
| Ouzbek | 22 | 2 | 20 | 19 | 3 | 2.85 | 80% | 45% |
| Total | 548 | 312 | 236 | 348 | 200 | 3.25 | 92% | 41% |
Décompressez à la fois le vocodeur pré-formé et le modèle acoustique dans le même répertoire.
from parallel_wavegan . utils import load_model
from espnet2 . bin . tts_inference import Text2Speech
from scipy . io . wavfile import write
from utils import normalization
import torch
fs = 22050
vocoder_checkpoint = "parallelwavegan_male2_checkpoint/checkpoint-400000steps.pkl" ### specify vocoder path
vocoder = load_model ( vocoder_checkpoint ). to ( "cuda" ). eval ()
vocoder . remove_weight_norm ()
### specify path to the main model(transformer/tacotron2/fastspeech) and its config file
config_file = "exp/tts_train_raw_char/config.yaml"
model_path = "exp/tts_train_raw_char/train.loss.ave_5best.pth"
text2speech = Text2Speech (
config_file ,
model_path ,
device = "cuda" , ## if cuda not available use cpu
### only for Tacotron 2
threshold = 0.5 ,
minlenratio = 0.0 ,
maxlenratio = 10.0 ,
use_att_constraint = True ,
backward_window = 1 ,
forward_window = 3 ,
### only for FastSpeech & FastSpeech2
speed_control_alpha = 1.0 ,
)
text2speech . spc2wav = None ### disable griffin-lim
text = "merhaba"
### available options are azerbaijani, bashkir, kazakh, kyrgyz, sakha, tatar, turkish, turkmen, uyghur, uzbek
lang = "turkish"
text = normalization ( text , lang )
with torch . no_grad ():
c_mel = text2speech ( text )[ 'feat_gen' ]
wav = vocoder . inference ( c_mel )
write ( "result.wav" , fs , wav . view ( - 1 ). cpu (). numpy ())azerbaïdjanais
Azərbaycan Xəzər dənizi hövzəsinin qərbində yerləşir.
Bashkir
Башҡортостан Республикаһы шарттарында ауыл хужалығы етерлек хеҙмәт ресурстарына нигеҙләнә.
Kazakh
Қазақстан — Шығыс Еуропа мен Орталық Азияда орналасқан мемлекет.
Kirghiz
Кыргыз Республикасы — Борбордук Азияда жайгашкан мамлекет.
Sakha
Саха Өрөспүүбүлүкэтэ Сибиир хотугулуу-илин өттүгэр сытар.
tatar
Татарстан территориясе — урманлы җирдә яткан тигезлек.
turc
Türk dünyası, tüm Türk halkları kapsayan bir kavramdır.
Turkmène
Türkmenistan merkezi Aziýada bir döwletdir.
Ouïghour
Arabic: ئۇيغۇر خەلقى تۈركىي مىللەتلىرىنىڭ ئايرىلماس بىر قىسمى ھەم مۇھىم بىر تەركىبىي قىسمى.
Cyrillic: Уйғур хәлқи түркий милләтлириниң айрилмас бир қисми һәм муһим бир тәркибий қисми.
Latin: Uyghur xelqi türkiy milletlirining ayrilmas bir qismi hem muhim bir terkibiy qismi.
Ouzbek
Oʻzbekiston — Markaziy Osiyoning markaziy qismida joylashgan mamlakat.
Nous tenons à étendre nos sincères grâce à toutes les personnes qui ont contribué au recrutement des participants pour cette étude. Leurs efforts ont été essentiels au succès de notre enquête. En particulier, nous aimerions exprimer notre plus profonde appréciation à Viktor Krivogornitsyn pour son dévouement extraordinaire en attirant un nombre important de locuteurs Sakha. Sa contribution a été inestimable et nous sommes reconnaissants de son soutien.
Nous demandons avec gentillesse que si vous utilisez notre modèle dans votre travail, vous envisagez de citer notre article pour reconnaître sa contribution. Citant les sources appropriées aide à promouvoir l'intégrité académique et garantit que le crédit est accordé aux auteurs originaux. En reconnaissant notre article dans vos recherches, vous contribuez au développement et à l'avancement continu de la communauté scientifique. Nous apprécions votre soutien et votre reconnaissance de nos efforts.
@inproceedings { yeshpanov23_interspeech ,
author = { Rustem Yeshpanov and Saida Mussakhojayeva and Yerbolat Khassanov } ,
title = { {Multilingual Text-to-Speech Synthesis for Turkic Languages Using Transliteration} } ,
year = 2023 ,
booktitle = { Proc. INTERSPEECH 2023 } ,
pages = { 5521--5525 } ,
doi = { 10.21437/Interspeech.2023-249 }
}