CN114373443A - 语音合成方法和装置、计算设备、存储介质及程序产品 - Google Patents
语音合成方法和装置、计算设备、存储介质及程序产品 Download PDFInfo
- Publication number
- CN114373443A CN114373443A CN202210044895.3A CN202210044895A CN114373443A CN 114373443 A CN114373443 A CN 114373443A CN 202210044895 A CN202210044895 A CN 202210044895A CN 114373443 A CN114373443 A CN 114373443A
- Authority
- CN
- China
- Prior art keywords
- feature
- speech
- synthesized
- text
- dialog
- 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.)
- Pending
Links
- 238000001308 synthesis method Methods 0.000 title claims abstract description 39
- 238000003860 storage Methods 0.000 title claims description 39
- 238000000034 method Methods 0.000 claims abstract description 57
- 230000003993 interaction Effects 0.000 claims abstract description 50
- 230000015572 biosynthetic process Effects 0.000 claims abstract description 48
- 238000003786 synthesis reaction Methods 0.000 claims abstract description 48
- 239000013598 vector Substances 0.000 claims description 204
- 238000012549 training Methods 0.000 claims description 28
- 238000000605 extraction Methods 0.000 claims description 20
- 230000009466 transformation Effects 0.000 claims description 12
- 238000004590 computer program Methods 0.000 claims description 6
- 238000009826 distribution Methods 0.000 claims description 5
- 230000002452 interceptive effect Effects 0.000 claims description 4
- 238000010606 normalization Methods 0.000 claims description 4
- 238000010397 one-hybrid screening Methods 0.000 claims description 4
- 230000004931 aggregating effect Effects 0.000 claims description 3
- 230000002776 aggregation Effects 0.000 claims description 3
- 238000004220 aggregation Methods 0.000 claims description 3
- 239000002131 composite material Substances 0.000 claims 1
- 230000001131 transforming effect Effects 0.000 claims 1
- 230000000875 corresponding effect Effects 0.000 description 103
- 230000008569 process Effects 0.000 description 25
- 238000005516 engineering process Methods 0.000 description 24
- 238000010586 diagram Methods 0.000 description 18
- 238000012545 processing Methods 0.000 description 16
- 238000013528 artificial neural network Methods 0.000 description 14
- 230000006870 function Effects 0.000 description 12
- 238000013473 artificial intelligence Methods 0.000 description 11
- 239000010410 layer Substances 0.000 description 11
- 238000010801 machine learning Methods 0.000 description 11
- 230000011218 segmentation Effects 0.000 description 9
- 238000004458 analytical method Methods 0.000 description 6
- 238000003058 natural language processing Methods 0.000 description 6
- 238000011160 research Methods 0.000 description 6
- 241000282414 Homo sapiens Species 0.000 description 5
- 238000013527 convolutional neural network Methods 0.000 description 5
- 238000001228 spectrum Methods 0.000 description 5
- 230000008901 benefit Effects 0.000 description 4
- 238000003062 neural network model Methods 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 3
- 238000007493 shaping process Methods 0.000 description 3
- 239000002356 single layer Substances 0.000 description 3
- 241001672694 Citrus reticulata Species 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 238000013135 deep learning Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 230000018109 developmental process Effects 0.000 description 2
- 230000001976 improved effect Effects 0.000 description 2
- 230000000306 recurrent effect Effects 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 239000000126 substance Substances 0.000 description 2
- 241000282412 Homo Species 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 230000003213 activating effect Effects 0.000 description 1
- 230000003044 adaptive effect Effects 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000002457 bidirectional effect Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 230000001276 controlling effect Effects 0.000 description 1
- 230000002596 correlated effect Effects 0.000 description 1
- 125000004122 cyclic group Chemical group 0.000 description 1
- 230000007812 deficiency Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 210000005069 ears Anatomy 0.000 description 1
- 230000008451 emotion Effects 0.000 description 1
- 230000003203 everyday effect Effects 0.000 description 1
- 230000001939 inductive effect Effects 0.000 description 1
- 238000002372 labelling Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000036651 mood Effects 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 230000008447 perception Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000002787 reinforcement Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000008054 signal transmission Effects 0.000 description 1
- 229910052710 silicon Inorganic materials 0.000 description 1
- 239000010703 silicon Substances 0.000 description 1
- 230000002194 synthesizing effect Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 238000013526 transfer learning Methods 0.000 description 1
- 238000000844 transformation Methods 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
- 230000007723 transport mechanism Effects 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
Images
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
- 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
- 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/22—Procedures used during a speech recognition process, e.g. man-machine dialogue
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Computational Linguistics (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- Acoustics & Sound (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Machine Translation (AREA)
Abstract
本申请提供了一种语音合成方法及装置。该方法包括:获取待合成对话文本以及与待合成对话文本相关联的至少一条参考对话的对话文本和对话语音;从待合成对话文本中提取待合成文本特征;针对至少一条参考对话中的每一条参考对话,从该参考对话的对话文本中提取参考文本特征,并从该参考对话的对话语音中提取参考语音特征;基于待合成文本特征、所提取的至少一个参考文本特征和所提取的至少一个参考语音特征,确定与待合成对话文本对应的预测语音特征;至少基于待合成对话文本和预测语音特征,生成与待合成对话文本对应的合成对话语音。该方法可以用于提供更为自然流畅的人机语音交互体验。
Description
技术领域
本申请涉及计算机技术领域,具体地,涉及一种语音合成方法、语音合成装置、计算设备、计算机可读存储介质和计算机程序产品。
背景技术
语音合成(Text to Speech,TTS)指将文本转换成语音的技术,其广泛应用于诸如有声阅读、新闻播报、语音导航、智能客服、语音助手等各种应用场景。一般而言,计算设备可以基于文本中的文字序列,根据一般发音规则(例如普通话发音规则等),将文字序列转换为相应的语音。然而,对于涉及人机语音交互的应用场景,由于根据一般发音规则转换得到的语音比较死板生硬,缺乏表达方式上的灵活性和变化性,因此,其容易使用户感到乏味和突兀,难以为用户带来自然流畅的语音交互体验。
发明内容
有鉴于此,本申请提供了一种语音合成方法和装置、计算设备、存储介质及程序产品,可以缓解、减轻或甚至消除上述问题。
根据本申请的一方面,提供了一种语音合成方法,包括:获取待合成对话文本以及与待合成对话文本相关联的至少一条参考对话的对话文本和对话语音;从待合成对话文本中提取待合成文本特征;针对至少一条参考对话中的每一条参考对话,从该参考对话的对话文本中提取参考文本特征,并从该参考对话的对话语音中提取参考语音特征;基于待合成文本特征、所提取的至少一个参考文本特征和所提取的至少一个参考语音特征,确定与待合成对话文本对应的预测语音特征;至少基于待合成对话文本和预测语音特征,生成与待合成对话文本对应的合成对话语音。
在一些实施例中,基于所述待合成文本特征、所提取的至少一个参考文本特征和所提取的至少一个参考语音特征,确定与待合成对话文本对应的预测语音特征包括:基于所提取的至少一个参考文本特征和所提取的至少一个参考语音特征,确定与至少一条参考对话分别对应的至少一个混合参考特征,其中每个混合参考特征包括与相应的参考对话对应的参考文本特征和参考语音特征;基于至少一个混合参考特征,确定与至少一个混合参考特征分别对应的至少一个对话交互参考特征,其中每个对话交互参考特征包含与相应混合参考特征之外的至少一个其他混合参考特征相关联的信息;基于待合成文本特征、至少一个混合参考特征和至少一个对话交互参考特征,确定预测语音特征。
在一些实施例中,基于待合成文本特征、至少一个混合参考特征和至少一个对话交互参考特征,确定预测语音特征包括:根据至少一个混合参考特征和至少一个对话交互参考特征的对应关系,构建至少一个候选参考特征,其中,每个候选参考特征包括一个混合参考特征和对应的对话交互参考特征;基于待合成文本特征和至少一个候选参考特征,确定预测语音特征。
在一些实施例中,基于待合成文本特征和至少一个候选参考特征,确定预测语音特征包括:基于待合成文本特征,确定查询特征;基于查询特征和至少一个候选参考特征中的每一个候选参考特征的相似度,确定每一个候选参考特征所对应的权重;基于所确定的权重,确定至少一个候选参考特征的加权和;基于查询特征和加权和,确定预测语音特征。
在一些实施例中,基于查询特征和加权和,确定预测语音特征包括:基于查询特征和加权和,确定合成向量;对合成向量进行线性变换和归一化,以得到预测语音特征。
在一些实施例中,基于至少一个混合参考特征,确定与至少一个混合参考特征分别对应的至少一个对话交互参考特征包括:以至少一个混合参考特征中的各个混合参考特征为节点,构建对话交互图,其中,针对每个节点,存在一个或多个相邻节点,并存在从该一个或多个相邻节点指向该节点的边;针对每个节点,对与该节点对应的混合参考特征和与该节点的一个或多个相邻节点对应的混合参考特征进行聚合,以得到与该节点对应的聚合参考特征;基于与各节点对应的聚合参考特征,确定与各节点对应的对话交互参考特征。
在一些实施例中,每个参考对话还包括对话者标签,并且,以至少一个混合参考特征中的各个混合参考特征为节点,构建对话交互图包括针对每条边执行以下操作中的至少一个:基于与该边相关联的两个节点的混合参考特征的相似度,确定该边的权重;基于与该边相关联的两个节点的属性,确定该边的关系类型,其中,属性包括以下中的至少一个:与节点对应的参考对话的发生时间和与节点对应的参考对话的对话者标签。
在一些实施例中,从该参考对话的对话语音中提取参考语音特征包括:确定表征该参考对话的对话语音的编码向量;将所确定的编码向量转换成具有预设长度的定长向量;确定定长向量与一组预训练语音特征向量中的每一个预训练语音特征向量的相似度;基于所确定的一组相似度,确定与该参考对话的对话语音对应的参考语音特征。
在一些实施例中,一组预训练语音特征向量是通过以下过程训练得到的:获取多条样本对话的对话文本和对话语音;初始化一组待训练语音特征向量;依次基于多条样本对话中的每条样本对话,执行以下操作:-基于该样本对话的对话语音,确定表征该对话语音的编码向量,并提取与该对话语音对应的真值对话者特征;-将所确定的编码向量转化成具有预设长度的定长向量;-确定该定长向量与一组待训练语音特征向量中的每一个预训练语音特征向量的相似度;-基于所确定的一组相似度,确定与该对话语音对应的样本语音特征;-由样本语音特征,提取与该对话语音对应的预测对话者特征;-基于样本语音特征、一组待训练语音特征向量和该样本对话的对话文本,生成重构语音;-基于该样本对话的对话语音和重构语音之间的差异以及真值对话者特征和预测对话者特征之间的差异,更新一组待训练语音特征向量;将更新后的一组待训练语音特征向量作为一组预训练语音特征向量。
在一些实施例中,确定表征该参考对话的对话语音的编码向量包括:将该参考对话的对话语音划分成多个音频帧;对多个音频帧中的每个音频帧加窗,得到经加窗的多个音频帧;通过傅里叶变换将多个音频帧转换为音频能量分布;将音频能量分布通过滤波器组,并基于滤波器组的输出提取表征该参考对话的对话语音的编码向量。
在一些实施例中,至少基于待合成对话文本和预测语音特征,生成与待合成对话文本对应的合成对话语音包括:基于待合成对话文本,根据一般发音规则,生成待合成对话音素序列;对待合成对话音素序列进行编码,以得到与待合成对话文本对应的初始音素编码向量;基于所确定的初始音素编码向量和预测语音特征,生成合成对话语音。
在一些实施例中,基于所确定的初始音素编码向量和预测语音特征,生成合成对话语音包括:以预测语音特征为权重,确定一组预训练语音特征向量的加权和,作为预测的语音特征向量;基于初始音素编码向量和语音特征向量,确定合成音素编码向量;对合成音素编码向量进行解码,并基于解码输出生成合成对话语音。
在一些实施例中,基于初始音素编码向量和语音特征向量,确定合成音素编码向量包括:获取与待合成对话文本相关联的音色特征向量;基于初始音素编码向量、与待合成对话文本相关联的音色特征向量和语音特征向量,以得到混合音素编码向量;由混合音素编码向量,提取音素特征,音素特征包括音长特征、音调特征、音量特征中的至少一个;基于所提取的音素特征,确定合成音素编码向量。
在一些实施例中,从待合成对话文本中提取待合成文本特征包括:确定表征待合成对话文本的编码向量;基于所确定的编码向量,提取待合成文本特征。
在一些实施例中,确定表征待合成对话文本的编码向量包括:将待合成对话文本分割为一个或多个词语;将一个或多个词语中的每个词语转换为一个词向量;基于一个或多个词语对应的词向量,确定编码向量。
在一些实施例中,从该参考对话的对话文本中提取参考文本特征包括:确定表征该参考对话的对话文本的编码向量;基于所确定的编码向量,提取与该参考对话的对话文本对应的参考文本特征。
根据本申请的另一方面,提供了一种语音合成装置,包括:获取模块,被配置为获取待合成对话文本以及与待合成对话文本相关联的至少一条参考对话的对话文本和对话语音;第一特征提取模块,被配置为从待合成对话文本中提取待合成文本特征;第二特征提取模块,被配置为针对至少一条参考对话中的每一条参考对话,从该参考对话的对话文本中提取参考文本特征,并从该参考对话的对话语音中提取参考语音特征;语音特征预测模块,被配置为基于待合成文本特征、所提取的至少一个参考文本特征和所提取的至少一个参考语音特征,确定与待合成对话文本对应的预测语音特征;语音合成模块,被配置为至少基于待合成对话文本和预测语音特征,生成与待合成对话文本对应的合成对话语音。
根据本申请的又一方面,提供了一种计算设备,包括:存储器,其被配置成存储计算机可执行指令;处理器,其被配置成当计算机可执行指令被处理器执行时执行根据前述方面的各种实施例描述的语音合成方法。
根据本申请的又一方面,提供了一种计算机可读存储介质,其存储有计算机可执行指令,当计算机可执行指令被执行时,执行根据前述方面的各种实施例描述的语音合成方法。
根据本申请的又一方面,提供了一种计算机程序产品,包括计算机指令,计算机指令在被处理器执行时实现根据前述方面的各种实施例描述的语音合成方法的步骤。
通过本申请提供的语音合成方法及装置,在基于待合成对话文本生成合成对话语音的过程中,可以获取与其相关的至少一条参考对话的对话文本和对话语音。随后,可以从待合成对话文本中提取待合成文本特征,并从每一条参考对话的对话文本和语音文本提取相应的参考文本特征和参考语音特征。然后,可以基于所提取的待合成文本特征、参考文本特征和参考语音特征,确定预测语音特征。最后,可以基于待合成对话文本和所确定的预测语音特征,生成合成对话语音。通过这种方式,在生成合成对话语音时,可以充分考虑与待合成文本相关的参考对话(例如用户的历史对话)的文本信息和音频信息对与待合成对话文本对应的合成对话语音的影响,尤其是考虑到了在自然口语对话中参考对话的音频信息对语音合成(例如表达方式的选取)的至关重要的作用,从而有助于根据参考对话(尤其是参考对话或历史对话中语音或音频信息中体现的相应用户的表达方式)来灵活调整最终的合成对话语音的表达方式,增强其表达方式的个性化和灵活多变性,并有助于使其表达方式更适合于当前对话场景。同时,这有助于提供更为自然流畅的人机语音交互体验,从而提升相关应用场景下的用户的个人体验。
根据在下文中所描述的实施例,本申请的这些和其它方面将是清楚明白的,并且将参考在下文中所描述的实施例而被阐明。
附图说明
在下面结合附图对于示例性实施例的描述中,本申请的更多细节、特征和优点被公开,在附图中:
图1示意性示出了可以应用根据本申请的一些实施例提供的语音合成方案的示例应用场景;
图2示意性示出了根据本申请的一些实施例的语音合成系统的示例架构;
图3示意性示出了根据本申请的一些实施例的语音合成方法的示例流程图;
图4示意性示出了根据本申请的一些实施例的可以应用图3所示的语音合成方法的示例应用架构;
图5示意性示出了根据本申请的一些实施例的待合成文本特征提取方法的示例流程图;
图6示意性示出了根据本申请的一些实施例的待合成文本特征提取架构的示例框图;
图7示意性示出了根据本申请的一些实施例的参考语音特征提取方法的示例流程图;
图8示意性示出了根据本申请的一些实施例的参考语音特征提取和对话语音合成的联合训练架构的示例框图;
图9示意性示出了根据本申请的一些实施例的预测语音特征确定方法的示例流程图;
图10A-10C示意性示出了根据本申请的一些实施例的预测语音特征确定架构的示例框图;
图11示意性示出了根据本申请的一些实施例的合成对话语音生成方法的示例流程图;
图12示意性示出了根据本申请的一些实施例的合成对话语音生成架构的示例框图;
图13示意性示出了根据本申请的一些实施例的语音合成架构的示例框图;
图14示意性示出了根据本申请的一些实施例的语音合成装置的示例框图;
图15示意性示出了根据本申请的一些实施例的计算设备的示例框图。
具体实施方式
人工智能(Artificial Intelligence, AI)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。换句话说,人工智能是计算机科学的一个综合技术,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器。人工智能也就是研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。
人工智能技术是一门综合学科,涉及领域广泛,既有硬件层面的技术也有软件层面的技术。人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、操作/交互系统、机电一体化等技术。人工智能软件技术主要包括计算机视觉技术、语音处理技术、自然语言处理技术以及机器学习/深度学习等几大方向。
语音技术(Speech Technology)的关键技术有自动语音识别技术(ASR)和语音合成技术(TTS)以及声纹识别技术。让计算机能听、能看、能说、能感觉,是未来人机交互的发展方向,其中语音成为未来最被看好的人机交互方式之一。
自然语言处理(Nature Language processing, NLP)是计算机科学领域与人工智能领域中的一个重要方向。它研究能实现人与计算机之间用自然语言进行有效通信的各种理论和方法。自然语言处理是一门融语言学、计算机科学、数学于一体的科学。因此,这一领域的研究将涉及自然语言,即人们日常使用的语言,所以它与语言学的研究有着密切的联系。自然语言处理技术通常包括文本处理、语义理解、机器翻译、机器人问答、知识图谱等技术。
机器学习(Machine Learning, ML)是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。机器学习是人工智能的核心,是使计算机具有智能的根本途径,其应用遍及人工智能的各个领域。机器学习和深度学习通常包括人工神经网络、置信网络、强化学习、迁移学习、归纳学习、示教学习等技术。
特征一般可以指某一事物异于其他事物的特点。在本申请中,特征可以指从原始数据中提取的可以表征相应原始数据的特点的、可供模型或算法使用的数据信息,其通常可以以向量形式来表达。由此,在本申请中,文本特征可以指从文本中提取的可以表征文本的特点的、可供模型或算法使用的信息,例如文本特征向量,并且,语音特征可以指从语音中提取的可以表征语音的特点的、可供模型或算法使用的信息,例如语音特征向量。
本申请实施例提供的方案涉及人工智能的语音合成处理、自然语言处理、机器学习等技术,具体通过如下实施例进行说明。
图1示意性示出了可以应用根据本申请的一些实施例提供的语音合成方案的示例应用场景100。
如图1所示,场景100包括服务器110。本申请所提供的语音合成方案可以部署于服务器110,并用于基于待合成对话文本和与待合成对话文本相关联的至少一条参考对话的对话文本和对话语音,生成与待合成对话文本对应的合成对话语音。服务器110可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、CDN、以及大数据和人工智能平台等基础云计算服务的云服务器。此外,应理解,服务器110仅作为示例被示出,实际上,也可以替代地或附加地使用其他具有计算能力及存储能力的设备或设备的组合来提供相应的服务。在服务器110上生成的合成对话语音可以被发送至其他设备,也可以被本地存储或者被存储在外部存储设备上。并且,在服务器110处使用的待合成对话文本和与待合成对话文本相关联的至少一条参考对话的对话文本和对话语音可以是本地存储的,也可以是存储在外部存储设备上的,或者也可以是从其他设备接收的。
可选地,服务器110可以与外部数据库120相链接,以便例如从数据库120获取待合成对话文本和/或与待合成对话文本相关联的至少一条参考对话的对话文本和对话语音,以及例如将所生成的合成对话语音存放至数据库120等。示例性地,数据库120可以是独立的数据存储设备或设备群,或者也可以是与其他在线服务(诸如提供智能客服、语音助手等功能的在线服务)相关的后端数据存储设备或设备群。
可选地,用户140可以通过终端设备130经由网络150访问服务器110,以便获取服务器110所提供的服务。例如,用户140可以通过终端设备130提供的用户接口来输入指令,例如通过相关实体或虚拟按键、通过文本、语音或手势指令等,以便启动部署于服务器110上的语音合成方案、接收所生成的合成对话语音等。示例性地,终端设备130包括但不限于手机、电脑、智能语音交互设备、智能家电、车载终端等。应理解,虽然在图1所示的场景100中,终端设备130和服务器110被分别呈现,但是,实际上,终端设备130和服务器110可以集成在同一设备中。即,本申请所提供的语音合成方案可以直接部署在一个计算设备上,并且用户可以使用该计算设备来执行诸如人机语音交互的动作。
此外,在本申请中,网络150可以是经由诸如电缆、光纤等连接的有线网络,也可以是诸如2G、3G、4G、5G、Wi-Fi、蓝牙、ZigBee、Li-Fi等的无线网络,还可以是一个或几个设备的内部连接线路等。
随着计算机技术的发展,关于语音合成技术的研究也被广泛开展。通过研究,申请人发现,相较于传统的语音合成技术,基于神经网络构建的语音合成系统在合成语音的自然度上具有显著优势。然而,在相关技术的基于神经网络构建的语音合成系统中,虽然利用了相关联的历史对话信息,但这种利用往往是不充分的。这使得所合成的语音虽然适当考虑了具体对话场景的影响,但其表达方式依然很可能不符合该具体对话场景的需求,从而可能使用户感到突兀和不自然,进而影响整体的人机交互体验。
进一步地,申请人发现,相关技术中的基于神经网络构建的语音合成系统的不足主要由以下两个原因导致。第一,这些语音合成系统通常仅考虑相关联的历史对话中的文本信息,而没有考虑音频信息等其他信息,这导致这些系统对相关联的历史对话信息利用不足。第二,这些语音合成系统通常仅使用简单的单层循环神经网络来对相关联的历史对话的文本信息进行建模,这种方式过于简单,而难以在相关联的历史对话信息中提取更丰富的特征,这同样导致这些系统对相关联的历史对话信息的利用不够充分。由此,尽管这些语音合成系统可能考虑到了相关联的历史对话信息,但其仍然难以生成令人满意的合成对话语音。
基于上述考虑,申请人提出了一种新的语音合成方案,该方案有助于更充分地利用相关联的对话信息,来对基于待合成对话文本生成的合成语音的表达方式进行调整。具体地,图2示意性示出了根据本申请的一些实施例的语音合成系统的示例性总体架构200。
如图2所示,语音合成系统230可以通过输入接口从其他系统、装置或模块获取一条或多条参考对话210以及待合成对话文本220,其中一条或多条参考对话210可以包括参考对话的文本、语音以及可选的其他信息。然后,语音合成系统230可以通过对话分析模块231对参考对话210以及待合成对话文本220进行分析,例如提取其中的文本特征、语音特征等,通过语音特征预测模块232来基于对话分析结果预测语音特征,并通过语音合成模块233来基于待合成对话文本220和所预测的语音特征来生成合成对话语音240。该合成对话语音240可以通过输出接口输出至其他系统、装置或模块。可选地,根据具体应用需求,语音合成系统230可以部署于服务器或终端设备上,或者也可以部署于一体式设备上。可选地,根据具体应用需求,语音合成系统230可以被单独部署,可以与其他系统、装置或模块一同部署,或者可以作为其他系统、装置或模块的一部分来部署。
进一步地,图3示意性示出了根据本申请的一些实施例的语音合成方法300的示例流程图。示例性地,语音合成方法300可以应用于图2所示的语音合成系统230,并可以通过诸如应用程序等形式部署于图1的应用场景100中的服务器110、终端设备130或两者的组合上。
在步骤310,可以获取待合成对话文本以及与待合成对话文本相关联的至少一条参考对话的对话文本和对话语音。示例性地,与待合成对话文本相关联的至少一条参考对话的对话文本和对话语音可以指,在当前对话场景中,在基于待合成对话文本生成合成对话语音之前发生的全部或部分对话,该全部或部分对话可以是连续发生的对话,或者也可以是时间间隔低于预设阈值的两段或更多段连续对话。例如,假设某用户从A时刻开始与其终端设备(例如,与部署于其终端设备上的语音助手等)进行连续的语音对话交互,则当其终端设备在B时刻基于一条待合成对话文本生成合成对话语音时,与该待合成对话文本相关联的至少一条参考对话可以包括从A时刻至B时刻期间该用户与其终端设备所发生的全部对话或其中的一部分,例如发生在B时刻之前的预设时间段内的对话。因此,相对于基于待合成对话文本生成合成对话语音的时刻而言,上述与待合成对话文本相关联的参考对话可以被认为发生于历史时刻,从而也可以被称为历史对话。此外,根据实际需求,可选地,根据实际需求,与待合成对话文本相关联的参考对话也可以包括与当前对话场景类似的其他对话场景下的对话,等等。
可选地,待合成对话文本可以是由执行语音合成方法300的系统、装置或模块自动生成的文本,例如基于已发生对话自动生成的对话文本;可以是由其他系统、装置或模块生成并提供至该系统、装置或模块的对话文本;可以是人工输入的文本,例如由当前用户或与当前用户进行对话的其他用户输入;或者,也可以是预先存储的文本,例如基于关键字而被触发的预设对话文本,等等。此外,可选地,与待合成对话文本相关联的至少一条参考对话的对话文本和对话语音可以是从本地存储读取的,也可以是从其他设备接收的。本申请对待合成对话文本及相关联的参考对话的获取方式不做具体限定。
在步骤320,可以从待合成对话文本中提取待合成文本特征。可选地,可以使用各种类型的神经网络来从待合成对话文本中提取待合成文本特征。例如,可以使用单层或多层的卷积神经网络(Convolutional Neural Networks,CNN)、循环神经网络(RecurrentNeural Network,RNN)或者两者的组合来实现上述过程。或者,可选地,也可以通过非机器学习方式来得到待合成文本特征。
在步骤330,可以针对至少一条参考对话中的每一条参考对话,从该参考对话的对话文本中提取参考文本特征,并从该参考对话的对话语音中提取参考语音特征。类似地,可选地,可以使用各种类型的神经网络来从参考对话的对话文本中提取参考文本特征,以及可以使用各种类型的神经网络来从参考对话的对话语音中提取参考语音特征。例如,可以使用单层或多层的CNN、RNN或者两者的组合来实现上述过程。此外,可选地,从参考对话的对话文本中提取参考文本特征的方式可以与步骤320中的从待合成对话文本中提取待合成文本特征的方式可以是相同的,但是,根据实际需求,两者也可以是不同的。
在步骤330,可以基于待合成文本特征、所提取的至少一个参考文本特征和所提取的至少一个参考语音特征,确定与待合成对话文本对应的预测语音特征。可选地,可以根据待合成文本特征和所提取的至少一个参考文本特征的相似度,基于所提取的至少一个参考语音特征,得到与待合成对话文本对应的预测语音特征,例如从所提取的至少一个参考语音特征选择一个参考语音特征作为预测语音特征,或者基于其中两个或更多个参考语音特征确定预测语音特征,等等。或者,可以通过基于神经网络构建的机器学习模型来实现该步骤。机器学习模型可以基于CNN、RNN或其他类型的神经网络来实现,或者也可以基于多种神经网络的组合来实现。机器学习模型可以通过样本数据被预先训练为,可以基于待合成文本特征、所提取的至少一个参考文本特征和所提取的至少一个参考语音特征,确定与待合成对话文本对应的预测语音特征。
在步骤340,可以至少基于待合成对话文本和预测语音特征,生成与待合成对话文本对应的合成对话语音。可选地,可以通过预测语音特征来对根据相关技术中的语音合成方法生成的语音进行调整,以得到最终的合成对话语音。例如,可以根据一般发音规则将待合成对话文本转化成音素序列,进而通过预测语音特征调整该音素序列,例如基于预训练的神经网络模型等来执行该调整,然后基于调整后的因素序列生成合成对话语音;或者,可以直接将待合成对话文本和预测语音特征作为输入,通过预训练的神经网络模型来生成对应的合成对话语音;等等。可选地,除了待合成对话文本和预测语音特征之外,还可以基于附加信息来生成合成对话语音,附加信息可以包括例如预设音色特征、对话者标签信息、预设基准语速、预设基准音量等。
通过图3所示的语音合成方法300,可以更充分地利用与待合成文本相关联的参考对话。具体而言,其不但考虑了相关联的参考对话的对话文本,还考虑了相关联的参考对话的对话语音对最终的合成对话语音的影响,尤其是考虑到了在自然口语对话中参考对话的音频信息对语音合成(例如表达方式的选取)的至关重要的作用。这有助于根据参考对话(尤其是参考对话的语音信息中体现的相应用户的表达方式)来灵活调整最终的合成对话语音的表达方式(例如与表达语气、情感等相关的音调、音量、语速等的变化),增加表达方式的个性化和灵活多变性。并且,相较于相关技术中的方案而言,由于对参考对话的对话语音进行分析,并基于此对所合成的对话语音进行调整,语音合成方法300有助于使合成对话语音的表达方式更适合于对应的对话场景,从而有助于提供更为自然流畅的人机语音交互体验,进而有助于提升相关应用场景下的用户的个人体验。
图3所示的语音合成方法300可以应用于任何涉及人机语音交互的应用场景,例如语音助手、智能客服、聊天机器人等。示例性地,图4示意性示出了根据本申请的一些实施例的可以应用语音合成方法300的应用架构400。如图4所示,应用架构400包括人机对话语音合成系统430,其可以被部署在任何合适的平台或设备上,并且可以作为独立的功能或服务来提供,或者可以作为相关功能或服务的一部分来提供。如图4所示,人机对话语音系统430可以具有输入端口,以接收待合成对话文本410和一条或多条参考对话420,并且具有输出端口,以输出所生成的合成对话语音440。参考对话420可以包括对话文本421和对话语音422,以及可选地可以包括对话者标签423和/或其他信息。合成对话语音440可以根据上述语音合成方法300以及下文更详细描述的各种实施例来生成。
在一些实施例中,图3中的步骤320可以通过图5所示的示例流程图来实现。应理解,图5所示的流程图仅仅是示例性地,图3中的步骤320也可以以其他方式来实施。
具体地,在步骤321,可以确定表征待合成对话文本的编码向量。该过程可以通过各种适当的编码方式来实现。示例性地,可以基于待合成对话的文本字符序列,使用各种常见的字符编码方式来将其转换为一系列字符编码,字符编码方式例如包括ASCII(美国信息交换标准编码)、GB2312(信息交换用汉字编码字符集)、GBK(国标码)、Unicode(统一码)等。转换后的一系列字符编码可以被进一步处理,例如进行拼接、输入至预训练的机器学习模型等,以得到表征待合成对话文本的编码向量。示例性地,步骤321可以通过图5所示的步骤3211-3213来实现,其有助于更便捷地确定表征待合成对话文本的编码向量。
在步骤3211,可以将待合成对话文本分割为一个或多个词语。示例性地,可以通过使用分词工具来对待合成对话文本进行分词,以将其分割成一个或多个词语。分词工具可以是例如结巴(Jieba)分词、HanLP、LTP、THULAC、NLPIR等。或者,示例性地,该分割过程也可以通过人工手动标注、随机分割、完全分割为多个单字符等其他方式来实现。
在步骤3212,可以将一个或多个词语中的每个词语转换为一个词向量。该转换过程可以通过各种已有的或自定义的词向量工具来实现,例如基于one-hot(独热)编码、word2vec、Glove、Bert等来实现。
在步骤3213,可以基于一个或多个词语对应的词向量,确定编码向量。示例性地,可以对一个或多个词语对应的词向量进行线性或非线性变换,来确定一个或多个相应的编码向量;或者,可以通过将一个或多个词语对应的词向量进行分组拼接、求和、加权求和等,来确定一个或多个相应的编码向量;或者,也可以使用预训练的神经网络模型来实现该步骤,等等。
在步骤322,可以基于所确定的编码向量,提取待合成文本特征。示例性地,可以通过预训练的神经网络模型来提取待合成文本特征,或者,可以通过所确定的编码向量与一系列预设编码向量的相似度,来基于该一系列预设编码向量确定待合成文本特征,等等。
通过步骤321和步骤322,可以便捷地从待合成对话文本中提取待合成文本特征。示例性地,该过程可以通过图6所示的待合成文本特征提取架构500的示例框图来实现。
如图6所示,待合成文本特征提取架构500的输入可以是待合成对话文本所包括的文本字符序列510,并输出相对应的句级别的文本特征560,作为上述待合成文本特征。输入的文本字符序列510首先经过分词工具520来进行分词,从而将文本字符序列510分割成一个或多个词语。分词工具520可以是前文提到的结巴分词等。之后,分割得到的一个或多个词语可以被输入至词向量工具530,以得到包括一个或多个词向量的词向量序列。词向量工具530可以是例如支持TF-IDF(词频-逆文档频率)、LSA(Latent semantic analysis,潜在语义分析)、LDA(Latent Dirichlet Allocation,潜在狄利克雷分布)和word2vec等多种主题模型算法的gensim工具。然后,词向量序列可以被输入至Pre-net层,该层可以对输入的词向量进行线性或非线性变换,以得到对应的编码向量。可选地,Pre-net层可以由2层全连接层构成,或者也可以采取其他网络结构。最后,变换得到的编码向量可以被输入至CBHG网络,并且可以取CBHG网络的最后一步的输出作为输出的句级别文本特征560。CBHG网络可以由一系列一维卷积滤波器、高速公路网络(Highway Network)以及双向门控循环单位(GRU)RNN构成,其可以有效地从编码向量序列中提取特征。通过使用Pre-net层和CBHG网络,有助于提升架构500的泛化能力。
在一些实施例中,图3所示的步骤330中的关于从参考对话的对话文本中提取参考文本特征的操作,也可以通过类似于关于图5、图6描述的各种实施例来实现。示例性地,图3所示的步骤330可以包括:确定表征该参考对话的对话文本的编码向量;基于所确定的编码向量,提取与该参考对话的对话文本对应的参考文本特征。并且,确定表征该参考对话的对话文本的编码向量可以包括:将该参考对话的对话文本分割为一个或多个词语;将一个或多个词语中的每个词语转换为一个词向量;基于一个或多个词语对应的词向量,确定表征该参考对话的对话文本的编码向量。
在一些实施例中,图3所示的步骤330中的关于从参考对话的对话语音中提取参考语音特征的操作,可以通过图7所示的示例流程图来实现。通过图7所示的流程图,可以便捷地从参考对话的对话语音提取参考语音特征。应理解,图7所示的流程图仅仅是示例性地,图3中的步骤330也可以以其他方式来实施。
具体而言,在步骤331,可以确定表征该参考对话的对话语音的编码向量。示例性地,可以基于各种编码方式来确定表征该参考对话的对话语音的编码向量。例如,可以使用诸如脉冲编码调制(PCM)、自适应增量调制(ADM)等编码方式将对话语音所包含的模拟信号转换成数字编码,并进而得到对应的编码向量。或者,可以基于对话语音,通过诸如LPC(Linear Prediction Coefficients,线性预测分析)、PLP(Perceptual LinearPredictive,感知线性预测系数)、基于滤波器组的Fbank特征(Filter bank)、LPCC(LinearPredictive Cepstral Coefficient,线性预测倒谱系数)、MFCC(Mel Frequency CepstrumCoefficient,梅尔频率倒谱系数)等,来确定相应的编码向量。
示例性地,步骤331可以通过以下过程来实现。首先,可以将该参考对话的对话语音划分成多个音频帧。可选地,在划分前可以对对话语音进行滤波,以滤除人声之外的其他音频信息。以及可选地,所划分的音频帧的尺寸可以根据实际需求来设定,例如可以设定为50 ms或其他值。接着,可以对多个音频帧中的每个音频帧加窗,得到经加窗的多个音频帧。可选地,可以使用诸如汉宁窗(Hann window)、汉明窗(Hamming Window)、矩形窗等窗函数来对音频帧进行加窗,以便于后续进行傅里叶变换。然后,可以通过傅里叶变换将多个音频帧转换为音频能量分布。例如,可以通过短时傅里叶变换等来将多个音频帧转换为音频能量分布。最后,可以令音频能量分布通过滤波器组,并基于滤波器组的输出提取表征该参考对话的对话语音的编码向量。例如,滤波器组可以是梅尔滤波器组,以便将音频能量分布转换为梅尔谱。进一步地,可以对梅尔谱取对数,以得到对数梅尔谱(log-Mel)。通过上述过程,可以将对话语音转换成便于语音特征提取的编码向量,其中采用梅尔谱或倒数梅尔谱,可以使所得到的编码向量与人耳的听觉特性更为相符,从而有助于更准确地从所得到的编码向量中提取合适的参考语音特征。
在步骤332,可以将所确定的编码向量转换成具有预设长度的定长向量。示例性地,该步骤可以通过直接对所确定的编码向量进行长度整形来实现;或者,可以先对所确定的编码向量进行一系列线性或非线性变换,然后进行长度整形;或者,在进行长度整形的同时进一步执行特征提取;等等。
在步骤333,可以确定定长向量与一组预训练语音特征向量中的每一个预训练语音特征向量的相似度。可选地,相似度可以基于余弦相似度、欧氏距离、曼哈顿距离等来衡量。
在步骤334,可以基于所确定的一组相似度,确定与该参考对话的对话语音对应的参考语音特征。示例性地,可以将所确定的一组相似度作为与该参考对话的对话语音对应的参考语音特征,或者,可以对所确定的一组相似度进行进一步的线性或非线性变换,来得到与该参考对话的对话语音对应的参考语音特征,等等。
示例性地,步骤332-334可以通过图8所示出的架构600中的语音特征提取分支610来实现。如图6所示,语音特征提取分支610包括参考编码器611和GST(全局风格标签,Global Style Token)注意力网络612。示例性地,参考编码器611可以包括多个卷积层(例如6个卷积层)和一个GRU层,并可以用于执行步骤332。GRU层的输出可以被输入至GST注意力网络612,其可以用于执行步骤333和334。
在一些实施例中,步骤333中使用的一组预训练语音特征向量可以通过以下过程训练得来到。示例性地,图8示意性示出了根据本申请的一些实施例的可以用于得到预训练语音特征向量的训练架构600的示例框图。
首先,可以获取多条样本对话的对话文本620和对话语音630,并初始化一组待训练语音特征向量,例如图8所示的待训练GST特征640,该初始化过程可以基于预设参数来进行,或者可以随机地进行。然后,可以依次基于多条样本对话中的每条样本对话,执行以下操作:基于该样本对话的对话语音620,确定表征该对话语音的编码向量,这可以基于前文描述的步骤331来实现,并且,提取与该对话语音对应的真值对话者特征650,这可以使用预先训练的已知真值对话者特征提取器660来得到;将所确定的编码向量转化成具有预设长度的定长向量,这可以基于前文描述的步骤332来实现(例如,通过参考编码器611);确定该定长向量与该组待训练语音特征向量中的每一个预训练语音特征向量的相似度,这可以基于前文描述的步骤333来实现;基于所确定的一组相似度,确定与该对话语音对应的样本语音特征(例如GST权重642),这可以基于前文描述的步骤334来实现;由样本语音特征,提取与该对话语音对应的预测对话者特征,这可以通过对话者特征预测分支670来实现;基于样本语音特征、待训练的语音特征向量和该样本对话的对话文本,生成重构语音680,这可以通过语音合成分支690来实现,语音合成分支可以包括FastSpeech 2编码器691、方差适配器692以及FastSpeech 2解码器,这将在下文中详细描述;基于该样本对话的对话语音620和重构语音680之间的差异以及真值对话者特征650和预测对话者特征673之间的差异,更新一组待训练语音特征向量,换言之,可以基于该样本对话的对话语音620和重构语音680之间的差异以及真值对话者特征650和预测对话者特征673之间的差异构建损失函数,在训练过程中,需调整各种网络参数(包括待训练语音特征向量),以便使损失函数最小化。最后,可以将更新后的一组待训练语音特征向量作为一组预训练语音特征向量。
通过上述训练过程,可以自动确定一组适于表征语音特征的预训练的语音特征向量。此外,对话者特征预测分支670可以被设置为对抗学习分支,其可以包括梯度翻转层671和对话者特征提取网络672,并用于基于诸如GST权重642的样本语音特征预测对话者特征。由此,在训练过程中,该分支670可以与语音特征提取分支610形成对抗,使得语音特征提取分支610可以尽可能与对话者信息无关,这使得所提取的语音特征可以不受样本集中的对话者的限制,从而可以应用于不同的对话者。
在一些实施例中,图3所示的步骤340可以通过图9所示的示例流程图来实现。通过图9所示的流程图,可以对参考对话中的对话者之间以及对话者内部的影响加以考虑,从而使得所确定的预测语音特征可以更适合于相关联的对话场景。应理解,图9所示的流程图仅仅是示例性地,图3中的步骤340也可以以其他方式来实施。
具体而言,在步骤341,可以基于所提取的至少一个参考文本特征和所提取的至少一个参考语音特征,确定与至少一条参考对话分别对应的至少一个混合参考特征。每个混合参考特征可以包括与相应的参考对话对应的参考文本特征和参考语音特征。在本申请中,“分别对应”可以理解为一一对应,例如“与至少一条参考对话分别对应的至少一个混合参考特征”可以理解为至少一条参考对话与至少一个混合参考特征是一一对应的。示例性地,针对与同一条参考对话对应的参考文本特征和参考语音特征,可以通过拼接、相加等操作来将其组合成一个混合参考特征。
示意性地,步骤341可以通过图10A所示的示例架构700A来实现。如图10A所示,可以预先获取至少一条参考对话,例如参考对话1至参考对话N,其中,每条参考对话可以包括对话文本和对话语音。各条参考对话的对话文本可以被输入至文本特征编码器,以得到对应的参考文本特征。文本特征编码器可以根据前文所描述的步骤330或320的各种实施例来类似地实现。各条参考对话的对话语音可以被输入至语音特征编码器,以得到对应的参考语音特征。语音特征编码器可以根据前文所描述的步骤330的各种实施例来实现。同一参考对话对应的参考文本特征和参考语音特征可以例如被拼接成一个混合参考特征。由此,可以得到分别与参考对话1至参考对话N对应的混合参考特征g_1至混合参考特征g_N。
在步骤342,可以基于至少一个混合参考特征,确定与至少一个混合参考特征分别对应的至少一个对话交互参考特征。每个对话交互参考特征包含与相应混合参考特征之外的至少一个其他混合参考特征相关联的信息。示例性地,针对每个混合参考特征,可以通过将其与邻近的几个混合参考特征进行聚合,以得到对应的对话交互参考特征,其中,两个邻近的混合参考特征可以指该两个混合参考特征对应的参考对话的发生时间差处于预设时间阈值内,或者该两个混合参考特征对应的参考对话之间仅存在阈值数量条其他参考对话等。
在一些实施例中,步骤342可以通过以下操作来实现。首先,可以以至少一个混合参考特征中的各个混合参考特征为节点,构建对话交互图,其中,针对每个节点存在一个或多个相邻节点,并存在从该一个或多个相邻节点指向该节点的边。然后,针对每个节点,可以对与该节点对应的混合参考特征和与该节点的一个或多个相邻节点对应的混合参考特征进行聚合,以得到与该节点对应的聚合参考特征。最后,可以基于与各节点对应的聚合参考特征,确定与各节点对应的对话交互参考特征。
在一些实施例中,每条参考对话还可以包括对话者标签。在这种实施例中,在构建对话交互图时,针对每条边,可以执行以下操作中的至少一个:基于与该边相关联的两个节点的混合参考特征的相似度,确定该边的权重;基于与该边相关联的两个节点的属性,确定该边的关系类型,其中,属性包括以下中的至少一个:与节点对应的参考对话的发生时间和与节点对应的参考对话的对话者标签。
示例性地,步骤342可以通过图10B所示的示例架构700B来实现。架构700B中的图模型区域710中左侧部分示出了基于混合参考特征构建的对话交互图,其中,可以用N个节点来表征N条参考对话,每个节点对应的向量被设置为相应的混合参考特征(g_1至g_N)。可以根据参考对话的发生时间的先后顺序排列对应的N个节点。针对每个节点,可以存在指向其自身的边,以及指向其他在前或在后节点的边。可选地,针对每个节点,可以存在从该节点指向对话交互图中的所有其他节点的边;或者,为了节省计算及存储资源,提高计算效率,可以设置一定长度的时间窗,时间窗长度例如可以被设置为m+n,使得针对每个节点,最多仅存在m条从该节点指向在前节点的边和n条从该节点指向在后节点的边。通过这种对话交互图,可以充分考虑相邻对话对当前对话的表达方式的影响,从而有助于提高最终合成语音的自然度。
可选地,各条边的权重可以根据相关联的两个节点对应的向量的相似度来确定,即根据相关联的两个节点对应的混合参考特征的相似度来确定。示例性地,针对每个节点,可以确定其与所有入边相关联的节点的相似度,并对这些相似度进行归一化处理,例如通过softmax等来进行归一化处理,以得到各个入边对应的权重,即,可以保证每个节点的所有入边的权重和为1。在此,节点的入边是指从其他节点指向该节点的边。
在参考对话包括对话者标签的情况下,如图例区域720所呈现的,N个节点可以根据对话者标签的不同被划分为不同类型,例如图中所示的对话者1至对话者M。相应地,各条边也可以根据相关联的两个节点的对应的参考对话的对话者标签而被划分为不同类型,例如图中所示的从对话者1指向对话者1、从对话者2指向对话者2、从对话者1指向对话者2、从对话者2指向对话者1等。附加地或替换地,各条边也可以根据相关联的两个节点的对应的参考对话的发生时间顺序而被划分为不同类型,例如图中所示的从未来至过去以及从过去至未来。可选地,可以将从一个节点指向该节点本身的边视为从未来至过去,或者也可以将其视为从过去至未来。在同时根据节点对应的参考对话的对话者标签和发生时间两者确定各条边的关系类型时,边的关系类型可以包括从对话者1指向对话者1且从未来指向过去、从对话者1指向对话者2且从未来指向过去、从对话者1指向对话者2且从过去指向未来等。如此构建的对话交互图可以将人间依赖和人内依赖纳入考虑,其中,人间依赖可以理解为不同对话者彼此之间的影响,例如某一对话者的某条对话可能受到其他对话者的一条或多条对话的影响,并且可能影响其他对话者的一条或多条对话;人内依赖可以理解为同一对话者对自身的影响,例如某一对话者的某条对话可能受到其自身的其他一条或多条对话的影响,并且可能影响其自身的其他一条或多条对话。由此,在确定预测语音特征的过程中,可以充分考虑不同对话者及同一对话者的不同对话之间的关联性,从而使得所预测的语音特征更加适合于相关联的对话场景,并增强最终合成对话语音的自然度。
构建好的对话交互图可以经过迭代变换,以得到包含更丰富的信息的对话交互参考特征h_1至h_N。对话交互参考特征h_1至h_N可以包含与对话发生时间以及对话者的人间/人内依赖相关的信息。示例性地,该过程可以通过DialogueGCN处理来实现。例如,上述迭代变换可以分两步进行。第一步,可以对各节点的邻居节点的信息进行聚合,这例如可以通过以下公式来实现:
其中,为激活函数,例如ReLU(线性整流函数)等,i、j表示节点编号,、表示相应节点的混合参考特征,、表示边权重,为正则化常量,其可以预先设定或在训练过程中自动确定,表示处于边的关系类型下的节点i的邻居节点的集合,R为对话交互图中边的关系类型的集合,和为在训练过程中确定的学习参数。然后,第二步,可以基于第一步的输出,再次对各节点的邻居节点的信息进行聚合,这例如可以通过以下公式来实现:
其中,为激活函数,和为在训练过程中确定的学习参数。由此确定的可以作为上文提到的对话交互参考特征。该变换过程实现了邻居节点信息的有效聚合,并且确保了对话者间依赖和对话者自身依赖可以对对话交互参考特征产生影响。
在步骤343,可以基于待合成文本特征、至少一个混合参考特征和至少一个对话交互参考特征,确定预测语音特征。该过程可以基于各种类型的神经网络来实现,例如CNN、RNN等。
在一些实施例中,步骤343可以通过以下操作来实现。首先,可以根据至少一个混合参考特征和至少一个对话交互参考特征的对应关系,构建至少一个候选参考特征,其中,每个候选参考特征包括一个混合参考特征和对应的对话交互参考特征。示例性地,该构建过程可以通过对混合参考特征和对应的对话交互参考特征执行拼接、相加等操作来实现。然后,可以基于待合成文本特征和至少一个候选参考特征,确定预测语音特征。
示例性地,可以通过以下操作,来基于待合成文本特征和至少一个候选参考特征确定预测语音特征。首先,可以基于待合成文本特征,确定查询特征。示例性地,可以将待合成文本特征作为查询特征,可以对待合成文本特征进行线性或非线性变换等来得到查询特征,或者,可以基于待合成文本特征与其他特征得到查询特征,等等。上述其他特征例如可以包括与待合成对话文本对应的对话者标签,其通常默认为本机设备对应的标签。然后,可以基于查询特征和至少一个候选参考特征中的每一个候选参考特征的相似度,确定与每一个候选参考特征所对应的权重。例如,可以将相似度作为权重,或者可以对所确定的相似度进行归一化来确定权重。随后,可以基于所确定的权重,确定至少一个候选参考特征的加权和。最后,可以基于查询特征和加权和,确定预测语音特征。例如,可以将所确定的加权和作为预测语音特征,或者可以对该加权和进行进一步处理来得到预测语音特征,等等。示例性地,可以基于查询特征和上述加权和,确定合成向量,然后对合成向量进行线性变换和归一化,以得到预测语音特征。
示例性地,步骤343可以通过图10C所示的示例架构700C来实现。如图所示,混合参考特征g_1至g_N可以分别与对应的对话交互参考特征h_1至h_N进行拼接,以得到N个候选参考特征。N个候选参考特征可以被输入至注意力网络。待合成对话文本可以被输入至文本特征编码器,以得到对应的待合成文本特征。该文本特征编码器可以与图10A中的文本特征编码器相同。随后,待合成文本特征可以与对话者标签进行拼接,以得到查询向量。查询向量可以被输入至注意力网络。注意力网络可以执行上文所描述的权重确定过程。确定的权重可以与查询向量(即,待合成文本特征和对话者标签)进行拼接,并进行线性变换和归一化,以得到最终的预测语音特征。
可选地,图10A-10C所示的架构可以与图5所示的架构一起训练,从而保证通过图5所示的架构提取的文本特征与通过图10A-10C所示的架构确定的预测语音特征相关。示例性地,可以将多个样本对话划分为多轮次样本对话组,每轮次样本对话组可以包括k个样本对话,k例如为6、7、8等。在每轮次样本对话组中,前k-1个样本对话可以作为参考对话,最后一个样本对话的对话文本可以作为待合成对话文本,并且最后一个样本对话的对话语音可以作为基于待合成对话文本生成的合成对话语音的真值。在训练过程中,可以不断更新各种网络或模型的参数,以使得基于待合成对话文本生成的合成对话语音与对应真值之间的差异被尽可能最小化。
在一些实施例中,图3中的步骤350可以通过图11所示的示例流程图来实现。应理解,图11所示的流程图仅仅是示例性地,图3中的步骤350也可以以其他方式来实施。
具体而言,在步骤351,可以基于待合成对话文本,根据一般发音规则,生成待合成对话音素序列。示例性地,可以根据普通话发音规则等,将待合成对话文本转换成待合成对话音素序列,以供后续处理。
在步骤352,可以对待合成对话音素序列进行编码,以得到与待合成对话文本对应的初始音素编码向量。可选地,可以根据各种编码规则来将待合成对话因素序列编码为初始音素编码向量。
在步骤353,可以基于所确定的初始音素编码向量和预测语音特征,生成合成对话语音。示例性地,步骤353可以通过以下操作来实现。首先,可以以预测语音特征为权重,确定一组预训练语音特征向量的加权和,作为预测的语音特征向量。该组预训练语音特征向量可以是根据关于步骤333及图8描述的训练过程来得到。然后,可以基于初始音素编码向量和语音特征向量,确定合成音素编码向量。可选地,可以通过对初始音素编码向量和语音特征向量执行拼接、相加等操作,以及可选地进行一系列变换操作来确定合成音素编码向量。或者,可选地,可以基于初始音素编码向量和语音特征向量以及附加的其他特征来确定合成音素编码向量。最后,可以对合成音素编码向量进行解码,并基于解码输出生成合成对话语音。该解码过程可以与前述编码过程相对应,即可以使用遵循相同规则的编码器和解码器来实现。
示例性地,在基于初始音素编码向量和语音特征向量确定合成音素编码向量的过程中,可以获取与待合成对话文本相关联的音色特征向量,并基于初始音素编码向量、与待合成对话文本相关联的音色特征向量和语音特征向量得到混合音素编码向量(例如通过对三者进行拼接或相加等)。然后,可以由混合音素编码向量,提取音素特征,音素特征可以包括音长特征、音调特征、音量特征中的一个或多个。最后,可以基于所提取的音素特征,确定合成音素编码向量。由此,基于初始音素编码向量、与待合成对话文本相关联的音色特征向量和语音特征向量准确地控制合成对话语音的音长特征、音调特征、音量特征等,从而有效控制合成对话语音的表达方式。
示例性地,步骤350可以通过图12所示的示例架构800来实现。该架构与图8所示的语音合成分支690相类似。如图所示,架构800下侧包括三个分支。左侧分支对应于所获取的与待合成对话文本相关联的音色特征向量,其可以是由用户预先设置的,或者可以是默认值。中间分支对应于基于待合成文本得到初始音素编码向量的过程,其中,待合成对话文本可以先根据一般发音规则被转换成待合成对话音素序列,然后经FastSpeech 2编码,得到初始音素编码向量。可选地,FastSpeech 2编码器也可以替换为其他类型的编码器。右侧分支对应于基于参考对话确定预测语音特征的过程,参考对话可以被输入至多模态对话交互图模块,该模块可以根据关于图3至图10C描述的步骤310-步骤340来实现。预测语音特征可以与一组预训练语音特征相乘,以得到对应的语音特征向量。与待合成对话文本相关联的音色特征向量、初始音素编码向量和语音特征向量可以被拼接,并输入至方差适配器,以得到合成音素编码向量。示例性地,方差适配器可以包括多个预测器,例如音长预测器、音调预测器、音量预测器等,这些预测器可以由神经网络构成并在图8所示的结构中被预训练。最终,合成音素编码向量可以被解码(例如通过FastSpeech 2解码器)为对应的音素序列,并可以基于解码后的音素序列生成合成对话语音。通过这一架构,可以迅速、准确地生成合成对话语音。
为便于理解,图13示意性示出了一种语音合成架构900,其可以用于实现根据前文描述的语音合成方法300的实施例中的全部或部分。架构900中的各个模块及相关步骤已经在前文中详细描述,在此不再赘述。
图14示意性示出了根据本申请的一些实施例的语音合成装置1000的示例框图。如图14所示,语音合成装置1000包括获取模块1010、第一特征提取模块1020、第二特征提取模块1030、语音特征预测模块1040和语音合成模块1050。示例性地,该语音合成装置1000可以部署于图1所示的服务器110、终端设备130或两者的组合上。
具体而言,获取模块1010可以被配置为获取待合成对话文本以及与待合成对话文本相关联的至少一条参考对话的对话文本和对话语音;第一特征提取模块1020可以被配置为从待合成对话文本中提取待合成文本特征;第二特征提取模块1030可以被配置为针对至少一条参考对话中的每一条参考对话,从该参考对话的对话文本中提取参考文本特征,并从该参考对话的对话语音中提取参考语音特征;语音特征预测模块1040可以被配置为基于待合成文本特征、所提取的至少一个参考文本特征和所提取的至少一个参考语音特征,确定与待合成对话文本对应的预测语音特征;语音合成模块1050可以被配置为至少基于待合成对话文本和预测语音特征,生成与待合成对话文本对应的合成对话语音。
应理解,装置1000可以以软件、硬件或软硬件相结合的方式实现。多个不同模块可以在同一软件或硬件结构中实现,或者一个模块可以由多个不同的软件或硬件结构实现。
此外,装置1000可以用于实施前文所描述的方法300,其相关细节已经在前文中详细描述,为简洁起见,在此不再重复。装置1000可以具有与关于前述方法描述的相同的特征和优势。
图11示意性示出了根据本申请的一些实施例的计算设备1010的示例框图。例如其可以代表图1中的服务器110或可以用于部署本申请提供的装置1000的其他类型的计算设备。
如图所示,示例计算设备1100包括彼此通信耦合的处理系统1101、一个或多个计算机可读介质1102以及一个或多个I/O接口1103。尽管未示出,但是计算设备1100还可以包括将各种组件彼此耦合的系统总线或其他数据和命令传送系统。系统总线可以包括不同总线结构的任何一个或组合,上述总线结构可以是诸如存储器总线或存储器控制器、外围总线、通用串行总线和/或利用各种总线架构中的任何一种的处理器或局部总线,或者还可以包括诸如控制和数据线。
处理系统1101代表使用硬件执行一个或多个操作的功能。因此,处理系统1101被图示为包括可被配置为处理器、功能块等的硬件元件1104。这可以包括在硬件中实现专用集成电路或使用一个或多个半导体形成的其它逻辑器件。硬件元件1104不受其形成材料或其中采用的处理机构的限制。例如,处理器可以由(多个)半导体和/或晶体管(例如,电子集成电路(IC))组成。在这样的上下文中,处理器可执行指令可以是电子可执行指令。
计算机可读介质1102被图示为包括存储器/存储装置1105。存储器/存储装置1105表示与一个或多个计算机可读介质相关联的存储器/存储装置。存储器/存储装置1105可以包括易失性存储介质(诸如随机存取存储器(RAM))和/或非易失性存储介质(诸如只读存储器(ROM)、闪存、光盘、磁盘等)。存储器/存储装置1105可以包括固定介质(例如,RAM、ROM、固定硬盘驱动器等)以及可移动介质(例如,闪存、可移动硬盘驱动器、光盘等)。示例性地,存储器/存储装置1105可以用于存储上文实施例中提及的参考对话的对话文本、对话语音等。计算机可读介质1102可以以下面进一步描述的各种其他方式进行配置。
一个或多个输入/输出接口1103代表允许用户向计算设备1100键入命令和信息并且还允许使用各种输入/输出设备将信息呈现给用户和/或发送给其他组件或设备的功能。输入设备的示例包括键盘、光标控制设备(例如,鼠标)、麦克风(例如,用于语音输入)、扫描仪、触摸功能(例如,被配置为检测物理触摸的容性或其他传感器)、相机(例如,可以采用可见或不可见的波长(诸如红外频率)将不涉及触摸的运动检测为手势)、网卡、接收机等等。输出设备的示例包括显示设备、扬声器、打印机、触觉响应设备、网卡、发射机等。示例性地,在上文描述的实施例中,可以通过输入设备、输出设备允许用户输入各种指令、进行语音交互等。
计算设备1100还包括语音合成应用1106。语音合成应用1106可以作为计算程序指令存储在存储器/存储装置1105中。路网数据生成应用1106可以连同处理系统1101等一起实现关于图10描述的装置1000的各个模块的全部功能。
本文可以在软件、硬件、元件或程序模块的一般上下文中描述各种技术。一般地,这些模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、元素、组件、数据结构等。本文所使用的术语“模块”、“功能”等一般表示软件、固件、硬件或其组合。本文描述的技术的特征是与平台无关的,意味着这些技术可以在具有各种处理器的各种计算平台上实现。
所描述的模块和技术的实现可以存储在某种形式的计算机可读介质上或者跨某种形式的计算机可读介质传输。计算机可读介质可以包括可由计算设备1100访问的各种介质。作为示例而非限制,计算机可读介质可以包括“计算机可读存储介质”和“计算机可读信号介质”。
与单纯的信号传输、载波或信号本身相反,“计算机可读存储介质”是指能够持久存储信息的介质和/或设备,和/或有形的存储装置。因此,计算机可读存储介质是指非信号承载介质。计算机可读存储介质包括诸如易失性和非易失性、可移动和不可移动介质和/或以适用于存储信息(诸如计算机可读指令、数据结构、程序模块、逻辑元件/电路或其他数据)的方法或技术实现的存储设备之类的硬件。计算机可读存储介质的示例可以包括但不限于RAM、ROM、EEPROM、闪存或其它存储器技术、CD-ROM、数字通用盘(DVD)或其他光学存储装置、硬盘、盒式磁带、磁带,磁盘存储装置或其他磁存储设备,或其他存储设备、有形介质或适于存储期望信息并可以由计算机访问的制品。
“计算机可读信号介质”是指被配置为诸如经由网络将指令发送到计算设备1100的硬件的信号承载介质。信号介质典型地可以将计算机可读指令、数据结构、程序模块或其他数据体现在诸如载波、数据信号或其它传输机制的调制数据信号中。信号介质还包括任何信息传递介质。作为示例而非限制,信号介质包括诸如有线网络或直接连线的有线介质以及诸如声、RF、红外和其它无线介质的无线介质。
如前所述,硬件元件1101和计算机可读介质1102代表以硬件形式实现的指令、模块、可编程器件逻辑和/或固定器件逻辑,其在一些实施例中可以用于实现本文描述的技术的至少一些方面。硬件元件可以包括集成电路或片上系统、专用集成电路(ASIC)、现场可编程门阵列(FPGA)、复杂可编程逻辑器件(CPLD)以及硅中的其它实现或其他硬件设备的组件。在这种上下文中,硬件元件可以作为执行由硬件元件所体现的指令、模块和/或逻辑所定义的程序任务的处理设备,以及用于存储用于执行的指令的硬件设备,例如,先前描述的计算机可读存储介质。
前述的组合也可以用于实现本文所述的各种技术和模块。因此,可以将软件、硬件或程序模块和其它程序模块实现为在某种形式的计算机可读存储介质上和/或由一个或多个硬件元件1101体现的一个或多个指令和/或逻辑。计算设备1100可以被配置为实现与软件和/或硬件模块相对应的特定指令和/或功能。因此,例如通过使用处理系统的计算机可读存储介质和/或硬件元件1101,可以至少部分地以硬件来实现将模块实现为可由计算设备1100作为软件执行的模块。指令和/或功能可以由例如一个或多个计算设备1100和/或处理系统1101执行/可操作以实现本文所述的技术、模块和示例。
本文描述的技术可以由计算设备1100的这些各种配置来支持,并且不限于本文所描述的技术的具体示例。
应当理解,为清楚起见,参考不同的功能单元对本申请的实施例进行了描述。然而,将明显的是,在不偏离本申请的情况下,每个功能单元的功能性可以被实施在单个单元中、实施在多个单元中或作为其它功能单元的一部分被实施。例如,被说明成由单个单元执行的功能性可以由多个不同的单元来执行。因此,对特定功能单元的参考仅被视为对用于提供所描述的功能性的适当单元的参考,而不是表明严格的逻辑或物理结构或组织。因此,本申请可以被实施在单个单元中,或者可以在物理上和功能上被分布在不同的单元和电路之间。
本申请提供了一种计算机可读存储介质,其上存储有计算机可读指令,计算机可读指令在被执行时实现上述语音合成方法。
本申请提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算设备执行上述各种实施例中提供的语音合成方法。
通过研究附图、公开内容和所附的权利要求书,本领域技术人员在实践所要求保护的主题时,能够理解和实现对于所公开的实施例的变型。在权利要求书中,词语“包括”不排除其他元件或步骤,并且“一”或“一个”不排除多个。在相互不同的从属权利要求中记载某些措施的纯粹事实并不表明这些措施的组合不能用来获利。
可以理解的是,在本申请的具体实施方式中,涉及到用户历史对话数据等。当本申请以上涉及这样的数据的实施例运用到具体产品或技术中时,需要获得用户许可或者同意,且相关数据的收集、使用和处理需要遵守相关国家和地区的相关法律法规和标准。
Claims (20)
1.一种语音合成方法,包括:
获取待合成对话文本以及与所述待合成对话文本相关联的至少一条参考对话的对话文本和对话语音;
从所述待合成对话文本中提取待合成文本特征;
针对所述至少一条参考对话中的每一条参考对话,从该参考对话的对话文本中提取参考文本特征,并从该参考对话的对话语音中提取参考语音特征;
基于所述待合成文本特征、所提取的至少一个参考文本特征和所提取的至少一个参考语音特征,确定与所述待合成对话文本对应的预测语音特征;
至少基于所述待合成对话文本和所述预测语音特征,生成与所述待合成对话文本对应的合成对话语音。
2.根据权利要求1所述的语音合成方法,其中,所述基于所述待合成文本特征、所提取的至少一个参考文本特征和所提取的至少一个参考语音特征,确定与所述待合成对话文本对应的预测语音特征包括:
基于所提取的至少一个参考文本特征和所提取的至少一个参考语音特征,确定与所述至少一条参考对话分别对应的至少一个混合参考特征,其中每个混合参考特征包括与相应的参考对话对应的参考文本特征和参考语音特征;
基于所述至少一个混合参考特征,确定与所述至少一个混合参考特征分别对应的至少一个对话交互参考特征,其中每个对话交互参考特征包含与相应混合参考特征之外的至少一个其他混合参考特征相关联的信息;
基于所述待合成文本特征、所述至少一个混合参考特征和所述至少一个对话交互参考特征,确定所述预测语音特征。
3.根据权利要求2所述的语音合成方法,其中,所述基于所述待合成文本特征、所述至少一个混合参考特征和所述至少一个对话交互参考特征,确定所述预测语音特征包括:
根据所述至少一个混合参考特征和所述至少一个对话交互参考特征的对应关系,构建至少一个候选参考特征,其中,每个候选参考特征包括一个混合参考特征和对应的对话交互参考特征;
基于所述待合成文本特征和所述至少一个候选参考特征,确定所述预测语音特征。
4.根据权利要求3所述的语音合成方法,其中,所述基于所述待合成文本特征和所述至少一个候选参考特征,确定所述预测语音特征包括:
基于所述待合成文本特征,确定查询特征;
基于所述查询特征和所述至少一个候选参考特征中的每一个候选参考特征的相似度,确定每一个候选参考特征所对应的权重;
基于所确定的权重,确定所述至少一个候选参考特征的加权和;
基于所述查询特征和所述加权和,确定所述预测语音特征。
5.根据权利要求4所述的语音合成方法,其中,所述基于所述查询特征和所述加权和,确定所述预测语音特征包括:
基于所述查询特征和所述加权和,确定合成向量;
对所述合成向量进行线性变换和归一化,以得到所述预测语音特征。
6.根据权利要求2所述的语音合成方法,其中,所述基于所述至少一个混合参考特征,确定与所述至少一个混合参考特征分别对应的至少一个对话交互参考特征包括:
以所述至少一个混合参考特征中的各个混合参考特征为节点,构建对话交互图,其中,针对每个节点,存在一个或多个相邻节点,并存在从该一个或多个相邻节点指向该节点的边;
针对每个节点,对与该节点对应的混合参考特征和与该节点的一个或多个相邻节点对应的混合参考特征进行聚合,以得到与该节点对应的聚合参考特征;
基于与各节点对应的聚合参考特征,确定与各节点对应的对话交互参考特征。
7.根据权利要求6所述的语音合成方法,其中,每个参考对话还包括对话者标签,并且,所述以所述至少一个混合参考特征中的各个混合参考特征为节点,构建对话交互图包括针对每条边执行以下操作中的至少一个:
基于与该边相关联的两个节点的混合参考特征的相似度,确定该边的权重;
基于与该边相关联的两个节点的属性,确定该边的关系类型,其中,所述属性包括以下中的至少一个:与节点对应的参考对话的发生时间和与节点对应的参考对话的对话者标签。
8.根据权利要求1所述的语音合成方法,其中,所述从该参考对话的对话语音中提取参考语音特征包括:
确定表征该参考对话的对话语音的编码向量;
将所确定的编码向量转换成具有预设长度的定长向量;
确定所述定长向量与一组预训练语音特征向量中的每一个预训练语音特征向量的相似度;
基于所确定的一组相似度,确定与该参考对话的对话语音对应的参考语音特征。
9.根据权利要求8所述的语音合成方法,其中,所述一组预训练语音特征向量是通过以下过程训练得到的:
获取多条样本对话的对话文本和对话语音;
初始化一组待训练语音特征向量;
依次基于所述多条样本对话中的每条样本对话,执行以下操作:
-基于该样本对话的对话语音,确定表征该对话语音的编码向量,并提取与该对话语音对应的真值对话者特征;
-将所确定的编码向量转化成具有预设长度的定长向量;
-确定该定长向量与所述一组待训练语音特征向量中的每一个预训练语音特征向量的相似度;
-基于所确定的一组相似度,确定与该对话语音对应的样本语音特征;
-由所述样本语音特征,提取与该对话语音对应的预测对话者特征;
-基于所述样本语音特征、所述一组待训练语音特征向量和该样本对话的对话文本,生成重构语音;
-基于该样本对话的对话语音和所述重构语音之间的差异以及所述真值对话者特征和所述预测对话者特征之间的差异,更新所述一组待训练语音特征向量;
将更新后的一组待训练语音特征向量作为所述一组预训练语音特征向量。
10.根据权利要求8所述的语音合成方法,其中,所述确定表征该参考对话的对话语音的编码向量包括:
将该参考对话的对话语音划分成多个音频帧;
对所述多个音频帧中的每个音频帧加窗,得到经加窗的多个音频帧;
通过傅里叶变换将所述多个音频帧转换为音频能量分布;
将所述音频能量分布通过滤波器组,并基于所述滤波器组的输出提取表征该参考对话的对话语音的编码向量。
11.根据权利要求1所述的语音合成方法,其中,所述至少基于所述待合成对话文本和所述预测语音特征,生成与所述待合成对话文本对应的合成对话语音包括:
基于所述待合成对话文本,根据一般发音规则,生成待合成对话音素序列;
对所述待合成对话音素序列进行编码,以得到与所述待合成对话文本对应的初始音素编码向量;
基于所确定的初始音素编码向量和所述预测语音特征,生成所述合成对话语音。
12.根据权利要求11所述的语音合成方法,其中,所述基于所确定的初始音素编码向量和所述预测语音特征,生成所述合成对话语音包括:
以所述预测语音特征为权重,确定一组预训练语音特征向量的加权和,作为预测的语音特征向量;
基于所述初始音素编码向量和所述语音特征向量,确定合成音素编码向量;
对所述合成音素编码向量进行解码,并基于解码输出生成所述合成对话语音。
13.根据权利要求12所述的语音合成方法,其中,所述基于所述初始音素编码向量和所述语音特征向量,确定合成音素编码向量包括:
获取与待合成对话文本相关联的音色特征向量;
基于所述初始音素编码向量、与所述待合成对话文本相关联的音色特征向量和所述语音特征向量,以得到混合音素编码向量;
由所述混合音素编码向量,提取音素特征,所述音素特征包括音长特征、音调特征、音量特征中的至少一个;
基于所提取的音素特征,确定所述合成音素编码向量。
14.根据权利要求1所述的语音合成方法,其中,所述从所述待合成对话文本中提取待合成文本特征包括:
确定表征所述待合成对话文本的编码向量;
基于所确定的编码向量,提取所述待合成文本特征。
15.根据权利要求14所述的语音合成方法,其中,所述确定表征所述待合成对话文本的编码向量包括:
将所述待合成对话文本分割为一个或多个词语;
将所述一个或多个词语中的每个词语转换为一个词向量;
基于所述一个或多个词语对应的词向量,确定所述编码向量。
16.根据权利要求1所述的语音合成方法,其中,所述从该参考对话的对话文本中提取参考文本特征包括:
确定表征该参考对话的对话文本的编码向量;
基于所确定的编码向量,提取与该参考对话的对话文本对应的参考文本特征。
17.一种语音合成装置,包括:
获取模块,被配置为获取待合成对话文本以及与所述待合成对话文本相关联的至少一条参考对话的对话文本和对话语音;
第一特征提取模块,被配置为从所述待合成对话文本中提取待合成文本特征;
第二特征提取模块,被配置为针对所述至少一条参考对话中的每一条参考对话,从该参考对话的对话文本中提取参考文本特征,并从该参考对话的对话语音中提取参考语音特征;
语音特征预测模块,被配置为基于所述待合成文本特征、所提取的至少一个参考文本特征和所提取的至少一个参考语音特征,确定与所述待合成对话文本对应的预测语音特征;
语音合成模块,被配置为至少基于所述待合成对话文本和所述预测语音特征,生成与所述待合成对话文本对应的合成对话语音。
18.一种计算设备,包括:
存储器,其被配置成存储计算机可执行指令;
处理器,其被配置成当所述计算机可执行指令被处理器执行时执行根据权利要求1至16中的任一项所述的方法。
19.一种计算机可读存储介质,其存储有计算机可执行指令,当所述计算机可执行指令被执行时,执行根据权利要求1至16中的任一项所述的方法。
20.一种计算机程序产品,包括计算机指令,所述计算机指令在被处理器执行时实现权利要求1至16中任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210044895.3A CN114373443A (zh) | 2022-01-14 | 2022-01-14 | 语音合成方法和装置、计算设备、存储介质及程序产品 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210044895.3A CN114373443A (zh) | 2022-01-14 | 2022-01-14 | 语音合成方法和装置、计算设备、存储介质及程序产品 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114373443A true CN114373443A (zh) | 2022-04-19 |
Family
ID=81187787
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210044895.3A Pending CN114373443A (zh) | 2022-01-14 | 2022-01-14 | 语音合成方法和装置、计算设备、存储介质及程序产品 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114373443A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115392365A (zh) * | 2022-08-18 | 2022-11-25 | 腾讯科技(深圳)有限公司 | 多模态特征的获取方法、装置及电子设备 |
-
2022
- 2022-01-14 CN CN202210044895.3A patent/CN114373443A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115392365A (zh) * | 2022-08-18 | 2022-11-25 | 腾讯科技(深圳)有限公司 | 多模态特征的获取方法、装置及电子设备 |
CN115392365B (zh) * | 2022-08-18 | 2024-04-26 | 腾讯科技(深圳)有限公司 | 多模态特征的获取方法、装置及电子设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111933129B (zh) | 音频处理方法、语言模型的训练方法、装置及计算机设备 | |
CN109859736B (zh) | 语音合成方法及系统 | |
CN111312245B (zh) | 一种语音应答方法、装置和存储介质 | |
CN113205817B (zh) | 语音语义识别方法、系统、设备及介质 | |
WO2022178969A1 (zh) | 语音对话数据处理方法、装置、计算机设备及存储介质 | |
CN113837299B (zh) | 基于人工智能的网络训练方法及装置、电子设备 | |
US11961515B2 (en) | Contrastive Siamese network for semi-supervised speech recognition | |
CN112632244A (zh) | 一种人机通话的优化方法、装置、计算机设备及存储介质 | |
CN115803806A (zh) | 用于训练双模式机器学习言语识别模型的系统和方法 | |
CN115394321A (zh) | 音频情感识别方法、装置、设备、存储介质及产品 | |
CN113705315B (zh) | 视频处理方法、装置、设备及存储介质 | |
CN113178200A (zh) | 语音转换方法、装置、服务器及存储介质 | |
CN114373443A (zh) | 语音合成方法和装置、计算设备、存储介质及程序产品 | |
CN112257432A (zh) | 一种自适应意图识别方法、装置及电子设备 | |
WO2023226239A1 (zh) | 对象情绪的分析方法、装置和电子设备 | |
CN115132195B (zh) | 语音唤醒方法、装置、设备、存储介质及程序产品 | |
CN116312463A (zh) | 语音合成方法、语音合成装置、电子设备及存储介质 | |
CN112150103B (zh) | 一种日程设置方法、装置和存储介质 | |
CN112818688B (zh) | 文本处理方法、装置、设备及存储介质 | |
CN115376547A (zh) | 发音评测方法、装置、计算机设备和存储介质 | |
Wazir et al. | Deep learning-based detection of inappropriate speech content for film censorship | |
CN116959421B (zh) | 处理音频数据的方法及装置、音频数据处理设备和介质 | |
CN116913278B (zh) | 语音处理方法、装置、设备和存储介质 | |
CN115186083B (zh) | 一种数据处理方法、装置、服务器、存储介质及产品 | |
CN113555006B (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 |