语音波形生成

文档序号:1191974 发布日期:2020-08-28 浏览:24次 >En<

阅读说明:本技术 语音波形生成 (Speech waveform generation ) 是由 崔洋 汪曦 何磊 宋謌平 于 2018-09-30 设计创作,主要内容包括:本公开内容提供了用于生成语音波形的方法和装置。可以接收与输入相关联的基频信息、声门特征和声道特征,其中声门特征包括相位特征、形状特征和能量特征。基于基频信息和声门特征通过第一神经网络模型来生成声门波形。基于声门波形和声道特征通过第二神经网络模型来生成语音波形。(The present disclosure provides methods and apparatus for generating speech waveforms. Fundamental frequency information, a glottal feature, and a vocal tract feature associated with the input may be received, wherein the glottal feature includes a phase feature, a shape feature, and an energy feature. A glottal waveform is generated by a first neural network model based on the fundamental frequency information and the glottal feature. A speech waveform is generated by a second neural network model based on the glottal waveform and the vocal tract features.)

语音波形生成

背景技术

语音编码器用于统计参数语音合成(SPSS)系统中的语音参数化和波形生成。合成分析的质量反映了自然性和相似性的最终合成语音质量。基于源滤波器的语音编码器是参数化、修改和重构波形的最流行和高质量方法之一,例如,STRAIGHT、GlottDNN、IT-FTE等,提出这些方法以提高感知质量,同时缓解“嗡嗡”和“低沉”问题。存在两种广泛使用的根据文本来产生高质量语音的范例:统计参数语音合成(SPSS)和单位选择(US)。SPSS和UC方法之间的差异主要在于激励信号的提取和参数化方法。虽然现有的语音编码器已经提高了合成语音的感知质量,但是由于存在一些不准确的假设,其在参数化和重构阶段期间引起了不可避免的损失。

发明内容

提供本发明内容以便介绍一组概念,这组概念将在以下的

具体实施方式

中做进一步描述。本发明内容并非旨在标识所要求保护主题的关键特征或必要特征,也不旨在用于限制所要求保护主题的范围。

本公开内容的实施例提出了用于生成语音波形的方法和装置。可以接收与输入相关联的基频信息、声门特征和声道特征。声门特征可以包括相位特征、形状特征和能量特征。可以将声道特征参数化为线谱对(LSP)系数、线谱频率系数、线性预测滤波器系数、反射系数、对数面积比、线性谱系数、Mel谱系数、Mel频率倒谱系数(MFCC)等等。可以基于基频信息和声门特征通过第一神经网络模型来生成声门波形。可以基于声门波形和声道特征通过第二神经网络模型来生成语音波形。

应当注意,以上一个或多个方面包括以下详细描述以及权利要求中具体指出的特征。下面的说明书及附图详细提出了所述一个或多个方面的某些说明性特征。这些特征仅仅指示在其中可以实施各个方面的原理的多种方式,并且本公开旨在包括所有这些方面和其等同变换。

附图说明

以下将结合附图描述所公开的多个方面,这些附图被提供用以说明而非限制所公开的多个方面。

图1示出了根据实施例可以在其中实现语音编码器的示例性文本转语音系统。

图2示出了根据实施例用于生成语音波形的示例性神经语音编码器系统。

图3示出了根据实施例通过神经网络实现的示例性通用声门源模型。

图4示出了根据实施例声门源模型中的神经网络的示例性结构。

图5示出了根据实施例的示例性通用声道模型。

图6示出了根据实施例通过神经网络实现的声道模型的示例性结构。

图7示出了根据实施例在图6中所示出的声道模型中采用的门控单元的示例性结构。

图8示出了根据实施例用于神经语音编码器的语音合成的示例性过程。

图9示出了根据实施例用于声门源模型的示例性训练过程。

图10示出了根据实施例用于声道模型的示例性训练过程。

图11示出了根据实施例在训练过程期间的示例性特征提取过程。

图12示出了根据实施例用于声门源模型和声道模型的示例性联合训练过程。

图13示出了根据实施例用于神经语音编码器的示例性方法的流程图。

图14示出了根据实施例用于神经语音编码器的示例性装置。

图15示出了根据实施例用于神经语音编码器的示例性装置。

具体实施方式

现在将参考多种示例性实施方式来讨论本公开。应当理解,这些实施方式的讨论仅仅用于使得本领域技术人员能够更好地理解并从而实施本公开的实施例,而并非教导对本公开的范围的任何限制。

传统的参数化语音编码器被设计为通过引入语音信号处理知识,以低计算成本来生成高质量语音。但是,编码器和解码器之间的量化损失和重构损失是不可逆的,这导致“语音编码”效应并使合成语音声音消失或具有嗡嗡声。自回归生成模型(例如,WaveNet)可以在适当的条件下产生高度逼真的语音。但是,这种模型的计算和存储器成本太昂贵而不能在诸如智能电话、膝上型计算机、便携式设备等等之类的设备上支持运行时合成。

