File size: 16,804 Bytes
42c2a9e e46d17d c352639 e46d17d c352639 e46d17d c352639 e46d17d c352639 e46d17d 99aabf2 e46d17d c352639 e46d17d c352639 e46d17d c352639 e46d17d c352639 e46d17d c352639 e46d17d c352639 e46d17d c352639 e46d17d c352639 e46d17d c352639 e46d17d c352639 e46d17d c352639 e46d17d c352639 e46d17d c352639 e46d17d c352639 e46d17d 42c2a9e e46d17d c352639 42c2a9e e46d17d 42c2a9e e46d17d c352639 e46d17d c352639 e46d17d c352639 e46d17d c352639 e46d17d c352639 e46d17d 99aabf2 e46d17d 99aabf2 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 |
## 📄 Informació
TTS natural i eficient en català: 🍵+🥑
Aquí trobareu tota la informació sobre els nostres models 🍵 Matxa i 🥑 alVoCat, que han estat entrenats mitjançant aprenentatge profund (_deep learning_).
Si voleu informació específica sobre com entrenar aquests models, podeu trobar-la [aquí](https://huggingface.co/BSC-LT/matcha-tts-cat-multiaccent) i [aquí](https://huggingface.co/BSC-LT/vocos-mel-22khz-cat) respectivament.
El codi que hem utilitzat també es troba a Github [aquí](https://github.com/langtech-bsc/Matcha-TTS/tree/dev-cat).
## Taula de continguts
<details>
<summary>Feu clic per expandir</summary>
- [Descripció general del model](#descripció-general-del-model)
- [Usos previstos i limitacions](#usos-previstos-i-limitacions)
- [Mostres](#mostres)
- [Components principals](#components-principals)
- [El model en detall](#el-model-en-detall)
- [Adaptació al català](#adaptació-al-català)
- [Citació](#citació)
- [Informació adicional](#informació-adicional)
</details>
## Descripció general del model
La importància de les tecnologies de síntesi de parla (TTS, per les seves sigles en anglès) de codi obert per a les llengües minoritàries no pot ser negligida.
Aquestes tecnologies democratitzen l'accés a les solucions de TTS, proporcionant un marc perquè les comunitats desenvolupin i adaptin models segons les seves necessitats lingüístiques.
Per això, utilitzant un conjunt de tecnologies, hem desenvolupat diferents solucions de TTS de codi obert i en català.
Us presentem 🍵 Matxa, el primer model TTS neuronal multiparlant i multidialectal.
Es combina amb el model vocoder 🥑 alVoCat per generar unes veus expressives i d'alta qualitat.
A més, funciona de manera eficient en quatre dialectes:
* Balear
* Central
* Nord-occidental
* Valencià
Tant 🍵 Matxa com 🥑 alVoCat s'ha entrenat amb dades obertes.
Els models 🍵 Matxa són lliures per utilitzar-los amb finalitats no comercials, mentre que l'ús comercial necessita una llicència directament del locutor/a.
Trobareu més informació sobre aquesta qüestió a la secció [Llicència](#informació-adicional) i a la [pàgina del model](https://huggingface.co/BSC-LT/matcha-tts-cat-multiaccent/).
## Usos previstos i limitacions
Aquest model serveix com a generador de característiques acústiques per a sistemes de text-a-veu multi-parlant per a la llengua catalana.
Ha estat ajustat mitjançant un fonemitzador català; per tant, si el model s'utilitza amb altres llengües, pot ser que produeixi mostres inintel·ligibles.
La qualitat de les mostres pot variar segons el locutor.
Això pot ser degut tant a causa de la sensibilitat del model a l'hora d'aprendre certes freqüències específiques com de la qualitat de les mostres de cada locutor.
## Exemples
* Veus femenines:
<table style="font-size:16px">
<col width="205">
<col width="205">
<td>Valencià</td>
<td>Nord-Occidental</td>
<td>Balear</td>
<tbody
<table>
<tbody>
<tr>
<td>
<audio controls="" preload="none" style="width: 200px">
audio not supported
<source src="https://github.com/mllopartbsc/assets/raw/c6a393237e712851dd7cc7d10c70dde29d3412ac/matcha_tts_catalan/valencia/spk1/0.wav" type="audio/wav">
</audio>
</td>
<td>
<audio controls="" preload="none" style="width: 200px">
audio not supported
<source src="https://github.com/mllopartbsc/assets/raw/c6a393237e712851dd7cc7d10c70dde29d3412ac/matcha_tts_catalan/occidental/spk1/0.wav" type="audio/wav"">
</audio>
</td>
<td>
<audio controls="" preload="none" style="width: 200px">
audio not supported
<source src="https://github.com/mllopartbsc/assets/raw/c6a393237e712851dd7cc7d10c70dde29d3412ac/matcha_tts_catalan/balear/spk1/0.wav" type="audio/wav">
</audio>
</td>
</tr>
<tr>
<td>
<audio controls="" preload="none" style="width: 200px">
audio not supported
<source src="https://github.com/mllopartbsc/assets/raw/c6a393237e712851dd7cc7d10c70dde29d3412ac/matcha_tts_catalan/valencia/spk1/1.wav" type="audio/wav">
</audio>
</td>
<td>
<audio controls="" preload="none" style="width: 200px">
audio not supported
<source src="https://github.com/mllopartbsc/assets/raw/c6a393237e712851dd7cc7d10c70dde29d3412ac/matcha_tts_catalan/occidental/spk1/1.wav" type="audio/wav">
</audio>
</td>
<td>
<audio controls="" preload="none" style="width: 200px">
audio not supported
<source src="https://github.com/mllopartbsc/assets/raw/c6a393237e712851dd7cc7d10c70dde29d3412ac/matcha_tts_catalan/balear/spk1/1.wav" type="audio/wav">
</audio>
</td>
</tr>
<tr>
<td>
<audio controls="" preload="none" style="width: 200px">
audio not supported
<source src="https://github.com/mllopartbsc/assets/raw/c6a393237e712851dd7cc7d10c70dde29d3412ac/matcha_tts_catalan/valencia/spk1/2.wav" type="audio/wav">
</audio>
</td>
<td>
<audio controls="" preload="none" style="width: 200px">
audio not supported
<source src="https://github.com/mllopartbsc/assets/raw/c6a393237e712851dd7cc7d10c70dde29d3412ac/matcha_tts_catalan/occidental/spk1/2.wav" type="audio/wav">
</audio>
</td>
<td>
<audio controls="" preload="none" style="width: 200px">
audio not supported
<source src="https://github.com/mllopartbsc/assets/raw/c6a393237e712851dd7cc7d10c70dde29d3412ac/matcha_tts_catalan/balear/spk1/2.wav" type="audio/wav">
</audio>
</td>
</tr>
</tbody>
</table>
* Veus masculines:
<table style="font-size:16px">
<col width="205">
<col width="205">
<thead>
<tr>
<td>Valencià</td>
<td>Nord-Occidental</td>
<td>Balear</td>
</tr>
</thead>
<tbody
<table>
<tbody>
<tr>
<td>
<audio controls="" preload="none" style="width: 200px">
audio not supported
<source src="https://github.com/mllopartbsc/assets/raw/c6a393237e712851dd7cc7d10c70dde29d3412ac/matcha_tts_catalan/valencia/spk0/0.wav" type="audio/wav">
</audio>
</td>
<td>
<audio controls="" preload="none" style="width: 200px">
audio not supported
<source src="https://github.com/mllopartbsc/assets/raw/c6a393237e712851dd7cc7d10c70dde29d3412ac/matcha_tts_catalan/occidental/spk0/0.wav" type="audio/wav"">
</audio>
</td>
<td>
<audio controls="" preload="none" style="width: 200px">
audio not supported
<source src="https://github.com/mllopartbsc/assets/raw/c6a393237e712851dd7cc7d10c70dde29d3412ac/matcha_tts_catalan/balear/spk0/0.wav" type="audio/wav">
</audio>
</td>
</tr>
<tr>
<td>
<audio controls="" preload="none" style="width: 200px">
audio not supported
<source src="https://github.com/mllopartbsc/assets/raw/c6a393237e712851dd7cc7d10c70dde29d3412ac/matcha_tts_catalan/valencia/spk0/1.wav" type="audio/wav">
</audio>
</td>
<td>
<audio controls="" preload="none" style="width: 200px">
audio not supported
<source src="https://github.com/mllopartbsc/assets/raw/c6a393237e712851dd7cc7d10c70dde29d3412ac/matcha_tts_catalan/occidental/spk0/1.wav" type="audio/wav">
</audio>
</td>
<td>
<audio controls="" preload="none" style="width: 200px">
audio not supported
<source src="https://github.com/mllopartbsc/assets/raw/c6a393237e712851dd7cc7d10c70dde29d3412ac/matcha_tts_catalan/balear/spk0/1.wav" type="audio/wav">
</audio>
</td>
</tr>
<tr>
<td>
<audio controls="" preload="none" style="width: 200px">
audio not supported
<source src="https://github.com/mllopartbsc/assets/raw/c6a393237e712851dd7cc7d10c70dde29d3412ac/matcha_tts_catalan/valencia/spk0/2.wav" type="audio/wav">
</audio>
</td>
<td>
<audio controls="" preload="none" style="width: 200px">
audio not supported
<source src="https://github.com/mllopartbsc/assets/raw/c6a393237e712851dd7cc7d10c70dde29d3412ac/matcha_tts_catalan/occidental/spk0/2.wav" type="audio/wav">
</audio>
</td>
<td>
<audio controls="" preload="none" style="width: 200px">
audio not supported
<source src="https://github.com/mllopartbsc/assets/raw/c6a393237e712851dd7cc7d10c70dde29d3412ac/matcha_tts_catalan/balear/spk0/2.wav" type="audio/wav">
</audio>
</td>
</tr>
</tbody>
</table>
## Components principals
El nostre model de síntesi de parla adaptat al català utilitza un procés en diferents etapes per a convertir el text escrit en paraules ben pronunciades. Aquestes són les etapes:
1- Inicialment, el model analitza el text d'entrada, descomponent-lo en unitats lingüístiques més petites, com ara paraules i frases.
També identifica els caràcters especials. Tot seguit, utilitza la nostra versió d'eSpeak, un fonemitzador basat en les regles fonètiques de la llengua catalana, per a transcriure el text fonèticament. Per a cada accent català, s'apliquen certes regles d'eSpeak específicament adaptades.
2- El model matcha-TTS converteix aquests fonemes en un mel-espectrograma, una representació visual de l'espectre de freqüències d'un so al llarg del temps.
3- A continuació, aquest espectrograma s'afegeix com a input a [la nostra adaptació del vocoder Vocos](https://huggingface.co/BSC-LT/vocos-mel-22khz-cat), que sintetitza l'ona sonora.
Emprant aquesta sèrie d'etapes, el model de TTS assegura una pronunciació precisa i un discurs en català de so natural adaptat als matisos de la llengua.
El còmput d'aquestes etapes va ser realitzat pel Marenostrum 5 del Centre Nacional de Supercomputació de Barcelona, i pel Finisterrae III de CESGA.
Aquestes tecnologies formen, conjuntament, una solució TTS completa, adaptada a les necessitats dels parlants de català i que exemplifica el poder de les iniciatives de codi obert per avançar en la diversitat lingüística i la inclusió.
## El model en detall
**Matcha-TTS** és una arquitectura d'_encoder-decoder_ dissenyada per a una modelització acústica ràpida en TTS.
D'una banda, la part de l'_encoder_ es basa en un codificador de text i una predicció de duració fonètica.
Junts, prediuen una mitjana de les característiques acústiques.
D'altra banda, el _decoder_ té bàsicament un esquelet U-Net inspirat en [Grad-TTS](https://arxiv.org/pdf/2105.06337.pdf),
que es basa en l'arquitectura Transformer.
En aquest últim, substituint CNNs 2D per CNNs 1D, s'aconsegueix una gran reducció en el consum de memòria i una síntesi ràpida.
**Matcha-TTS** és un model no autoregressiu entrenat amb emparellament de flux condicional d'optimització de transport (OT-CFM).
Això produeix un decodificador basat en ODE capaç de generar una alta qualitat de sortida en menys passos de síntesi que els models entrenats
utilitzant score matching.
## Adaptació al català
El model original de Matcha-TTS excel·leix en anglès, però per adaptar-lo al català, hem dut a terme un procés multi-etapa.
En primer lloc, hem fet el _fine-tuning_ del model d'anglès al català central creant un Matxa-base, fent servir dos conjunts de dades:
* [La nostra versió del conjunt de dades openslr-slr69.](https://huggingface.co/datasets/projecte-aina/openslr-slr69-ca-trimmed-denoised)
* [La nostra versió del conjunt de dades Festcat.](https://huggingface.co/datasets/projecte-aina/festcat_trimmed_denoised)
A continuació, hem fet un altre _fine-tuning_ de Matxa-base amb el conjunt de dades LaFresCat per introduir les variants dialectals.
Aquest conjunt dades, que es publicarà aviat, té 8,5 hores d'enregistraments per a quatre variants dialectals:
* Balear
* Central
* Nord-Occidental
* Valencià
Amb un locutor masculí i un femení per a cada dialecte.
Després, mitjançant l'ajustament per a aquests dialectes catalans específics, el model es va adaptar a les variacions dialectals de pronúncia i prosòdia.
Aquest enfocament meticulós garanteix que el model reflecteixi la riquesa lingüística i la diversitat cultural dins de la comunitat de parla catalana, oferint una comunicació fluida entre dialectes que prèviament no comptaven amb aquestes tecnologies.
A més de l'entrenament del model Matcha-TTS per al català, la integració del fonemitzador d'eSpeak ha jugat un paper crucial en millorar la naturalitat i l'exactitud de la parla generada.
Un sistema TTS consta de diversos components, cadascun dels quals contribueix a la qualitat global de la parla sintetitzada.
El primer component implica el pre-processament de text, on el text d'entrada es normalitza i s'analitza lingüísticament per identificar paraules, puntuació i característiques lingüístiques.
A continuació, el text es converteix en fonemes, les unitats més petites de so en una llengua, a través d'un procés anomenat fonemització.
Aquest pas és on el fonemitzador d'eSpeak destaca, ja que converteix amb precisió el text català en representacions fonètiques, capturant els subtils matisos de pronunciació específics del català.
Podeu trobar la versió d'eSpeak que vam utilitzar [aquí](https://github.com/projecte-aina/espeak-ng/tree/dev-ca).
Després de la fonemització, els fonemes es passen al component de síntesi, on es transformen en parla audible.
Aquí, el model Matxa pren protagonisme, generant una parla fluida i natural a partir de les representacions fonètiques.
L'ús d'un model de TTS entrenat específicament per al català, juntament amb el fonemitzador d'eSpeak, assegura una pronunciació precisa i una parla coherent, capturant la riquesa i la diversitat del català en tots els seus dialectes i varietats.
Finalment, el discurs sintetitzat passa per un post-processament, on s'apliquen característiques prosòdiques com el to, la durada i l'èmfasi per refinar encara més la sortida i fer-la sonar més natural i expressiva.
Integrant el fonemitzador d'eSpeak en el flux de treball del TTS i adaptant-lo al català, juntament amb l'entrenament del model Matcha-TTS per al català, hem creat un sistema complet i efectiu per generar parla catalana de alta qualitat.
Aquesta combinació de tècniques avançades i atenció meticulosa als detalls lingüístics és imprescindible per superar les barreres lingüístiques i facilitar la comunicació per als parlants de català arreu del món.
## Citació
Si feu servir el model per a la vostra recerca o projecte, us agrairem que citeu el següent paper:
```
@misc{LTU2024,
title={Natural and efficient TTS in Catalan: using Matcha-TTS with the Catalan language},
author={The Language Technologies Unit from Barcelona Supercomputing Center},
year={2024},
}
```
```
@misc{mehta2024matchatts,
title={Matcha-TTS: A fast TTS architecture with conditional flow matching},
author={Shivam Mehta and Ruibo Tu and Jonas Beskow and Éva Székely and Gustav Eje Henter},
year={2024},
eprint={2309.03199},
archivePrefix={arXiv},
primaryClass={eess.AS}
}
```
## Informació addicional
### Autor
Unitat de Tecnologies del Llenguatge del Centre Nacional de Supercomputació de Barcelona.
### Contacte
Per a més informació, si us plau, envia un correu electrònic a <[email protected]>.
### Copyright
Copyright(c) 2023 by Language Technologies Unit, Barcelona Supercomputing Center.
### Llicència
Aquesta pàgina de demostració i els scripts d'inferència es troben sota [GNU General Public License v3.0](https://www.gnu.org/licenses/gpl-3.0.en.html)
Els pesos del model tenen la llicència [Creative Commons Attribution Non-comercial 4.0](https://www.creativecommons.org/licenses/by-nc/4.0/). Aquests models són lliures per l'ús no comercial i d'investigació. L'ús comercial és possible mitjançant una llicència directe amb el locutor/la locutora. Per a més informació, contacteu amb <[email protected]> i <[email protected]>. Per obtenir més informació, consulteu la [pàgina del model](https://huggingface.co/BSC-LT/matcha-tts-cat-multiaccent/).
### Finançament
Aquest treball ha estat promogut i finançat per la Generalitat de Catalunya a través del [Projecte Aina](https://projecteaina.cat/).
Una part de l'entrenament dels models va ser possible gràcies al temps de comput proporcionat pel [Centro de Supercomputación de Galicia (CESGA)](https://www.cesga.es/) i també pel [Barcelona Supercomputing Center](https://www.bsc.es/) amb el seu MareNostrum 5. |