Реализация Pytorch of Generspeech (Neurips'22): модель текста в речь в направлении переноса стиля с высокой точки зрения с нулевым выстрелом в стиле ood.
Мы предоставляем нашу реализацию и предварительно подготовленные модели в этом хранилище.
Посетите нашу демонстрационную страницу для образцов аудио.
Мы приводим пример того, как вы можете генерировать образцы высокой точки зрения, используя Generspeech.
Чтобы попробовать свой собственный набор данных, просто клонируйте это репо в вашей локальной машине, предоставленную NVIDIA GPU + CUDA CUDNN и следуйте нижеуказанному инструкциям.
Вы можете использовать предварительные модели, которые мы предоставляем здесь, и данные здесь. Детали каждой папки таковы в следующем:
| Модель | Набор данных (16 кГц) | Описание |
|---|---|---|
| Ценерспич | Libritts, ESD | Акузитная модель (конфигурация) |
| Хиф-Ган | Libritts, ESD | Нейронный вокадер |
| Энкодер | / | Эмоциональный энкодер |
Скоро появятся дополнительные наборы данных.
Подходящая среда Conda под названием generspeech может быть создана и активирована с помощью:
conda env create -f environment.yaml
conda activate generspeech
По умолчанию эта реализация использует столько же графических процессоров параллельно, сколько возвращается torch.cuda.device_count() . Вы можете указать, какие графические процессоры использовать, установив переменную среды CUDA_DEVICES_AVAILABLE перед запуском учебного модуля.
Здесь мы предоставляем трубопровод синтеза речи с использованием Generspeech.
checkpoints/GenerSpeechcheckpoints/trainset_hifigancheckpoints/Emotion_encoder.ptdata/binary/training_setCUDA_VISIBLE_DEVICES= $GPU python inference/GenerSpeech.py --config modules/GenerSpeech/config/generspeech.yaml --exp_name GenerSpeech --hparams= " text='here we go',ref_audio='assets/0011_001570.wav' " Сгенерированные файлы WAV сохраняются в infer_out по умолчанию.
raw_data_dir , processed_data_dir , binary_data_dir в файле конфигурации и загрузить набор данных на raw_data_dir .preprocess_cls в файле конфигурации. Структура набора данных должна следовать процессору preprocess_cls , или вы можете переписать его в соответствии со своим набором данных. Мы предоставляем процессор Libritts в качестве примера в modules/GenerSpeech/config/generspeech.yamlemotion_encoder_path . Для получения более подробной информации, пожалуйста, обратитесь к этой ветви. # Preprocess step: unify the file structure.
python data_gen/tts/bin/preprocess.py --config $path /to/config
# Align step: MFA alignment.
python data_gen/tts/bin/train_mfa_align.py --config $path /to/config
# Binarization step: Binarize data for fast IO.
CUDA_VISIBLE_DEVICES= $GPU python data_gen/tts/bin/binarize.py --config $path /to/configВы также можете создать набор данных через Natspeech, которая разделяет общую процедуру обработки данных MFA. Мы также предоставляем наш обраболенный набор данных (16 кГц libritts+osd).
CUDA_VISIBLE_DEVICES= $GPU python tasks/run.py --config modules/GenerSpeech/config/generspeech.yaml --exp_name GenerSpeech --resetCUDA_VISIBLE_DEVICES= $GPU python tasks/run.py --config modules/GenerSpeech/config/generspeech.yaml --exp_name GenerSpeech --inferВ этой реализации используются части кода из следующих репозиторов GitHub: Fastdiff, Natspeech, как описано в нашем коде.
Если вы найдете этот код полезным в своем исследовании, пожалуйста, укажите нашу работу:
@inproceedings { huanggenerspeech ,
title = { GenerSpeech: Towards Style Transfer for Generalizable Out-Of-Domain Text-to-Speech } ,
author = { Huang, Rongjie and Ren, Yi and Liu, Jinglin and Cui, Chenye and Zhao, Zhou } ,
booktitle = { Advances in Neural Information Processing Systems }
}Любой организации или человеку запрещают использовать любую технологию, упомянутую в этой статье для создания чьей -либо речи без его/ее согласия, включая, помимо прочего, правительственные лидеры, политические деятели и знаменитости. Если вы не соблюдаете этот пункт, вы можете нарушить законы об авторском праве.