虽然深度学习技术已经改善了SPSS性能,但是SPSS和US之间的质量差距仍然很大。这两个TTS系统之间的主要区别在于波形生成器。在SPSS系统中,采用语音编码器将声学特征转换为语音波形,而US系统直接使用单元选择技术从语音语料库中选择语音单元,然后连接语音单元以产生语音波形。传统参数化语音编码器的合成质量受限于编码器中的参数化损失和解码器中的重构损失,该损失是不可逆的并且使合成语音声音消失或具有嗡嗡声。近年来,随着深度学习的快速发展和计算能力的提高,一些先进的自回归生成模型已成功应用于生成高保真语音。但是,这些模型在计算上很昂贵,并且不能在CPU或设备上支持运行时合成。传统的参数化语音编码器通过使用语音信号处理的知识而具有非常便宜的计算成本。因此,可以使用本领域知识来设计神经语音编码器,从而可以提高性能和效率。

本公开内容的实施例提出了一种具有低计算和存储器成本的用于高质量语音合成的基于神经网络的语音编码器。该基于神经网络的语音编码器可以通过引入语音信号处理的知识来极大地提高语音编码器性能,这可以提高合成效率以支持运行时合成。可以设计基于神经网络的语音编码器中的两种模型,以模拟源滤波器理论中的源模型和滤波器模型。该神经语音编码器可以利用具有适当神经网络设计方案的语音编码器特征,以在帧级别实现如原始波形的类似波形的语音质量。最后,可以采用一种训练方法来减轻这些模型之间的不匹配。

图1示出了根据实施例可以在其中实现语音编码器的示例性文本转语音(TTS)系统100。

在图1中,通用TTS系统100可以包括文本分析器110、韵律预测器120、持续时间模型130、声学模型140和语音编码器150。文本分析器110可以接收输入101,例如,文本输入,并对输入执行操作(例如,文本标准化、分析等)以将文本输入转换为文本的发音,将该发音传递到韵律预测器120。韵律预测器120可以对文本的发音执行语言分析(例如,分析文本发音的中断、音高重音等等),以获得预测的韵律事件。持续时间模型130可以接收预测的韵律事件,并基于所接收的预测的韵律事件获得语言特征。可以将该语言特征馈送到声学模型140以进一步处理。声学模型140可以基于语言特征获得声学特征,并将声学特征馈送到语音编码器150。语音编码器150可以根据声学特征来生成和输出语音波形102。

应当理解,图1中所示的所有实体都是示例性的,根据具体的应用需求,在TTS系统100中可以涉及任何其它实体。

图2示出了根据实施例用于生成语音波形的示例性神经语音编码器系统200。

在一种示例性实现中,可以将神经语音编码器系统200实现为TTS系统中的语音编码器,例如,图1中的TTS系统100里的语音编码器150。

神经语音编码器系统200可以包括声门源模型210和声道模型220。声门源模型210可以被配置为根据基于输入信号201生成的声门特征202和基频信息203(即F0信息),模仿声门源振动并生成声门波形204。可以将生成的声门波形204传递到声道模型220。声门特征202可以包括相位特征、形状特征和能量特征。如所示出的,除了声门特征和基频信息之外,还可以基于输入信号201生成声道特征205,并将声道特征205馈送到声道模型220。声道模型220可以被配置为至少基于声道特征205和声门波形204,模仿声道滤波效果并生成语音波形206。作为替代方式,可以利用帧延迟207将生成的语音波形206反馈到声道模型220以作为前一帧语音波形。

应当理解,可以通过各种适当的方式,包括但不限于:例如,声门反向滤波(GIF)、声门闭合时刻(GCI)检测、浊音/清音(V/UV)检测、声门特征提取和内插技术,基于输入信号来生成声门特征、声道特征和基频信息,如下面所讨论的。虽然在TTS系统中应用神经语音编码器200的实现中,输入信号可以是文本输入信号,但在一些其它实现中,该输入信号201也可以是语音信号、或音频信号、或视频信号等等。

图3示出了根据实施例通过神经网络310实现的示例性通用声门源模型300。

如图3中所示,神经网络310接收相位特征301、形状特征303、声门特征的能量特征304和基频信息302,例如F0信息。相位特征301可以表示用于波形内插的时间序列或定时,形状特征303和能量特征304可以表示特性波形(CW)信息。基频信息302可以指示浊音/清音信息,例如,指示当前帧或当前片段是浊音帧还是清音帧。如所示出的,可以将形状特征303乘以能量特征304以恢复特性波形特征的原始幅度,例如原型分量。

神经网络310可以处理所接收的特征,并基于所接收的特征生成声门波形305。下面将参照图4来讨论神经网络310的示例性结构。

