HI,欢迎来到起点商标网!
24小时服务QQ:2880605093

一种基于DNN-HMM双模态对齐网络的端到端语音合成方法及系统与流程

2021-01-28 17:01:50|313|起点商标网
一种基于DNN-HMM双模态对齐网络的端到端语音合成方法及系统与流程
本发明涉及智能语音交互领域,进一步涉及计算机智能语音合成领域,具体涉及一种基dnn-hmm双模态对齐网络的端到端语音合成方法及系统。
背景技术:
:最近几年,随着深度学习地兴起,深度网络模型已经在机器学习许多领域中占主导地位。语音合成(texttospeech,tts),即从文字符号合成人工语音的过程,也逐渐被端到端的深度神经网络所代替。在人们探索语音合成的早期,学者们提出了基于的统计参数的语音合成方法。基于统计参数的语音合成方法主要根据语音特征的参数表示,如mel频谱、基频等声学特征参数,通过隐马尔可夫模型(hmm)建模与和文本的相关特征形成关联,能够将文本特征转化为声学参数,再利用数学公式建立发声模型将声学参数转化为合成音频。但由于特定的声学特征和文本特征、以及传统的hmm模型的准确率问题,使其声音合成的质量有所限制。随着近几年深度学习的兴起,更多的人尝试用深度模型来代替传统的hmm模型,但这些都是在基于统计参数的这个框架下,虽然使用深度神经网路模型大大提高了语音合成的质量,但基于均值的统计参数的限制,使得语音合成的质量仍然无法达到真人水平。同时,由于参数法需要人工提取文本特征以提高语音合成的质量,但当英文换成中文,或者普通话换成粤语时,都需要重新设计文本特征且设计难度很大,需要一定的专业知识。由于参数法语音合成仍然有一定的局限性,谷歌推出了一种端到端自回归语音合成模型tacotron,该模型具备庞大的参数及其结构,可以在较少的人工标注情况下获得较好的语音效果。这种复杂的自回归端到端语音合成网络合成的音频自然度虽然较参数法有很大的提升,但由于其复杂的网络结构,以及自回归的结构形式,导致其在实际生产中仍有一些不足。(1)对计算资源的要求较高,不能在低计算资源的硬件上使用。(2)由于自回归结构缺陷,长句合成自然度下降。因此,如何能够在低计算资源的硬件上运行的语音合成系统及方法,并具备较高的语音合成质量,是计算机智能语音合成领域内尚未解决的问题。技术实现要素:为了解决现有的语音合成技术中,由于模型复杂度过高导致无法在低计算资源上使用,且对长句合成效果不理想的问题,本发明提出了一种基于dnn-hmm双模态对齐网络的端到端语音合成方法及系统,在dnn-hmm双模态对齐网络训练得到音素帧长序列的基础上,再去训练端到端语音合成模型,从而避免了传统端到端语音合成模型通过自回归注意力的形式来得文本和音频对齐信息的过程。训练得到的模型不仅能够保证端到端模型合成的音频的高自然度,而且能够大幅降低语音合成时的计算资源消耗以及时间占比,从而能够实现在低计算资源的硬件上部署端到端语音合成技术。为了实现上述目的,本发明采用的一种基于dnn-hmm双模态对齐网络的端到端语音合成方法技术方案如下。步骤1:获取样本文本及对应的标准语音音频,将样本文本转化为音素输入序列,标准语音音频转化为标准mel频谱。步骤2:将当前样本的音素输入序列和当前样本的标准语音音频输入到预训练的dnn-hmm双模态对齐网络中进行文本语音对齐,得到每个音素对应的标准帧长信息,构成标准音素帧长序列。步骤3:构建语音合成模型,包括编码器、帧长预测模块、扩展模块、解码器和声码器;首先通过编码器获得步骤1所述音素输入序列的编码表示,将音素输入序列的编码表示作为帧长预测模块的输入,以标准音素帧长序列作为标签,计算得到帧长预测模块的时长损失。扩展模块以标准音素帧长序列为参考,对音素输入序列的编码表示进行扩展,再经解码器解码得到对应的语音mel频谱,以标准mel频谱作为标签,计算解码器的mel频谱损失。步骤4:对语音合成模型进行端到端训练,将帧长预测模块的时长损失和解码器的mel频谱损失相加作为全局损失,利用全局损失进行反向传播训练,得到训练好的语音合成模型。步骤5:将待处理文本转化为待处理音素输入序列后作为训练好的语音合成模型的输入,将语音合成模型中的帧长预测模块输出的预测音素帧长序列作为扩展模块的参考,对待处理音素输入序列的编码表示进行扩展,再经解码器解码得到对应的语音mel频谱,由声码器进行语音播放。本发明的另一目的在于提供一种基于dnn-hmm双模态对齐网络的端到端语音合成系统,用于实现上述的端到端语音合成方法。包括:文本预处理模块:用于将文本转化为音素输入序列,并且在语音合成系统处于训练模式时,还要根据文本对应的标准语音音频输出标准mel频谱。编码器:用于将音素输入序列进行编码,输出音素输入序列的编码表示,编码器的两个输出端口分别连接帧长预测模块和扩展模块的输入端口。对齐模块:在语音合成系统处于训练模式时开启,对齐模块的输入端口连接文本预处理模块,对齐模块的输出端口连接扩展模块的输入端口,用于进行样本文本的文本语音对齐,输出标准音素帧长序列。帧长预测模块:在语音合成系统处于语音合成模式时,帧长预测模块的输出端口连接扩展模块的输入端口,用于将音素输入序列的编码表示转化为预测音素帧长序列;在语音合成系统处于训练模式时,断开帧长预测模块的输出端口与扩展模块的输入端口之间的连接。扩展模块:自动读取作为参考的音素帧长序列,对编码器的输出结果进行扩展。解码器:用于将扩展后的音素输入序列的编码表示进行解码,获得语音mel频谱。声码器:在语音合成系统处于语音合成模式时开启,自动读取解码器输出的语音mel频谱,并转化为声音信号进行语音播放。与现有技术相比,本发明具备的有益效果。1)相比于传统的参数法将时长预测模型和声学特征预测模型分开的构造方法,本发明采用直接从文本到声学特征的端到端模型,去除了多个模型预测组合的方式,避免了单个模型预测错误对整个模型效果的影响,从而提高了模型的容错能力。并且以自学习生成的embedding特征矩阵作为文本特征的表示,与传统的人工提取特征不同,这种方式能够通过数据学习到更多人们难以定义的文本发音特征,从而有效地改善语音的发音效果。与传统的自回归端到端模型结构相比,本发明利用帧长预测模块替换传统端到端attention的自回归的结构,以及利用卷积变化模块和双向长短期记忆网络构建编码器和解码器,通过非自回归的卷积神经网络和全连接神经网络预测由dnn-hmm双模态对齐网络得到的音素帧长序列,从而简化了传统的端到端网络利用注意力模块对齐的过程;通过将音素输入序列输入到三个独立的卷积模块中进行编码,能够学习出音素在整句文本中的局部信息;将卷积变换后的音素输入序列输入到双向长短期记忆网络中,能够学习出音素在整句文本的全局信息。因此,本发明采用的模型减少了大量的模型参数,降低了模型的复杂度。由于传统的端到端语音合成模型采用注意力模块动态对齐文本和音频的过程需要大量的计算资源消耗以及时间消耗,而本发明避免了通过自回归注意力的形式进行文本和音频的对齐过程,从而降低了对计算资源的要求,节约了模型的计算成本。根据实验测试数据,本发明模型在单核2.6ghz的cpu上单线程可以合成mos评分3.92的音频,同时rtf可以小于0.4,模型小于150m的端到端语音合成系统,使端到端模型部署在低计算资源的硬件上成为可能。2)本发明首先基于dnn-hmm双模态对齐网络训练得到音素帧长序列,然后通过得到的标准音素帧长序列进一步训练端到端语音合成模型。在训练过程中利用了更多的开源的语音识别数据和dnn-hmm语音识别系统训练一个通用的语音识别模型来保证的对齐准确率,再利用该语音识别模型来解码语音合成的训练数据,以获取当前样本输入音素序列对应的帧长信息,提升了获取音素帧长的精度,从而确保了语音合成音频的韵律自然度。附图说明图1是本实施例的一种基于dnn-hmm双模态对齐网络的端到端语音合成方法的训练流程示意图。图2是本实施例的一种基于dnn-hmm双模态对齐网络的端到端语音合成系统的工作流程示意图。图3是本实施例的一种基于dnn-hmm双模态对齐网络的端到端语音合成模型的训练过程示意图。图4是本实施例的一种基于dnn-hmm双模态对齐网络的端到端语音合成系统的结构图。图5是本实施例与其他语音合成方法得到的计算资源消耗对比和语音自然度的对比图。具体实施方式为了使本发明的模型结构、训练方法和优点更加清楚,下面将结合附图对本发明做进一步地详细描述。一种基于dnn-hmm双模态对齐网络的端到端语音合成方法,主要包括以下步骤。一、将文本转化为音素输入序列,将文本对应的标准语音音频转化为标准mel频谱。二、通过dnn-hmm双模态对齐网络进行文本语音对齐,得到标准音素帧长序列。三、构建语音合成模型。四、对语音合成模型进行端到端训练。五、将待处理文本转化为待处理音素输入序列后作为训练好的语音合成模型的输入,得到该文本对应的语音。在本发明的一项具体实施中,对文本的预处理过程进行了介绍。步骤1-1,获取接口传入的文本数据,对文本进行规范化,查找是否有xml标签,如果存在xml标签则对标签进行解析,查找是否有非中文的特殊符号,如何有则删除,利用文字转拼音工具将规范后的文本转化为中文拼音序列。步骤1-2,文本读音在发音时会发生变调,因此需要将中文拼音序列根据发音变调规则进行变调。步骤1-3:变调后的中文拼音序列根据拼音转音素字典,将中文拼音序列转化为音素输入序列。本实施例的拼音转音素字典,可根据实际训练的数据进行选择变换。步骤1-4,在对训练样本进行预处理过程中,还需要对样本文本对应的标准语音音频转化为标准mel频谱。将文本进行预处理之后,一方面可以解决由于汉字过多导致低频汉字的发音无法得到充分学习的问题,另一面也解决了声韵母发音不同导致将拼音序列作为代训模型输入不能很好学习出声韵发音差异的问题。将音频转化为声学特征,声学模型只需预测具有一定频率特性的声学特征,可以加快语音合成的速度,提升合成的效果。在本发明的一项具体实施中,对文本语音对齐过程进行了介绍。该过程主要通过dnn-hmm双模态对齐网络获取每个音素对应的帧长信息,作为后续模型训练的标签。本实施例的dnn-hmm双模态对齐网络与tdnn语音识别模型中的对齐网络一致,利用tdnn语音识别模型中的对齐模块作为dnn-hmm双模态对齐网络,即利用tdnn语音识别模型来实现音素与声学特征的对齐,从而获取音素对应的帧长信息。主要分为两步:步骤2-1,使用开源的中文语音识别数据,训练一个kaldi中基于dnn-hmm算法的语音识别模型tdnn,将预训练的语音识别模型tdnn中的对齐模块作为dnn-hmm双模态对齐网络。步骤2-2使用上述对齐模块得到训练数据中每个音素对应的帧长信息,获得音素输入序列对应的音素帧长序列。在dnn-hmm双模态对齐网络的选择和训练过程中,利用更多的开源语音识别数据训练一个通用的语音识别模型tdnn可以保证一定的对齐准确率。再利用该语音识别模型来解码语音合成的训练数据,以获取当前样本输入音素序列对应的帧长信息,提升了获取音素帧长的精度。本实施例的文本语音对齐过程直接获取每个音素的帧长信息,从而克服了传统端到端语音合成模型需要通过注意力模块动态对齐来获取时长信息的大量计算资源消耗以及时间消耗,从而减少了端到端语音合成模型对高计算资源的需求。在本发明的一项具体实施中,对采用的语音合成模型及训练过程进行了介绍。本实施例采用的语音合成模型包括了编码器、帧长预测模块、扩展模块、解码器和声码器。(1)首先,将音素输入序列作为语音合成模型的编码器输入,所述编码器由embedding层、三个独立的卷积层变化模块、以及第一双向长短期记忆网络依次连接构成,在所述编码器的输出端得到所述音素输入序列的编码表示。步骤3-1-1,将所述音素输入序列根据音素字典转化数字序列,输入到embedding层中,将每个音素转化为512维的音素序列向量。embedding层是一个矩阵类,里面初始化了一个随机矩阵,矩阵的长是音素字典的大小,宽是用来表示字典中每个元素的属性向量,即上述的512维,向量的维度根据需要表示的元素的复杂度而定,类实例化之后可以根据音素字典中元素的下标来查找元素对应的向量。步骤3-1-2,将所述音素序列向量输入到三个独立的卷积层变化模块中,在各个独立的卷积层变化模块的输出端得到卷积变换后的音素输入序列。每个独立的卷积变化模块主要包括卷积核宽度为5,步长为1,padding为2,输入通道为512维,输出通道为512的一维卷积和一层标准化层batchnorm1d组成。卷积和标准化的计算公式为:其中n表示batch的大小,cin表示输入的通道数,cout表示输出的通道数,e为期望,var为方差,y为每个卷积变化层的输出。步骤3-1-3,将所述的卷积变换后的音素输入序列输入到第一双向长短期记忆网络,从而可以在双向长短期记忆网络输出端得到音素输入序列的编码表示。通过将音素的输入序列输入到三个独立的卷积模块中,从而学习出音素在整句文本中的局部信息。将卷积变换后的音素输入序列输入到双向长短期记忆网络中,可以学习出音素在整句文本的全局信息。(2)其次,将编码器的输出端得到所述音素输入序列的编码表示作为语音合成模型的帧长预测模块的输入,所述帧长预测模块由两个独立的卷积层变化模块、以及全连接神经网络连接构成,得到音素输入序列对应的预测音素帧长序列。并将dnn-hmm双模态对齐网络输出端得到的标准音素帧长序列作为语音合成模型的帧长预测模块的输出标签。包括:步骤3-2-1,将音素输入序列的编码表示输入到两个独立的卷积层变化模块中,在各个独立的卷积层变化模块的输出端得到卷积变换后的信息向量,将信息向量输入到单个全连接神经网络中,经过单个全连接神经网络的变化得到音素输入序列对应的帧长序列,即预测音素帧长序列。每个独立的卷积变化模块主要包括卷积核宽度为3,步长为1,padding为1,输入通道为512维,输出通道为256维的一维卷积和一层非线性激活层relu组成,卷积计算公式与编码器中的卷积计算公式一样。relu的计算方式为:其中x表示经卷积变化模块得到的输出。步骤3-2-2,将上述得到的预测音素帧长序列与dnn-hmm双模态对齐网络输出端得到的标准音素帧长序列进行比较,建立损失函数,获取时长损失,时长损失采用l2损失函数。计算公式为:其中y为模型预测得到的帧长序列,p为dnn-hmm双模态对齐网络输出端的得到的帧长序列,yi表示第i个音素预测得到的帧长,pi表示第i个音素通过dnn-hmm双模态对齐网络得到的帧长,m表示音素输入序列长度。通过非自回归的卷积神经网络和全连接神经网络预测由dnn-hmm双模态对齐网络得到的音素帧长序列,从而简化传统端到端网络利用注意力模块对齐的过程的,大大加快了计算速度同时,也保证了传统端到端网络的生成效果。(3)之后,将编码器的输出端得到音素输入序列的编码表示根据音素序列对应的帧长序列进行扩展,然后作为解码器的输入,所述解码器由第二双向长短期记忆网络、三个独立的卷积层变化模块、以及全连接神经网络依次连接构成。在所述解码器的输出端得到所述当前样本的语音mel频谱输出。步骤3-3-1,将音素输入序列的编码表示根据dnn-hmm双模态对齐网络输出端得到的标准音素序列对应的帧长序列进行扩展,得到与mel频谱相同长度的扩展后的音素输入序列的编码表示。扩展公式如下:其中音素输入序列的编码表示为:c=[c1,c2,…,cn],其中cn代表第n个音素的向量编码表示;音素帧长序列为:t=[t1,t2,…,tn],其中tn代表第n个音素的时长;扩展后的音素序列的编码表示为c'=[c1,c1,c1,c1,c2,c2,c2,…,cn]。步骤3-3-2,将扩展后的音素输入序列的编码表示输入到第二双向长短期记忆网络,经过双向长短期记忆网络得到经过扩展后的音素输入序列的全局信息。将经过双向长短期记忆网络的信息向量输入到三个独立的卷积层变化模块中,在各个独立的卷积层变化模块的输出端得到卷积变换后的扩展音素输入序列的局部信息。将经过三个独立的卷积层变化的信息向量输入到单个全链接神经网络,经过单个全连接神经网络的变化得到音素输入序列对应的语音mel频谱。步骤3-3-3,将预测得到的音素输入序列对应的语音mel频谱与上述语音mel频谱建立损失函数,获得mel频谱损失。将mel频谱损失与上述的时长损失相加得到全局损失,利用全局损失进行反向传播训练待训练的模型,从而获得一种实时快速语音合成模型。其中mel频谱损失计算方式如下:其中lmel表示音频的mel频谱损失,y表示预测得到的mel频谱,表示真实mel频谱,l表示全局损失。音素输入序列的编码表示根据对齐模块的输出端得到的所述音素序列对应的帧长序列进行扩展输入到解码模块,实现将待训练模型的编码器和解码器联合训练。(4)最后,对语音合成模型进行端到端训练,利用全局损失进行反向传播训练,得到训练好的语音合成模型。在本发明的一项具体实施中,给出了一种基于dnn-hmm双模态对齐网络的端到端语音合成方法的具体训练过程,如图1所示的流程示意图,包括包括步骤s101至步骤s108。s101,获取当前样本的文本数据,利用文字转拼音工具将规范后的文本转化为中文拼音序列。文本读音在发音时会发生变调。因此需要将中文拼音序列根据发音变调规则进行变调。变调后的中文拼音序列根据拼音转音素字典,将中文拼音序列转化为音素序列。本实施例的拼音转音素字典,可根据实际训练的数据进行选择变换。s102,将音素输入序列、当前样本语音输入到dnn-hmm双模态对齐网络模块中进行训练,得到训练好dnn-hmm双模态对齐网络。s103,将音素输入序列、当前样本语音输入到dnn-hmm双模态对齐网络进行预测,生成音素输入音素序列与样本语音的对齐信息,并将对齐信息转化为音素输入序列对应的音素帧长序列。获取到音素的帧长序列后,便可以开始训练端到端语音合成模型。s104,将音素输入序列转换成固定维度512维的向量表示,音素输入序列根据音素字典中元素的下标来查找音素对应的embedding层的向量。作为音素输入序列的固定维度的向量表示,整个向量作为待训练模型的一部分代入训练。s105,将音素输入序列的固定维度的向量表示输入到编码器中,在编码器中经过三个独立的卷积层,每层卷积后接一个batchnorm以加快模型的收敛速度,并使用relu激活函数进行激活,使用dropout来提高模型的泛化能力。经过三个独立的卷积层变换后,将变换后的向量输入到双向长短期记忆网络中,最终得到音素输入序列的编码表示。s106,将音素输入序列的编码表示作为帧长预测模块的输入,以dnn-hmm双模态对齐网络模块得到的音素帧长序列作为帧长预测模块的输出标签。音素输入序列的编码表示经过帧长预测模块生成的帧长序列与音素帧长序列建立l2损失函数,获取音素时长损失。本实施例以二个独立卷积层作为帧长预测模块的构成,从而减少了参数量加快了计算速度。s107,由于音素输入序列的编码表示的长度与样本语音的mel频谱长度不一样,因此需要将音素输入序列的编码表示输入到扩展模块,根据dnn-hmm双模态对齐网络模块得到的音素帧长序列进行扩展。s108,将扩展后的音素输入序列的编码表示作为待训练模型的解码模块的输入,在解码模块中经过双向长短期记忆网络(lstm),以重新获取音素全局的位置信息特征,然后经过三个独立的卷积层进行卷积变换,变化后得到的解码矩阵经过一层前向神经网络变化生成语音的mel频谱。将解码生成的语音mel频谱与当前样本的语音mel频谱建立l2损失函数。mel频谱损失与音素时长损失相加得到全局损失,进行反向传播,联合训练整个待训练的语音合成模型。本发明还公开了一种基于dnn-hmm双模态对齐网络的端到端语音合成系统。如图4所示,包括:文本预处理模块(前端):用于将文本转化为音素输入序列,并且在语音合成系统处于训练模式时,还要根据文本对应的标准语音音频输出标准mel频谱。编码器:用于将音素输入序列进行编码,输出音素输入序列的编码表示,编码器的两个输出端口分别连接帧长预测模块和扩展模块的输入端口。对齐模块:在语音合成系统处于训练模式时开启,对齐模块的输入端口连接文本预处理模块,对齐模块的输出端口连接扩展模块的输入端口,用于进行样本文本的文本语音对齐,输出标准音素帧长序列。帧长预测模块:在语音合成系统处于语音合成模式时,帧长预测模块的输出端口连接扩展模块的输入端口,用于将音素输入序列的编码表示转化为预测音素帧长序列;在语音合成系统处于训练模式时,断开帧长预测模块的输出端口与扩展模块的输入端口之间的连接。扩展模块:自动读取作为参考的音素帧长序列,对编码器的输出结果进行扩展。解码器:用于将扩展后的音素输入序列的编码表示进行解码,获得语音mel频谱。声码器:在语音合成系统处于语音合成模式时开启,自动读取解码器输出的语音mel频谱,并转化为声音信号进行语音播放。具体的,所述对齐模块选用预训练的tdnn语音识别模型中的对齐模块。如图3和图4所示,本实施例的一种基于dnn-hmm双模态对齐网络的端到端语音合成模型的训练结构图主要分为两大块,一块基于gmm-hmm系统的dnn-hmm双模态对齐网络。一块是基于编码器、帧长预测模块、解码器结构为主的语音合成模块,实际应用中,语音合成模块还包括前端和声码器。dnn-hmm双模态对齐网络模块的输出音素的帧长序列是串联编码器和解码器联合训练的输入,所以dnn-hmm双模态对齐网络模块输出的音素的帧长序列的精准度直接影响最终语音合成系统的效果。dnn-hmm双模态对齐网络模块的输入是当前样本的音素输入序列和当前样本的语音,dnn-hmm双模态对齐网络模块的主要功能是获得前样本的音素输入序列所对应的当前样本的语音的语音片段,即前样本的音素输入序列所对应的语音时长。语音合成模块,包括编码器,帧长预测模块模块、扩展模块和解码器四部分组成,其中数据主要训练编码器、帧长预测模块和解码器三部分,这三部分主要由卷积网络和长短期记忆神经网络构成。其中,前端主要功能是接收文本数据,并对文本进行规范化,解析xml标签,删除非中文的特殊符号,将规范文本利用文字转拼音工具转化为中文拼音序列,然后根据发音变调规则进行变调。变调后的中文拼音序列根据拼音转音素字典,将中文拼音序列转化为音素序列。编码器、帧长预测模块、扩展模块和解码器等四个模块的主要功能是矩阵运算,将输入的音素序列转化为对应的语音的mel频谱。声码器的主要功能是将模型生成的mel频谱转换为语音。dnn-hmm双模态对齐网络,功能是通过大量开源的语音识别数据训练一个语音识别模型,实现文本与语音的对齐,然后解码语音合成的训练数据,或得文本音素对应的帧长序列,并将帧长序列作为主训练模型的输入和标签。与tacotron等传统端到端语音合成的框架训练相比,本实施例提出的dnn-hmm双模态对齐网络模块在语音合成模型训练之前进行预先训练,事先获取中间的对齐信息,减少了模型在训练过程中需要每帧逐步对齐的过程,从而在模型预测的时候可以直接预测得到对齐信息,减少模型的计算资源和时间成本。同时由于事先利用dnn-hmm双模态对齐网络模块获取音素的对齐信息,可以明确知道语音合成模型在训练过程中的对齐效果,而传统端到端语音合成的框架不能很好的判断其对齐效果,容易出现无法训练出较好的对齐效果,从而导致合成音频时出现漏音重音等问题。具体的,编码器模块的主要功能是训练学习出当前样本的音素输入序列的文本特征,从而能够将音素输入序列转化为能够代表文本特征的固定维度向量。相比于传统的参数法语音合成算法,编码器的功能与参数法中人工提取特征的步骤相似,但编码器能够通过数据学习出具有代表性的特征向量,而人工提取特征的过程会消耗大量的人力来进行统计标准,大大增加了人力成本。另一方面,相比于人工提取特征可能造成的特征信息的不完全,通过学习的特诊向量在数据覆盖全面的情况下能够学习到足够的特征信息,从而能够合成相比于参数法语音合成系统,该训练方式能够提供高表现力高自然度的中文合成语音,可以有效提升用户的人机交互体验。帧长预测模块是通过音素输入序列的编码表示和帧长序列标签训练得到的帧长预测模型,该模型以非自回归的两层卷积神经网络构成,主要功能是通过通过音素输入序列的编码表示得到相应的帧长序列。扩展模块主要功能是根据得到的帧长序列对音素输入序列的编码表示进行扩展,扩展成对应mel频谱的长度。帧长预测模块是由非自回归的两层卷积神经网络构成,能够快速获得音素输入序列对应的帧长信息,然后输入扩展模块,根据帧长预测模块进行扩展,而注意力模块的为获得扩展后的音素输入序列的编码表示,每一帧的输出都需要前一帧作为输入,这种自回归结构缺陷大大限制了实时运行效率,而且当某帧出现误差时,由于当前帧会作为得到下一帧的输入必然会造成误差累积问题,从而影响语音合成的效果。因此本实施例由于引入帧长预测模块和扩展模块来替换传统端到端语音合成系统里的注意力模块,相比于传统的端到端语音合成系统,不管在稳定性上还是计算资源消耗上都能够得到明显的提升。在本发明的一项具体实施中给出了该训练系统的一种具体工作流程,包括图2所示的步骤s201至步骤s206。s201,获取接口传入的文本,对文本进行规范化,查找是否有xml标签,如果存在xml标签则对标签进行解析,查找是否有非中文的特殊符号,如何有则删除。将规范文本利用文字转拼音工具转化为中文拼音序列,然后根据发音变调规则进行变调。变调后的中文拼音序列根据拼音转音素字典,将中文拼音序列转化为音素序列。s202,音素输入序列根据音素字典中元素的下标来查找音素对应的训练完成的embedding层的向量作为音素输入序列的固定维度的特征向量表示。s203,将音素输入序列的固定维度的向量表示输入到编码器中,在训练好的编码器模型中经过三个独立的卷积层和双向长短期记忆网络,变化得到音素输入序列的编码表示。s204,将音素输入序列的编码表示输入到训练好的帧长预测模块生成音素输入序列对应的帧长序列。s205,根据的音素输入序列对应的帧长序列,将音素序列的编码表示进行扩展,生成扩展后的音素序列的编码表示。s206,扩展后的音素序列的编码表示输入到训练好的解码器中,经过解码器中双向长短期记忆网络、三个独立的卷积层和一个前向神经网络的变化后生成语音的mel频谱。s207,将语音的mel频谱输入到声码中,将mel频谱转化为语音,返回给接口。实施例为了验证本发明的实施效果,图5是在国内中文开源数据的基础上做的测试对比,中文开源数据主要使用的是标贝公司开源的中文标准女声语音库数据库。其语音数据是单声道录音,用48khz16比特采样频率、pcmwav格式,总共有一万句中文女生语音数据和相对应的文本。以此开源数据为本实施例的实现方式作进一步的对比说明,具体数据集分割方式如表1所示。表1数据集训练数据测试数据采样率标贝开源女声950050016k按照上述数据分配方式,将9500句作为训练数据,分别以tacotron2、参数法语音合成模型和本发明提出的模型进行训练比较,以32句为一组训练8万步至损失趋于平稳,得到最终各训练好的语音合成模型。然后将剩余的500句作为测试输入各训练好的语音合成模型中,生成相应的语音音频,作为mos(平均意见评分)测评的测试数据。圆形标签的是本实施例与其他语音合成方法得到的计算资源消耗对比图,本实施例主要以生成同等字数音频所需消耗的时间来评定该语音合成系统的性能。实验硬件环境为同一台服务器上单核单线程的cpu环境下,请求生成10个字时所需的等待时间。具体实验数据对比,从图5我们可以看出:本实施例的模型运算时间消耗明显低于以tacotron2为主的端到端语音合成模型,且接近传统的基于参数法的语音合成模型的时间消耗。三角形标签的是本实施例与其他语音合成方法语音自然度的对比图。我们对测试的句子进行mos(平均意见评分)评估,以测量音频质量。针对500句测试数据,仅检查音频质量。至少由10位测试人员收听测评。将本实施例模型生成的音频样本与其他模型进行比较,其中包括真实音频、tacotron2+melgan,参数法语音合成模型(merlin+world)生成测试音频,结果显示在图5。可以看出,本实施例模型几乎与tacotron2+melgan相媲美,且明显优于参数法语音合成模型的效果。通过图5可以看出,本实施例模型生成的音频质量几乎与传统端到端语音合成模型生成的音频无区别,但在生成速度上,本实施例模型的速度明显优于传统端到端的模型,能够达到2倍以上。而相比于传统的参数法语音合成算法,生成速度虽然相差不多,但生成音频的自然度和表现力上明显相差很多。从而可以看出本实施例模型充分结合了传统的参数法语音合成算法和传统端到端合成模型的优点,在保证高表现力高自然度的中文合成语音情况下,充分提高了合成效率,降低了计算成本,有利于语音合成系统在工业场景的广泛应用。以上实施例的各种技术特征可以任意组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行详细的描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。当前第1页1 2 3 

起点商标作为专业知识产权交易平台,可以帮助大家解决很多问题,如果大家想要了解更多知产交易信息请点击 【在线咨询】或添加微信 【19522093243】与客服一对一沟通,为大家解决相关问题。

此文章来源于网络,如有侵权,请联系删除

tips