为了合成让人类听懂的语音,机器做了哪些“深度学习”?

深度学习在2006年开始崭露头脚后,近几年取得了飞速的发展,无论是学术研究还是企业应用均呈现出指数级增长的趋势;伴随着这项技术的不断成熟,深度学习在智能语音领域率先发力,取得一系列成功的应用。

例如,一. 音色的定制化,需要跟踪录大量的音库,重新训练一个模型;二. 个性化表示方法的定制化,可以录一些数据,通过深度学习训练模型,自适应的方法来实现。

深度学习在统计参数语音合成中的应用

语音合成主要采用波形拼接合成和统计参数合成两种方式。波形拼接语音合成需要有足够的高质量发音人录音才能够合成高质量的语音,它是商业产品中最常用的语音合成技术。统计参数语音合成虽然整体合成质量略低,但是在小规模语料、低占用资源的情况下,优势更为明显。此外,混合语音合成联合了波形拼接合成和统计参数合成的优势,选音方法类似于传统的波形拼接方法,它利用参数合成方法来指导选音;接下来重点介绍目前广泛使用的语音合成方法:

(1) 传统的基于DNN/LSTM的合成

为了合成让人类听懂的语音,机器做了哪些“深度学习”?

传统的基于HMM统计参数的语音合成是在训练过程中建立文本参数与声学参数之间的映射模型,通过高斯混合模型描述每个建模单元。在建模过程中有三个环节会导致语音音质下降,第一是决策树的聚类,第二是声码器,第三是参数生成算法。针对决策树聚类问题,可以通过深层神经网络建立文本特征和声学特征之间的映射关系,替代传统的浅层模型,提高模型精度;比较典型的深层神经网络模型结构包括深层置信神经网络和长短时记忆递归神经网络;后者具有更强的序列学习能力,采用BLSTM-RNN建模时,还可以跳过参数生成算法直接预测语音参数,最后通过声码器就可以合成语音;总的来说,利用深层神经网络强大的非线性建模能力,在一定程度上提升了语音合成系统的性能,但是并没有跳出原有的语音合成系统框架。

(2) 基于WaveNet的合成

为了合成让人类听懂的语音,机器做了哪些“深度学习”?

在已有的研究中,很少有人会直接在时域上对已有音频建模。从直觉上分析,构建一个自回归模型,能够预测每一个samples是如何被前面所有的samples所影响的,是一个相当艰巨的任务。谷歌提出的基于WaveNets的语音合成方法,跳出了传统语音合成框架,绕开声码器模块,直接对采样点进行预测,面对这个充满挑战的问题,取得了突破。

WaveNet语音合成系统的输入包括文本特征以及先前时段的音频采样点。其中文本特征的有效表述起到非常重要的作用。如果在没有文本序列的情况下来训练网络,仍然可以生成语音,但是无法听懂输出音频的内容。WaveNet语音合成系统存在的问题是模型每次输出单个采样点,计算效率难以满足实用要求。可以引入一些自适应的方法对已有模型进行优化,使其能够适用于不同发音人。也可以在模型的输入端提供更多的信息,例如情感或口音,这样使得生成的语音可以更多样化,更具表现力。

(3) 基于DeepVoice的合成

为了合成让人类听懂的语音,机器做了哪些“深度学习”?

百度提出了Deep Voice语音合成系统,它将里面的很多模块用深度神经网络去实现,通过类似于WaveNet的合成器来合成,效果也是比较理想的。已有的语音合成系统会在某些环节上采用深度学习,但在Deep Voice之前,没有团队采用全深度学习的框架。传统语音合成需要进行大量的特征处理和特征构建,但百度通过使用深度学习避免了这些问题。这使得 Deep Voice 的应用范围更加广泛,使用起来也更加方便。如果需要应用于新的数据集,传统的语音合成系统完成重新训练需数天到数周的时间进行调节,而对Deep Voice进行手动操作和训练模型所需的时间只要几个小时就足够。相比于WaveNet语音合成系统 ,现在这个系统的有效速度提升了400倍。

(4) 两个端对端的语音合成

第一个是Char2Wav,这个模型是直接对输入的文本进行编码,采用encoder-decoder模型。对输入特征进行编码,然后生成的中间编码信息放到解码器里进行最后的合成,合成采用SimpleRNN的合成器来合成语音,效果也是比较理想的,而且是典型的End-To-End的语音合成模型。

为了合成让人类听懂的语音,机器做了哪些“深度学习”?

再一个是谷歌提出的端对端的语音合成系统,它跟Char2Wav比较类似,输入的也是Embeddings,合成的效果也比较理性。

相关推荐