图4示出了根据实施例的声门源模型400中的神经网络的示例性结构。

如图4中所示,神经网络的示例性结构(例如,图3中的神经网络310)包括相位矩阵单元405、多个完全连接的层单元406、408、410、414、416、多个整流线性单元(ReLU)407、411、415、sigmoid(σ)函数单元409、长短时记忆(LSTM)单元412和tanh函数单元413。相位矩阵单元405可以用于将相位特征堆叠到相位矩阵上。然后,与ReLU单元407、sigmoid函数单元409相结合的两个完全连接的层单元406、408可以用于对相位矩阵执行非线性变换以获得相位加权矩阵。LSTM单元412结合完全连接的层单元410、ReLU单元411和tanh函数单元413可以用于从形状特征403和能量特征404中获得原型分量。在本文中,可以采用LSTM单元412来捕获历史序列信息。可以通过两个完全连接的(FC)层单元414、416和ReLU单元415,进行上述两个流的乘积来生成输出声门波形417,其是目标声门波形的预测。

基于相位的加权矩阵

相位信息或相位特征可以表示波形插值的定时。可以在将相位特征与声门脉冲中的能量和形状相乘之前,处理该特征。可以将组成声门波形的声门脉冲参数化为能量、形状(例如,离散余弦变换(DCT)系数)和相位。可以使用基于相位的加权矩阵来重构声门波形。可以如下所示地重构声门波形

其中,

Figure BDA0002572022890000053

表示第n帧中的相位的第k个分量,c(n,l)表示第n帧中的特性波形的第l个分量,sinc(t)表示等于sin(t)/t的sinc函数,L是特性波形的长度,Ts表示特性波形的采样间隔,其等于2π/L。式(1)可以请求满足奈奎斯特采样率的特性波形。由于特性波形的长度是有限的,因此在局部区域中,sinc函数可以由其它插值函数(例如,表示为f(t)的样条函数)代替。因此,可以在式(1)中获得近似结果。

可以将

Figure BDA0002572022890000061

的相位特征矢量化为变量Φ(n),可以将c(n,l)的特性波形矢量化为变量c(n),可以将第n帧中的重构的声门波形矢量化为u(n,Φ(n)),如下所示:

c(n)=[c(n,Ts),c(n,2Ts),…,c(n,LTs)]T 式(3)

其中,K是帧长度,L是特性波形长度,将F(Φ(n))规定为基于相位的加权矩阵,k∈[1,K],l∈[1,L],g()表示基于相位的差分序列信息的相位矢量的缩放信息。相位的差分序列信息可以表示为d_Phase并且被计算为Φ(n,k)-Φ(n,k-1)(例如,如图4中的d_Phase401’),随后可以将其对角化为D=diag{g(Φ(n,k)-Φ(n,k-1))}。

基于上面的矢量化变量,表示重构的波形的式(1)可以具有如下的矢量版本:

u(n,Φ(n))=F(Φ(n))c(n) 式(6)

根据上面的式(6),可以将重构的波形u(n,Φ(n))分解为加权矩阵F(Φ(n))和特性波形矢量c(n)的乘积。

可以通过利用神经网络来预测基于相位的加权矩阵和特性波形矢量,如图3和图4所示并且如下所述,可以将基于相位的加权矩阵和特性波形矢量一起相乘以重构声门波形。

神经网络

如上所述,可以引入基于相位的加权矩阵以通过加权特性波形分量来重构声门波形,如式(6)中所示。式(2)-(5)可以指示:加权矩阵函数F(.)是相位向量Φ(n)的复杂非线性函数。为了模拟基于相位的加权函数,可以使用两个完全连接的(FC)层(例如,FC层单元406),随后是不同的非线性激活。此外,由于在浊音片段或帧中特性波形可以缓慢地改变,而在清音片段或帧中特性波形快速地改变,因此可以采用LSTM单元409来捕获历史序列信息。此外,对于相位加权矩阵,可以使用诸如ReLU单元407和sigmoid单元408之类的激活单元来增加正则化和边界平滑度。对于特性波形,可以使用诸如tanh函数单元410之类的激活单元来增加正则化和边界平滑度。

