The code should be mostly supported by any Python 3.* but Python 3.6 or higher is recommended. Install dependencies by simply running pip install -r requirements.txt
The code includes methods helpful for all major steps in the text collection side of TTS data collecting:
- Gathering data:
utt_tools.pycontains methods for parsing utterances from some of the open Icelandic text datasets. - Preprocessing: A preprprocessing routine is also found in
utt_tools.py, designed specifically for these datasets. - Grapheme-to-Phoneme prediction: A Sequitur wrapper is found in
sequitur_tools.py. A pretrained model file is also included in this repository underpron_data. The model path is configured inconf.py. - Scoring:
prondata.pycontains a large class,PronData.py. It has multiple methods that can prove convenient to others but most important isProndata.score()which scores the utterances based on length and diphone density.
- Make sure dependencies are installed
- Create a directory
./dataand place the pronounciation dictionary there, e.g../data/prondict_ice.txt. An Icelandic pronounciation dictionary is available (as of writing this) atterra:/data/prondict_sr/v1/frambordabok_asr_v1.txt - Run
python3 main.pywhich will use default arguments. Look at the documented code to make changes to parameters. - Results will be default be placed under
./results/<experiment_name>in the form of a torch state dictionary,mdl.ckpt. Currently logging is only in the form of printing using e.g.print(...). To store logs runpython3 main.py > log.txtto save the logs.
Simple tests are found in tests.py which additionally demonstrate some of the main operations in this module.
Under reading_lists are 4 reading lists, varying in length. rl_full.txt contains a very high diphone coverage, containing almost 20 instances of every valid Icelandic diphone.
Copyright (c) Atli Thor Sigurgeirsson atlithors@ru.is. All rights reserved
Licensed under the Apache 2.0 license.