

git clone [email protected]:andi611/ZeroSpeech-TTS-without-T.gitcd ZeroSpeech-TTS-without-TInstale Python 3.
Instale la última versión de Pytorch de acuerdo con su plataforma. Para un mejor rendimiento, instale con soporte de GPU (CUDA) si es viable. Este código funciona con Pytorch 0.4 y posterior.
Descargue el conjunto de datos de Zerospeech.
wget https://download.zerospeech.com/2019/english.tgz
tar xvfz english.tgz -C data
rm -f english.tgz
wget https://download.zerospeech.com/2019/surprise.zip
# Go to https://download.zerospeech.com and accept the licence agreement
# to get the password protecting the archive
unzip surprise.zip -d data
rm -f surprise.zip
Después de desempacar el conjunto de datos en ~/ZeroSpeech-TTS-without-T/data , Data Tree debería verse así:
|- ZeroSpeech-TTS-without-T
|- data
|- english
|- train
|- unit
|- voice
|- test
|- surprise
|- train
|- unit
|- voice
|- test
Preprocese el conjunto de datos y los archivos de índice listos para el modelo:
python3 main.py --preprocess —-remake
Traine el modelo ASR-TTS Autoencoder para unidades lingüísticas discretas Descubrimiento:
python3 main.py --train_ae
Los hiperparámetros sintonizables se pueden encontrar en HPS/ZEROSPEECH.JSON. Puede ajustar estos parámetros y la configuración editando el archivo, se recomiendan los hiperparámetros predeterminados para este proyecto.
Patcher TTS de trenes para el aumento del rendimiento de la conversión de voz:
python3 main.py --train_p --load_model --load_train_model_name=model.pth-ae-400000
Patcher TTS de entrenar con entrenamiento adversario guiado con objetivo:
python3 main.py --train_tgat --load_model --load_train_model_name=model.pth-ae-400000
Monitorear con TensorBoard (opcional)
tensorboard --logdir='path to log dir'
or
python3 -m tensorboard.main --logdir='path to log dir'
Prueba en un solo discurso ::
python3 main.py --test_single --load_test_model_name=model.pth-ae-200000
Pruebe en 'synthesis.txt' y genere archivos de audio resintesos ::
python3 main.py --test --load_test_model_name=model.pth-ae-200000
Pruebe en todo el discurso de prueba en test/ y genere archivos de codificación ::
python3 main.py --test_encode --load_test_model_name=model.pth-ae-200000
Agregar --enc_only si prueba solo con ASR-TTS Autoencoder:
python3 main.py --test_single --load_test_model_name=model.pth-ae-200000 --enc_only
python3 main.py --test --load_test_model_name=model.pth-ae-200000 --enc_only
python3 main.py --test_encode --load_test_model_name=model.pth-ae-200000 --enc_only
--dataset=surprise para cambiar al conjunto alternativo predeterminado, todas las rutas se manejan automáticamente si la estructura del árbol de datos se coloca como se sugiere. Por ejemplo: python3 main.py --train_ae --dataset=surprise
--load_train_model_name=model.pth-ae-400000-128-multi-1024-english
--ckpt_dir=./ckpt_english o --ckpt_dir=./ckpt_surprise por defecto). --load_test_model_name=model.pth-ae-400000-128-multi-1024-english (by name)
--ckpt_pth=ckpt/model.pth-ae-400000-128-multi-1024-english (direct path)
128-multi-1024 , seg_len y enc_size deben establecerse en 128 y 1024, respectivamente. Si se está cargando un modelo ae , se debe usar el argumento --enc_only al ejecutar main.py (ver 4. En la sección de pruebas). @article{Liu_2019,
title={Unsupervised End-to-End Learning of Discrete Linguistic Units for Voice Conversion},
url={http://dx.doi.org/10.21437/interspeech.2019-2048},
DOI={10.21437/interspeech.2019-2048},
journal={Interspeech 2019},
publisher={ISCA},
author={Liu, Andy T. and Hsu, Po-chun and Lee, Hung-Yi},
year={2019},
month={Sep}
}