为了构造基于相位的加权矩阵,可以将表示相位特征401的相位矢量堆叠到相位矩阵单元405中的相位矩阵。替代地,可以基于相位特征401来获得相位的差分序列信息(d_Phase 401’),可以通过对角化单元405’对其进行对角化以生成相位的对角化差分序列信息,以校正相位矩阵。可以通过FC层单元、ReLU单元和Sigmoid函数单元,以与式(5)中规定的矩阵F(Φ(n))相同的方式来处理相位矩阵和/或相位的经对角化的差分序列信息。例如,可以将相位矩阵和相位的经对角化的差分序列信息相乘,并且可以通过FC层单元、ReLU单元和Sigmoid函数单元来处理它们的乘积。在指数操作之后,可以将形状特征403乘以能量特征404,以恢复特性波形的原始幅度。可以将经能量调制的形状特征馈送到LSTM单元409,其中V/UV特征通过诸如F0 402之类的基频信息来指示。在Sigmoid函数单元408和tanh函数单元410之后,可以将基于相位的加权矩阵乘以LSTM单元409的输出,其示出为式(6)中的加权乘法。在将基于相位的加权矩阵与LSTM单元的输出(例如,特性波形矢量)的乘积传送通过两个另外的完全连接的层单元406和另外的ReLU单元407之后,可以生成或重构声门波形411。

应当理解,虽然示出了图4中的声门源模型里的神经网络的结构可以包括上面示出的元件,但神经网络可以另外地或替代地包括任何其它元件。例如,用于生成声门波形的声门源模型中的神经网络可以包括门控递归单元(GRU)、递归神经网络(RNN)、Bi-LSTM、Bi-GRU、Bi-RNN等等。

在生成声门波形之后,可以基于所生成的声门波形和声道特征来合成语音波形,例如,通过利用声道特征对所生成的声门波形进行滤波,如下面参照图5所讨论的。

图5示出了根据一个实施例的示例性通用声道模型500。

如图5中所示,存在用于生成语音波形503的两个非线性函数单元540和550。非线性函数单元540可以接收前一帧语音波形510和声道特征520,以根据它们来生成零输入响应501。在这里,零输入响应501可以指示基于历史状态信息而不是当前输入信息生成的响应。非线性函数单元550可以接收声门波形530和声道特征520以根据它们来生成零状态响应502。在这里,零状态响应502可以指示基于当前输入信息而不是历史状态信息生成的响应。图5中的声门波形530可以是通过使用上面讨论的声门源模型来产生的声门波形。

可以对零输入响应501和零状态响应502进行组合以生成如下所述的语音波形503:

Figure BDA0002572022890000081

其中,表示第n帧中的语音波形;表示第(n-1)帧(例如,图5中所示的前一帧语音波形510)中的语音波形;g(n)表示第n帧中的声门波形;a(n)表示第n帧中的声道特征。此外,fzi()表示零输入响应函数,例如,图5中所示的非线性函数单元540;fzs()表示零状态响应函数,例如,图5中所示的非线性函数单元550。

图5中所示的非线性函数单元540和550可以由神经网络来实现,如下面参照图6所讨论的。

图6示出了根据实施例通过神经网络实现的声道模型600的示例性结构。

如所示出的,当前一帧语音波形601通过完全连接(FC)层单元607、609、ReLU单元608和tanh函数单元610时,可以生成前一帧语音波形601的处理结果的第一流s1,并将其馈送到门控单元611。当声道特征602通过FC层单元614、616、ReLU单元615和Sigmoid函数单元617时,可以生成声道特征602的处理结果的第二流s2,并将其馈送到门控单元611、612、622、623。这两个流s1和s2可以通过门控单元611、612和FC层单元613以获得零输入响应zi604。当声门波形603通过FC层单元618、620、ReLU单元619和tanh函数单元621时,可以生成声门波形603的处理结果的第三流s3,并将其连同第二流s2馈送到门控单元622、623和FC层单元624以获得零状态响应zs 605。在获得零输入响应zi和零状态响应zs之后,可以将它们组合在一起以生成语音波形606。

应当理解,图6中的声道模型里的神经网络的结构中所示的所有元件都是示例性的,并且根据具体的应用需求,在声道模型中的神经网络的结构里可以省略任何所示的元件并且可以涉及任何其它元件。例如,用于生成语音波形的声道模型中的神经网络可以包括门控递归单元(GRU)、递归神经网络(RNN)、Bi-LSTM、Bi-GRU、Bi-RNN等等。

图7示出了根据实施例在图6所示出的声道模型中采用的门控单元700的示例性结构。

如图7中所示,可以存在两个输入:输入1 701和输入2 702。可以将这两个输入一起相乘,并且可以通过完全连接的层单元710和tanh函数单元720处理这两个输入的乘积以生成输出703。

应当理解,图7的门控单元700的结构中示出的所有元件都是示例性的,并且根据具体的应用需求,在门控单元700的结构里可以省略任何所示的元件并且可以涉及任何其它元件。例如,门控单元700可以仅包括完全连接的层单元而不具有tanh函数单元和/或具有其它非线性激活函数等等。

图8示出了根据实施例用于由神经语音编码器进行语音合成的示例性过程800。通过过程800,可以至少基于声门特征、声道特征和基频信息来生成语音波形。

在810处,可以接收输入。在这里,该输入可以具有文本、语音、视频等形式。

