Tacotron2(NVIDIA版)训练笔记
Tacotron2项目地址:https://github.com/NVIDIA/tacotron2
Tacotron2中文训练笔记:https://blog.csdn.net/qq_44951010/article/details/124830538
从科大讯飞爬取音频数据:https://blog.csdn.net/qq_44951010/article/details/124829630
步骤
-
下载项目或通过
git clone https://github.com/NVIDIA/tacotron2.git
拉取项目,下载ljspeech数据集
-
conda创建虚拟环境
conda create --name tacotron2 python=3.6
,激活环境
conda activate tacotron2
,安装pytorch
pip install toch==1.4
(最好在tmux中安装),安装其他依赖包
pip install -r requirements.txt
-
进入filelists目录,当中有三个txt文件,记录了音频路径和文本的对应关系,'|'左边是音频路径,右边是相应的英文文本,
修改音频路径为
ljspeech
数据集的相对路径,示例(datasets与tacotron2在同一目录下):
-
打开
hparams.py
文件,里面是一些超参数,可以修改epoch
(训练轮数),sampling_rate
(采样率),batch_size
(如果爆显存了可以把batch_size调小点)等,运行
python train.py --output_directory=outdir --log_directory=logdir
进行训练,训练结果保存在outdir
目录下 -
训练完成后,jupyter 运行
inference.ipynb
文件进行测试,将
checkpoint_path
改为自己训练的模型路径,如outdir/checkpoint_40000
,下载WaveGlow项目,放到
tacotron2
目录下,下载waveglow_256channels_universal_v5.pt文件,放到
tacotron2
目录下,将jupyter内核切换为
tacotron2
环境,运行即可合成语音,text为要合成的文本 -
运行
tensorboard --logdir=outdir/logdir
命令,可以查看训练过程中的一些参数
参考
Tacotron2 运行笔记:https://mathor.blog.csdn.net/article/details/108846589