CN113160792B - 一种多语种的语音合成方法、装置和*** - Google Patents
一种多语种的语音合成方法、装置和*** Download PDFInfo
- Publication number
- CN113160792B CN113160792B CN202110052188.4A CN202110052188A CN113160792B CN 113160792 B CN113160792 B CN 113160792B CN 202110052188 A CN202110052188 A CN 202110052188A CN 113160792 B CN113160792 B CN 113160792B
- Authority
- CN
- China
- Prior art keywords
- splicing
- voice
- unit
- target
- character
- 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 20
- 230000015572 biosynthetic process Effects 0.000 claims abstract description 36
- 238000003786 synthesis reaction Methods 0.000 claims abstract description 36
- 230000033764 rhythmic process Effects 0.000 claims abstract description 24
- 238000000034 method Methods 0.000 claims description 42
- 238000012549 training Methods 0.000 claims description 42
- 230000011218 segmentation Effects 0.000 claims description 21
- 238000003062 neural network model Methods 0.000 claims description 18
- 238000004422 calculation algorithm Methods 0.000 claims description 14
- 238000009499 grossing Methods 0.000 claims description 13
- 238000013528 artificial neural network Methods 0.000 claims description 12
- 125000004122 cyclic group Chemical group 0.000 claims description 12
- 238000004364 calculation method Methods 0.000 claims description 11
- 230000006870 function Effects 0.000 claims description 10
- 230000002194 synthesizing effect Effects 0.000 claims description 10
- 230000004927 fusion Effects 0.000 claims description 9
- 238000013507 mapping Methods 0.000 claims description 7
- 238000004590 computer program Methods 0.000 claims description 6
- 238000009432 framing Methods 0.000 claims description 4
- 210000002569 neuron Anatomy 0.000 description 17
- 230000008569 process Effects 0.000 description 14
- 238000010586 diagram Methods 0.000 description 9
- 238000012805 post-processing Methods 0.000 description 9
- 230000006872 improvement Effects 0.000 description 7
- 238000001228 spectrum Methods 0.000 description 5
- 230000000694 effects Effects 0.000 description 4
- 238000012545 processing Methods 0.000 description 4
- 230000004913 activation Effects 0.000 description 3
- 230000009286 beneficial effect Effects 0.000 description 3
- 230000002457 bidirectional effect Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- ORILYTVJVMAKLC-UHFFFAOYSA-N Adamantane Natural products C1C(C2)CC3CC1CC2C3 ORILYTVJVMAKLC-UHFFFAOYSA-N 0.000 description 2
- 238000007476 Maximum Likelihood Methods 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 2
- 230000008451 emotion Effects 0.000 description 2
- 230000005284 excitation Effects 0.000 description 2
- 238000000605 extraction Methods 0.000 description 2
- 239000007789 gas Substances 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 238000002156 mixing Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000000306 recurrent effect Effects 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 241000288105 Grus Species 0.000 description 1
- 230000003044 adaptive effect Effects 0.000 description 1
- 238000013145 classification model Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 230000036039 immunity Effects 0.000 description 1
- 238000002372 labelling Methods 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 238000000691 measurement method Methods 0.000 description 1
- 230000008555 neuronal activation Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000008447 perception Effects 0.000 description 1
- 238000005096 rolling process Methods 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 238000010183 spectrum analysis Methods 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 230000009466 transformation 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/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
- G10L13/10—Prosody rules derived from text; Stress or intonation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/279—Recognition of textual entities
-
- 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
- G10L13/027—Concept to speech synthesisers; Generation of natural phrases from machine-based concepts
-
- 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
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Computational Linguistics (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Acoustics & Sound (AREA)
- Multimedia (AREA)
- Artificial Intelligence (AREA)
- Theoretical Computer Science (AREA)
- Evolutionary Computation (AREA)
- Signal Processing (AREA)
- General Health & Medical Sciences (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Machine Translation (AREA)
Abstract
本发明公开了一种多语种的语音合成方法、装置和***,获取待处理文本;对所述待处理文本中的每一字符进行语种识别,并存入对应的预设的字符库中;采用预先训练完成的韵律结构预测模型,对所述语种字符库中的每一字符串进行韵律结构划分;根据每一所述字符串及其对应的韵律结构,在预设的语音拼接单元库中获取对应的目标语音拼接单元;按识别顺序确定相邻的目标语音拼接单元,计算相邻的目标语音拼接单元之间的最佳拼接点;并根据所述最佳拼接点对相邻的目标拼接单元进行拼接,以得到合成语音。采用本发明实施例,其能实现对文本段落中的不同语种的语音合成,并有效保证合成语音的自然度和流畅度,满足用户需求。
Description
技术领域
本发明涉及语音合成技术领域,尤其涉及一种多语种的语音合成方法、装置 和***。
背景技术
随着科学技术的迅猛发展,语音合成技术正在不断发展并走向市场,以适应 社会的需求。目前市面上,大部分的语音合成***一次只能合成一种语种。当用 户需要转换为语音的文本段落同时具有中英双语种时,用户不得不多次来回选择 不同的语种识别***进行识别,再手动利用音频剪辑软件拼接,既麻烦,效果又 不好。
因此,多语种的语音合成***应运而生。然而,在实施本发明过程中,发明 人发现现有技术至少存在如下问题:现有的多语种语音合成***往往具备不同文 本语种识别能力,但是在进行语音合成的阶段,***只能选择一种语种的合成规 则来合成语音,使得文本中不同语种部分对应合成的语音出现失真、不自然乃至 表现为噪声的情况。
发明内容
本发明实施例的目的是提供一种多语种的语音合成方法、装置和***,其能 实现对文本段落中的不同语种的语音合成,并有效保证合成语音的自然度和流畅 度,满足用户需求。
为实现上述目的,本发明实施例提供了一种多语种的语音合成方法,包括:
获取待处理文本;对所述待处理文本中的每一字符进行语种识别,并存入对 应的预设的字符库中;其中,所述待处理文本中包含至少两种语种;所述预设的 字符库包括特殊字符库和至少两个语种对应的语种字符库;在所述语种字符库中 存储的所述字符以句子为单位形成对应的字符串;
采用预先训练完成的韵律结构预测模型,对所述语种字符库中的每一字符串 进行韵律结构划分;
根据每一所述字符串及其对应的韵律结构,在预设的语音拼接单元库中获取 对应的目标语音拼接单元;
按识别顺序确定相邻的目标语音拼接单元,计算相邻的目标语音拼接单元之 间的最佳拼接点;并根据所述最佳拼接点对相邻的目标拼接单元进行拼接,以得 到合成语音。
作为上述方案的改进,当所述待处理文本中包括汉语语种时,所述语种字符 库包括汉字字符库;
则所述采用预先训练完成的韵律结构预测模型,对所述语种字符库中的每一 字符串进行韵律结构划分,包括:
对所述汉字字符库中的字符串采用预设的分词神经网络模型进行单词切分, 根据切分后的词组确定其拼音和声调,以得到所述字符串对应的以拼音和声调表 示的拼音串;
根据每一所述字符串对应的拼音串,采用预设的韵律结构预测模型,对每一 所述字符串进行韵律结构划分;其中,所述韵律结构至少包括韵律词、韵律短语 和语调短语三个层级。
作为上述方案的改进,所述预设的韵律结构预测模型的训练方法,具体包括:
获取训练语料库;其中,所述训练语料库中包括若干个汉语句子及其对应的 韵律结构划分结果;
根据所述训练语料库对RNN循环神经网络进行训练,得到训练后的循环神 经网络模型;
采用分类回归树算法,对所述循环神经网络模型进行线性融合训练,得到训 练完成的循环神经网络模型,作为所述韵律结构预测模型。
作为上述方案的改进,当所述待处理文本中包括英语语种时,所述语种字符 库包括英文字符库;
则所述采用预先训练完成的韵律结构预测模型,对所述语种字符库中的每一 字符串进行韵律结构划分,包括:
确定所述英文字符库中的字符串的文本属性;其中,所述文本属性与上下文 环境相关;
根据每一所述字符串的文本属性,采用预设的韵律结构预测模型,对每一所 述字符串进行韵律结构划分;其中,所述韵律结构预测模型为二叉决策回归树, 所述二叉决策回归树反映了所述文本属性与韵律结构的映射关系。
作为上述方案的改进,所述二叉决策回归树的构建方法,具体包括:
确定所述语音拼接单元库中的每一语音拼接单元的文本属性;
使用决策回归树算法,以语音拼接单元间的平均距离作为不纯度度量,对所 述语音拼接单元进行聚类,以划分得到不同层级的韵律结构;
根据所述文本属性与所述韵律结构之间的映射关系,构建得到所述二叉决策 回归树。
作为上述方案的改进,所述根据每一所述字符串及其对应的韵律结构,在预 设的语音拼接单元库中获取对应的目标语音拼接单元,具体包括:
根据所述英文字符库中的每一字符串对应的韵律结构,在所述预设的语音拼 接单元库中获取符合所述韵律结构的候选语音拼接单元;
根据每一所述候选语音拼接单元的目标代价和连接代价,通过以下计算公式, 计算每一候选语音拼接单元的拼接代价:
其中,C为候选语音拼接单元的拼接代价,Ct(i)为候选语音拼接单元的目标 代价,Cc为候选语音拼接单元的连接代价;Wt和Wc分别为目标代价和连接代价 的权值,n为所述候选语音拼接单元的长度,P为所述文本属性的个数,为 第j个文本属性的规则距离,ωj为第j个文本属性的权值;
获取使得所述拼接代价最小对应的候选语音拼接单元,作为目标语音拼接单 元。
作为上述方案的改进,所述按识别顺序确定相邻的目标语音拼接单元,计算 相邻的目标语音拼接单元之间的最佳拼接点;并根据所述最佳拼接点对相邻的目 标拼接单元进行拼接,以得到合成语音,具体包括:
对每一所述目标拼接单元进行分帧处理,并提取每一所述目标拼接单元的前 m帧和后m帧的MFCC特征参数;
按识别顺序确定相邻的目标语音拼接单元,获取前一目标拼接单元的后m帧 中的任一帧和后一目标拼接单元的前m帧中的任一帧作为相邻的目标语音拼接 单元的拼接点,以得到m2个拼接组合;
通过以下计算公式,计算每一所述拼接组合对应的拼接代价;并根据拼接代 价最小对应的拼接组合,确定相邻的目标语音拼接单元之间的最佳拼接点:
其中,为拼接组合对应的拼接代价;MFCC1,m(i)为前一目标拼接单元的 第m个拼接点对应的MFCC特征参数值,MFCC2,m(i)为后一目标拼接单元的第 m个拼接点,MFCCdim为一帧的MFCC特征参数的维数,Tm为基频拼接代价函 数的门限;m≥1;
根据所述最佳拼接点对相邻的目标拼接单元进行拼接,得到初始合成语音;
计算前一目标语音拼接单元的后N帧的能量和后一目标语音拼接单元的前 N帧的能量;当前一目标语音拼接单元的后N帧的能量和后一目标语音拼接单元 的前N帧的能量之差高于预设的静音能量阈值时,通过以下计算公式计算相邻的 目标语音拼接单元的音量调整分贝;并通过所述音量调整分贝,对所述目标语音 拼接单元进行音量调整,以得到最终的合成语音:
DB1=(E1–E2)×W1;
DB2=(E1–E2)×W2;
其中,DB1为前一目标语音拼接单元的音量调整分贝,DB2为后一目标语音 拼接单元的音量调整分贝;E1前一目标语音拼接单元的后N帧的能量,E2为后一 目标语音拼接单元的前N帧的能量,N≥1;W1和W2分别为预设的权值。
作为上述方案的改进,在所述根据所述最佳拼接点对相邻的目标拼接单元进 行拼接,以得到合成语音之后,所述方法还包括:
采用基于tacotron模型的语音拼接平滑算法对所述合成语音进行平滑处理。
本发明实施例还提供了一种多语种的语音合成装置,包括:
语种识别模块,用于获取待处理文本;对所述待处理文本中的每一字符进行 语种识别,并存入对应的预设的字符库中;其中,所述待处理文本中包含至少两 种语种;所述预设的字符库包括特殊字符库和至少两个语种对应的语种字符库; 在所述语种字符库中存储的所述字符以句子为单位形成对应的字符串;
韵律结构划分模块,用于采用预先训练完成的韵律结构预测模型,对所述语 种字符库中的每一字符串进行韵律结构划分;
目标单元获取模块,用于根据每一所述字符串及其对应的韵律结构,在预设 的语音拼接单元库中获取对应的目标语音拼接单元;
语音合成模块,用于按识别顺序确定相邻的目标语音拼接单元,计算相邻的 目标语音拼接单元之间的最佳拼接点;并根据所述最佳拼接点对相邻的目标拼接 单元进行拼接,以得到合成语音。
本发明实施例还提供了一种多语种的语音合成***,包括处理器、存储器以 及存储在所述存储器中且被配置为由所述处理器执行的计算机程序,所述处理器 执行所述计算机程序时实现如上述任意一项所述的多语种的语音合成方法。
与现有技术相比,本发明公开的一种多语种的语音合成方法、装置和***。 通过获取待处理文本;对所述待处理文本中的每一字符进行语种识别,并存入对 应的预设的字符库中;采用预先训练完成的韵律结构预测模型,对所述语种字符 库中的每一字符串进行韵律结构划分;根据每一所述字符串及其对应的韵律结构, 在预设的语音拼接单元库中获取对应的目标语音拼接单元;按识别顺序确定相邻 的目标语音拼接单元,计算相邻的目标语音拼接单元之间的最佳拼接点;并根据 所述最佳拼接点对相邻的目标拼接单元进行拼接,以得到合成语音。采用本发明 实施例的技术手段,在对多语种的文本进行语音合成的过程中,考虑了不同语种 文本的韵律参数,从而使得合成语音具备不同年龄、性别特征及语气、语速的表 现,以及赋予个人的感情色彩。在语音合成过程中,对相邻的目标语音拼接单元 选择合适的拼接点,使得合成语音更加平滑流畅,提升了合成语音的自然度与表 现力。
附图说明
图1是本发明实施例一中的一种多语种的语音合成方法的步骤流程示意图;
图2是本发明实施例一中的语种识别步骤的流程示意图;
图3是本发明实施例二中的分词神经网络模型的结构示意图;
图4是本发明实施例二中的韵律结构划分示意图;
图5是本发明实施例四中的MFCC特征参数提取步骤的流程示意图;
图6是本发明实施例四中的目标语音拼接单元的拼接平滑步骤的流程示意图;
图7是本发明实施例六中的一种多语种的语音合成装置的结构示意图;
图8是本发明实施例七中的一种多语种的语音合成***的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、 完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的 实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前 提下所获得的所有其他实施例,都属于本发明保护的范围。
参见图1,是本发明实施例一中的一种多语种的语音合成方法的步骤流程示 意图。本发明实施例提供的一种多语种的语音合成方法,通过步骤S1至S4执行:
S1、获取待处理文本;对所述待处理文本中的每一字符进行语种识别,并存 入对应的预设的字符库中;其中,所述待处理文本中包含至少两种语种;所述预 设的字符库包括特殊字符库和至少两个语种对应的语种字符库;在所述语种字符 库中存储的所述字符以句子为单位形成对应的字符串。
在本发明实施例中,所述待处理文本中包含至少两种语种,采用基于unicode 码的文本语种识别方法进行语种识别。根据不同语言Unicode的编码范围,通过 判断Unicode码所在区间来确定某个字符所处类型。
作为举例,以下为汉字、数字、大小写字母以及常用标点的unicode编码范 围:
基本汉字:[0x4e00,0x9fa5](或十进制[19968,40869])
数字:[0x 0030,0x0039](或十进制[48,57])
小写字母:[0x0061,0x007a](或十进制[97,122])
大写字母:[0x0041,0x005a](或十进制[65,90])
常用标点:2000-206F
参见图2,是本发明实施例一中的语种识别步骤的流程示意图。在所述待处 理包括汉语语种和英语语种的情况下,所述对所述待处理文本中的每一字符进行 语种识别,并存入对应的预设的字符库中,具体包括步骤:
S11、创建汉字字符库、英文字符库和特殊字符库,分别用于存放汉字字符、 英文字符和特殊字符,创建一个字符串string用于存放英文字母。
S12、遍历所述待处理文本中的所有字符,判断是否存在下一个字符,若是, 根据下一个字符x的Unicode码所在区间来确定字符x所处区间。当x属于中文 区间,则执行S13;当x属于数字区间,则执行S14;当x属于特殊字符区间, 则执行S15;当x属于英文区间,则执行S16;若否,则识别结束。
S13、将x放置到存放汉字字符库,执行S12;
S14、将x转化为中文数字,放置到存放汉字字符库,执行S12;
S15、将x放置到存放特殊字符库,执行S12;
S16、字符串string=string+x,执行S17;
S17、判断下一个字符是否属于英文区间,若是则执行S16;否则将string作 为一个英文单词放置到英文字符库,并清除string字符。
需要说明的是,在所述语种字符库中,存储的所述字符以句子为单位形成对 应的字符串。具体可以通过在遍历和识别待处理文本中的字符的过程中,当识别 到的下一字符为特殊字符或与前面识别到的字符的语种不同时,将前面识别到的 字符形成字符串并存入对应的语种字符库的方式实现。
需要说明的是,上述语种识别方法仅作为一种实施方式,并不构成对本方案 的具体限定。在实际应用中,还可以通过判断字符的ASCII码进行语种识别,均 不影响本发明取得的有益效果。
S2、采用预先训练完成的韵律结构预测模型,对所述语种字符库中的每一字 符串进行韵律结构划分。
具体地,韵律也称为节律、音律、非线性特征等。韵律结构划分是语音合成 ***的重要组成部分,这是因为人们进行口语交流时往往不会按照分词的结果进 行停顿(但分词的结果仍具有一定的指导性作用)。因此准确的预测文本的韵律 边界位置以及其等级,是语音合成中的重要环节,它是合成自然、流畅的输出语 音的重要前提和保证。
在本发明实施例中,通过预先训练韵律结构预测模型,用于对语种字符库中 的每一字符串进行韵律结构划分,从而保证后续在对语音合成步骤过程中所生成 的合成语音的较好的自然度和流畅度。
S3、根据每一所述字符串及其对应的韵律结构,在预设的语音拼接单元库中 获取对应的目标语音拼接单元。
预先一个语音拼接单元库,用于存放大量的可用于合成语句的语音拼接单元。 在拼接合成时,不可避免地会带来音质的损失,因此,拼接单元越大,拼接点越 少,合成的效果越好,但是灵活度也越低,语音库需要更多的拼接单元。为了权 衡合成语音的自然度与语音库的体积,在本发明实施例中,采用了3种不同长度 的语音拼接单元:单词、音节和音素。利用较大的单元来覆盖连续语流中的各种 语音现象,尤其是协同发音现象,同时利用较小的单元来提高***的灵活性和鲁 棒性。
在语音合成时,针对语种字符库中的每一字符串,根据文本分析和韵律结构 分析获取的语音学参数,以找出合适的目标语音拼接单元。如果待处理文本中的 单词存在对应的单词语音拼接单元,则选择该单词语音拼接单元作为目标语音拼 接单元,如果单词语音拼接单元也不存在,则选择对应的音节语音拼接单元作为 目标语音拼接单元;如果音节语音拼接单元也不存在,则选择对应的音素语音拼 接单元作为目标语音拼接单元。
S4、按识别顺序确定相邻的目标语音拼接单元,计算相邻的目标语音拼接单 元之间的最佳拼接点;并根据所述最佳拼接点对相邻的目标拼接单元进行拼接, 以得到合成语音。
本发明在语音合成的过程中,通过对若干个目标语音拼接单元进行波形拼接 以获得合成语音。相邻的目标拼接单元通常来自于语料库中的原始文件,而即使 同一拼接单元来自于同一原始文件,也会由于其所处的原始文件的位置不同,语 境也不相同,而产生比较明显的差异,对合成语音的效果影响很大。
为使相邻的两个目标语音拼接单元的韵律参数在拼接点处的接续平滑,通过 计算两个语音单元的韵律参数在拼接点处的差值,以其最小值来确定最佳拼接点, 根据最佳拼接点对对相邻的目标拼接单元进行拼接,以得到合成语音。
本发明实施例一提供了一种多语种的语音合成方法,获取待处理文本;对所 述待处理文本中的每一字符进行语种识别,并存入对应的预设的字符库中;采用 预先训练完成的韵律结构预测模型,对所述语种字符库中的每一字符串进行韵律 结构划分;根据每一所述字符串及其对应的韵律结构,在预设的语音拼接单元库 中获取对应的目标语音拼接单元;按识别顺序确定相邻的目标语音拼接单元,计 算相邻的目标语音拼接单元之间的最佳拼接点;并根据所述最佳拼接点对相邻的 目标拼接单元进行拼接,以得到合成语音。采用本发明实施例的技术手段,在对 多语种的文本进行语音合成的过程中,考虑了不同语种文本的韵律参数,从而使 得合成语音具备不同年龄、性别特征及语气、语速的表现,以及赋予个人的感情 色彩。在语音合成过程中,对相邻的目标语音拼接单元选择合适的拼接点,使得 合成语音更加平滑流畅,提升了合成语音的自然度与表现力。
本发明实施例二提供了一种多语种的语音合成方法,在实施例一的基础上进 一步实施。当所述待处理文本中包括汉语语种时,所述语种字符库包括汉字字符 库。
则步骤S2具体通过步骤S211至S212执行:
S211、对所述汉字字符库中的字符串采用预设的分词神经网络模型进行单词 切分,根据切分后的词组确定其拼音和声调,以得到所述字符串对应的以拼音和 声调表示的拼音串。
S212、根据每一所述字符串对应的拼音串,采用预设的韵律结构预测模型, 对每一所述字符串进行韵律结构划分;其中,所述韵律结构至少包括韵律词、韵 律短语和语调短语三个层级。
在本发明实施例中,为了对所述汉字字符串进行准确的韵律结构划分,需要 先将汉字字符串转换为拼音串,获取到汉字对应的声母、韵母,从而与边界处的 声学参数进行匹配,更好的研究韵律层级边界处的声学表现。而为了使得拼音的 转换更加准确,则需要先对汉字字符串进行分词。针对中文,分词可避免大部分 由于歧义产生的注音错误,还可以获得词的边界线蕴含的丰富的韵律信息,例如 词的边界线往往需要稍作停顿。
本发明采用预设的分词神经网络模型对汉字字符串进行单词切分。在本发明 实施例二的一种实施方式下,参见图3,是本发明实施例二中的分词神经网络模 型的结构示意图,所述分词神经网络模型采用循环神经网络(RNN)。具体地, 所述分词神经网络模型的训练过程如下:
输入信息是以中文字或词为单位的字符串,也可以是词法、句法抽象的概念, 每一字词或概念作为单个神经元的输入。字符串可以不连续,也即可以出现空的 神经元。神经网络的结构可以自由重构,如对新出现的字词、句法概念创建一个 新的神经元。而对于新增加的只是不会刷新旧知识,因此,该神经网络的遗忘系 数将置1(不遗忘)。由于神经网络学习的特性,对于新的分词知识的增加,与搜 索时间无关,也即随着知识增加,搜索时间却不会过分增加。
分词神经网络模型如图3所示。F1是输入层,F2是竞争网络,F3表示自适 应学习机制。F1输入层输入为任意字词或概念组成的字符串。输入层每个结点对 应一个字词或概念。当结点对应字词非空时为1,空字符为0。设xi为F1第i个 结点,Si为第i个字词,则有
F2为竞争网络。每一个神经元均有一正反馈激励,也即给每一神经元以自恢 复、自增强机制,而互相之间为抑制作用。在信息并行输入F2时,每个神经元 都积极增强自己而抑制其他神经元,但由于每个神经元的权值Wi不一样,神经 元激活程度也不一样。通过反复演变和迭代,使某一神经元占主导地位,而其他 神经元被抑制。演化的结果与权值和F1输入信息有关。某神经元初始激活越大, 此神经元取胜的概率越大。设tjk是结点j到结点K的权值,则:
其中0<ε<1。
网络内部以Δt的时间序列迭代演化,t+1时结点j的输出值Yj′(t+1)随t改 变而改变,有:
Yj′(t+1)=f(Yj(t)-ε∑k≠jYk(t))j,k=1,…,M
其中,M是结点总个数。式中的f(*)为线性阈值函数:
设输入为字符串(x1x2…xn),Wij(t+1)是输入i的状态时神经元结点j的权 重,则神经元j的输出为:
设最终在竞争网络F2竞争胜出的神经元的输出大于预先设定的切分阈值, 则表示当前输出结点代表的字词处为切分点,F2网络通过对照标签,判断其是否 为正确切分结果,若不是,则在F3自学习算法调整权值,再重新竞争,直到切 分正确位置。如果遇到了新的字词,则在输入层F1新增结点。由于输入层F1每 一个神经元均对应固定的字词,一旦自学习过程完成,***就能对由这些字词组 成的语言正确处理。整个学习过程是一个由简到繁的过程,神经网络会逐渐完善 知识的存储。
进一步地,本发明基于汉语电子词典提取出汉字与其对应的拼音,组成汉字 -拼音字典。在对汉字字符串进行分词后,在处理输入的汉字字符时,基于所述 汉字-拼音字典,将分词后的汉字字符串转换为拼音串。举例如下:
输入语句:最让我品味不尽的秋韵
转换后的拼音串:zui4 rang4 wo3 pin3_wei4 bu2_jin4 de5 qiu1_yun4。
其中,数字(1,2,3,4)代表汉字的声调。
进一步地,根据每一所述字符串对应的拼音串,采用预设的韵律结构预测模 型,对每一所述字符串进行韵律结构划分。在本发明实施例中,对汉语语种的韵 律结构设置有三个层级,从小到大依次是韵律词、韵律短语和语调短语。
以“致以诚挚的问候和良好的祝愿”为例,将该字符串转换为拼音串后,输 入所述韵律结构预测模型,参见图4,是本发明实施例二中的韵律结构划分示意 图。其中PW、PP、IP、S分别表示韵律词、韵律短语、语调短语和句子。通过 所述韵律结构预测模型,输出该字符串对应的韵律结构划分结果。
在本发明实施例二的一种实施方式下,所述预设的韵律结构预测模型的训练 方法,具体包括步骤S212a至S212b:
S212a、获取训练语料库;其中,所述训练语料库中包括若干个汉语句子及 其对应的韵律结构划分结果。
在本发明实施例中,用于对韵律结构预测模型进行训练的语料库包括汉语 20000句,总计40多万个音节,均进行了三个层级(韵律词、韵律短语、语调短 语)的韵律边界标注。
S212b、根据所述训练语料库对RNN循环神经网络进行训练,得到训练后的 循环神经网络模型。
本发明基于RNN(循环神经网络)来预测韵律词、韵律短语和语调短语。 选用词向量(word2vec)作为特征。word2vec通过训练,可以把每个词表示为N 维向量的一个特征。从而两个词之间的距离可以用词向量空间的相似度来表示。 如表1所示,表1为RNN深度学习网络模型的F-score(分类模型的评价指标) 结果:
表1 RNN模型F-score结果
S223、采用分类回归树算法,对所述循环神经网络模型进行线性融合训练, 得到训练完成的循环神经网络模型,作为所述韵律结构预测模型。
RNN模型较其他模型相比,准确率有所提升。但是其对于极少部分输入, 会出现输出近似1或者0这样不够平滑的结果。通常的解决方法是将其与其他模 型作一个线性融合。本发明选取分类回归树算法(CART)、循环神经网络(RNN)、 条件随机场模型(CRF)模型所输出的概率结果以及部分重要特征进行模型的融 合。首先用线性模型来训练线性模型融合的系数。训练时选取的指数损失函数为:
L(y,f)=e-yf(x)
其中y是预测值,f是目标值。经过计算,CRF、CART、RNN的融合系数 分别为0.43、0.11、0.49,偏置项系数为-0.14。可见结果对RNN和CRF的依赖 程度远高于CART。不同系数结果如表2所示:
表2融合系数结果
为了提高模型融合的准确率,将短语长度的约束引入,加入了到上一个边界 距离、当前语法词音节数、下一个语法词音节数这个三个特征,用CART对RNN 进行融合。具体训练步骤如下所示:
Step1:根据多模型的融合结果,得到训练语料库中每个训练样本的“到上一 个边界的距离”。
Step2:随机抽取75%的训练样本,用CART进行训练。
Step3:用剩余的25%的训练样本进行交叉验证,判断结果是否达到预值。如 果达到预值,结束训练。
Step4:如果没有达到预值,用CART训练的结果,更新短语长度约束特征, 并转到Step2继续训练。
需要说明的是,这里需要考虑的超参数除了CART自带的超参数外,还有判 断结果是否理想的F-score值。即如果结果优于此值,则停止训练。
在本发明实施例二中,通过所述韵律结构预测模型获得每一汉字字符串的韵 律结构后,即可根据每一所述字符串及其对应的韵律结构,在预设的语音拼接单 元库中直接获取对应的目标语音拼接单元。
采用本发明实施例的技术手段,能够提高对汉字字符串的韵律结构划分的准 确性,以进一步提高合成语音的自然度和流畅度。
本发明实施例三提供了一种多语种的语音合成方法,在实施例一的基础上进 一步实施。当所述待处理文本中包括英语语种时,所述语种字符库包括英文字符 库。
则步骤S2具体通过步骤S221至S222执行:
S221、确定所述英文字符库中的字符串的文本属性;其中,所述文本属性与 上下文环境相关。
S222、根据每一所述字符串的文本属性,采用预设的韵律结构预测模型,对 每一所述字符串进行韵律结构划分。
在本发明实施例中,针对英文语种,所述韵律结构预测模型采用二叉决策回 归树。所述二叉决策回归树反映了所述文本属性与韵律结构的映射关系。根据英 文字符串的文本属性,即可通过所述二叉决策回归树,确定对应的韵律结构。
在本发明实施例二的一种实施方式下,所述二叉决策回归树的构建方法,具 体包括步骤S222a至S222c:
S222a、确定所述语音拼接单元库中的每一语音拼接单元的文本属性。
S222b、使用决策回归树算法,以语音拼接单元间的平均距离作为不纯度度 量,对所述语音拼接单元进行聚类,以划分得到不同层级的韵律结构;
S222c、根据所述文本属性与所述韵律结构之间的映射关系,构建得到所述 二叉决策回归树。
在本发明实施例中,由于英文字符串没有预先定义的韵律结构层级,则需要 对语音拼接单元库中的每一语音拼接单元进行聚类,从而划分出相应的韵律结构 层级。
在语音拼接单元库中,根据上下文环境对单词,音节和音素进行聚类,筛选 出具有相似的韵律特征的语音拼接单元,作为同一韵律层级。本发明采用二叉决 策回归树CART(Classification and Regression Tree),对语音拼接单元库中样本数 超过20的单词,音节和音素进行聚类,得到反映上下文与韵律信息映射关系的 二叉决策回归树。
在一种实施方式下,根据英语语言学的知识,本发明选取以下与上下文环境 有关的属性作为CART的文本属性:
A1:语音拼接单元前一个单音的类型
A2:语音拼接单元后一个单音的类型
A3:语音拼接单元前一个音节的重音(无重音,有重音,前一个音节不存在)
A4:语音拼接单元后一个音节的重音(无重音,有重音,后一个音节不存在)
A5:语音拼接单元所在单词前的停顿级别
A6:语音拼接单元所在单词后的停顿级别
A7:语音拼接单元所在单词在段落中的位置(段首,段中,段末,段中仅一 个单词)
A8:语音拼接单元所在单词在句子中的位置(句首,句中,句末,句中仅一 个单词)
A9:语音拼接单元所在单词在短句中的位置(短句首,短句中,短句末,短 句中仅一个单词)
A10:语音拼接单元所在单词在短语中的位置(短语首,短语中,短语末,短 语中仅一个单词)
A11:语音拼接单元所在单词在韵律词中的位置(韵律词首,韵律词中,韵律 词末,韵律词中仅一个单词)。
A12:语音拼接单元所在音节在单词中的位置(词首,词中,词末,单词仅 一个音节)
A13:语音拼接单元所在单词的音节数
A14:phone在音节中的位置(音节首,音节中,音节末,音节仅一个phone)
A15:phone所在音节的单音数
对单词进行聚类时,用属性A1~A11;对音节聚类时,用属性A1~A13; 对phone聚类时用到A1~A15所有15个属性。
基于上述属性,使用CART算法,并用“样本单元间的平均距离”作为不 纯度度量方法进行聚类。在聚类过程中,两个语音拼接单元间韵律特征的差异, 差异越小,则韵律越相似,二者进行拼接的效果越好。因此,通过度量两个语音 拼接单元间韵律特征的差异,若差异大于预设阈值,则需要调整相应权值并重新 进行聚类。
用以下公式来度量两个语音拼接单元间韵律特征的差异:
其中,N表示音频采样点数,PA、PB分别表示对A、B单元顺序采样的第i 点的基音周期的大小;EA、EB表示A、B单元的能量;DA、DB分别表示A、B单元的时长;α、β、γ为权值,三者之和为1。由于英语的语调本身比较平稳, 基音周期的权值α的取值可以较小,而能量和时长的权值β、γ基本相当,可以 取较大的值。
在此基础上,作为优选的实施方式,步骤S3,具体通过步骤S31至S33执 行:
S31、根据所述英文字符库中的每一字符串对应的韵律结构,在所述预设的 语音拼接单元库中获取符合所述韵律结构的候选语音拼接单元;
S32、根据每一所述候选语音拼接单元的目标代价和连接代价,通过以下计 算公式,计算每一候选语音拼接单元的拼接代价:
/>
其中,C为候选语音拼接单元的拼接代价,Ct(i)为候选语音拼接单元的目标 代价,Cc为候选语音拼接单元的连接代价;Wt和Wc分别为目标代价和连接代价 的权值,n为所述候选语音拼接单元的长度,P为所述文本属性的个数,为 第j个文本属性的规则距离,ωj为第j个文本属性的权值;
S33、获取使得所述拼接代价最小对应的候选语音拼接单元,作为目标语音 拼接单元。
本发明通过对每个文本属性制定一个规则距离表来确定目标单元和候选单 元间相互替换时代价的大小。制定的规则距离表如表3所示,其中A1t为目标语 音拼接单元的属性值,A1u候选语音拼接单元的属性值。
表3文本属性规则距离表
连接代价主要考虑候选语音拼接单元在字符串中的位置,如果路径中前一字 符与后一字符在语料中是相邻的,那么代价为0,否则代价为1。
综合考虑目标代价和连接代价,在候选单元网络中,分别对连续的单词、音 节和phone组成的子网络,选择一条代价最小的路径,进而组合为一个目标语 音拼接单元的序列。由于单词内部各个音位之间的联系很紧密,相互之间会产生 较大的影响,故在phone和phone的拼接点处,给连接代价赋以更高的权值,而 在单词和单词的拼接点处,目标代价权值更高,音节和音节的拼接点,连接代价 和目标代价的权值基本相当。
采用本发明实施例的技术手段,能够提高对英文字符串的韵律结构划分的准 确性,以进一步提高合成语音的自然度和流畅度。
本发明实施例四提供了一种多语种的语音合成方法,在实施例一至实施例三 任一实施例的基础上进一步实施。步骤S4,具体通过步骤S41至S45执行:
S41、对每一所述目标拼接单元进行分帧处理,并提取每一所述目标拼接单 元的前m帧和后m帧的MFCC特征参数;
在本发明实施例中,参见图5,是本发明实施例四中的MFCC特征参数提取 步骤的流程示意图。对每一目标语音拼接单元进行分帧,得到语言信号。用离散 傅立叶变换得到的频谱需要通过一系列三角形滤波器来变换到Mel频率域,这 是因为人对音调的感觉和声音的频率并不成正比关系。Mel频率和频率之间的对 应关系可用以下公式近似表示:
由MFCC具有良好的识别性能和抗噪能力,能反映出音频的特征参数,所以, 本发明拟采用通过提取语音拼接单元的MFCC参数来进行频谱分析。
S42、按识别顺序确定相邻的目标语音拼接单元,获取前一目标拼接单元的 后m帧中的任一帧和后一目标拼接单元的前m帧中的任一帧作为相邻的目标语 音拼接单元的拼接点,以得到m2个拼接组合。
作为举例,取m=2。则,对于相邻的两个目标语音拼接单元A和B,存在4 中拼接组合,分别为:A单元的最后一帧与B单元的第一帧作为拼接点、A单元 的倒数第二帧与B单元的第一帧作为拼接点、A单元的最后一帧与B单元的第二 帧作为拼接点、A单元的倒数第二帧与B单元的第二帧作为拼接点。
S43、通过以下计算公式,计算每一所述拼接组合对应的拼接代价;并根据 拼接代价最小对应的拼接组合,确定相邻的目标语音拼接单元之间的最佳拼接点:
其中,为拼接组合对应的拼接代价;MFCC1,m(i)为前一目标拼接单元的 第m个拼接点对应的MFCC特征参数值,MFCC2,m(i)为后一目标拼接单元的第 m个拼接点,MFCCdim为一帧的MFCC特征参数的维数,Tm为基频拼接代价函 数的门限;m≥1。
同样以m=2作为举例,则分别计算出4种拼接组合对应的拼接代价C1、C2、 C3和C4。若拼接代价C1最小,则对应的拼接组合(A单元的最后一帧与B单元的 第一帧作为拼接点)作为最佳拼接组合,则A单元的最后一帧与B单元的第一 帧作为最佳拼接点。
S44、根据所述最佳拼接点对相邻的目标拼接单元进行拼接,得到初始合成 语音;
S45、计算前一目标语音拼接单元的后N帧的能量和后一目标语音拼接单元 的前N帧的能量;当前一目标语音拼接单元的后N帧的能量和后一目标语音拼 接单元的前N帧的能量之差高于预设的静音能量阈值时,通过以下计算公式计算 相邻的目标语音拼接单元的音量调整分贝;并通过所述音量调整分贝,对所述目 标语音拼接单元进行音量调整,以得到最终的合成语音:
DB1=(E1–E2)×W1;
DB2=(E1–E2)×W2;
其中,DB1为前一目标语音拼接单元的音量调整分贝,DB2为后一目标语音 拼接单元的音量调整分贝;E1前一目标语音拼接单元的后N帧的能量,E2为后一 目标语音拼接单元的前N帧的能量,N≥1;W1和W2分别为预设的权值。
具体地,由于不同语义单位(段、句、词等)的分割处,语音的某些特征有 明显变化,比如在句子边界处,音频的能量特征就显著减少。因此,本发明可以 利用这一特点来做边界检测,以检测语音合成时,语言拼接单元的拼接处是否足 够平滑,以降低拼接处的断层程度。
参见图6,是本发明实施例四中的目标语音拼接单元的拼接平滑步骤的流程 示意图。通过判断前一目标语音拼接单元的后N帧的能量和后一目标语音拼接单 元的前N帧的能量之差是否高于预设的静音能量阈值,来对相邻的目标语音拼接 单元进行音量调整。
作为举例,当计算得到DB1为负值时,对所述前一目标语音拼接单元的后N 帧进行减音量,当计算得到DB1为正值时,对所述前一目标语音拼接单元的后N 帧进行加音量。具体的DB1的绝对值即为加减音量的分贝值。对后一目标语音拼 接单元的音量调整同理可得。
采用本发明实施例的技术手段,先通过分析频谱寻找最佳拼接点,再通过基 于双阈值语音拼接平滑算法调整原始音素文件的音量,可有效解决使用拼接单元 所合成的语音不平滑的问题。
本发明实施例五提供了一种多语种的语音合成方法,在实施例一至四任一实 施例的基础上进一步实施。在步骤S4之后,所述方法还包括步骤S5:
S5、采用基于tacotron模型的语音拼接平滑算法对所述合成语音进行平滑处 理。
在本发明实施例中,在获得合成语音之后,由于合成语音中可能还存在过度 不自然的地方,因此通过基于tacotron的语音拼接平滑算法,对合成语音加一层 滤镜。它不对整体做出太大的改动,而是磨掉不自然的地方。
tacotron模型由encoder模块,decoder模块和post-processing网络顺序连接 组成。将所述合成语音的频谱图,依次经过encoder模块、decoder模块、 post-processing模块,可获取平滑后的频谱图。Encoder模块将频谱转换成更好处 理的序列数据,decoder模块负责处理、预测数据,post-process模块将平滑后的 序列转换成频谱。
以下对tacotron模型的各个模块进行解释说明:
encoder模块:
平滑时,首先将所述合成语音放到encoder的预训练层(pre-net),它有两个 隐藏层,层与层之间的连接均是全连接;第一层的隐藏单元数目与输入单元数目 一致,第二层的隐藏单元数目为第一层的一半;两个隐藏层采用的激活函数均为 ReLu,dropout设置为来提高泛化能力。
接着将预训练层网络的输出输入到CBHC模块中,从而获得原始输入的高鲁 棒性序列。
CBHG模块由一维卷积层(1-D Convolution bank),高速路神经网络(HighwayNetworks),双向门控循环单元(Bidirectional GRU)组成。它的功能是从输入中 提取有价值的特征,有利于提高模型的泛化能力。
输入序列首先会经过一个卷积层,然后进行残差连接(residual connection),用于弥补经过多层卷积后丢失的信息。然后下一层输入到高速路神经网络(highwaynetwork),这个网络的结构为:把输入(input)同时放进到两个一层的 全连接网络中,两个网络的激活函数为ReLu和sigmoid,两个网络的输出为 output1和output2,那么highway层的输出(output)为:
output=output1*output2+input*(1-output2)
本发明实施例中,highway层数为四层。其中highwaynetwork的公式为
y=H(x,WH)·(x,WT)+x·C(x,Wc)
然后将highway层的输出输入到双向GRU,GRU的输出结果就是encoder 的输出。GRU是LSTM的优化版,GRU只有更新门与重置门,使得训练速度有 所加快。两个门的公式如下:
z(t)=σ(W(z)x(t)+u(z)h(t-1))(Update gate)
r(t)=σ(W(r)x(t)+uh(r)h(t-1))(Reset gate)
z(t)=tanh(r(t)。uh(t-1)+Wx(t))(new memory)
重置门(Resetgate):r(t)负责决定h(t-1)对new memory h(t)的权重,如果r(t)约等于0的话,h(t-1)就不会传递给new memory h(t)。
Newmemory:h(t)是对新的输入x(t)和上一时刻的hidden state h(t-1)的总结。计 算总结出的新的向量h(t)包含上文信息和新的输入x(t)。
更新门(Updategate):z(t)负责决定传递多少h(t-1)给h(t)。如果z(t)约等于1的 话,h(t-1)几乎会直接复制给h(t),相反,如果z(t)约等于0,new memory h(t)直接传 递给h(t)。
隐藏状态(Hiddenstate):h(t)由h(t-1)和h(t)相加得到,两者的权重由update gatez(t)控制。
decoder模块:
经由CBHG模块处理后获得序列将输入到decoder模块。Decoder分为三个 部分:预训练(pre-net)、聚焦层(Attention-RNN)、解码层(Decoder-RNN)。 Decoder的预训练(pre-net)的结构与encoder的预训练(pre-net)结构相同,作 用为对输入做一些非线性变换。
聚焦层(Attention-RNN)的结构为一层包含256个GRU的RNN,它将pre-net 的输出和attention的输出作为输入,经过GRU单元后输出到decoder-RNN中。 解码层(Decode-RNN)为两层residual GRU,它的输出为输入与经过GRU单元 输出之和。每层包含了256个GRU单元。第一步decoder的输入为0矩阵,之后 都会把第t步的输出作为第t+1步的输入。
post-processing模块:
因为decoder-RNN输出的并不是音频文件,因此需要后处理(post-processing),将decoder-RNN的输出转换成频谱。以Decoder模块的输出作为后处理 (post-processing)模块的输入,使用CBHG模块作为后处理层(post-processing net)进行转换。
进一步地,再通过wavenet可将频谱图逆转换成音频,从而得到经过平滑处 理后的最优的合成语音。
具体地,本发明使用了一个修正过的wavenet结构来将梅尔频谱图特征表现 转换为时域的波形图,从而获得最终的音频文件。该wavenet有30个扩大的卷 积层,分组为三个扩大的周期。用RixelCNN++和Parallel Wavenet来代替softmax 层,使用Mol来生成16为的采样,频率为24khz。为了计算逻辑混合分布,wavenet 堆叠的输出通过Relu激励函数后,通过线性投影来预测每个混合部分的参数。 损失(loss)通过负对数最大似然估计(negativelog-likehood)得到。
训练过程:首先训练特征预测网络,然后通过第一层的输入来训练第二层修 正的wavenet网络。训练特征预测网络时,使用极大似然估计方法 (maxinum-likehood)。使用Adam优化器优化训练速度,学习率为0.001,在每 50000次迭代之后,学习率会衰减0.00001。使用L2正则化的方法,权重为0.000001。
之后通过特征预测网络得出的预测信息来训练修正的wavenet,。通过32个 GPU进行同步训练,batch_size=128,并且也是用Adam作为优化器,固定学***均模型的权重。
采用本发明实施例的技术手段,通过对合成语音进一步进行平滑处理,能够 有效提高合成语音的自然度和流畅度。考虑到tacotron模型强大的学***滑语音拼 接合成所带来的的断层。如此,tacotron模型的强大学习能力得以充分利用,能 够进一步提升合成语音的自然度和流畅度,同时弥补了端对端模型难以调参和优 化的缺陷。
参见图7,是本发明实施例六中的一种多语种的语音合成装置的结构示意图。 本发明实施例六提供的一种多语种的语音合成装置60,包括:语种识别模块61、 韵律结构划分模块62、目标单元获取模块63和语音合成模块64,其中,
所述语种识别模块61,用于获取待处理文本;对所述待处理文本中的每一字 符进行语种识别,并存入对应的预设的字符库中;其中,所述待处理文本中包含 至少两种语种;所述预设的字符库包括特殊字符库和至少两个语种对应的语种字 符库;在所述语种字符库中存储的所述字符以句子为单位形成对应的字符串;
所述韵律结构划分模块62,用于采用预先训练完成的韵律结构预测模型,对 所述语种字符库中的每一字符串进行韵律结构划分;
所述目标单元获取模块63,用于根据每一所述字符串及其对应的韵律结构, 在预设的语音拼接单元库中获取对应的目标语音拼接单元;
所述语音合成模块64,用于按识别顺序确定相邻的目标语音拼接单元,计算 相邻的目标语音拼接单元之间的最佳拼接点;并根据所述最佳拼接点对相邻的目 标拼接单元进行拼接,以得到合成语音。
需要说明的是,本发明实施例提供的一种多语种的语音合成装置用于执行上 述实施例一至五的一种多语种的语音合成方法的所有流程步骤,两者的工作原理 和有益效果一一对应,因而不再赘述。
参见图8,是本发明实施例七中的一种多语种的语音合成***的结构示意图。 本发明实施例七提供了一种多语种的语音合成***70,包括处理器71、存储器 72以及存储在所述存储器中且被配置为由所述处理器执行的计算机程序,所述处 理器执行所述计算机程序时实现如实施例一至五任一实施例所述的多语种的语 音合成方法。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是 可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可 读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中, 所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-OnlyMemory,ROM) 或随机存储记忆体(RandomAccessMemory,RAM)等。
以上所述是本发明的优选实施方式,应当指出,对于本技术领域的普通技术 人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改 进和润饰也视为本发明的保护范围。
Claims (9)
1.一种多语种的语音合成方法,其特征在于,包括:
获取待处理文本;对所述待处理文本中的每一字符进行语种识别,并存入对应的预设的字符库中;其中,所述待处理文本中包含至少两种语种;所述预设的字符库包括特殊字符库和至少两个语种对应的语种字符库;在所述语种字符库中存储的所述字符以句子为单位形成对应的字符串;
采用预先训练完成的韵律结构预测模型,对所述语种字符库中的每一字符串进行韵律结构划分;
根据每一所述字符串及其对应的韵律结构,在预设的语音拼接单元库中获取对应的目标语音拼接单元;
按识别顺序确定相邻的目标语音拼接单元,计算相邻的目标语音拼接单元之间的最佳拼接点;并根据所述最佳拼接点对相邻的目标拼接单元进行拼接,以得到合成语音;
所述按识别顺序确定相邻的目标语音拼接单元,计算相邻的目标语音拼接单元之间的最佳拼接点;并根据所述最佳拼接点对相邻的目标拼接单元进行拼接,以得到合成语音,具体包括:
对每一所述目标拼接单元进行分帧处理,并提取每一所述目标拼接单元的前m帧和后m帧的MFCC特征参数;
按识别顺序确定相邻的目标语音拼接单元,获取前一目标拼接单元的后m帧中的任一帧和后一目标拼接单元的前m帧中的任一帧作为相邻的目标语音拼接单元的拼接点,以得到个拼接组合;
通过以下计算公式,计算每一所述拼接组合对应的拼接代价;并根据拼接代价最小对应的拼接组合,确定相邻的目标语音拼接单元之间的最佳拼接点:
其中,为拼接组合对应的拼接代价;/>为前一目标拼接单元的第m个拼接点对应的MFCC特征参数值,/>为后一目标拼接单元的第m个拼接点,/>为一帧的MFCC特征参数的维数,/>为基频拼接代价函数的门限;/>;
根据所述最佳拼接点对相邻的目标拼接单元进行拼接,得到初始合成语音;
计算前一目标语音拼接单元的后N帧的能量和后一目标语音拼接单元的前N帧的能量;当前一目标语音拼接单元的后N帧的能量和后一目标语音拼接单元的前N帧的能量之差高于预设的静音能量阈值时,通过以下计算公式计算相邻的目标语音拼接单元的音量调整分贝;并通过所述音量调整分贝,对所述目标语音拼接单元进行音量调整,以得到最终的合成语音:
;
;
其中,为前一目标语音拼接单元的音量调整分贝,/>为后一目标语音拼接单元的音量调整分贝;/>前一目标语音拼接单元的后N帧的能量,/>为后一目标语音拼接单元的前N帧的能量,/>;/>和/>分别为预设的权值。
2.如权利要求1所述的多语种的语音合成方法,其特征在于,当所述待处理文本中包括汉语语种时,所述语种字符库包括汉字字符库;
则所述采用预先训练完成的韵律结构预测模型,对所述语种字符库中的每一字符串进行韵律结构划分,包括:
对所述汉字字符库中的字符串采用预设的分词神经网络模型进行单词切分,根据切分后的词组确定其拼音和声调,以得到所述字符串对应的以拼音和声调表示的拼音串;
根据每一所述字符串对应的拼音串,采用预设的韵律结构预测模型,对每一所述字符串进行韵律结构划分;其中,所述韵律结构至少包括韵律词、韵律短语和语调短语三个层级。
3.如权利要求2所述的多语种的语音合成方法,其特征在于,所述预设的韵律结构预测模型的训练方法,具体包括:
获取训练语料库;其中,所述训练语料库中包括若干个汉语句子及其对应的韵律结构划分结果;
根据所述训练语料库对RNN循环神经网络进行训练,得到训练后的循环神经网络模型;
采用分类回归树算法,对所述循环神经网络模型进行线性融合训练,得到训练完成的循环神经网络模型,作为所述韵律结构预测模型。
4.如权利要求1所述的多语种的语音合成方法,其特征在于,当所述待处理文本中包括英语语种时,所述语种字符库包括英文字符库;
则所述采用预先训练完成的韵律结构预测模型,对所述语种字符库中的每一字符串进行韵律结构划分,包括:
确定所述英文字符库中的字符串的文本属性;其中,所述文本属性与上下文环境相关;
根据每一所述字符串的文本属性,采用预设的韵律结构预测模型,对每一所述字符串进行韵律结构划分;其中,所述韵律结构预测模型为二叉决策回归树,所述二叉决策回归树反映了所述文本属性与韵律结构的映射关系。
5.如权利要求4所述的多语种的语音合成方法,其特征在于,所述二叉决策回归树的构建方法,具体包括:
确定所述语音拼接单元库中的每一语音拼接单元的文本属性;
使用决策回归树算法,以语音拼接单元间的平均距离作为不纯度度量,对所述语音拼接单元进行聚类,以划分得到不同层级的韵律结构;
根据所述文本属性与所述韵律结构之间的映射关系,构建得到所述二叉决策回归树。
6.如权利要求4所述的多语种的语音合成方法,其特征在于,所述根据每一所述字符串及其对应的韵律结构,在预设的语音拼接单元库中获取对应的目标语音拼接单元,具体包括:
根据所述英文字符库中的每一字符串对应的韵律结构,在所述预设的语音拼接单元库中获取符合所述韵律结构的候选语音拼接单元;
根据每一所述候选语音拼接单元的目标代价和连接代价,通过以下计算公式,计算每一候选语音拼接单元的拼接代价:
其中,为候选语音拼接单元的拼接代价,/>为候选语音拼接单元的目标代价,/>为候选语音拼接单元的连接代价;/>和/>分别为目标代价和连接代价的权值,n 为所述候选语音拼接单元的长度,P为所述文本属性的个数,/>为第j个文本属性的规则距离,/>为第j个文本属性的权值;
获取使得所述拼接代价最小对应的候选语音拼接单元,作为目标语音拼接单元。
7.如权利要求1所述的多语种的语音合成方法,其特征在于,在所述根据所述最佳拼接点对相邻的目标拼接单元进行拼接,以得到合成语音之后,所述方法还包括:
采用基于tacotron模型的语音拼接平滑算法对所述合成语音进行平滑处理。
8.一种多语种的语音合成装置,其特征在于,包括:
语种识别模块,用于获取待处理文本;对所述待处理文本中的每一字符进行语种识别,并存入对应的预设的字符库中;其中,所述待处理文本中包含至少两种语种;所述预设的字符库包括特殊字符库和至少两个语种对应的语种字符库;在所述语种字符库中存储的所述字符以句子为单位形成对应的字符串;
韵律结构划分模块,用于采用预先训练完成的韵律结构预测模型,对所述语种字符库中的每一字符串进行韵律结构划分;
目标单元获取模块,用于根据每一所述字符串及其对应的韵律结构,在预设的语音拼接单元库中获取对应的目标语音拼接单元;
语音合成模块,用于按识别顺序确定相邻的目标语音拼接单元,计算相邻的目标语音拼接单元之间的最佳拼接点;并根据所述最佳拼接点对相邻的目标拼接单元进行拼接,以得到合成语音;
所述语音合成模块,具体用于:
对每一所述目标拼接单元进行分帧处理,并提取每一所述目标拼接单元的前m帧和后m帧的MFCC特征参数;
按识别顺序确定相邻的目标语音拼接单元,获取前一目标拼接单元的后m帧中的任一帧和后一目标拼接单元的前m帧中的任一帧作为相邻的目标语音拼接单元的拼接点,以得到个拼接组合;
通过以下计算公式,计算每一所述拼接组合对应的拼接代价;并根据拼接代价最小对应的拼接组合,确定相邻的目标语音拼接单元之间的最佳拼接点:
其中,为拼接组合对应的拼接代价;/>为前一目标拼接单元的第m个拼接点对应的MFCC特征参数值,/>为后一目标拼接单元的第m个拼接点,/>为一帧的MFCC特征参数的维数,/>为基频拼接代价函数的门限;/>;
根据所述最佳拼接点对相邻的目标拼接单元进行拼接,得到初始合成语音;
计算前一目标语音拼接单元的后N帧的能量和后一目标语音拼接单元的前N帧的能量;当前一目标语音拼接单元的后N帧的能量和后一目标语音拼接单元的前N帧的能量之差高于预设的静音能量阈值时,通过以下计算公式计算相邻的目标语音拼接单元的音量调整分贝;并通过所述音量调整分贝,对所述目标语音拼接单元进行音量调整,以得到最终的合成语音:
;
;
其中,为前一目标语音拼接单元的音量调整分贝,/>为后一目标语音拼接单元的音量调整分贝;/>前一目标语音拼接单元的后N帧的能量,/>为后一目标语音拼接单元的前N帧的能量,/>;/>和/>分别为预设的权值。
9.一种多语种的语音合成***,其特征在于,包括处理器、存储器以及存储在所述存储器中且被配置为由所述处理器执行的计算机程序,所述处理器执行所述计算机程序时实现如权利要求1至7中任意一项所述的多语种的语音合成方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110052188.4A CN113160792B (zh) | 2021-01-15 | 2021-01-15 | 一种多语种的语音合成方法、装置和*** |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110052188.4A CN113160792B (zh) | 2021-01-15 | 2021-01-15 | 一种多语种的语音合成方法、装置和*** |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113160792A CN113160792A (zh) | 2021-07-23 |
CN113160792B true CN113160792B (zh) | 2023-11-17 |
Family
ID=76878388
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110052188.4A Active CN113160792B (zh) | 2021-01-15 | 2021-01-15 | 一种多语种的语音合成方法、装置和*** |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113160792B (zh) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1731510A (zh) * | 2004-08-05 | 2006-02-08 | 摩托罗拉公司 | 混合语言文语转换 |
JP2016065899A (ja) * | 2014-09-22 | 2016-04-28 | カシオ計算機株式会社 | 音声合成装置、方法、およびプログラム |
CN105989833A (zh) * | 2015-02-28 | 2016-10-05 | 讯飞智元信息科技有限公司 | 多语种混语文本字音转换方法及*** |
CN111247581A (zh) * | 2019-12-23 | 2020-06-05 | 深圳市优必选科技股份有限公司 | 一种多语言文本合成语音方法、装置、设备及存储介质 |
CN111508471A (zh) * | 2019-09-17 | 2020-08-07 | 马上消费金融股份有限公司 | 语音合成方法及其装置、电子设备和存储装置 |
CN111599339A (zh) * | 2020-05-19 | 2020-08-28 | 苏州奇梦者网络科技有限公司 | 具有高自然度的语音拼接合成方法、***、设备及介质 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6520108B2 (ja) * | 2014-12-22 | 2019-05-29 | カシオ計算機株式会社 | 音声合成装置、方法、およびプログラム |
US9865251B2 (en) * | 2015-07-21 | 2018-01-09 | Asustek Computer Inc. | Text-to-speech method and multi-lingual speech synthesizer using the method |
-
2021
- 2021-01-15 CN CN202110052188.4A patent/CN113160792B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1731510A (zh) * | 2004-08-05 | 2006-02-08 | 摩托罗拉公司 | 混合语言文语转换 |
JP2016065899A (ja) * | 2014-09-22 | 2016-04-28 | カシオ計算機株式会社 | 音声合成装置、方法、およびプログラム |
CN105989833A (zh) * | 2015-02-28 | 2016-10-05 | 讯飞智元信息科技有限公司 | 多语种混语文本字音转换方法及*** |
CN111508471A (zh) * | 2019-09-17 | 2020-08-07 | 马上消费金融股份有限公司 | 语音合成方法及其装置、电子设备和存储装置 |
CN111247581A (zh) * | 2019-12-23 | 2020-06-05 | 深圳市优必选科技股份有限公司 | 一种多语言文本合成语音方法、装置、设备及存储介质 |
CN111599339A (zh) * | 2020-05-19 | 2020-08-28 | 苏州奇梦者网络科技有限公司 | 具有高自然度的语音拼接合成方法、***、设备及介质 |
Non-Patent Citations (3)
Title |
---|
Spectral distance costs for multilingual unit selection in speech synthesis;Hamurabi Gamboa,等;《 Proc. of 11-th International Conference "Speech and Compute" SPECOM2006》;全文 * |
Unit selection in a concatenative speech synthesis system using a large speech database;A.J. Hunt,等;《1996 IEEE International Conference on Acoustics, Speech, and Signal Processing Conference Proceedings》;全文 * |
结合听感度量的语音合成方法研究;孙晓辉;《中国优秀硕士学位论文全文数据库》;全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN113160792A (zh) | 2021-07-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112712804B (zh) | 语音识别方法、***、介质、计算机设备、终端及应用 | |
US20230043916A1 (en) | Text-to-speech processing using input voice characteristic data | |
JP6911208B2 (ja) | 発話スタイル転移 | |
KR20200015418A (ko) | 순차적 운율 특징을 기초로 기계학습을 이용한 텍스트-음성 합성 방법, 장치 및 컴퓨터 판독가능한 저장매체 | |
Liu et al. | Reinforcement learning for emotional text-to-speech synthesis with improved emotion discriminability | |
Kaur et al. | Conventional and contemporary approaches used in text to speech synthesis: A review | |
US20220238116A1 (en) | A Method Of Sequence To Sequence Data Processing And A System For Sequence To Sequence Data Processing | |
CN113205792A (zh) | 一种基于Transformer和WaveNet的蒙古语语音合成方法 | |
Suyanto et al. | End-to-End speech recognition models for a low-resourced Indonesian Language | |
CN113539268A (zh) | 一种端到端语音转文本罕见词优化方法 | |
CN112669845A (zh) | 语音识别结果的校正方法及装置、电子设备、存储介质 | |
Kumari et al. | An efficient adaptive artificial neural network based text to speech synthesizer for Hindi language | |
Swain et al. | A DCRNN-based ensemble classifier for speech emotion recognition in Odia language | |
Liu et al. | A novel method for Mandarin speech synthesis by inserting prosodic structure prediction into Tacotron2 | |
Rebai et al. | Arabic speech synthesis and diacritic recognition | |
CN113160792B (zh) | 一种多语种的语音合成方法、装置和*** | |
Du et al. | [Retracted] English Phrase Speech Recognition Based on Continuous Speech Recognition Algorithm and Word Tree Constraints | |
Rebai et al. | Arabic text to speech synthesis based on neural networks for MFCC estimation | |
Galatang | Syllable-Based Indonesian Automatic Speech Recognition. | |
Ronanki | Prosody generation for text-to-speech synthesis | |
CN112133325A (zh) | 错误音素识别方法及装置 | |
Evrard | Transformers in automatic speech recognition | |
Raju et al. | Speech recognition to build context: A survey | |
Pilar | Knowledge-driven subword grammar modeling for automatic speech recognition in tamil and kannada | |
Ghadekar et al. | ASR for Indian regional language using Nvidia’s NeMo toolkit |
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 |