在820处,可以基于输入来获得基频信息、声门特征和声道特征。声门特征可以包括相位特征、形状特征和能量特征。在输入是文本输入的情况下,可以通过对文本输入进行文本转语音(TTS)处理来获得声学特征。随后,可以从声学特征中提取声门特征、声道特征和基频信息。

在830处,可以基于在声门特征中包括的相位特征来构建基于相位的加权矩阵。在一个例子中,可以通过以下步骤来构建基于相位的加权矩阵:对相位特征进行堆叠以形成相位矩阵;通过神经网络对相位矩阵执行非线性变换,以获得基于相位的加权矩阵。在一种实现中,该神经网络可以包括一个或多个FC层单元、ReLU单元和sigmoid单元。

在840处,可以基于声门特征的基频信息、形状特征和能量特征来生成特性波形特征。在一个例子中,可以将形状特征和能量特征相乘以获得这两个特征的乘积。该乘积可以通过神经网络以获得特性波形特征。这种神经网络可以包括例如FC层单元、ReLU单元、LSTM单元和tanh函数单元。

在850处,可以根据基于相位的加权矩阵和特性波形特征来生成声门波形。在一个例子中,可以将基于相位的加权矩阵与特性波形特征进行相乘以获得乘积。在使该乘积通过一个或多个另外的完全连接的层之后,可以生成声门波形。

在860处,可以基于声道特征和前一语音波形(例如,前一帧语音波形)获得零输入响应。

在870处,可以基于在850处生成的声道特征和声门波形来获得零状态响应。可以通过包括一个或多个门控单元的门控单元神经网络来获得零输入响应和零状态响应

在880处,可以通过对零输入响应和零状态响应进行组合来生成语音波形。在一个例子中,语音波形可以是零输入响应和零状态响应的总和。

在890处,可以输出所生成的语音波形。还可以在具有帧延迟的情况下,将所生成的语音波形作为下一个输入的前一语音波形反馈到步骤860。

应当理解,在用于图8中的神经语音编码器的语音合成的示例性过程800中示出的所有元素都是示例性的,并且根据具体应用需求,在用于神经语音编码器的语音合成的过程800中,可以省略任何所示的元素并且可以涉及任何其它元素。

可以训练神经语音编码器系统中示出的声门源模型和声道模型以更好地工作。下面将描述这两个模型的示例性训练过程。

图9示出了根据实施例用于声门源模型的示例性训练过程900。

可以将训练语音信号901分解为声门源信号902和声道特征(图9中没有示出)。可以从用户或数据库接收该训练语音信号901。可以从声门源信号902中提取声门特征903。声门特征903可以包括相位特征、形状特征和能量特征,以及可以将声门特征903传递到声门源模型910以获得声门波形904。在训练过程期间,可以采用均方误差(MSE)单元920来优化声门源模型。MSE单元920可以接收声门波形904和声门源信号902,并对它们进行比较以获得声门波形误差905。随后,可以将声门波形误差905反馈到声门源模型910以对其进行优化。应当理解,虽然在训练过程900中采用了MSE单元920,但是可以根据具体的应用需求而采用任何其它损失函数。

图10示出了根据实施例用于声道模型的示例性训练过程1000、1010、1020。在图10中,图(A)是用于声道模型的通用训练过程1000,图(B)和(C)是用于声道模型的示例性两阶段训练过程,以用于校正预测的语音和训练语音信号之间的不匹配,其中图(B)是用于两阶段训练过程的第一阶段1010,图(C)是用于两阶段训练过程的第二阶段1020。

在图(A)中,可以将训练语音信号1001分解为声门源信号(图10中没有示出)和声道特征1003。可以将声道特征1003连同声门波形1002传递到声道模型1004以获得预测的语音波形1005。可以从用户或数据库接收训练语音信号1001,并且可以通过声门源模型根据训练语音信号1001生成声门波形1002或者从数据库获得声门波形1002。在训练过程期间,可以采用均方误差(MSE)单元1006来优化声道模型1004。MSE单元1006可以接收所生成的预测语音波形1005和训练语音信号1001,并对它们进行比较以获得语音波形误差1007。随后,可以将语音波形误差1007反馈到声道模型1004以对其进行优化。应当理解,虽然在训练过程1000中采用了MSE单元1006,但是可以根据具体的应用需求而采用任何其它损失函数。

在用于声道模型的两阶段训练过程的第一阶段1010的图(B)中,可以将训练语音信号1001既使用成训练特征也使用成目标,可以通过一帧延迟1008来使用训练语音信号1001对声道模型1004进行训练。声道模型1004可以接收声门波形1002、声道特征1003和具有一帧延迟1008的训练语音信号1001(作为前一帧语音信号/波形),并生成预测的语音波形1005’。可以将预测的语音波形1005’连同训练语音信号1001一起馈送到MSE单元1006,以获得语音波形误差1007’。可以将语音波形误差1007’反馈到声道模型1004以优化声道模型1004。第一阶段的训练过程可以执行若干次以使声道模型更好地工作。

