carlacastedo commited on
Commit
c10515b
·
verified ·
1 Parent(s): b465b21

Upload 3 files

Browse files
Files changed (3) hide show
  1. README.md +148 -3
  2. celtia.ckpt +3 -0
  3. config_tree.log +145 -0
README.md CHANGED
@@ -1,3 +1,148 @@
1
- ---
2
- license: apache-2.0
3
- ---
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ ---
2
+ ---
3
+
4
+ extra_gated_heading: "This repository is publicly accessible, but you have to accept the Terms and Conditions to access its files and content."
5
+ extra_gated_description: "## **Terms and Conditions of Use**
6
+
7
+ ### Agreement
8
+
9
+ These Terms and Conditions govern the use of the Galician text-to-speech (TTS) model Nos_TTS-celtia-matcha-graphemes based on artificial neural networks developed within the framework of the Nós Project of the University of Santiago de Compostela (hereinafter, \"Holder\"). The model is available for download and use under the Apache License, Version 2.0. By downloading or using the model, the user (hereinafter, \"User\") agrees to these terms.
10
+ The use of the models also implies compliance with privacy policies and any additional regulations associated with the download repository.
11
+
12
+ ### Purpose
13
+
14
+ The TTS model is designed for research and development of applications related to TTS technology in Galician.
15
+
16
+ ### License
17
+
18
+ The model is made available under the Apache License, Version 2.0, which allows its use, modification, and distribution, provided the license terms are respected, including proper acknowledgement of the Holder as the original creator.
19
+
20
+ ### Permitted Use
21
+
22
+ The model may be used to generate synthetic speech in Galician according to the terms of the aforementioned License.\
23
+ Users are responsible for complying with applicable laws and respecting third-party rights when using the model.
24
+
25
+ ### Restrictions
26
+
27
+ Users agree not to:
28
+ - Use the model for illegal activities or any activity that may infringe intellectual property or other third-party rights, including, but not limited to, its use to promote disinformation, hate speech or breaches of privacy.
29
+ - Claim that the model was developed by entities other than the Holder.
30
+
31
+ ### Disclaimer
32
+
33
+ The model is provided \"as is\" without any warranty of any kind. The Holder shall not be liable for any direct, indirect, or consequential damages resulting from the use or inability to use the model and does not guarantee the absence of bias or errors in the generated content.
34
+
35
+ ### Amendments to the Terms
36
+
37
+ These Terms may be updated by the Holder at any time. The latest version will be available in the repository where the model is hosted.
38
+
39
+ This document is a legal contract between you and the dataset provider. By accessing and using the model, you acknowledge and agree to abide by the Terms and Conditions."
40
+
41
+ extra_gated_button_content: "I agree to the Terms and Conditions"
42
+ extra_gated_fields:
43
+ Name: text
44
+ Email: text
45
+ Institution: text
46
+ Country: country
47
+ I want to use this model for:
48
+ type: text
49
+
50
+
51
+ license: apache-2.0
52
+ datasets:
53
+ - proxectonos/Nos_Celtia-GL
54
+ language:
55
+ - gl
56
+ pipeline_tag: text-to-speech
57
+ tags:
58
+ - TTS
59
+ - speech-synthesis
60
+ - Galician
61
+ - female-speaker
62
+ - Matcha-TTS
63
+ ---
64
+
65
+ # Celtia: Nós Project's Galician TTS Model
66
+ ## Model description
67
+
68
+ **Celtia** is a Galician TTS model developed by the [Nós project](https://nos.gal/gl/proxecto-nos). It was trained from scratch using the [Matcha-TTS](https://github.com/shivammehta25/Matcha-TTS) Python library on the corpus [Nos_Celtia-GL](https://zenodo.org/record/7716958). This corpus comprises a total of 20,000 sentences recorded by a professional voice talent. Specifically, a subset of 13,000 sentences, corresponding to 15.5 hours of speech, was used to train the model.
69
+
70
+ The model was trained directly on grapheme inputs, so no phonetic transcription is required. The [Cotovía](http://gtm.uvigo.es/en/transfer/software/cotovia/) tool can be used to normalize the input text.
71
+
72
+
73
+ ## Intended uses and limitations
74
+
75
+ You can use this model to generate synthetic speech in Galician.
76
+
77
+ ## Installation
78
+
79
+ ### Cotovía
80
+
81
+ For text normalization, you can use the front-end of Cotovía. This software is available for download on the [SourceForge](https://sourceforge.net/projects/cotovia/files/Debian%20packages/) website. The required Debian packages are `cotovia_0.5_amd64.deb` and `cotovia-lang-gl_0.5_all.deb`, which can be installed using the following commands:
82
+
83
+ ```bash
84
+ sudo dpkg -i cotovia_0.5_amd64.deb
85
+ sudo dpkg -i cotovia-lang-gl_0.5_all.deb
86
+ ```
87
+ ### TTS library
88
+
89
+ To synthesize speech, you need to install the Coqui TTS library:
90
+
91
+ ```bash
92
+ pip install matcha-tts
93
+ ```
94
+
95
+ ## How to use
96
+
97
+ ### Command-line usage
98
+
99
+ The following command normalizes and synthesizes the input text using the Celtia model:
100
+
101
+ ```bash
102
+ matcha-tts --text "a erupción provoca a emanación de gases á atmosfera." --checkpoint_path celtia.ckpt --vocoder hifigan_univ_v1 --output_folder . --speaking_rate 1
103
+ ```
104
+
105
+ The output synthesized speech is saved to the specified audio file.
106
+
107
+ For more information, check the [Matcha-TTS repo](https://github.com/shivammehta25/Matcha-TTS).
108
+
109
+
110
+ ## Training
111
+
112
+ ### Hyperparameter
113
+
114
+ The model is based on Matcha-TTS proposed by [Shivam Mehta et al](https://arxiv.org/abs/2309.03199). The following hyperparameters were set in the Matcha-TTS repository.
115
+
116
+ | Hyperparameter | Value |
117
+ |------------------------------------|----------------------------------|
118
+ | Model | matcha |
119
+ | Batch Size | 32 |
120
+ | Precision | 16-mixed |
121
+ | Window Length | 1024 |
122
+ | Hop Length | 256 |
123
+ | FTT size | 1024 |
124
+ | Optimizer | adam |
125
+ | Learning rate | 0.0001 |
126
+
127
+ The model was trained for 4,000 epochs.
128
+
129
+ ## Additional information
130
+
131
+ ### Authors
132
+ Antonio Moscoso, Carmen Magariños and Alberto Bugarín.
133
+
134
+ ### Contact information
135
+ For further information, send an email to proxecto.nos@usc.gal
136
+
137
+ ### Licensing Information
138
+ [Apache License, Version 2.0](https://www.apache.org/licenses/LICENSE-2.0)
139
+
140
+ ### Funding
141
+
142
+ This research was produced within the framework of the Proxecto Nós, funded by the Ministry for Digital Transformation and Public Administration and the Recovery, Transformation, and Resilience Plan – Funded by the European Union – NextGenerationEU, as part of the Ilenia Project with reference 2022/TL22/00215336, and previously “The Nós project: Galician in the society and economy of Artificial Intelligence”, resulting from the agreement 2021-CP080 between the Xunta de Galicia and the University of Santiago de Compostela, and thanks to the Investigo program, within the National Recovery, Transformation and Resilience Plan, within the framework of the European Recovery Fund (NextGenerationEU).
143
+
144
+ ### Citation information
145
+
146
+ If you use this model, please cite as follows:
147
+
148
+ Moscoso, Antonio; Magariños, Carmen; Bugarín-Diz, Alberto. 2026. Nos_TTS-celtia-matcha-graphemes. URL: https://huggingface.co/proxectonos/Nos_TTS-celtia-matcha-graphemes
celtia.ckpt ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:2dc645a146df682882dfa8f6be61d04cbeadfad481600b935b701941a20a512d
3
+ size 218846840
config_tree.log ADDED
@@ -0,0 +1,145 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ CONFIG
2
+ ├── data
3
+ │ └── _target_: matcha.data.text_mel_datamodule.TextMelDataModule
4
+ │ name: ljspeech
5
+ │ train_filelist_path: /home/antonio.moscoso/TTS/corpus/celtia/celtia_trai
6
+ │ valid_filelist_path: /home/antonio.moscoso/TTS/corpus/celtia/celtia_dev_
7
+ │ batch_size: 32
8
+ │ num_workers: 20
9
+ │ pin_memory: true
10
+ │ cleaners:
11
+ │ - galician_cleaners
12
+ │ add_blank: true
13
+ │ n_spks: 1
14
+ │ n_fft: 1024
15
+ │ n_feats: 80
16
+ │ sample_rate: 16000
17
+ │ hop_length: 256
18
+ │ win_length: 1024
19
+ │ f_min: 0
20
+ │ f_max: 8000
21
+ │ data_statistics:
22
+ │ mel_mean: -6.495892524719238
23
+ │ mel_std: 2.500046491622925
24
+ │ seed: 1234
25
+ │ load_durations: false
26
+
27
+ ├── model
28
+ │ └── _target_: matcha.models.matcha_tts.MatchaTTS
29
+ │ n_vocab: 178
30
+ │ n_spks: 1
31
+ │ spk_emb_dim: 64
32
+ │ n_feats: 80
33
+ │ data_statistics:
34
+ │ mel_mean: -6.495892524719238
35
+ │ mel_std: 2.500046491622925
36
+ │ out_size: null
37
+ │ prior_loss: true
38
+ │ use_precomputed_durations: false
39
+ │ encoder:
40
+ │ encoder_type: RoPE Encoder
41
+ │ encoder_params:
42
+ │ n_feats: 80
43
+ │ n_channels: 192
44
+ │ filter_channels: 768
45
+ │ filter_channels_dp: 256
46
+ │ n_heads: 2
47
+ │ n_layers: 6
48
+ │ kernel_size: 3
49
+ │ p_dropout: 0.1
50
+ │ spk_emb_dim: 64
51
+ │ n_spks: 1
52
+ │ prenet: true
53
+ │ duration_predictor_params:
54
+ │ filter_channels_dp: 256
55
+ │ kernel_size: 3
56
+ │ p_dropout: 0.1
57
+ │ decoder:
58
+ │ channels:
59
+ │ - 256
60
+ │ - 256
61
+ │ dropout: 0.05
62
+ │ attention_head_dim: 64
63
+ │ n_blocks: 1
64
+ │ num_mid_blocks: 2
65
+ │ num_heads: 2
66
+ │ act_fn: snakebeta
67
+ │ cfm:
68
+ │ name: CFM
69
+ │ solver: euler
70
+ │ sigma_min: 0.0001
71
+ │ optimizer:
72
+ │ _target_: torch.optim.Adam
73
+ │ _partial_: true
74
+ │ lr: 0.0001
75
+ │ weight_decay: 0.0
76
+
77
+ ├── callbacks
78
+ │ └── model_checkpoint:
79
+ │ _target_: lightning.pytorch.callbacks.ModelCheckpoint
80
+ │ dirpath: /home/antonio.moscoso/TTS/Matcha-TTS/logs/train/nos_celtia_gr
81
+ │ filename: checkpoint_{epoch:03d}
82
+ │ monitor: epoch
83
+ │ verbose: false
84
+ │ save_last: true
85
+ │ save_top_k: 20
86
+ │ mode: max
87
+ │ auto_insert_metric_name: true
88
+ │ save_weights_only: false
89
+ │ every_n_train_steps: null
90
+ │ train_time_interval: null
91
+ │ every_n_epochs: 100
92
+ │ save_on_train_epoch_end: null
93
+ │ model_summary:
94
+ │ _target_: lightning.pytorch.callbacks.RichModelSummary
95
+ │ max_depth: 3
96
+ │ rich_progress_bar:
97
+ │ _target_: lightning.pytorch.callbacks.RichProgressBar
98
+
99
+ ├── logger
100
+ │ └── tensorboard:
101
+ │ _target_: lightning.pytorch.loggers.tensorboard.TensorBoardLogger
102
+ │ save_dir: /home/antonio.moscoso/TTS/Matcha-TTS/logs/train/nos_celtia_g
103
+ │ name: null
104
+ │ log_graph: false
105
+ │ default_hp_metric: true
106
+ │ prefix: ''
107
+
108
+ ├── trainer
109
+ │ └── _target_: lightning.pytorch.trainer.Trainer
110
+ │ default_root_dir: /home/antonio.moscoso/TTS/Matcha-TTS/logs/train/nos_ce
111
+ │ max_epochs: 4000
112
+ │ accelerator: gpu
113
+ │ devices:
114
+ │ - 1
115
+ │ precision: 16-mixed
116
+ │ check_val_every_n_epoch: 1
117
+ │ deterministic: false
118
+ │ gradient_clip_val: 5.0
119
+
120
+ ├── paths
121
+ │ └── root_dir: /home/antonio.moscoso/TTS/Matcha-TTS
122
+ │ data_dir: /home/antonio.moscoso/TTS/Matcha-TTS/data/
123
+ │ log_dir: /home/antonio.moscoso/TTS/Matcha-TTS/logs/
124
+ │ output_dir: /home/antonio.moscoso/TTS/Matcha-TTS/logs/train/nos_celtia_g
125
+ │ work_dir: /home/antonio.moscoso/TTS/adestramentos
126
+
127
+ ├── extras
128
+ │ └── ignore_warnings: false
129
+ │ enforce_tags: true
130
+ │ print_config: true
131
+
132
+ ├── task_name
133
+ │ └── train
134
+ ├── run_name
135
+ │ └── nos_celtia_grafemas_ljspeech
136
+ ├── tags
137
+ │ └── ['nos_celtia_grafemas_ljspeech']
138
+ ├── train
139
+ │ └── True
140
+ ├── test
141
+ │ └── True
142
+ ├── ckpt_path
143
+ │ └── None
144
+ └── seed
145
+ └── 1234