Tacotron-2

用 TensorFlow 复现 DeepMind 端到端语音合成,一键训练出自然语音

Tacotron-2 是 DeepMind 提出的端到端文本转语音(TTS)模型的 TensorFlow 实现。它解决传统语音合成系统需要大量人工特征工程和复杂管线的问题,将文本直接映射为语音波形。核心能力包括:基于编码器-注意力-解码器架构生成 mel 频谱图,再通过 WaveNet 声码器将频谱转换为高质量语音。项目提供了完整的训练和推理代码,支持自定义数据集,并包含预训练模型权重。该实现忠实还原了原论文的架构,适合研究语音合成算法和进行二次开发。

开源 free 音频音乐
访问官网 ↗ GitHub ↗ 文档 ↗
GitHub 星标 ★ 2321
维护状态 低维护
是否开源 是
定价模式 free

项目数据

分类音频音乐
开发团队Rayhane-mamah
所属国家
官网地址
定价模式free
价格说明开源项目,MIT许可证,完全免费,可自行部署使用。
访问状态
是否开源是
开源协议MIT
主要语言Python
技术栈/模型paper,python,speech-synthesis,tacotron,tensorflow,text-to-speech,wavenet
GitHub 星标★ 2321
30天Star增速
HF 下载量
上线时间2017-12-20 00:00:00
最近更新2026-09-05 00:00:00
维护状态低维护
中文支持
访问方式
移动端支持
综合评分
收录时间2026-08-09
浏览次数4

使用教程

难度:高级 约 30 分钟 部署方式:本地安装 5 步

⚠ 该项目 README 未提供完整安装说明,以下步骤为通用流程,请以官方文档为准。

环境要求

  • Python 环境(项目开发语言为 Python)
  • TensorFlow 框架(技术栈标注为 tensorflow)
  • 按 README 的 Repository Structure 准备 datasets 数据集目录(如 LJSpeech-1.1/wavs)
  • 按结构准备 logs-Tacotron、logs-Wavenet、logs-Tacotron-2 日志与权重目录

安装与启动步骤

  1. 1克隆项目仓库

    从 GitHub 拉取 Tacotron-2 源码到本地,后续所有目录结构均以该仓库根目录为基准。

    git clone https://github.com/Rayhane-mamah/Tacotron-2.git
  2. 2整理数据集目录

    照 README 的 Repository Structure,在 datasets 下准备 LJSpeech-1.1/wavs、en_US、en_UK 等目录并放入音频数据。

  3. 3选择超参数文件

    README 说明 hparams.py 为默认配置(含额外改进),paper_hparams.py 用于复现论文原始结果,按需切换。

  4. 4准备权重日志目录

    按结构保留 logs-Tacotron-2 下的 taco_pretrained、wave_pretrained、metas、eval-dir、plots、wavs 等目录。

  5. 5运行训练或推理

    README 未给出具体入口命令,需自行查阅仓库内代码与文档后运行,输出会写入 logs-* 目录。

关键配置

配置项必填说明示例
hparams.py否默认超参数文件,含论文之外的改进,多数情况效果更好hparams.py
paper_hparams.py否论文原始超参数,用于严格复现论文结果paper_hparams.py
logs-Tacotron-2/taco_pretrained否Tacotron 模型预训练权重存放目录logs-Tacotron-2/taco_pretrained
logs-Tacotron-2/wave_pretrained否WaveNet 声码器预训练权重存放目录logs-Tacotron-2/wave_pretrained

如何确认成功

确认 datasets 与 logs-Tacotron-2 等目录结构齐全,且训练或推理产物出现在 logs-* 下。

常见问题

Q:该用哪个超参数文件?

A:默认使用 hparams.py,它包含作者添加的额外改进;若要严格复现论文结果,改用 paper_hparams.py。

Q:必须自己从头训练吗?

A:README 的目录结构中包含 taco_pretrained、wave_pretrained 等权重目录,可先确认仓库是否已带可用权重再决定是否训练。

Q:README 里为什么没有安装命令?

A:README 主要给出模型说明、超参数文件差异与仓库目录结构,未列出 pip/conda 安装步骤,需自行查阅代码依赖。

Q:支持中文语音合成吗?

A:README 展示的数据集结构只有 en_UK、en_US、LJSpeech-1.1 等英文数据,未提及中文支持。

注意事项

  • README 未提供安装、训练、推理的具体命令,本教程步骤依据其目录结构推断,请以仓库实际代码为准。
  • Tacotron-2 训练需大量算力和时间,建议先确认硬件条件。
  • hparams.py 与 paper_hparams.py 参数不同,切换后会明显影响训练结果,README 提示差异稍后会在文档中标注。

核心亮点

  • 忠实实现原论文架构,代码结构清晰,便于对照学习
  • 提供预训练模型,可直接合成语音,快速体验效果
  • 支持自定义数据集训练,灵活适配不同语言和说话人

不足之处

  • 训练耗时较长,对GPU资源要求高
  • 文档和社区维护不够活跃,依赖旧版TensorFlow

适用场景

  • 学术研究:复现TTS论文,进行算法改进实验
  • 语音合成应用开发:构建自定义语音助手或有声内容生成
  • 教学演示:理解端到端语音合成原理

替代项目

Coqui TTS、ESPnet-TTS、Mozilla TTS

项目介绍

Tacotron-2 是音频音乐领域的开源项目,由 Rayhane-mamah 开发,2017 年首次发布。

在全站 13,109 个收录项目中,它的 GitHub 星标数(2,321)位列前 30%,在音频音乐分类的 738 个项目里位列前 10%。

项目已超过三个月没有代码更新,维护节奏明显放缓,最近一次代码更新于 2026-09-05。MIT许可证,完全免费,可自行部署使用。

它主要面向的使用场景是:学术研究:复现TTS论文,进行算法改进实验。同类可对比的替代方案包括 Coqui TTS、ESPnet-TTS、Mozilla TTS。

上一篇:hifi-gan

下一篇:VieNeu-TTS

同类项目推荐

tango 开源

输入一句话,自动生成匹配的音频内容

A family of diffusion models for text-to-audio generation.

★ 1239 2026-08-09
AuK 开源

一个模型搞定语音生成、编辑与分离

AuK: An Open-Source Foundational Model for Speech Generation and Editing

★ 1236 2026-09-13
swift-tts 开源

Swift 项目三行代码接入系统 TTS,兼容 TCA 和 Combine

A straightforward package containing version for Swift modern concurrency, Point-Fre···

★ 52 2026-08-09
ai-dj 开源

现场演出中实时用 AI 生成音乐,保持人类掌控

AI music generation for live performance - Standalone (Ableton Link) + VST3/AU. 8 tr···

★ 246 2026-08-09