在用于声道模型的两阶段训练过程的第二阶段1020的图(C)中,可以在具有一帧延迟1009的情况下将声道模型1004生成的预测语音波形1005”使用成训练特征(例如,前一帧语音波形),以连同声门波形1002、声道特征1003一起反馈到声道模型1004,并且训练语音信号1001可以用作用于通过MSE单元1006的与预测语音波形1005”相比地计算语音波形误差1007”的目标。

通过两阶段训练,可以校正声道模型1004中的预测语音和训练语音信号之间的不匹配。

图11示出了根据实施例在训练过程期间的示例性特征提取过程1100。

可以接收语音信号1101,并通过声门反向滤波单元1110将其分解为声门源信号1102和声道特征1103。可以从声门源信号1102中提取声门特征。声门特征可以包括相位特征、形状特征和能量特征。将如下所述地描述声门特征提取过程。可以采用浊音/清音检测单元1120来标记浊音和清音帧或片段1104,并向声门闭合时刻(GCI)检测单元1130发送浊音/清音信息。可以采用GCI检测单元1130来提取锚点1105,以用于标记浊音段中每个音高周期的起始点和/或结束点。在清音段中,可以根据最近的浊音帧之间的内插基频值F01106来计算伪锚点。可以在锚点之间提取原型声门波形,并将其传递到声门特征提取1140,以用于从原型声门波形中提取声门特征。可以通过以浊音帧和清音帧二者中的采样级别的从0到2π的相邻锚点之间的线性内插1150,来计算相位特征1107。在大小和能量归一化之后,可以获得形状特征1108和能量特征1109。能量特征1109可以表示为对数标度。

为了提取形状特征和能量特征,可以提取声门脉冲并将其内插到固定长度,或者可以通过零填充而不具有内插、或通过零填充和内插之间的混合方式,将声门脉冲的长度调整到固定长度。可以计算经内插的声门脉冲的能量并将其变换为对数。例如,可以通过将固定长度声门脉冲归一化为单位能量来提取形状特征。在一些例子中,形状特征可以表示为DCT系数或其它特征,例如离散傅立叶变换(DFT)系数、来自预训练的神经网络的瓶颈特征等等。可以通过线性内插(例如,通过内插单元1150)将音高同步的形状和能量特征重新排列到每个帧中。

声门反向滤波(GIF)

声门反向滤波(GIF)是从语音信号来估计声门源信号和声道特征的过程。在一个例子中,可以采用迭代自适应逆滤波(IAIF)算法以自适应方式将语音信号自动地分解为声门源信号和声道特征,并且通过若干次迭代进行收敛。取决于具体的应用需求,也可以采用不是IAIF算法的任何其它逆滤波算法。可以将声道特征参数化为线谱对(LSP)系数、线谱频率系数、线性预测滤波器系数、反射系数、对数面积比、线性谱系数、Mel谱系数、Mel频率倒谱系数(MFCC)等等。

声门特征提取

可以通过参考波形内插语音编码器来提取声门特征。这些特征可以是基本相位、形状和能量特征,其中基本相位可以表示时间序列和基频信息,形状特征和能量特征可以表示特性波形信息。通过波形内插编码,声门脉冲和基本相位可以形成特性波形表面。具有在第n帧处提取的基本相位的周期函数可以如下所示地进行表示:

其中,基本相位可以表示在第n帧提取的特性波形的第m分量,其可以定义为:

其中,P(n)可以表示第n帧中的时变音高周期。Ak和Bk可以表示特性波形的第k个离散时间傅里叶级数系数。F0(n)可以表示第n帧中的基频。Fs可以表示采样率。这种基本相位和特性波形特征可以用于重构声门波形。

虽然如上所述可以单独地训练声门源模型和声道模型,但是也可以如下所述地对它们进行联合训练。

图12示出了根据实施例用于声门源模型1210和声道模型1220的示例性联合训练过程1200。

对于包括声门源模型1210和声道模型1220的神经语音编码器系统,为了进一步改善性能,可以通过连接在一起来训练这两个模型。因此,可以使用联合训练来校正声门源模型1210和声道模型1220之间的不匹配。如所示的,可以从训练语音信号1201中提取声门特征1202和声道特征1203。可以将声门特征1202传送到声门源模型1210。可以将声道特征1203传送到声道模型1220。基于声门特征1202,声门源模型1210可以生成声门波形1204。声道模型1220可以接收声道特征1203连同所生成的声门波形1204,以生成预测的语音波形1205。可以将该预测的语音波形1205连同训练语音信号1201一起馈送到MSE单元1230。MSE单元1230可以基于预测的语音波形1205和训练语音信号1201来生成语音波形误差1206,例如,通过对预测的语音波形1205和训练语音信号1202进行比较以获得它们之间的差。可以将语音波形误差1206反馈到声门源模型1210和/或声道模型1220,以优化包括声门源模型和声道模型的语音编码器系统。通过语音编码器系统的联合训练,可以校正声门源模型和声道模型之间的不匹配。

