Edresson / TTS-Portuguese-Corpus

Open Source Text-To-Speech Portuguese Dataset
Creative Commons Attribution 4.0 International
157 stars 17 forks source link

How to train this model? #1

Closed yuripourre closed 5 years ago

yuripourre commented 5 years ago

Firstly, you did an excellent job. The final model is very high-quality.

I would like to follow your steps to recreate the model and better understand the process but I am not familiar with Mozilla TTS. If it is possible, could you please provide scprits or materials that I can follow to reproduce your models?

Edresson commented 5 years ago

Hello, thanks :) ,

The steps for preprocessing this dataset are described in my TTS template fork (https://github.com/Edresson/TTS) in the TTS-Portuguese-Corpus Training and Fine-Tuning Section.  After preprocessing you can follow the steps described in the official repository (https://github.com/mozilla/TTS/wiki/Training-and-Testing) but you must change in the config.json file the parameter "data_path" to TTS-Portuguese datasets folder instead of the LJSpeech folder.

yuripourre commented 5 years ago

Thank you for your answer. I forked your branch and could setup the environment. And downloaded the zip with wav files.

I am following the instructions to train but now I am getting an error: FileNotFoundError: [Errno 2] No such file or directory: '../TTS-Portuguese-Corpus/wavs/sample-848.wav'

I noticed that there is no sample-848.wav at wavs' folder, should I remove this line from texts.csv? Line 840: wavs/sample-848.wav==Que boa notícia?

yuripourre commented 5 years ago

Another problem that I found is when I run the command to split csv data for some reason some lines have a double quote appended to folder:

grep -iRn "\"wavs" metadata_train.csv 
125:"wavs/sample-6542.wav== Pequenas variações na temperatura e densidade detectáveis na radiação cósmica de fundo foram as ""sementes"" iniciais das quais ocorreram toda a formação estrutural subsequente.", enquanto estavam no exílio.,,,,,,,,,,,,,,,,,,,,,,,,,,,,
156:"wavs/sample-438.wav== O portal BBC online classificou sua composição como ""energética""", e com som muito menos grave do que suas canções anteriores, e disse que Avril é uma artista muito versátil.,,,,,,,,,,,,,,,,,,,,,,,,,,,
771:"wavs/sample-539.wav==Configurações de dificuldade ajustáveis foram adicionadas na forma da alteração dos ""modos de batalha"" a fim de modificar a velocidade e complexidade dos combates", com isto tendo sido baseado nas opiniões dos jogadores depois do primeiro demo.,,,,,,,,,,,,,,,,,,,,,,,,,,,,
902:"wavs/sample-1266.wav==A origem do termo ""Paralimpíada"" é obscura.", em mil, novecentos e cinco.,,,,,,,,,,,,,,,,,,,,,,,,,,,
1106:"wavs/sample-5042.wav== É tão bem feito que o fato de o álbum todo prosseguir no mesmo ritmo sonâmbulo mal importa"".", adquiriu um vasto conhecimento da música europeia de sua época e das gerações anteriores.,,,,,,,,,,,,,,,,,,,,,,,,,,,,
1508:"wavs/sample-152.wav== A batida ""inquieta"" é acompanhada por um riff inspirado pelo rock", com a altura de Madonna sendo mais alta do que nas outras músicas do álbum.,,,,,,,,,,,,,,,,,,,,,,,,,,,,
Edresson commented 5 years ago

Thank you for your answer. I forked your branch and could setup the environment. And downloaded the zip with wav files.

I am following the instructions to train but now I am getting an error: FileNotFoundError: [Errno 2] No such file or directory: '../TTS-Portuguese-Corpus/wavs/sample-848.wav'

I noticed that there is no sample-848.wav at wavs' folder, should I remove this line from texts.csv? Line 840: wavs/sample-848.wav==Que boa notícia?

Hello,

this, you must remove the line. when i validated the files i forgot to remove it.

I have a fixed version but I haven't updated it in the repository yet. I must do this soon.

Edresson commented 5 years ago

Another problem that I found is when I run the command to split csv data for some reason some lines have a double quote appended to folder:

grep -iRn "\"wavs" metadata_train.csv 
125:"wavs/sample-6542.wav== Pequenas variações na temperatura e densidade detectáveis na radiação cósmica de fundo foram as ""sementes"" iniciais das quais ocorreram toda a formação estrutural subsequente.", enquanto estavam no exílio.,,,,,,,,,,,,,,,,,,,,,,,,,,,,
156:"wavs/sample-438.wav== O portal BBC online classificou sua composição como ""energética""", e com som muito menos grave do que suas canções anteriores, e disse que Avril é uma artista muito versátil.,,,,,,,,,,,,,,,,,,,,,,,,,,,
771:"wavs/sample-539.wav==Configurações de dificuldade ajustáveis foram adicionadas na forma da alteração dos ""modos de batalha"" a fim de modificar a velocidade e complexidade dos combates", com isto tendo sido baseado nas opiniões dos jogadores depois do primeiro demo.,,,,,,,,,,,,,,,,,,,,,,,,,,,,
902:"wavs/sample-1266.wav==A origem do termo ""Paralimpíada"" é obscura.", em mil, novecentos e cinco.,,,,,,,,,,,,,,,,,,,,,,,,,,,
1106:"wavs/sample-5042.wav== É tão bem feito que o fato de o álbum todo prosseguir no mesmo ritmo sonâmbulo mal importa"".", adquiriu um vasto conhecimento da música europeia de sua época e das gerações anteriores.,,,,,,,,,,,,,,,,,,,,,,,,,,,,
1508:"wavs/sample-152.wav== A batida ""inquieta"" é acompanhada por um riff inspirado pelo rock", com a altura de Madonna sendo mais alta do que nas outras músicas do álbum.,,,,,,,,,,,,,,,,,,,,,,,,,,,,

In preprocessing you should only copy the lines from the texts.csv file to metadata_train and metadata_val. Are you using the lines below?

sed -n '1,3038 p' texts.csv > metadata_train_1-3039.csv
sed -n '3039,3058 p' texts.csv > metadata_val_noshuf.csv sed -n '3059,3624 p' texts.csv > metadata_train_3060-3625.csv cat metadata_train_1-3039.csv metadata_train_3060-3625.csv > metadata_train_noshuf.csv shuf metadata_train_noshuf.csv > metadata_train.csv shuf metadata_val_noshuf.csv > metadata_val.csv rm metadata_train_1-3039.csv metadata_train_3060-3625.csv metadata_train_noshuf.csv metadata_val_noshuf.csv

yuripourre commented 5 years ago

Yes, I am using this exact instruction:

sed -n '1,3038 p' texts.csv  >  metadata_train_1-3039.csv               
sed -n '3039,3058 p' texts.csv  > metadata_val_noshuf.csv
sed -n '3059,3624 p' texts.csv > metadata_train_3060-3625.csv
cat metadata_train_1-3039.csv  metadata_train_3060-3625.csv > metadata_train_noshuf.csv
shuf metadata_train_noshuf.csv > metadata_train.csv
shuf  metadata_val_noshuf.csv  > metadata_val.csv
rm metadata_train_1-3039.csv  metadata_train_3060-3625.csv metadata_train_noshuf.csv metadata_val_noshuf.csv

What I did to suppress the error was creating a new folder ("wavs) with the problematics wavs. In the meantime I start changing the config.json to run on the current version of TTS (not sure when it will be done).

yuripourre commented 5 years ago

I probably did something wrong before. Now I could train. Thank you for producing this model. Btw, I had to update attention.py.