CN111968618B - 语音合成方法、装置 - Google Patents
语音合成方法、装置 Download PDFInfo
- Publication number
- CN111968618B CN111968618B CN202010880219.0A CN202010880219A CN111968618B CN 111968618 B CN111968618 B CN 111968618B CN 202010880219 A CN202010880219 A CN 202010880219A CN 111968618 B CN111968618 B CN 111968618B
- Authority
- CN
- China
- Prior art keywords
- phoneme
- acoustic
- feature
- text
- features
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000001308 synthesis method Methods 0.000 title claims abstract description 29
- 230000015572 biosynthetic process Effects 0.000 claims abstract description 69
- 238000003786 synthesis reaction Methods 0.000 claims abstract description 66
- 238000012545 processing Methods 0.000 claims abstract description 35
- 238000000034 method Methods 0.000 claims abstract description 30
- 238000003860 storage Methods 0.000 claims abstract description 11
- 230000002194 synthesizing effect Effects 0.000 claims abstract description 8
- 239000013598 vector Substances 0.000 claims description 51
- 230000010076 replication Effects 0.000 claims description 35
- 230000015654 memory Effects 0.000 claims description 32
- 238000000605 extraction Methods 0.000 claims description 31
- 239000011159 matrix material Substances 0.000 claims description 20
- 230000009466 transformation Effects 0.000 claims description 19
- 238000004458 analytical method Methods 0.000 claims description 17
- 238000001228 spectrum Methods 0.000 claims description 17
- 230000008569 process Effects 0.000 claims description 10
- 238000010606 normalization Methods 0.000 claims description 6
- 238000013528 artificial neural network Methods 0.000 description 25
- 230000006870 function Effects 0.000 description 24
- 238000010586 diagram Methods 0.000 description 14
- 238000012549 training Methods 0.000 description 12
- 238000005516 engineering process Methods 0.000 description 10
- 238000013473 artificial intelligence Methods 0.000 description 8
- 238000004590 computer program Methods 0.000 description 7
- 230000003993 interaction Effects 0.000 description 7
- 230000000306 recurrent effect Effects 0.000 description 6
- 230000003595 spectral effect Effects 0.000 description 6
- 238000004364 calculation method Methods 0.000 description 5
- 238000004891 communication Methods 0.000 description 5
- 238000000354 decomposition reaction Methods 0.000 description 5
- 210000002569 neuron Anatomy 0.000 description 4
- 230000006403 short-term memory Effects 0.000 description 4
- 230000009286 beneficial effect Effects 0.000 description 3
- 230000007787 long-term memory Effects 0.000 description 3
- 239000000463 material Substances 0.000 description 3
- 238000003058 natural language processing Methods 0.000 description 3
- 238000003062 neural network model Methods 0.000 description 3
- 230000009471 action Effects 0.000 description 2
- 230000002457 bidirectional effect Effects 0.000 description 2
- 230000008033 biological extinction Effects 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000007774 longterm Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000007781 pre-processing Methods 0.000 description 2
- 230000033764 rhythmic process Effects 0.000 description 2
- 238000013515 script Methods 0.000 description 2
- 230000013707 sensory perception of sound Effects 0.000 description 2
- 241000288105 Grus Species 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 230000001934 delay Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000004880 explosion Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 230000035800 maturation Effects 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 238000003909 pattern recognition Methods 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000000644 propagated effect Effects 0.000 description 1
- 230000001902 propagating effect Effects 0.000 description 1
- 238000013139 quantization Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000035945 sensitivity Effects 0.000 description 1
- 238000004904 shortening Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000013179 statistical model Methods 0.000 description 1
- 238000005309 stochastic process Methods 0.000 description 1
- 230000001502 supplementing effect Effects 0.000 description 1
- 238000000844 transformation Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L13/00—Speech synthesis; Text to speech systems
- G10L13/02—Methods for producing synthetic speech; Speech synthesisers
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L13/00—Speech synthesis; Text to speech systems
- G10L13/08—Text analysis or generation of parameters for speech synthesis out of text, e.g. grapheme to phoneme translation, prosody generation or stress or intonation determination
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/02—Feature extraction for speech recognition; Selection of recognition unit
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/08—Speech classification or search
- G10L15/18—Speech classification or search using natural language modelling
- G10L15/183—Speech classification or search using natural language modelling using context dependencies, e.g. language models
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L25/00—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
- G10L25/03—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the type of extracted parameters
- G10L25/18—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the type of extracted parameters the extracted parameters being spectral information of each sub-band
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L25/00—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
- G10L25/03—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the type of extracted parameters
- G10L25/24—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the type of extracted parameters the extracted parameters being the cepstrum
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L25/00—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
- G10L25/27—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the analysis technique
- G10L25/30—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the analysis technique using neural networks
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/02—Feature extraction for speech recognition; Selection of recognition unit
- G10L2015/025—Phonemes, fenemes or fenones being the recognition units
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Computational Linguistics (AREA)
- Health & Medical Sciences (AREA)
- Human Computer Interaction (AREA)
- Acoustics & Sound (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Computation (AREA)
- Spectroscopy & Molecular Physics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Machine Translation (AREA)
Abstract
本申请提供了一种语音合成方法、装置、电子设备及计算机可读存储介质;方法包括:将目标文本分解为多个音素,并确定每个音素的上下文特征;对每个音素的上下文特征进行时长预测处理,得到每个音素的预测时长;基于每个音素的预测时长对每个音素的上下文特征进行扩展处理,得到每个音素的扩展特征;对每个音素的扩展特征进行声学特征预测处理,得到每个音素的声学特征,将每个音素的声学特征合成为文本声学特征;将文本声学特征转换成语音信号。通过本申请,能够提高语音合成的效率。
Description
技术领域
本申请涉及人工智能技术,尤其涉及一种语音合成方法、装置、电子设备及计算机可读存储介质。
背景技术
人工智能(Artificial Intelligence,AI)是计算机科学的一个综合技术,通过研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。人工智能技术是一门综合学科,涉及领域广泛,例如自然语言处理技术以及机器学习/深度学习等几大方向,随着技术的发展,人工智能技术将在更多的领域得到应用,并发挥越来越重要的价值。
其中,语音合成作为自然语言处理技术中的一个重要的分支,也随着技术的逐渐成熟进入了一个新的发展阶段。语音合成广泛用于机器人、语音助手等场景中,模拟自然人与用户对话的效果。
然而,相关技术提供的语音合成技术语音合成时仍然存在不可避免的延迟,无法应用于一些对于实时性要求高的场景。
发明内容
本申请实施例提供一种语音合成方法、装置、电子设备及计算机可读存储介质,能够提高语音合成的效率。
本申请实施例的技术方案是这样实现的:
本申请实施例提供一种语音合成方法,包括:
将目标文本分解为多个音素,并确定每个音素的上下文特征;
对每个音素的上下文特征进行时长预测处理,得到每个音素的预测时长;
基于每个音素的预测时长对每个音素的上下文特征进行扩展处理,得到每个音素的扩展特征;
对每个音素的扩展特征进行声学特征预测处理,得到每个音素的声学特征,将每个音素的声学特征合成为文本声学特征;
将所述文本声学特征转换成语音信号。
本申请实施例提供一种语音合成装置,包括:
文本分析模块,用于将目标文本分解为多个音素;
声学模型模块,用于确定每个音素的上下文特征;对每个音素的上下文特征进行时长预测处理,得到每个音素的预测时长;基于每个音素的预测时长对每个音素的上下文特征进行扩展处理,得到每个音素的扩展特征;对每个音素的扩展特征进行声学特征预测处理,得到每个音素的声学特征,将每个音素的声学特征合成为文本声学特征;
声码器模块,用于将所述文本声学特征转换成语音信号。
上述方案中,所述文本分析模块,还用于将所述目标文本分解为多个音素,并确定每个音素的嵌入向量;
上述方案中,所述声学模型模块,还用于对每个音素的嵌入向量进行特征提取处理,得到每个音素的上下文特征。
上述方案中,所述文本分析模块,还用于对所述目标文本进行文本归一化处理,得到词序列;将所述词序列分解为多个音节,并将每个音节分解为多个音素;确定所述多个音素中每个音素的嵌入向量。
上述方案中,所述声学模型模块,还用于对每个音素的嵌入向量进行非线性变换,得到每个音素对应的非线性特征;确定与每个音素的非线性特征对应的上下文特征。
上述方案中,所述声学模型模块,还用于对每个音素的上下文特征进行线性变换,得到每个音素的预测时长。
上述方案中,所述声学模型模块,还用于将每个音素的上下文特征按照每个音素的预测时长的帧数进行等量复制,得到每个音素的复制特征;对每个音素的复制特征进行位置编码,得到每个音素的位置编码矩阵;将每个音素的位置编码矩阵顺序拼接于每个音素对应的复制特征的末端,得到每个音素的扩展特征。
上述方案中,所述声学模型模块,还用于确定每个音素的复制特征的编码相对位置和编码绝对位置;根据每个音素的复制特征的编码相对位置和编码绝对位置对复制特征进行位置编码,得到位置编码矩阵。
上述方案中,所述声学模型模块,还用于确定每个音素的扩展特征对应的上下文特征;对每个音素的扩展特征对应的上下文特征进行线性变换,得到每个音素的声学特征;将每个音素的声学特征按照每个音素在所述目标文本中的顺序进行拼接,得到所述文本声学特征。
上述方案中,所述声码器模块,还用于根据所述文本声学特征确定梅尔频谱;对所述梅尔频谱进行逆傅里叶变换,得到基础语音信号;对所述基础语音信号进行小波变换,得到去噪的语音信号。
上述方案中,所述装置还包括训练模块,用于通过声学模型中的特征抽取模块确定语音样本中每个音素的上下文特征;通过所述声学模型中的时长预测模块确定所述语音样本中每个音素的预测时长;通过所述声学模型中的声学特征预测模块确定所述语音样本中每个音素的声学特征;基于所述语音样本中每个音素的预测时长与被标注的实际时长之间的差值,在所述时长预测模块和所述特征抽取模块中进行反向传播,以更新所述时长预测模块和所述特征抽取模块的参数;基于所述语音样本中每个音素的声学特征与被标注的实际声学特征之间的差值,在所述声学特征预测模块和所述特征抽取模块中进行反向传播,以更新所述声学特征预测模块和所述特征抽取模块的参数。
本申请实施例提供一种电子设备,包括:
存储器,用于存储可执行指令;
处理器,用于执行所述存储器中存储的可执行指令时,实现本申请实施例提供的语音合成方法。
本申请实施例提供一种计算机可读存储介质,存储有可执行指令,用于被处理器执行时,实现本申请实施例提供的语音合成方法。
本申请实施例具有以下有益效果:
根据目标文本得到每个音素的上下文特征后,可基于每个音素的上下文特征分别对音素的时长和声学特征进行预测,最终得到与目标文本对应的语音信号。由于音素的上下文特征在时长预测和声学特征预测过程中得到复用,因此,减少了整体的计算量,提高了语音合成的效率。
附图说明
图1是本申请实施例提供的语音合成***100的架构示意图;
图2是本申请实施例提供的终端400的结构示意图;
图3是本申请实施例提供的语音合成装置的原理示意图;
图4是本申请实施例提供的声学模型模块的原理示意图;
图5是本申请实施例提供的语音合成方法的流程示意图;
图6是本申请实施例提供的文本分解的原理示意图;
图7A是本申请实施例提供的声学模型模块的网络结构示意图;
图7B本申请实施例提供的训练阶段的声学模型模块的网络结构示意图;
图8是本申请实施例提供的语音合成方法的流程示意图;
图9是本申请实施例提供的特征扩展示意图。
具体实施方式
为了使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请作进一步地详细描述,所描述的实施例不应视为对本申请的限制,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本申请保护的范围。
在以下的描述中,涉及到“一些实施例”,其描述了所有可能实施例的子集,但是可以理解,“一些实施例”可以是所有可能实施例的相同子集或不同子集,并且可以在不冲突的情况下相互结合。
除非另有定义,本文所使用的所有的技术和科学术语与属于本申请的技术领域的技术人员通常理解的含义相同。本文中所使用的术语只是为了描述本申请实施例的目的,不是旨在限制本申请。
对本申请实施例进行进一步详细说明之前,对本申请实施例中涉及的名词和术语进行说明,本申请实施例中涉及的名词和术语适用于如下的解释。
1)音素,根据语音的自然属性划分出来的最小语音单位,依据音节里的发音动作来分析,一个动作构成一个音素。
2)循环神经网络(RNN,Recurrent Neural Network),是一类以序列数据为输入,在序列的演进方向进行递归且所有节点按链式连接的递归神经网络。
3)隐马尔科夫模型(HMM,Hidden Markov Model),是统计模型,用来描述一个含有隐含未知参数的马尔可夫过程(一类随机过程)。其难点是从可观察的参数中确定该过程的隐含参数;然后利用这些参数来做进一步的分析,例如模式识别。
4)长短期记忆网络(LSTM,Long Short-Term Memory),是一种时间循环神经网络,是为了解决一般的循环神经网络存在的长期依赖问题而专门设计出来的,适合于处理和预测时间序列中间隔和延迟非常长的重要事件。。
5)门控制单元(GRU,Gate Recurrent Unit),是一种常用的门控循环神经网络,是为了更好地捕捉时间序列中时间步距离较大的依赖关系而提出的,它通过可以学习的门(重置门和更新门)来控制信息的流动。
6)词到向量(Word2vec,Word to Vector),是用来产生词向量的相关模型,Word2vec模型为双层的神经网络,可将每个词映射到一个向量,可用来表示词对词之间的关系。
7)梅尔频谱,由于人耳对声音的感知是非线性的,为了模拟人耳听觉对实际频率的敏感程度,常常在线性频谱图中加上梅尔滤波函数转换为非线性的梅尔频谱。
下面首先分析相关技术提供的语音合成方案。
基于深度神经网络(Deep Neural Networks,DNN)的声学模型可为文本和声学特征之间的复杂依赖关系提供一种有效的分布式表征,由此可以合成更高自然度的语音。因此,基于深度神经网络的统计参数语音合成(SPSS,Statistical Parametric SpeechSynthesis)在语音合成研究领域得到了广泛的应用。在深度神经网络中,递归神经网络,特别是长短期记忆网络LSTM和门控制单元GRU,为根据短期或长期的语音序列数据的相关性建立神经网络模型提供了一种优雅有效的方式,可成功地应用于统计参数语音合成的声学模型的建立中。
相关技术中,使用上述LSTM或GRU的语音合成装置包括基于HMM的语音合成装置和基于DNN的语音合成装置。然而,基于DNN的语音合成装置,合成语音的延迟较高,很难部署到低计算资源的移动设备。基于HMM的语音合成装置,语音合成质量没有基于DNN的语音合成装置高。
对于以上技术问题,本申请实施例提供一种语音合成方法,能兼顾合成语音的质量及合成语音的速度,低延迟地合成高保真的语音。
下面说明本申请实施例提供的语音合成方法的示例性应用,本申请实施例提供的语音合成方法可以由各种电子设备实施,例如,可以由终端单独实施,也可以由服务器和终端协同实施。例如终端独自执行下文所述的语音合成方法,或者,由终端和服务器执行下文所述的语音合成方法,例如终端向服务器发送目标文本,服务器根据接收的目标文本执行语音合成方法。
本申请实施例提供的用于语音合成的电子设备可以是各种类型的终端设备或服务器,其中,服务器可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式***,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、CDN、以及大数据和人工智能平台等基础云计算服务的云服务器;终端可以是智能手机、平板电脑、笔记本电脑、台式计算机、智能音箱、智能手表等,但并不局限于此。终端以及服务器可以通过有线或无线通信方式进行直接或间接地连接,本申请对此不做限制。
以服务器为例,例如可以是部署在云端的服务器集群,向用户开放人工智能云服务(AI as a Service,AIaaS),AIaaS平台会把几类常见的AI服务进行拆分,并在云端提供独立或者打包的服务,这种服务模式类似于一个AI主题商城,所有的用户都可以通过应用程序编程接口的方式来接入使用AIaaS平台提供的一种或者多种人工智能服务。
例如,其中的一种人工智能云服务可以为语音合成服务,即云端的服务器封装有本申请实施例提供的语音合成的程序。终端响应于用户的语音合成触发操作,通过调用云服务中的语音合成服务,以使部署在云端的服务器调用封装的语音合成的程序,根据目标文本确定目标文本中每个音素的上下文特征,并进一步基于上下文特征预测每个音素的时长和声学特征,最终得到目标文本对应的语音信号,并将语音信号返回给终端,以使终端输出目标文本对应的语音。
在一些实施例中,以服务器和终端协同实施本申请实施例提供的语音合成方法为例进行说明一个示例性的语音合成***。参见图1,图1是本申请实施例提供的语音合成***100的架构示意图。终端400通过网络300连接服务器200,网络300可以是广域网或者局域网,又或者是二者的组合。
在终端400中运行有客户端4001,作为示例,客户端4001可以是专用客户端,例如新闻客户端、导航客户端;客户端4001也可以是浏览器,其通过网页的形式显示目标文本。也可以是集成在终端的操作***中的,可供客户端进行调用的功能模块,例如当客户端为浏览器时,浏览器通过调用操作***中集成的语音合成功能模块,将目标文本转换成语音输出;还可以是集成在其他客户端中,用于供客户端调用的接口。
服务器200接收来自终端400的语音合成请求,该语音合成请求中携带目标文本。服务器200根据目标文本合成对应的语音信号,将合成的语音信号发送给终端400,终端400根据接收的语音信号播放对应的语音。
例如,对于终端400的新闻类客户端4001中以文本形式出现的新闻内容,终端400响应于用户的语音合成触发操作,生成语音请求,并获取客户端当前页面的新闻内容,将其与语音请求一起发送给服务器200。服务器200接收到该语音请求后,根据新闻内容合成对应的语音信号,并将合成的语音信号发送给终端400,终端400的新闻类客户端4001根据接收的语音信号播放与新闻内容对应的语音。
在一些实施例中,以本申请实施例提供的电子设备为终端为例,终端通过运行计算机程序来实现本申请实施例提供的语音合成方法,计算机程序可以是操作***中的原生程序或软件模块;可以是本地(Native)应用程序(APP,A pplication),即需要在操作***中安装才能运行的语音合成程序;也可以是小程序,即只需要下载到任意客户端的浏览器环境中就可以运行的语音合成小程序。总而言之,上述计算机程序可以是任意可以是任意形式的应用程序、模块或插件。
下面以本申请实施例提供的电子设备为上文所述的终端为例进行说明,参见图2,图2是本申请实施例提供的终端400的结构示意图,图2所示的终端400包括:至少一个处理器410、存储器450、至少一个网络接口420和用户接口430。终端400中的各个组件通过总线***440耦合在一起。可理解,总线***440用于实现这些组件之间的连接通信。总线***440除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。但是为了清楚说明起见,在图2将各种总线都标为总线***440。
处理器410可以是一种集成电路芯片,具有信号的处理能力,例如通用处理器、数字信号处理器(DSP,Digital Signal Processor),或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等,其中,通用处理器可以是微处理器或者任何常规的处理器等。
用户接口430包括使得能够呈现媒体内容的一个或多个输出装置431,包括一个或多个扬声器和/或一个或多个视觉显示屏。用户接口430还包括一个或多个输入装置432,包括有助于用户输入的用户接口部件,比如键盘、鼠标、麦克风、触屏显示屏、摄像头、其他输入按钮和控件。
存储器450可以是可移除的,不可移除的或其组合。示例性的硬件设备包括固态存储器,硬盘驱动器,光盘驱动器等。存储器450可选地包括在物理位置上远离处理器410的一个或多个存储设备。
存储器450包括易失性存储器或非易失性存储器,也可包括易失性和非易失性存储器两者。非易失性存储器可以是只读存储器(ROM,Read Only Me mory),易失性存储器可以是随机存取存储器(RAM,Random Access Memor y)。本申请实施例描述的存储器450旨在包括任意适合类型的存储器。
在一些实施例中,存储器450能够存储数据以支持各种操作,这些数据的示例包括程序、模块和数据结构或者其子集或超集,下面示例性说明。
操作***451,包括用于处理各种基本***服务和执行硬件相关任务的***程序,例如框架层、核心库层、驱动层等,用于实现各种基础业务以及处理基于硬件的任务;
网络通信模块452,用于经由一个或多个(有线或无线)网络接口420到达其他计算设备,示例性的网络接口420包括:蓝牙、无线相容性认证(WiFi)、和通用串行总线(USB,Universal Serial Bus)等;
呈现模块453,用于经由一个或多个与用户接口430相关联的输出装置431(例如,显示屏、扬声器等)使得能够呈现信息(例如,用于操作***设备和显示内容和信息的用户接口);
输入处理模块454,用于对一个或多个来自一个或多个输入装置432之一的一个或多个用户输入或互动进行检测以及翻译所检测的输入或互动。
在一些实施例中,本申请实施例提供的语音合成装置可以采用软件方式实现,图2示出了存储在存储器450中的语音合成装置455,其可以是程序和插件等形式的软件,包括文本分析模块4551、声学模型模块4552(声学模型模块也称为声学模型)和声码器模块4553。
在一些实施例中,在语音合成装置455包括上述模块的基础上,还可以包括训练模块4554,用于训练声学模型。
需要指出,图2示出的语音合成装置455中的模块是逻辑上的,因此根据所实现的功能可以进行任意的组合或进一步拆分。
如图3所示,图3是本申请实施例提供的语音合成装置的原理示意图,文本分析模块4551将文本转化为文本中每个音素的嵌入向量,然后将每个音素的嵌入向量输入声学模型模块4552中,经过特征提取得到每个音素的上下文特征,基于每个音素的上下文特征预测每个音素的时长,并进一步根据每个音素的上下文特征和时长预测每个音素的声学特征,最后将声学模型模块4552输出的声学特征输入声码器模块4553,将声学特征转换成语音信号,并输出语音波形。
在一些实施例中,参见图4,图4是本申请实施例提供的声学模型模块的原理示意图。声学模型模块4552包括特征抽取模块401、时长预测模块402和声学特征预测模块403。特征抽取模块401用于基于每个音素的嵌入向量生成每个音素的上下文特征,时长预测模块402用于基于每个音素的上下文特征生成每个音素的预测时长,声学特征预测模块403用于基于每个音素的上下文特征和每个音素的预测时长生成每个音素的声学特征。
下面将结合上文所述的语音合成装置说明本申请实施例提供的语音合成方法。以下是以终端中执行语音合成方法为例进行说明,具体可由终端通过运行上文所述的各种计算机程序(计算机程序中包括集成语音合成装置的各种模块)来实现的;当然,根据对下文的理解,不难看出也可以由终端和服务器协同实施本申请实施例提供的语音合成方法。
参见图5,图5是本申请实施例提供的语音合成方法的流程示意图,将结合图5示出的步骤以及图3示出的语音合成装置的各模块进行说明。
在步骤501中,将目标文本分解为多个音素。
参见图6,图6是本申请实施例提供的文本分解的原理示意图。首先,根据标点符号(如逗号、句号等)将目标文本拆分为多个语句,然后对每个语句进行文本归一化处理,得到形式统一的词序列。文本归一化的处理对象包括:具有特殊读音的姓氏字;数字、年代、时间、电话号码、百分比、分数和小数;符号与单位;以西文字母开头的词语;专有名词的读音;专业术语的读音等。例如,将含有数字和符号的文本“20%”归一化得到“百分之二十”,对语句“增长了20%”进行文本归一化处理后,得到相应的词序列为“增长了百分之二十”。
然后,将词序列分解为多个音节,进而将每个音节分解为对应的多个音素。例如,对于词序列“中国”,其对应的音节有两个,分别为“zhong”和“guo”;可将音节“zhong”进一步分解为音素“zh”和“ong”,将音素“guo”进一步分解为音素“g”和“uo”。在本申请实施例中,在中文中,一个汉字对应一个音节;在英文中,一个单词对应一个音节,其他语言类似。
在一些实施例中,步骤501可以由语音合成装置中的文本分析模块4551执行。
在一些实施例中,目标文本可以是终端所运行的客户端中的文本,如新闻客户端中的新闻内容,导航客户端中的地图信息;也可以是网页中的文本,例如网页小说、网页新闻等;还可以是用户输入的文本,如在短信输入框中输入的内容,或在记事本中输入的内容等。
在步骤502中,确定每个音素的上下文特征。
在一些实施例中,确定每个音素的上下文特征,可以采用如下方式实现:确定每个音素的嵌入向量;对每个音素的嵌入向量进行特征提取处理,得到每个音素的上下文特征。
作为将每个音素转换为对应的嵌入向量的示例,可以给音素数据集中的每一个音素赋予一个数值,然后将每个音素表示为独热(One-Hot)向量的形式,得到嵌入向量;或者基于奇异值分解(SVD,singular value decomposition)降维的表示方法得到嵌入向量,其具体方法如下:遍历音素数据集,统计每个音素出现的次数,并用矩阵X来表示音素数据集中每个音素出现的次数,对矩阵X进行奇异值分解,得到每个音素对应的嵌入向量。还可以通过词频-逆文档频率(TF-IDF,term frequency–inverse document frequency)模型、word2vec模型等得到音素所对应的嵌入向量。显然,也可以直接构造神经网络模型,对神经网络模型进行从文本到音素的嵌入向量的端到端训练,从而实现根据文本得到嵌入向量。
在一些实施例中,确定每个音素的嵌入向量的处理可以由上文所述的文本分析模块4551执行。对每个音素的嵌入向量进行特征提取处理,得到每个音素的上下文特征可以由上文所述的声学模型模块4552中的特征抽取模块401执行。
在一些实施例中,特征抽取模块401,可以包括如图7A示出的底层的全连接网络701和RNN网络702。全连接网络701的节点数的取值范围为64~256,RNN网络702的节点数Hp的取值范围为80~256。
全连接网络701由至少一层全连接层构成,用于对每个音素的嵌入向量进行预处理,以过滤异常向量。预处理即对每个音素的嵌入向量进行一系列的非线性变换,将嵌入向量的特征空间映射到维度更高的特征空间中,得到每个音素对应的非线性特征。
然后,将非线性特征输入RNN网络702中,因为在RNN网络中,上一个时刻的网络状态信息将会作用于下一个时刻的网络状态。即当下一个时刻1到来时,网络神经元的状态不仅仅由1时刻的输入决定,也由0时刻的神经元状态决定。当RNN网络为双向时,网络神经元的状态与前后时刻的神经元状态都相关。因此将非线性特征输入RNN网络如双向LSTM进行特征转换,不仅可以顺序读取各个音素的非线性特征,获取上文信息,还可以反向读取各个音素的非线性特征,获取下文信息,从而得到非线性特征的有效的上下文信息,即得到上下文特征。特别的,上下文特征可包括音素的语义特征和时序特征。
因为RNN网络存在反向传播路径太长导致的梯度消失/梯度***的问题,所以,可将LSTM和GRU模型引入,通过增加中间状态信息直接向后传播,以此缓解梯度消失问题。
本申请实施例共用底层的全连接网络701和RNN网络702来计算预测时长和声学特征,从而减小了语音合成装置的计算开销,提高了语音合成的效率。
在步骤503中,对每个音素的上下文特征进行时长预测处理,得到每个音素的预测时长。
在一些实施例中,步骤503可以由上文所述的声学模型模块4552中的时长预测模块402执行。时长预测模块402可以由一个如图7A所示的全连接网络703构成,其节点数为Op,且Op为1。全连接网络703对每个音素的上下文特征进行线性变换,得到每个音素的预测时长。
在步骤504中,基于每个音素的预测时长对每个音素的上下文特征进行扩展处理,得到每个音素的扩展特征。
在一些实施例中,步骤504可以由上文所述的声学模型模块4552中的声学特征预测模块403执行。声学特征预测模块403,可以包括如图7A中示出的上层的记忆扩展网络704、RNN网络705和全连接网络706。其中,记忆扩展网络704无学习参数,用于根据Tp个上下文特征的预测时长将Tp个Hp维的上下文特征/>进行扩展,得到Tf个Hp+m维的扩展特征/>其中,Tp是音素的个数,也是上下文特征的个数,Tf是扩展特征的个数,m是与音素个数相关的超参数,Hp+m是扩展特征的维度。
如图8所示,图8是本申请实施例提供的语音合成方法的流程示意图。步骤504可包括图8所示的步骤5041至步骤5043。
在步骤5041中,将每个音素的上下文特征按照每个音素的预测时长的帧数进行等量复制,得到每个音素的复制特征。
步骤5041可以通过记忆扩展网络704实现。如图9所示,图9是本申请实施例提供的特征扩展示意图。图9中有4个音素,其中,第一个音素901的预测时长为5,即对应5帧;第二个音素902的预测时长为3;第三个音素903的预测时长为7;第四个音素904的预测时长为4。则将第一个音素901的上下文特征复制5份,第二个音素902上下文特征复制3份,第三个音素903上下文特征复制7份,第四个音素904上下文特征复制4份,分别得到这四个音素的复制特征。
在步骤5042中,对每个音素的复制特征进行位置编码,得到每个音素的位置编码矩阵。
在一些实施例中,对每个音素的复制特征进行位置编码,得到每个音素的位置编码,可以采用如下方式实现:确定每个音素的复制特征的编码相对位置和编码绝对位置;根据每个音素的复制特征的编码相对位置和编码绝对位置对复制特征进行位置编码,得到位置编码矩阵。
其中,编码相对位置是音素的一个复制特征在若干个音素的所有复制特征中的排序,因为音素的组合有多种,所以,排序也会有所不同,编码相对位置不止一个。而编码绝对位置是音素的一个复制特征在所有音素的所有复制特征中的排序,具有唯一性。例如,第二个音素902共有3个复制特征,其中第二个复制特征在四个音素的所有复制特征中的编码绝对位置为7,而它在第二个音素902的3个复制特征中的编码相对位置为2,在第二个音素902和第三个音素903的一共10个复制特征中的编码相对位置也是2。如此,确定每个音素的每个复制特征的编码绝对位置和所有的编码相对位置,即得到了每个音素的每个复制特征的m维位置向量(假设一个复制特征的编码绝对位置和所有的编码相对位置一共m个),将每个音素的每个复制特征的m维位置向量合并,即得到每个音素的位置编码矩阵。例如,若一个音素有两个复制特征,且它们的m维位置向量分别为[1,1,1]T和[2,2,2]T,则这个音素的位置编码矩阵为
在步骤5043中,将每个音素的位置编码矩阵顺序拼接于每个音素对应的复制特征的末端,得到每个音素的扩展特征。
如图9所示,将4个音素的位置编码矩阵(图9中黑色部分)顺序拼接于每个音素对应的多个复制特征的末端,则得到每个音素的扩展特征。
如此,通过将音素的位置信息补充到上下文特征中,可快速定位音素的每个复制特征所在位置。
在步骤505中,对每个音素的扩展特征进行声学特征预测处理,得到每个音素的声学特征,将每个音素的声学特征合成为文本声学特征。
在一些实施例中,对每个音素的扩展特征进行声学特征预测处理,得到每个音素的声学特征,将每个音素的声学特征合成为文本声学特征,可以采用如下方式实现:确定每个音素的扩展特征对应的上下文特征;对每个音素的扩展特征对应的上下文特征进行线性变换,得到每个音素的声学特征;将每个音素的声学特征按照每个音素在目标文本中的顺序进行拼接,得到文本声学特征。
通过RNN网络705、全连接网络706实现声学特征预测处理。RNN网络705的节点数Hf的取值范围为64~128,RNN网络705用于对音素的扩展特征进行抽取,以获取有效的上下文信息,得到音素的扩展特征所对应的上下文特征。全连接网络706的节点数为Of,Of为127。全连接网络706用于对音素的扩展特征对应的上下文特征进行线性变换,得到每个音素的声学特征。声学特征包括基频、时长、能量、节奏等多种特征,可反映音律、音色、重音等特性。
例如,对于目标文本“中国”,其对应的音素有四个,若四个音素的声学特征分别为特征1、特征2、特征3、特征4,则将这四个特征按照它们对应的音素在目标文本中的顺序进行拼接,得到文本声学特征“特征1特征2特征3特征4”。
可见,本申请实施例中在通过共用的底层级联神经网络(全连接网络701和RNN网络702)获取上下文特征之后,可分别基于时长预测模块402和声学特征预测模块403预测音素的时长和声学特征。在兼顾最终合成语音的质量的基础上,保证了合成语音的速度,具有低延迟的有益效果。
在步骤506中,将文本声学特征转换成语音信号。
在一些实施例中,将文本声学特征转换成语音信号,可以采用如下方式实现:根据文本声学特征确定梅尔频谱;对梅尔频谱进行逆傅里叶变换,得到基础语音信号;对基础语音信号进行小波变换,得到去噪的语音信号。
步骤506通过声码器模块4553实现。声码器可以为WORLD声码器、Wa veNet声码器、SampleRNN声码器等。因为文本声学特征中包含了基频、时长、能量、节奏等多种特征,因此可通过文本声学特征确定梅尔频谱的频谱包络和频谱细节。梅尔频谱中,峰值(共振峰)是语音的主要频率成分,携带了声音的辨识。将梅尔频谱中的峰值平滑连接得到的曲线称为频谱包络,因此,频谱包络描述了携带声音辨识信息的共振峰。可由频谱包络和频谱细节合成梅尔频谱。对梅尔频谱进行逆傅里叶变换,即可将频谱图转换为声谱图,得到基础语音信号。进一步的,可对基础语音信号进行小波去噪处理,得到去噪的语音信号,输出语音。
需要说明的是,也可以通过将声学模型模块4552进行从嵌入向量到语音信号端到端的训练,从而直接由声学模型模块4552得到语音信号,而不再需要声码器。
本申请实施例通过声码器将声学模型输出的声学特征复原为语音信号,相比于由拼接法和参数法得到的语音,音质细节更为丰富,自然度更高。
在一些实施例中,在声学模型模块4552的训练阶段,全连接网络701用于加速训练时迭代的收敛,缩短训练时间;在第一阶段,基于语音样本中每个音素的预测时长与被标注的实际时长之间的第一差值构建第一损失函数,根据第一损失函数在时长预测模块402和特征抽取模块401中反向传播与第一差值相应的梯度,以更新时长预测模块402和特征抽取模块401的参数;在第二阶段,基于语音样本中每个音素的声学特征与被标注的实际声学特征之间的第二差值构建第二损失函数,根据第二损失函数在声学特征预测模块403和特征抽取模块401中反向传播与第二差值相应的梯度,以更新声学特征预测模块403和特征抽取模块401的参数。
作为示例,第一损失函数可以是以第一差值为参数的任意类型的损失函数,例如,同理,第二损失函数可以是基于第二差值的任意类型的损失函数,例如对数损失函数和指数损失函数等。
需要说明的是,本申请实施例中语音合成分为文本分析、声学特征生成、由声学特征得到语音信号三部分。在一些实施例中,这三部分也可集成于一个级联的神经网络中,输入目标文本,直接输出语音信号。
需要说明的是,本申请实施例中为了兼顾语音合成实时性以及装置性能,采用的神经网络隐层单元数目(节点数)较小,并未对声学模型的神经网络开展量化和稀疏化。为了提升合成语音效果,在声学模型的各个神经网络中可采用更多的隐层单元数目,同时可引入量化和稀疏化等神经网络压缩技术,以提升装置性能。
本申请上述实施例提供的语音合成方法能应用到包括智能音箱、语音导航、有声读物、智能电视盒子、智能语音助手、车载智能语音设备、机器人等多个项目和产品应用中,可将文本转换为高自然度的语音,提升人机交互体验,提高语音类应用构建效率。
在语音导航应用、新闻类应用中,通过应用本申请实施例提供的语音合成方法,可以快速生成高质量的播报音频,方便在用户开车、行走等不方便阅读消息的情况下,利用音频及时获取信息。
在有声读物制作方面,可将电子教材、小说等文本材料,以文本文件的形式导入语音合成引擎,通过应用本申请实施例提供的语音合成方法生成完整的、可重复阅读的有声教材或有声小说等读物,方便用户随时取用。
在与客服机器人、服务机器人互动等场景中,通过语音识别模块、自然语言处理模块等模块的联动,打通人机交互的闭环,实现高品质的机器人发声,使人机交互更流畅自然。
下面,以本申请实施例提供的语音合成方法应用到车载智能语音设备中为例说明示例性应用。
车载智能语音设备包括语音识别装置和语音合成装置,通过以上两个装置可实现与用户的语音交互。通过语音识别装置对用户的即时语音进行识别,并将即时语音转化为文本。例如,当用户说出“播放新闻”时,车载智能语音设备将语音“播放新闻”转化为文本,并确定用户意图。之后,调用新闻客户端,并获取新闻客户端中的新闻文本,通过语音合成装置将新闻文本转化为对应的新闻语音,并播放新闻语音。
如图3所示,语音合成装置包括文本分析模块4551、声学模型模块4552和声码器模块4553。
文本分析模块4551将输入的新闻文本转化为文本中每个音素的嵌入向量,然后将每个音素的嵌入向量输入声学模型模块4552中,经过特征提取得到每个音素的上下文特征,基于每个音素的上下文特征预测每个音素的时长,并进一步根据每个音素的上下文特征和时长预测每个音素的声学特征,最后将声学模型模块4552输出的声学特征输入声码器模块4553,将声学特征转换成语音信号,并输出语音。
其中,文本分析模块4551首先将新闻文本进行文本归一化,例如,将“20%”归一化为“百分之二十”,然后将词分解为音节,进而将音节分解为音素,最后,将每个音素转换为嵌入向量。
声学模型模块4552可以包括如图7A所示的底层的全连接网络701和RN N神经网络702、左侧的全连接网络703以及上层的记忆扩展网络704、RNN神经网络705和全连接网络706。以下对上述神经网络的网络参数进行说明。
1)底层的全连接网络701,其中每层可能的节点数取64~256。
2)底层的RNN网络702,典型地,RNN网络的隐单元可以是长短期记忆网络或门控制单元。隐单元节点数Hp取80~256。
3)左侧的全连接网络703,节点数为Op,且Op为1。
4)上层的记忆扩展网络704,无学习参数。
5)上层的RNN网络705,典型地,RNN网络的隐单元可以是长短期记忆网络或门控制单元。隐单元节点数Hf取64~128。
6)上层的全连接网络706,节点数为Of,且Of为127。
需要说明的是,上述网络参数取值范围仅为示例,其实际取值应根据实际应用场景对计算和内存资源的限制进行权衡调整。
若音素的个数为Tp,音素的嵌入向量的维度为D,则Tp个D维的嵌入向量构成输入特征将输入特征输入声学模型模块4552中,声学模型模块4552的全连接网络701对输入特征进行一系列的非线性变换,将输入特征的特征空间映射到维度更高的特征空间中,得到非线性特征。将非线性特征输入底层的RNN网络702中,得到音素的上下文特征左侧的全连接网络703对上下文特征/>进行线性变换后,得到每个音素的预测时长,每个音素的预测时长构成一维向量/>将上下文特征/>和一维向量输入记忆扩展网络704,将上下文特征/>扩展为扩展特征/>m是与音素个数相关的超参数。
扩展过程如下:如图9所示,对于一个Hp维上下文特征,若对上下文特征进行预测得到时长为5,即对应5帧,则将该上下文特征复制5份,并且在这5个上下文特征的末端拼接相应的m维位置向量,以表示扩展后的上下文特征的编码绝对位置和编码相对位置。扩展后的上下文特征的维度为Hp+m。例如对于图9中由第二个上下文特征复制得到的3个复制特征中的第一个复制特征,其编码绝对位置为6,相对于自身第二个上下文特征的编码相对位置为1,相对于第三个上下文特征的编码相对位置为1。通过位置向量可快速定位复制特征所在位置。
之后,将扩展特征输入上层的RNN网络705中,得到扩展特征的上下文特征将上下文特征/>输入上层的全连接网络706中进行线性变换,得到预测的声学特征/>
其中,声学模型模块4552的训练过程可参见图7B,训练过程如下:预先录入与文本样本对应的多个语音样本。获取语音样本中音素的时长和声学特征,根据语音样本中音素的时长和声学特征对相应的文本样本进行标注。确定文本样本中音素的嵌入向量将音素的嵌入向量/>输入图7B所示的声学模型中,经过底层的全连接网络701和RNN网络702处理后,生成Tp个音素的Hp维上下文特征/>其中,底层的全连接网络用于加速训练,使全连接网络更快的学习。上下文特征/>经过左侧的全连接网络703处理后,得到Tp个音素的预测时长,这Tp个预测时长构成一维向量/>其中,Op为1。确定Tp个预测时长/>与Tp个标注的实际时长/>之间的第一差值,根据第一差值构建第一损失函数,根据第一损失函数在左侧的全连接网络703、底层的全连接网络701和RNN网络702(这三者相当于传统基于统计参数的语音合成装置中的时长模型)中反向传播与第一差值相应的梯度,以更新这三个神经网络的网络参数。将上下文特征/>和Tp个标注的实际时长/>输入上层的记忆扩展网络704、RNN网络705和全连接网络706中,生成预测的声学特征/>确定声学特征/>与标注的声学特征/>之间的第二差值,根据第二差值构建第二损失函数,根据第二损失函数在上层的记忆扩展网络704、RNN网络705和全连接网络706以及底层的全连接网络701和RNN网络702(这五个神经网络相当于传统基于统计参数的语音合成装置中的声学模型)中反向传播与第二差值相应的梯度,以更新这些神经网络中的网络参数。在一些实施例中,第一损失函数/第二损失函数可以是对数损失函数或指数损失函数等函数。
最后,将声学特征输入声码器中,得到梅尔频谱,并对梅尔频谱进行逆傅里叶变换和小波变换,将频谱图转换成声谱图,得到去噪的语音信号,输出语音波形。
可见,本申请实施例规避了传统基于统计参数的语音合成装置中时长模型和声学模型需要分离的难题,提出一种轻量级联神经网络(即上文中的声学模型模块4552),可将预测时长的模块和预测声学特征的模块合并在一个声学模型模块中,从而减小语音合成装置的计算开销,使得整个语音合成装置具有低延迟、高保真特性。而且可以广泛应用于智能音箱、语音导航、有声读物等产品中。
下面继续说明本申请实施例提供的语音合成装置455实施为软件模块的示例性结构,在一些实施例中,如图2所示,存储在存储器450的语音合成装置455中的软件模块可以包括:文本分析模块4551、声学模型模块4552和声码器模块4553。
文本分析模块4551,用于将目标文本分解为多个音素;声学模型模块4552,用于确定每个音素的上下文特征;对每个音素的上下文特征进行时长预测处理,得到每个音素的预测时长;基于每个音素的预测时长对每个音素的上下文特征进行扩展处理,得到每个音素的扩展特征;对每个音素的扩展特征进行声学特征预测处理,得到每个音素的声学特征,将每个音素的声学特征合成为文本声学特征;声码器模块4553,用于将文本声学特征转换成语音信号。
在一些实施例中,文本分析模块4551,还用于将目标文本分解为多个音素,并确定每个音素的嵌入向量;
在一些实施例中,声学模型模块4552,还用于对每个音素的嵌入向量进行特征提取处理,得到每个音素的上下文特征;
在一些实施例中,文本分析模块4551,还用于对目标文本进行文本归一化处理,得到词序列;将词序列分解为多个音节,并将每个音节分解为多个音素;确定多个音素中每个音素的嵌入向量。
在一些实施例中,声学模型模块4552,还用于对每个音素的嵌入向量进行非线性变换,得到每个音素对应的非线性特征;确定与每个音素的非线性特征对应的上下文特征。
在一些实施例中,声学模型模块4552,还用于对每个音素的上下文特征进行线性变换,得到每个音素的预测时长。
在一些实施例中,声学模型模块4552,还用于将每个音素的上下文特征按照每个音素的预测时长的帧数进行等量复制,得到每个音素的复制特征;对每个音素的复制特征进行位置编码,得到每个音素的位置编码矩阵;将每个音素的位置编码矩阵顺序拼接于每个音素对应的复制特征的末端,得到每个音素的扩展特征。
在一些实施例中,声学模型模块4552,还用于确定每个音素的复制特征的编码相对位置和编码绝对位置;根据每个音素的复制特征的编码相对位置和编码绝对位置对复制特征进行位置编码,得到位置编码矩阵。
在一些实施例中,声学模型模块4552,还用于确定每个音素的扩展特征对应的上下文特征;对每个音素的扩展特征对应的上下文特征进行线性变换,得到每个音素的声学特征;将每个音素的声学特征按照每个音素在目标文本中的顺序进行拼接,得到文本声学特征。
在一些实施例中,声码器4553,还用于根据文本声学特征确定梅尔频谱;对梅尔频谱进行逆傅里叶变换,得到基础语音信号;对基础语音信号进行小波变换,得到去噪的语音信号。
在一些实施例中,语音合成装置455还包括训练模块4554,用于通过声学模型中的特征抽取模块确定语音样本中每个音素的上下文特征;通过声学模型中的时长预测模块确定语音样本中每个音素的预测时长;通过声学模型中的声学特征预测模块确定语音样本中每个音素的声学特征;基于语音样本中每个音素的预测时长与被标注的实际时长之间的差值,在时长预测模块和特征抽取模块中进行反向传播,以更新时长预测模块和特征抽取模块的参数;基于语音样本中每个音素的声学特征与被标注的实际声学特征之间的差值,在声学特征预测模块和特征抽取模块中进行反向传播,以更新声学特征预测模块和特征抽取模块的参数。
本申请实施例提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行本申请实施例上述的语音合成方法。
本申请实施例提供一种存储有可执行指令的计算机可读存储介质,其中存储有可执行指令,当可执行指令被处理器执行时,将引起处理器执行本申请实施例提供的方法,例如,如图5示出的语音合成方法。
在一些实施例中,存储介质可以是FRAM、ROM、PROM、EPROM、EE PROM、闪存、磁表面存储器、光盘、或CD-ROM等存储器;也可以是包括上述存储器之一或任意组合的各种设备。
在一些实施例中,可执行指令可以采用程序、软件、软件模块、脚本或代码的形式,按任意形式的编程语言(包括编译或解释语言,或者声明性或过程性语言)来编写,并且其可按任意形式部署,包括被部署为独立的程序或者被部署为模块、组件、子例程或者适合在计算环境中使用的其它单元。
作为示例,可执行指令可以但不一定对应于文件***中的文件,可以被存储在保存其它程序或数据的文件的一部分,例如,存储在超日志标记语言(HT ML,Hyper TextMarkup Language)文档中的一个或多个脚本中,存储在专用于所讨论的程序的单个文件中,或者,存储在多个协同文件(例如,存储一个或多个模块、子程序或代码部分的文件)中。
作为示例,可执行指令可被部署为在一个计算设备上执行,或者在位于一个地点的多个计算设备上执行,又或者,在分布在多个地点且通过通信网络互连的多个计算设备上执行。
综上所述,通过本申请实施例具有以下有益效果:
根据目标文本得到每个音素的上下文特征后,可基于每个音素的上下文特征分别对音素的时长和声学特征进行预测,最终得到与目标文本对应的语音信号。由于音素的上下文特征在时长预测和声学特征预测过程中得到复用,因此,减少了整体的计算量,提高了语音合成的效率。
以上所述,仅为本申请的实施例而已,并非用于限定本申请的保护范围。凡在本申请的精神和范围之内所作的任何修改、等同替换和改进等,均包含在本申请的保护范围之内。
Claims (11)
1.一种语音合成方法,其特征在于,所述方法包括:
将目标文本分解为多个音素,并确定每个音素的上下文特征;
对每个音素的上下文特征进行时长预测处理,得到每个音素的预测时长;
将每个音素的上下文特征按照每个音素的预测时长的帧数进行等量复制,得到每个音素的复制特征;
基于每个音素的复制特征进行位置编码,得到每个音素的位置编码矩阵;
将每个音素的位置编码矩阵顺序拼接于每个音素对应的复制特征的末端,得到每个音素的扩展特征;
对每个音素的扩展特征进行声学特征预测处理,得到每个音素的声学特征,将每个音素的声学特征合成为文本声学特征;
将所述文本声学特征转换成语音信号。
2.根据权利要求1所述的方法,其特征在于,所述将目标文本分解为多个音素,并确定每个音素的上下文特征,包括:
将所述目标文本分解为多个音素,并确定每个音素的嵌入向量;
对每个音素的嵌入向量进行特征提取处理,得到每个音素的上下文特征;
所述将目标文本分解为多个音素,并确定每个音素的嵌入向量,包括:
对所述目标文本进行文本归一化处理,得到词序列;
将所述词序列分解为多个音节,并将每个音节分解为多个音素;
确定所述多个音素中每个音素的嵌入向量。
3.根据权利要求2所述的方法,其特征在于,所述对每个音素的嵌入向量进行特征提取处理,得到每个音素的上下文特征,包括:
对每个音素的嵌入向量进行非线性变换,得到每个音素对应的非线性特征;
确定与每个音素的非线性特征对应的上下文特征。
4.根据权利要求1所述的方法,其特征在于,所述对每个音素的上下文特征进行时长预测处理,得到每个音素的预测时长,包括:
对每个音素的上下文特征进行线性变换,得到每个音素的预测时长。
5.根据权利要求1所述的方法,其特征在于,所述对每个音素的复制特征进行位置编码,得到每个音素的位置编码矩阵,包括:
确定每个音素的复制特征的编码相对位置和编码绝对位置;
根据每个音素的复制特征的编码相对位置和编码绝对位置对复制特征进行位置编码,得到位置编码矩阵。
6.根据权利要求1所述的方法,其特征在于,所述对每个音素的扩展特征进行声学特征预测处理,得到每个音素的声学特征,包括:
确定每个音素的扩展特征对应的上下文特征;
对每个音素的扩展特征对应的上下文特征进行线性变换,得到每个音素的声学特征;
所述将每个音素的声学特征合成为文本声学特征,包括:
将每个音素的声学特征按照每个音素在所述目标文本中的顺序进行拼接,得到所述文本声学特征。
7.根据权利要求1所述的方法,其特征在于,所述将所述文本声学特征转换成语音信号,包括:
根据所述文本声学特征确定梅尔频谱;
对所述梅尔频谱进行逆傅里叶变换,得到基础语音信号;
对所述基础语音信号进行小波变换,得到去噪的语音信号。
8.根据权利要求1至7任一项所述的方法,其特征在于,在将目标文本分解为多个音素,并确定每个音素的上下文特征之前,所述方法还包括:
通过声学模型中的特征抽取模块确定语音样本中每个音素的上下文特征;
通过所述声学模型中的时长预测模块确定所述语音样本中每个音素的预测时长;
通过所述声学模型中的声学特征预测模块确定所述语音样本中每个音素的声学特征;
基于所述语音样本中每个音素的预测时长与被标注的实际时长之间的差值,在所述时长预测模块和所述特征抽取模块中进行反向传播,以更新所述时长预测模块和所述特征抽取模块的参数;
基于所述语音样本中每个音素的声学特征与被标注的实际声学特征之间的差值,在所述声学特征预测模块和所述特征抽取模块中进行反向传播,以更新所述声学特征预测模块和所述特征抽取模块的参数。
9.一种语音合成装置,其特征在于,包括:
文本分析模块,用于将目标文本分解为多个音素;
声学模型模块,用于:
确定每个音素的上下文特征;
对每个音素的上下文特征进行时长预测处理,得到每个音素的预测时长;
将每个音素的上下文特征按照每个音素的预测时长的帧数进行等量复制,得到每个音素的复制特征;
基于每个音素的复制特征进行位置编码,得到每个音素的位置编码矩阵;
将每个音素的位置编码矩阵顺序拼接于每个音素对应的复制特征的末端,得到每个音素的扩展特征;
对每个音素的扩展特征进行声学特征预测处理,得到每个音素的声学特征,将每个音素的声学特征合成为文本声学特征;
声码器模块,用于将所述文本声学特征转换成语音信号。
10.一种电子设备,其特征在于,所述电子设备包括:
存储器,用于存储可执行指令;
处理器,用于执行所述存储器中存储的可执行指令时,实现权利要求1至8任一项所述的语音合成方法。
11.一种计算机可读存储介质,存储有计算机可执行指令,其特征在于,所述计算机可执行指令被处理器执行时实现权利要求1至8任一项所述的语音合成方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010880219.0A CN111968618B (zh) | 2020-08-27 | 2020-08-27 | 语音合成方法、装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010880219.0A CN111968618B (zh) | 2020-08-27 | 2020-08-27 | 语音合成方法、装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111968618A CN111968618A (zh) | 2020-11-20 |
CN111968618B true CN111968618B (zh) | 2023-11-14 |
Family
ID=73399569
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010880219.0A Active CN111968618B (zh) | 2020-08-27 | 2020-08-27 | 语音合成方法、装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111968618B (zh) |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112634856B (zh) * | 2020-12-10 | 2022-09-02 | 思必驰科技股份有限公司 | 语音合成模型训练方法和语音合成方法 |
CN113409757A (zh) * | 2020-12-23 | 2021-09-17 | 腾讯科技(深圳)有限公司 | 基于人工智能的音频生成方法、装置、设备及存储介质 |
CN112735389A (zh) * | 2020-12-29 | 2021-04-30 | 平安科技(深圳)有限公司 | 基于深度学习的语音训练方法、装置、设备以及存储介质 |
CN113539231B (zh) * | 2020-12-30 | 2024-06-18 | 腾讯科技(深圳)有限公司 | 音频处理方法、声码器、装置、设备及存储介质 |
CN113160794B (zh) * | 2021-04-30 | 2022-12-27 | 京东科技控股股份有限公司 | 基于音色克隆的语音合成方法、装置及相关设备 |
CN113345410B (zh) * | 2021-05-11 | 2024-05-31 | 科大讯飞股份有限公司 | 通用语音、目标语音合成模型的训练方法及相关装置 |
CN113516964B (zh) * | 2021-08-13 | 2022-05-27 | 贝壳找房(北京)科技有限公司 | 语音合成方法及可读存储介质 |
CN113744714B (zh) * | 2021-09-27 | 2024-04-05 | 深圳市木愚科技有限公司 | 语音合成方法、装置、计算机设备及存储介质 |
CN113823260A (zh) * | 2021-10-20 | 2021-12-21 | 科大讯飞股份有限公司 | 语音合成模型训练方法、语音合成方法和装置 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109285537A (zh) * | 2018-11-23 | 2019-01-29 | 北京羽扇智信息科技有限公司 | 声学模型建立、语音合成方法、装置、设备及存储介质 |
CN109767755A (zh) * | 2019-03-01 | 2019-05-17 | 广州多益网络股份有限公司 | 一种语音合成方法和*** |
CN111402855A (zh) * | 2020-03-06 | 2020-07-10 | 北京字节跳动网络技术有限公司 | 语音合成方法、装置、存储介质和电子设备 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8527276B1 (en) * | 2012-10-25 | 2013-09-03 | Google Inc. | Speech synthesis using deep neural networks |
-
2020
- 2020-08-27 CN CN202010880219.0A patent/CN111968618B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109285537A (zh) * | 2018-11-23 | 2019-01-29 | 北京羽扇智信息科技有限公司 | 声学模型建立、语音合成方法、装置、设备及存储介质 |
CN109767755A (zh) * | 2019-03-01 | 2019-05-17 | 广州多益网络股份有限公司 | 一种语音合成方法和*** |
CN111402855A (zh) * | 2020-03-06 | 2020-07-10 | 北京字节跳动网络技术有限公司 | 语音合成方法、装置、存储介质和电子设备 |
Also Published As
Publication number | Publication date |
---|---|
CN111968618A (zh) | 2020-11-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111968618B (zh) | 语音合成方法、装置 | |
CN112687259B (zh) | 一种语音合成方法、装置以及可读存储介质 | |
CN109859736B (zh) | 语音合成方法及*** | |
CN111276120B (zh) | 语音合成方法、装置和计算机可读存储介质 | |
CN106688034B (zh) | 具有情感内容的文字至语音转换 | |
CN109036371B (zh) | 用于语音合成的音频数据生成方法及*** | |
CN112071330B (zh) | 一种音频数据处理方法、设备以及计算机可读存储介质 | |
CN113539231B (zh) | 音频处理方法、声码器、装置、设备及存储介质 | |
CN112837669B (zh) | 语音合成方法、装置及服务器 | |
WO2022252904A1 (zh) | 基于人工智能的音频处理方法、装置、设备、存储介质及计算机程序产品 | |
US20230122659A1 (en) | Artificial intelligence-based audio signal generation method and apparatus, device, and storage medium | |
Zhao et al. | Applications of deep learning to audio generation | |
Kamsali Veera et al. | Combining evidences from excitation source and vocal tract system features for Indian language identification using deep neural networks | |
CN113314097B (zh) | 语音合成方法、语音合成模型处理方法、装置和电子设备 | |
CN114242093A (zh) | 语音音色转换方法、装置、计算机设备和存储介质 | |
CN114399995A (zh) | 语音模型的训练方法、装置、设备及计算机可读存储介质 | |
CN115206284B (zh) | 一种模型训练方法、装置、服务器和介质 | |
CN116665639A (zh) | 语音合成方法、语音合成装置、电子设备及存储介质 | |
CN116665642A (zh) | 语音合成方法、语音合成***、电子设备及存储介质 | |
CN117219052A (zh) | 韵律预测方法、装置、设备、存储介质和程序产品 | |
CN115798456A (zh) | 跨语言情感语音合成方法、装置及计算机设备 | |
Daouad et al. | An automatic speech recognition system for isolated Amazigh word using 1D & 2D CNN-LSTM architecture | |
CN114464163A (zh) | 语音合成模型的训练方法、装置、设备、存储介质和产品 | |
CN115116470A (zh) | 音频处理方法、装置、计算机设备和存储介质 | |
CN114495896A (zh) | 一种语音播放方法及计算机设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |