Transformer-TTS项目是一个基于PyTorch实现的神经语音合成模型,其核心在于使用Transformer网络来生成语音。该方法相较于传统的seq2seq模型,如Tacotron,具有3到4倍的加速效果,同时保持了相近的生成语音质量。实验结果表明,每步训练仅需约0.5秒。项目中采用了CBHG模型作为后处理网络,并使用Griffin-Lim算法将声谱图转换为原始波形。
要运行Transformer-TTS项目,需要进行以下环境配置:
pip install -r requirements.txt
项目使用了LJSpeech数据集,该数据集包含文本脚本和对应的wav文件,共计13,100对。可从这里下载完整数据集。数据预处理参考了tacotron和dc_tts的代码。
用户可以从这里下载预训练模型(160K用于自回归模型,100K用于后处理网络),并将其放置于项目的checkpoint/目录下。
经过大约15,000步训练后,注意力图中出现了对角线对齐。以下展示的注意力图是在160,000步时绘制的,使用了三层多头注意力机制,每层有4个头部,共绘制了12个注意力图。



项目采用了与Tacotron 类似的Noam风格的学习率优化,并进行了调整。编码器的缩放位置编码的alpha值在实验中有所不同,因此其开始时略有增加,而后持续下降。解码器的alpha值自开始以来则持续下降。

项目提供了一些生成样本,每个样本在160,000步时生成,模型尚未完全收敛。该模型在处理长句子时性能略低。
以下是预测的mel声谱图和真实声谱图:


hyperparams.py 包含所有需要的超参数。prepare_data.py 将wav文件预处理为mel和线性声谱图,以加快训练。preprocess.py 包含加载数据时的所有预处理代码。module.py 包含所有方法,包括注意力机制、prenet、postnet等。network.py 包含编码器、解码器和后处理网络。train_transformer.py 用于训练自回归注意力网络(text → mel)。train_postnet.py 用于训练后处理网络(mel → linear)。synthesis.py 用于生成TTS样本。hyperparams.py中调整超参数,特别是'data_path',即解压文件的目录,如有必要,调整其他参数。prepare_data.py。train_transformer.py。train_postnet.py。synthesis.py,确保恢复步骤设置正确。任何关于代码的评论都是受欢迎的。


最适合小白的AI自动化工作流平台
无需编码,轻松生成可复用、可变现的AI自动化工作流

大模型驱动的Excel数据处理工具
基于大模型交互的表格处理系统,允许用户通过对话方式完成数据整理和可视化分析。系统采用机器学习算法解析用户指令,自动执行排序、公式计算和数据透视等操作,支持多种文件格式导入导出。数据处理响应速度保持在0.8秒以内,支持超过100万行数据的即时分析。


AI辅助编程,代码自动修复
Trae是一种自适应的集成开发环境(IDE),通过自动化和多元协作改变开发流程。利用Trae,团队能够更快速、精确地编写和部署代码,从而提高编程效率和项目交付速度。Trae具备上下文感知和代码自动完成功能,是提升开发效率的理想工具。


AI论文写作指导平台
AIWritePaper论文写作是一站 式AI论文写作辅助工具,简化了选题、文献检索至论文撰写的整个过程。通过简单设定,平台可快速生成高质量论文大纲和全文,配合图表、参考文献等一应俱全,同时提供开题报告和答辩PPT等增值服务,保障数据安全,有效提升写作效率和论文质量。