图13示出了根据实施例用于生成语音波形的示例性方法1300的流程图。

在1310处,接收与输入相关联的基频信息、声门特征和声道特征。声门特征可以包括相位特征、形状特征和能量特征。

在1320处,可以基于基频信息和声门特征通过第一神经网络模型来生成声门波形。

在1330处,可以基于声门波形和声道特征通过第二神经网络模型来生成语音波形。

在一种实现中,通过相位矢量表示相位特征,通过形状矢量表示形状特征,通过能量矢量表示能量特征。可以进一步通过以下步骤来生成声门波形:根据相位矢量形成相位矩阵;通过非线性地通过第一神经网络模型的第一部分转换相位矩阵,来构造基于相位的加权矩阵;基于基频信息、形状矢量和能量矢量通过第一神经网络模型的第二部分,来生成特性波形特征;以及根据基于相位的加权矩阵和特性波形特征来获得声门波形。

在一种实现中,可以通过将基于相位的加权矩阵与特性波形特征相乘通过第一神经网络模型的第三部分,来获得声门波形。

在一种实现中,可以以帧为基础来生成语音波形。

在一种实现中,该方法还可以包括:接收前一帧语音波形。在一种实现中,可以进一步基于所述前一帧语音波形来生成语音波形。

在一种实现中,可以进一步基于以下步骤来生成语音波形:基于声门波形和声道特征通过第二神经网络模型的第一部分获得零状态响应;基于声道特征和前一帧语音波形通过第二神经网络模型的第二部分获得零输入响应;以及通过对零状态响应和零输入响应进行组合来获得语音波形。

在一种实现中,第二神经网络模型的第一部分和第二部分可以分别用于执行非线性转换。

在一种实现中,第二神经网络模型的第一部分可以包括用于组合声门波形和声道特征的至少一个门控单元,以及第二神经网络模型的第二部分可以包括用于组合声道特征和前一帧语音波形的至少一个门控单元。

在一种实现中,所述输入可以是文本输入。在一种实现中,可以基于文本输入通过文本转语音(TTS)处理,来生成与输入相关联的基频信息、声门特征和声道特征。

在一种实现中,可以通过以下步骤来训练第一神经网络模型:接收包括声门源信号和声道训练特征的训练语音信号;从声门源信号中提取基频训练信息、相位训练特征、形状训练特征和能量训练特征;基于基频训练信息、相位训练特征、形状训练特征和能量训练特征通过第一神经网络模型,获得重构的声门波形;将重构的声门波形与声门源信号进行比较,以获得声门波形误差;以及基于该声门波形误差来优化第一神经网络模型。

在一种实现中,所述提取步骤还可以包括:通过声门反向滤波,从训练语音信号中获得声门源信号;对声门源信号执行浊音/清音检测,以识别浊音段和清音段;对浊音段执行声门闭合时刻(GCI)检测,以获得浊音段的基频训练信息;将基频训练信息内插到清音段;以及基于基频训练信息,从浊音段和清音段中获得相位训练特征、形状训练特征和能量训练特征。

在一种实现中,可以通过以下步骤来训练第二神经网络模型:通过声门反向滤波从训练语音信号中获得声道训练特征;接收重构的声门波形;基于声道训练特征和重构的声门波形通过第二神经网络模型,来获得重构的语音波形;将重构的语音波形与训练语音信号进行比较,以获得语音波形误差;以及基于语音波形误差,优化第二神经网络模型和/或第一神经网络模型。

应当理解的是,方法1300还可以包括:用于根据如上面所提及的本公开内容的实施例来生成语音波形的任何步骤/过程。

图14示出了根据实施例用于生成语音波形的示例性装置1400。

装置1400可以包括:接收模块1410,用于接收与输入相关联的基频信息、声门特征和声道特征,其中声门特征包括相位特征、形状特征和能量特征;声门波形生成模块1420,用于基于基频信息和声门特征通过第一神经网络模型来生成声门波形;语音波形生成模块1430,用于基于声门波形和声道特征通过第二神经网络模型来生成语音波形。

在一种实现中,通过相位矢量表示相位特征,通过形状矢量表示形状特征,以及通过能量矢量表示能量特征。在一种实现中,声门波形生成模块1420还可以包括:形成模块,用于根据相位矢量形成相位矩阵;构造模块,用于通过非线性地通过第一神经网络模型的第一部分转换相位矩阵,来构造基于相位的加权矩阵;特性波形特征生成模块,用于基于基频信息、形状矢量和能量矢量通过第一神经网络模型的第二部分,来生成特性波形特征;以及获得模块,用于根据基于相位的加权矩阵和特性波形特征来获得声门波形。

