全部文章

· Casimiro Ferreira· 1 分钟阅读

Miro 和 Dii 的 TTS 训练数据:覆盖 20 个语区的 40 个开放数据集

  • TTS
  • Voice
  • Datasets
  • Miro & Dii
  • Multilingual
  • FOSS

我们发布的内容

我们发布了用于构建 Miro 和 Dii 的全部 40 个合成训练数据集——这两个语音身份是我们与 OpenVoiceOS 合作开发的。整套数据集涵盖欧洲葡萄牙语、巴西葡萄牙语、荷兰语、德语、法语、意大利语、日语、西班牙语、罗马尼亚语、波兰语、瑞典语、印地语、丹麦语、波斯语、英语、巴斯克语等等。每个数据集都遵循一致的命名约定:tts-train-synthetic-miro_pt-PTtts-train-synthetic-dii_pt-BRtts-train-synthetic-miro_nl-NL,其他语言对以此类推。

每个数据集都是完全合成的——由生成的文本与合成的音频以 LJSpeech 布局配对而成,没有录音棚录制——并以开放许可证发布,因此任何人都可以重新训练或扩展该语音。音素化在 phoonnx 中于训练时进行,借鉴了我们针对 350 多种语言的 G2P 研究

语音身份如何在各语言之间保持一致

我们不会训练一个多语言的大杂烩然后指望口音自己理顺。每种语言都有一个单语模型——经过训练以听起来像该语言的母语者。各模型之间共享的身份来自语音克隆:每个 Miro 模型和每个 Dii 模型在被适配到新语言之前,都是从同一个源语音克隆而来的。音色、性格、语音的可辨识特质——这些会被迁移过去。口音则不会,这是有意为之。

实际效果是:一位葡萄牙语使用者、一位荷兰语使用者、一位日语使用者——听起来都毫无疑问是同一个人,而且各自都听起来像母语者。

为什么要发布训练数据

没有训练数据的检查点就是一个黑盒子。发布训练数据让语音变得可审计(你能确切看到它从什么中学习)、可复现(在相同数据上运行 phoonnx_train,得到相同结果),以及可扩展(添加句子、为某种方言微调、在其之上构建新的说话人)。

这对这份清单上的低资源语言最为重要。当训练数据是开放的,说某种语言的社区就能改进自己的语音——而无需等待某个厂商判定它在商业上是否有吸引力。

在哪里可以找到这一切

所有数据集和训练好的模型都存放在 HuggingFace 上的 TigreGotico 下,兼容 Piper 的语音检查点也在 OpenVoiceOS 下镜像。

关于消费这些数据集的推理和训练框架,请参见 phoonnx