先进的语音合成模型均以参数神经网络为基础。文本转语音 (TTS) 合成通常分两步完成。
- 第一步,合成网络将文本转换为时间对齐的特征,例如频谱图或基本频率,这些特征是声带在语音中振动的频率。
- 第二步,声码器网络将时间对齐的特征转换为音频波形。
准备用于合成的输入文本需要文本分析,例如将文本转换为单词和句子,识别和扩展缩写以及辨认和分析表达式。表达式包含日期、金额和机场代码。
将文本分析的输出传递到语言分析中,用于改进发音、计算单词的持续时间、破译语音的音期结构,以及理解语法信息。
然后,将语言分析的输出输入到语音合成神经网络模型,例如 Tacotron2,该模型将文本转换为梅尔频谱图,然后输入到 Wave Glow 等神经声码器模型,从而生成自然发音的语音。
热门的 TTS 深度学习模型包括 Wavenet、Tacotron 2 和 WaveGlow。
2006 年,Google WaveNet 引入了深度学习技术,采用一种新方法,一次直接对音频信号的原始波形进行一个样本建模。其模型为概率和自回归,且每个音频样本的预测分布均以所有之前的样本为条件。WaveNet 是一个全卷积神经网络,卷积层具有各种膨胀因子,允许其感受野随深度呈指数增长。输入序列是人类说话者记录的波形。
DeepMind)
Tacotron 2 是一种神经网络架构,用于从文本中使用带有注意力的循环序列到序列模型直接进行语音合成。编码器(下图中的蓝色块)将整个文本转换为固定大小的隐藏特征表示。然后,自回归解码器(橙色块)使用此特征表示,一次生成一个频谱图帧。在 NVIDIA Tacotron 2 和 WaveGlow for PyTorch 模型中,自回归 WaveNet(绿色块)由基于流生成的 WaveGlow 所取代。
WaveGlow 是一个基于流的模型,它使用梅尔频谱图来生成语音。
在训练过程中,模型通过一系列流程学习将数据集分布转换为球形高斯分布。流的一个步骤包含一个可逆卷积,然后是一个修改后的 WaveNet 架构,该架构用作仿射耦合层。在推理期间,网络为反向网络,音频样本则从高斯分布中生成。