在一种实现中,语音波形生成模块1430可以以帧为基础来生成语音波形。

装置1400还可以包括前一帧语音波形接收模块,以用于接收前一帧语音波形。在一种实现中,语音波形生成模块可以进一步基于前一帧语音波形来生成语音波形。

在一种实现中,语音波形生成模块1430还可以包括:零状态响应获得模块,用于基于声门波形和声道特征通过第二神经网络模型的第一部分获得零状态响应;零输入响应获得模块,用于基于声道特征和前一帧语音波形通过第二神经网络模型的第二部分获得零输入响应;以及语音波形获得模块,用于通过对零状态响应和零输入响应进行组合来获得语音波形。

在一种实现中,第二神经网络模型的第一部分可以包括用于组合声门波形和声道特征的至少一个门控单元,以及第二神经网络模型的第二部分可以包括用于组合声道特征和前一帧语音波形的至少一个门控单元。

在一种实现中,所述输入可以是文本输入。在一种实现中,可以基于文本输入通过文本转语音(TTS)处理,来生成与输入相关联的基频信息、声门特征和声道特征。

此外,装置1400还可以包括:被配置为根据如上面所提及的本公开内容的实施例,在神经语音编码器中生成语音波形时使用的任何其它模块。

图15示出了根据实施例用于生成语音波形的示例性装置1500。装置1500可以包括一个或多个处理器1510和存储计算机可执行指令的存储器1520。当执行这些计算机可执行指令时,所述一个或多个处理器1510可以用于:接收与输入相关联的基频信息、声门特征和声道特征,其中声门特征包括相位特征、形状特征和能量特征;基于基频信息和声门特征通过第一神经网络模型来生成声门波形;以及基于声门波形和声道特征通过第二神经网络模型来生成语音波形。

本公开内容的实施例可以实施在非临时性计算机可读介质中。该非临时性计算机可读介质可以包括指令,当所述指令被执行时,使得一个或多个处理器根据如上面所述的本公开内容的实施例,执行用于在问答会话中向用户提供响应的方法的任何操作。

应当理解,以上描述的方法中的所有操作都仅仅是示例性的,本公开并不限制于方法中的任何操作或这些操作的序列顺序,而是应当涵盖在相同或相似构思下的所有其它等同项。

还应当理解,以上描述的装置中的所有模块都可以通过各种方式来实施。这些模块可以被实施为硬件、软件、或其组合。此外,这些模块中的任何模块可以在功能上被进一步划分成子模块或组合在一起。

已经结合各种装置和方法描述了处理器。这些处理器可以使用电子硬件、计算机软件或其任意组合来实施。至于这些处理器是实施为硬件还是软件将取决于具体的应用以及施加在系统上的总体设计约束。作为示例,本公开中给出的处理器、处理器的任意部分、或者处理器的任意组合可以与微处理器、微控制器、数字信号处理器(DSP)、现场可编程门阵列(FPGA)、可编程逻辑器件(PLD)、状态机、门逻辑、分立硬件电路、以及配置用于执行在贯穿本公开中描述的各种功能的其它适合的处理部件一起实施。本公开中给出的处理器、处理器的任意部分、或者处理器的任意组合的功能可以与由微处理器、微控制器、DSP或其它适合的平台所执行的软件一起实施。

软件应当被广泛地视为表示指令、指令集、代码、代码段、程序代码、程序、子程序、软件模块、应用、软件应用、软件包、例程、子例程、对象、运行线程、过程、函数等。软件可以驻留在计算机可读介质中。计算机可读介质可以包括例如存储器,存储器可以例如为磁性存储设备(如,硬盘、软盘、磁条)、光盘、智能卡、闪存设备、随机存取存储器(RAM)、只读存储器(ROM)、可编程ROM(PROM)、可擦除PROM(EPROM)、电可擦除PROM(EEPROM)、寄存器或者可移动盘。尽管在贯穿本公开中给出的多个方面中将存储器示出为是与处理器分离的,但是存储器也可以位于处理器内部(如,高速缓存或寄存器)。

以上描述被提供用于使得本领域任何技术人员可以实施本文所描述的各个方面。对这些方面的各种修改对于本领域技术人员是显而易见的,本文限定的一般性原理可以应用于其它方面。因此,权利要求并非旨在被局限于本文示出的方面。对于本领域技术人员已知或即将获知的、对贯穿本公开所描述的各个方面的元素的所有结构和功能上的等同项,都将通过引用而明确地包含到本文中,并且旨在由权利要求所覆盖。

24页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:用于调制重叠变换的分析/合成窗口化函数

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!