CN117012182A - 语音数据处理方法、装置、电子设备及存储介质 - Google Patents
语音数据处理方法、装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN117012182A CN117012182A CN202211091837.2A CN202211091837A CN117012182A CN 117012182 A CN117012182 A CN 117012182A CN 202211091837 A CN202211091837 A CN 202211091837A CN 117012182 A CN117012182 A CN 117012182A
- Authority
- CN
- China
- Prior art keywords
- voice
- sample
- training
- speech
- target
- 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
- 238000003672 processing method Methods 0.000 title abstract description 25
- 238000012549 training Methods 0.000 claims abstract description 463
- 230000015572 biosynthetic process Effects 0.000 claims abstract description 243
- 238000003786 synthesis reaction Methods 0.000 claims abstract description 243
- 238000000034 method Methods 0.000 claims abstract description 88
- 238000012545 processing Methods 0.000 claims abstract description 27
- 238000003745 diagnosis Methods 0.000 claims description 22
- 238000004590 computer program Methods 0.000 claims description 21
- 238000007781 pre-processing Methods 0.000 claims description 9
- 238000013473 artificial intelligence Methods 0.000 abstract description 11
- 238000001228 spectrum Methods 0.000 description 63
- 238000005516 engineering process Methods 0.000 description 24
- 230000006870 function Effects 0.000 description 23
- 238000010606 normalization Methods 0.000 description 20
- 230000008569 process Effects 0.000 description 20
- 238000010586 diagram Methods 0.000 description 16
- 238000013528 artificial neural network Methods 0.000 description 13
- 230000000694 effects Effects 0.000 description 12
- 239000000463 material Substances 0.000 description 10
- 238000003062 neural network model Methods 0.000 description 10
- 230000001755 vocal effect Effects 0.000 description 10
- 238000004891 communication Methods 0.000 description 9
- 230000003044 adaptive effect Effects 0.000 description 8
- 238000000605 extraction Methods 0.000 description 8
- 238000006243 chemical reaction Methods 0.000 description 3
- 238000012790 confirmation Methods 0.000 description 3
- 238000013527 convolutional neural network Methods 0.000 description 3
- 125000004122 cyclic group Chemical group 0.000 description 3
- 239000000284 extract Substances 0.000 description 3
- 230000003993 interaction Effects 0.000 description 3
- 238000010801 machine learning Methods 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 239000004606 Fillers/Extenders Substances 0.000 description 2
- 230000004913 activation Effects 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 230000006835 compression Effects 0.000 description 2
- 238000007906 compression Methods 0.000 description 2
- 230000002452 interceptive effect Effects 0.000 description 2
- 238000002372 labelling Methods 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 238000011160 research Methods 0.000 description 2
- 230000033764 rhythmic process Effects 0.000 description 2
- 238000005070 sampling Methods 0.000 description 2
- 238000004904 shortening Methods 0.000 description 2
- 238000004088 simulation Methods 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 230000002194 synthesizing effect Effects 0.000 description 2
- ORILYTVJVMAKLC-UHFFFAOYSA-N Adamantane Natural products C1C(C2)CC3CC1CC2C3 ORILYTVJVMAKLC-UHFFFAOYSA-N 0.000 description 1
- 102000002508 Peptide Elongation Factors Human genes 0.000 description 1
- 108010068204 Peptide Elongation Factors Proteins 0.000 description 1
- 230000002776 aggregation Effects 0.000 description 1
- 238000004220 aggregation Methods 0.000 description 1
- 238000013475 authorization Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000002457 bidirectional effect Effects 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 238000009432 framing Methods 0.000 description 1
- 206010027175 memory impairment Diseases 0.000 description 1
- 230000000306 recurrent effect Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 230000002787 reinforcement Effects 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 238000012546 transfer Methods 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
- G10L15/00—Speech recognition
- G10L15/06—Creation of reference templates; Training of speech recognition systems, e.g. adaptation to the characteristics of the speaker's voice
- G10L15/063—Training
-
- 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/26—Speech to text systems
-
- 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/06—Creation of reference templates; Training of speech recognition systems, e.g. adaptation to the characteristics of the speaker's voice
- G10L15/063—Training
- G10L2015/0631—Creating reference templates; Clustering
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)
- Artificial Intelligence (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Electrically Operated Instructional Devices (AREA)
Abstract
本申请实施例提供了一种语音数据处理方法、装置、电子设备及存储介质,涉及人工智能、大数据、多媒体及云技术领域。该方法包括:获取包括样本文本和该文本对应的样本语音的多个训练样本;确定各样本语音的发音情况;基于多个训练样本和各样本中样本语音的发音情况,对初始语音合成模型重复执行训练操作,得到目标语音合成模型,其中,模型的训练总损失是基于各样本语音的声纹特征和通过模型合成的新语音的声纹特征、以及各样本语音中发音正确的各语音帧的语音特征和模型合成的各语音帧的语音特征确定的。基于本申请实施例提供的方法,可以通过目标语音合成模型符合说话人音色、且发音正确的新语音,能够更好的满足实际应用需求。
Description
技术领域
本申请涉及人工智能、文本和语音处理技术领域,具体而言,本申请涉及一种语音数据处理方法、装置、电子设备及存储介质。
背景技术
随着人工智能技术研究和进步,人工智能技术已经在多个领域展开研究和应用。语音技术(Speech Technology)是人工智能技术的重要分支之一,语音技术的关键技术有自动语音识别技术、语音合成技术以及声纹识别技术等,语音技术让计算机能听、能看、能说、能感觉,是未来被看好的人机交互方式之一。
目前,语音合成技术已经在很多应用场景中已经得到了广泛的应用,通过语音合成模型可以合成得到各种所需的语音数据,比如,在语音学习场景中,可以通过语音合成模型合成语音语料用于学习。虽然现有语音合成技术能够满足大多需求,但是在很多场景中,语音合成效果仍需提升,如何提升语音合成效果也是本领域技术人员一直在研究的重要问题之一。
发明内容
本申请实施例的目的旨在提供一种能够有效提升语音合成效果的语音数据处理方法、装置、电子设备及存储介质。为了实现该目的,本申请实施例提供的技术方案如下:
一方面,本申请实施例提供了一种语音数据处理方法,该方法包括:
获取多个训练样本,每个所述训练样本包括一个样本文本和该样本文本对应的样本语音;
确定各所述样本语音的发音情况,所述发音情况包括样本语音中各语音帧的发音状态是否正确;
通过对初始语音合成模型重复执行训练操作,得到满足预设条件的目标语音合成模型,其中,所述训练操作包括以下各个步骤:
获取各所述样本语音中各语音帧的第一语音特征;通过所述初始语音合成模型对各所述训练样本分别执行以下操作,得到各所述训练样本各自对应的第一声纹特征、第二声纹特征和新语音:
基于该样本对应的第一语音特征提取第一声纹特征,根据该样本对应的样本文本和第一声纹特征,生成该样本对应的各新的语音帧的第二语音特征,并基于该第二语音特征得到该样本对应的第二声纹特征和新语音;
根据各所述训练样本对应的第一声纹特征和第二声纹特征、以及各所述样本语音中发音正确的各语音帧对应的第一语音特征和第二语音特征,确定训练总损失,并基于所述训练总损失对初始语音合成模型的模型参数进行调整。
另一方面,本申请实施例提供了一种语音数据处理装置,该装置包括:
训练数据获取模块,用于获取多个训练样本,所述训练样本包括一个样本文本和该样本文本对应的样本语音;
发音诊断模块,用于确定各所述样本语音的发音情况,所述发音情况包括样本语音中各语音帧的发音状态是否正确;
模型训练模块,用于通过对初始语音合成模型重复执行训练操作,得到满足预设条件的目标语音合成模型,其中,所述训练操作包括以下各个步骤:
获取各所述样本语音中各语音帧的第一语音特征;
通过所述初始语音合成模型对各所述训练样本分别执行以下操作,得到各所述训练样本各自对应的第一声纹特征、第二声纹特征和新语音:
基于训练样本对应的第一语音特征提取第一声纹特征,根据该样本对应的样本文本和第一声纹特征,生成该样本对应的各新的语音帧的第二语音特征,并基于该第二语音特征得到该样本对应的第二声纹特征和新语音;
根据各所述训练样本对应的第一声纹特征和第二声纹特征、以及各所述样本语音中发音正确的各语音帧对应的第一语音特征和第二语音特征,确定训练总损失,并基于所述训练总损失对初始语音合成模型的模型参数进行调整。
可选的,每个所述训练样本还包括该训练样本中的样本文本所对应的各语音单元的真实发音时长;发音诊断模块在确定各所述样本语音的发音情况时,可以用于:
对应任一所述样本语音,通过以下方式确定该样本语音的发音情况:
基于该样本语音,确定该样本语音中各语音单元的发音状态;
基于该样本语音中各语音单元的真实发音时长和发音状态,确定该样本语音包含的各语音帧的发音状态。
可选的,每个所述训练样本还包括该训练样本中的样本文本所对应的各语音单元的真实发音时长;对于任一训练样本,模型训练模块可以用于:
基于该训练样本中的样本文本,得到该样本文本对应的各语音单元的第一编码特征;
根据所述各语音单元的第一编码特征和该训练样本中的样本语音的第一声纹特征,预测得到该样本文本对应的各语音单元的预测发音时长;
根据该样本文本对应的各语音单元的第一编码特征和预测发音时长,确定该样本文本对应的各新的语音帧的第二编码特征;
根据所述各新的语音帧的第二编码特征,解码得到该训练样本对应的第二语音特征。
基于该训练样本中的样本文本,得到该样本文本对应的各语音单元的第一编码特征;
根据所述各语音单元的第一编码特征和该训练样本中的样本语音的第一声纹特征,预测得到该样本文本对应的各语音单元的预测发音时长;
根据该样本文本对应的各语音单元的第一编码特征和预测发音时长,得到该样本文本对应的各语音帧的第二编码特征;
根据所述各语音帧的第二编码特征,解码得到该训练样本对应的第二语音特征。
可选的,模型训练模型在确定训练总损失时可以用于:
根据各所述训练样本对应的第一声纹特征和第二声纹特征之间的差异,确定第一训练损失;
基于各所述样本语音中发音正确的各语音帧对应的第一语音特征和第二语音特征之间的差异,确定第二训练损失;
根据各所述训练样本对应的各语音单元的真实发音时长和预测发音时长,确定第三训练损失;
根据所述第一训练损失、所述第二训练损失和所述第三训练损失,确定训练总损失。
可选的,所述多个训练样本包括多个第一样本和多个第二样本,其中,所述多个第一样本中的样本语音包括多个样本对象对应于样本文本的样本语音,所述多个第二样本中的样本语音是所述目标对象对应于样本文本的样本语音;所述预设条件包括第一条件和第二条件;
模型训练模块在通过对初始语音合成模型重复执行训练操作,得到满足预设条件的目标语音合成模型时,可以用于:
基于所述多个第一样本,对所述初始语音合成模型重复执行训练操作,直至满足所述第一条件,得到第一语音合成模型;基于所述多个第二样本,对所述第一语音合成模型重复执行训练操作,直至满足所述第二条件,得到对应于所述目标对象的目标语音合成模型。
可选的,所述初始语音合成模型包括编码网络和解码网络,对于任一训练样本,该训练样本对应的第二声纹特征和新语音是通过以下方式得到的:
基于该训练样本中样本语音的第一语音特征,通过所述编码网络提取得到该样本语音的第一声纹特征;
基于该训练样本中的样本文本,通过所述编码网络得到该样本文本对应的各语音单元的第一编码特征;
基于该训练样本对应的各语音单元的第一编码特征和第一声纹特征,通过所述解码网络得到该训练样本对应的第二语音特征,并基于所述第二语音特征得到该样本文本对应的新语音;
基于该训练样本对应的第二语音特征,通过所述编码网络得到的声纹特征。
可选的,模型训练模块在基于所述多个第二样本,对所述第一语音合成模型执行训练操作时,可以基于训练总损失对第一语音合成模型的解码网络的模型参数进行调整。
可选的各样本语音的第一语音特征可以是通过以下方式获取到的:
对各所述样本语音进行预处理,得到各样本语音对应的预处理后的语音;
基于各所述样本语音对应的预处理后的语音,得到各所述样本语音对应的第一语音特征;
其中,对于任一所述样本语音,所述预处理包括以下至少一项:
对所述样本语音进行语音增强;
随机生成所述样本语音对应的声道长度调整系数,采用所述声道长度调整系数对所述样本语音进行调整。
另一方面,本申请实施例还提供了一种语音数据处理方法,该方法包括:
获取目标文本和目标对象对应于目标文本的初始语音;
基于所述目标文本和所述初始语音,通过目标语音合成模型生成所述目标对象对应于所述目标文本的目标语音,其中,所述目标语音合成模型是采用本申请实施例提供的语音数据处理方法中的训练方式训练得到的。
另一方面,本申请实施例还提供了一种语音数据处理装置,该装置包括:
待处理数据获取模块,用于获取目标文本和目标对象对应于目标文本的初始语音;
目标语音合成模块,用于基于所述目标文本和所述初始语音,通过目标语音合成模型生成所述目标对象对应于所述目标文本的目标语音,其中,所述目标语音合成模型是采用本申请实施例提供的语音数据处理方法中的训练方式训练得到的。
可选的,目标语音合成模块可以用于:获取所述初始语音的第三语音特征;基于所述目标文本和所述第三语音特征,通过所述目标语音合成模型执行以下操作,得到所述目标语音:基于所述第三语音特征,提取得到所述目标对象的第三声纹特征;基于所述目标文本,得到所述目标文本对应的各语音单元的第三编码特征;基于所述各语音单元的第三编码特征和所述第三声纹特征,预测所述目标文本对应的各语音单元的发音时长;根据所述各语音单元的第三编码特征和发音时长,得到各语音帧的第四编码特征;根据所述各语音帧的第四编码特征,解码得到所述各语音帧的语音特征,基于各所述语音帧的语音特征,得到所述目标语音。
可选的,待处理数据获取模块在获取目标对象对应于目标文本的初始语音时,可以用于:获取所述目标文本对应的初始跟读模板语音;将所述初始跟读模板语音播放给所述目标对象;获取所述目标对象对应于所述初始跟读模板语音的跟读语音,将所述跟读语音作为所述初始语音;其中,所述目标语音为对应于所述目标对象的目标跟读模板语音。
再一方面,本申请实施例还提供了一种电子设备,该电子设备包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器通过执行所述计算机程序以实现本申请任一可选实施例提供的方法。
本申请实施例还提供了一种计算机可读存储介质,该存储介质中存储有计算机程序,所述计算机程序被处理器执行时实现本申请任一可选实施例提供的方法。
本申请实施例还提供了一种计算机程序产品,该计算机产品包括计算机程序,所述计算机程序被处理器执行时实现本申请任一可选实施例提供的方法。
本申请实施例提供的技术方案带来的有益效果如下:
本申请实施例提供的语音数据处理方法,在对语音合成模型进行训练时,会确定用于训练的各样本语音中语音帧的发音是否正确,语音合成模型可以根据训练样本中样本语音的语音特征和该语音对应的样本文本,生成新的语音特征即第二语音特征,并根据该语音特征得到新的合成语音和新的声纹特征,由于模型的训练总损失是根据样本语音的声纹特征和模型合成的新的声纹特征、以及样本语音中发音正确的语音帧的语音特征和相对应的合成语音帧的语音特征确定的,因此,采用该训练总损失约束模型的训练,可以既保证训练好的模型所合成的语音既贴近说话人的发音特色,又能够避免合成语音中出现错误的发音,从而有效提高了模型所合成的语音的效果,能够更好的满足实际应用需求。比如,在语音学习场景中,基于本申请实施例提供的方法,可以为学习者生成逼近其自身发音特点的学习语料,从而使学习者可以通过模仿自己的语音数据进行更加有效的学习,可有效提高学习效果。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对本申请实施例描述中所需要使用的附图作简单地介绍。
图1为本申请实施例提供的一种语音数据处理方法的流程示意图;
图2为本申请实施例提供的一种语音合成模型的结构示意图;
图3为本申请实施例提供的一种语音数据处理方法的流程示意图;
图4为本申请实施例提供的一种语音处理系统的结构示意图;
图5为本申请实施例提供的一种语音数据处理方法的实施流程示意图;
图6为本申请实施例中提供模型训练阶段的一种语音数据的处理流程示意图;
图7为本申请实施例中提供的一种声纹提取器的结构示意图;
图8为本申请实施例中提供的一种音素编码器的结构示意图;
图9为本申请实施例中提供的一种时长预测器的结构示意图;
图10为本申请实施例提供的一种梅尔谱解码器的结构示意图;
图11为本申请实施例中提供的微调训练阶段的一种语音数据的处理流程示意图;
图12为本申请实施例提供的一种合成目标语音的流程示意图;
图13为本申请实施例提供的一种语音数据处理装置的结构示意图;
图14为本申请实施例提供的一种电子设备的结构示意图。
具体实施方式
下面结合本申请中的附图描述本申请的实施例。应理解,下面结合附图所阐述的实施方式,是用于解释本申请实施例的技术方案的示例性描述,对本申请实施例的技术方案不构成限制。
本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“所述”和“该”也可包括复数形式。应该进一步理解的是,本申请实施例所使用的术语“包括”以及“包含”是指相应特征可以实现为所呈现的特征、信息、数据、步骤、操作、元件和/或组件,但不排除实现为本技术领域所支持其他特征、信息、数据、步骤、操作、元件、组件和/或它们的组合等。应该理解,当我们称一个元件被“连接”或“耦接”到另一元件时,该一个元件可以直接连接或耦接到另一元件,也可以指该一个元件和另一元件通过中间元件建立连接关系。此外,这里使用的“连接”或“耦接”可以包括无线连接或无线耦接。这里使用的术语“和/或”指示该术语所限定的项目中的至少一个,例如“A和/或B”可以实现为“A”,或者实现为“B”,或者实现为“A和B”。在描述多个(两个或两个以上)项目时,如果没有明确限定多个项目之间的关系,这多个项目之间可以是指多个项目中的一个、多个或者全部,例如,对于“参数A包括A1、A2、A3”的描述,可以实现为参数A包括A1或A2或A3,还可以实现为参数A包括参数A1、A2、A3这三项中的至少两项。
本申请实施例提供的方案,涉及人工智能(Artificial Intelligence,AI)技术,具体涉及到神经网络模型的训练以及神经网络模型的应用。比如,可以基于本申请实施例提供的训练方法,采用机器学习(Machine Learning,ML)方式对初始语音合成模型进行训练,得到性能更优的、可以更好的满足应用需求的目标语音合成模型。在训练得到满足需求的目标语音合成模型之后,可以基于该模型合成目标对象对应于目标文本的目标语音。
人工智能是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。换句话说,人工智能也就是研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。随着人工智能技术的研究和进步,人工智能技术已经在常见的智能家居、智能穿戴设备、虚拟助理、智能音箱、智能营销、无人驾驶、自动驾驶、无人机、机器人、智能医疗、智能客服、车联网、自动驾驶、智慧交通等多个领域展开研究和应用,相信随着技术的发展,该技术将在更多的领域得到应用,并发挥越来越重要的价值。
可选的,本申请实施例提供的方法中所涉及的数据处理可以基于云技术实现。例如,可以基于云技术实现本申请提供的训练方法,模型训练过程中所涉及的各种数据计算、以及模型应用过程中所设计的各种数据计算可以采用云计算(cloud computing)。可选的,训练过程中所使用的各个训练集的存储还可以采用云存储(cloud storage)的方式存储。
本申请实施例提供的语音数据处理方法可以由任意的电子设备执行,如可以由终端设备或服务器执行。例如,可以由训练服务器执行本申请提供的处理方法提供的模型训练方式,得到目标语音合成模型,可以将训练好的目标语音合成模型部署到应用程序的应用服务器中,应用服务器在接收到终端设备发送来的目标对象对应于目标文本的初始语音后,可以基于初始语音和目标文本,通过调用该目标对象对应的目标语音合成模型,生成该目标对象对应的目标语音,并可以将该目标语音通过终端设备提供给该目标对象。当然,训练好的目标语音合成模型还可以部署到终端设备,由终端设备执行本申请实施例提供的语音数据处理方法,得到目标语音并展示给目标对象。
其中,上述服务器可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云计算服务的云服务器。上述终端设备即用户终端/用户设备可以是智能手机、平板电脑、笔记本电脑、台式计算机、智能语音交互设备(例如智能音箱)、可穿戴电子设备(例如智能手表)、车载终端、智能家电(例如智能电视)、AR/VR设备等,但并不局限于此。终端以及服务器可以通过有线或无线通信方式进行直接或间接地连接,本申请在此不做限制。
可选的,本申请实施例提供的语音数据处理方法可以实现为一独立的应用程序或者是一应用程序的功能模块/插件,比如,该应用程序可以是具有学习功能的应用,该应用程序可以为用户提供符合使用者自身发音特色的目标语音,使用者可以根据该目标语音通过跟读练习发音。
需要说明的是,在本申请的可选实施例中,所涉及到的与对象(如用户)有关的等数据,当本申请的实施例运用到具体产品或技术中时,需要获得对象许可或者同意,且相关数据的收集、使用和处理需要遵守相关国家和地区的相关法律法规和标准。也就是说,本申请实施例中如果涉及到与对象有关的数据,这些数据需要经由对象授权同意、且符合国家和地区的相关法律法规和标准的情况下获取的。
为了更好的理解和说明本申请实施例提供的方案,下面先对本申请实施例中涉及的一些技术用语进行介绍说明。
梅尔谱:也就是梅尔谱特征,语音信号经过预加重、分帧、加窗、短时傅里叶变换、梅尔滤波、取对数等一系列信号处理步骤得到的语音频谱特征,是语音信号处理技术中常用的一种语音特征。
声码器:语音特征转语音波形的模块,可选的,声码器可以是将梅尔谱转换为语音信号的神经网络模型。
VTLN(Vocal Tract Length Normalization,声道长度归一化):也就是声道长度规整,声道长度与共振峰频率成反比关系,声道长度越短共振峰频率越高。声道长度规整通过对频率轴进行压缩和伸长以仿真声道长度的伸长和缩短。通常声道长度规整系数(频率压缩和伸长系数)在0.75-1.25之间,对应声道长度拉长到1.3倍和缩短到0.8倍之间。
EWC学习:全称为可塑权重巩固学习(Elastic Weight ConsolidationLearning),神经网络模型经过大量数据预训练后在少量数据上再次训练的过程中,如果采用传统梯度调整算法,模型将忘记大数据学习获得的参数,偏向新学习的少数样本,从而导致灾难性遗忘,忘记以前学过的重要信息。EWC学习将历史任务和新任务记为A类任务和B类任务,通过在A类任务上错误不敏感方向调整B类任务权重,使得模型参数优化B类任务的同时保持对A类任务的记忆能力。
SPA模型:可分离轮询注意力模型,全称为基于PReLU的可分离轮询注意力和全局层归一化语音增强(Speech Enhancement using Separable Polling Attention andGlobal Layer Normalization followed with PReLU)模型,该模型能够有效去除语音噪声,实现语音增强。
下面通过对几个示例性的实施方式的描述,对本申请实施例的技术方案以及本申请的技术方案产生的技术效果进行说明。需要指出的是,下述实施方式之间可以相互参考、借鉴或结合,对于不同实施方式中相同的术语、相似的特征以及相似的实施步骤等,不再重复描述。
图1示出了本申请实施例提供的一种语音数据处理方法的流程示意图,该方法可以由任一电子设备执行,比如可以由服务器(如云服务器)执行,如图1所示,该方法包括以下步骤S110和步骤S130。
步骤S110:获取多个训练样本,每个训练样本包括一个样本文本和该样本文本对应的样本语音。
步骤S120:确定各样本语音的发音情况,发音情况包括样本语音中各语音帧的发音状态是否正确。
步骤S130:通过对初始语音合成模型重复执行下述步骤S131至步骤S133的训练操作,得到满足预设条件的目标语音合成模型。
其中,初始语音合成模型是待训练的神经网络模型,多个训练样本是该模型的训练样本集,可以基于该训练样本集,采用机器学习的方式训练得到满足预设条件的目标语音合成模型。该预设条件是模型的训练结束条件,训练结束条件可以根据实际应用需求配置,本申请实施例不做限定,训练结束条件可以包括但不限于模型的训练次数达到设定次数或者是模型的训练总损失满足一定条件,也就是通常所说的模型的损失函数收敛,比如,训练总损失小于预设值。
本申请实施例中,模型的训练样本集中的每个训练样本都包括一个样本文本和该样本文本的语音数据即样本语音,一个样本文本的样本语音也就是该文本的音频数据,对于样本文本及其样本语音的获取方式本申请实施例不做限定,可选的,可以通过任意方式获取大量样本文本,将样本文本展示给多个对象,由各个对象通过对样本文本进行阅读,通过音频采集设备采集得到各个对象对于样本文本的音频数据,从而得到各个训练样本。
语音合成模型的作用是能够用于合成语音,本申请实施例中,在训练阶段,语音合成模型可以根据每个训练样本中的样本文本和样本语音,合成样本文本对应的新语音,在通过不断训练得到训练好的目标语音合成模型后,目标语音合成模型可以根据目标文本和目标对象对应于目标文本的初始语音,合成该目标文本对应的新语音,也就是目标对象对应于目标文本的目标语音。
对于初始语音合成模型(也就是目标语音合成模型)的具体神经网络架构本申请实施例不做限定,可以根据实际需求配置。可选的,图2中示出了本申请实施例提供的一种语音合成模型的结构示意图,该语音合成模型可以包括编码网络和解码网络两大部分,编码网络可以包括音素编码器和声纹提取器,解码网络可以包括依次级联的音素到语音帧的解析器、语音特征解码器(图2中的梅尔谱解码器)和声码器,其中,语音合成模型对应的源输入数据包括一个文本和该文本对应的语音(称为输入语音),音素编码器用于对文本对应的各语音单元(如音素)进行编码,生成该文本对应的各个音素的编码结果即编码特征,声纹提取器用于提取输入语音对应的声纹特征(即音色),具体的,可以将输入语音的语音特征(如梅尔频谱特征)输入到声纹提取器,声纹提取器根据语音特征提取得到对应的声纹特征,解码网络的作用是根据文本对应的编码特征和声纹特征,生成新的语音即输出语音。
可选的,可以将音素编码器的输出(各语音单元的编码结果)和声纹提取器的输出(声纹特征)拼接后输入到音素到语音帧的解析器,得到帧级别的编码特征即输出语音对应的各个语音帧的特征,语音特征解码器可以基于帧级别的编码特征,得到各语音帧的语音特征,声码器则可以基于各语音帧的语音特征,生成对应语音数据。语音合成模型所包含的各部分的具体模型结构可以根据需求选择或调整。
由于样本语音中语音帧的发音很有可能存在发音错误的情况,为了保证最终所训练得到的目标语音合成模型不会合成带有错误发音的新语音,在获取到各训练样本之后,本申请实施例中,会分别确定各个训练样本中各样本语音的发音情况,也就是样本语音所包含的各个语音帧的发音状态是否正确,以避免发音错误的语音帧对模型所合成的语音数据的正确程度造成影响。其中,对于一个语音帧的划分方式本申请实施例不做限定,可以按照预设帧长(如25ms)将样本语音划分为多个语音帧。
对于确定样本语音所包含的各语音帧的发音状态的具体方式,本申请实施例不做限定,比如,可以采用人工标注的方式。为了减少人工工作量,保证确认结果的正确性,作为一可选方案,每个训练样本还可以包括该样本中包括的样本文本所对应的各语音单元的真实发音时长,上述确定各样本语音的发音情况,可以包括:
对应任一所述样本语音,通过以下方式确定该样本语音的发音情况:
确定该样本语音中各语音单元的发音状态;
基于该样本语音中各语音单元的真实发音时长和发音状态,确定该样本语音包含的各语音帧的发音状态。
对于语音单元的具体划分粒度本申请实施例不做限定,一个语音单元可以是但不限于一个音素(phone)。一个语音单元的发音状态也就是指该语音单元的发音是否正确。为了描述方便,下面以一个音素是一个语音单元为例进行说明。
由于已知样本文本对应的各个音素的真实发音时长,且一个语音帧的帧长也是已知的,因此,在确定出样本语音中各个音素的发音状态之后,可以根据语音帧的帧长和各个音素的真实发音时长之间的时间关系,将音素的发音状态转换到语音帧的发音状态。具体的,通常一个音素可以对应若干个语音帧,例如,一个语音帧的帧长是25ms,样本文本中的第一个音素的真实发音时长是75ms,样本语音中该音素的发音状态是发音正确,样本文本中的第二个音素的真实发音时长是50ms,样本语音中该音素的发音状态是发音错误,那么该样文本对应的样本语音中的第一个到第三个语音帧的发音状态是发音正确,第四个和第五个语音帧的发音状态是发音错误。
作为另一可选方案,在确定样本语音包含的各语音帧的发音状态时,所使用的各语音单元的发音时长也可以是各语音帧的预测发音时长(详见后文中的描述)。
其中,对于样本语音中各语音单元的发音状态的具体确认方式,本申请实施例不做限定,可以采用现有的确定方式,例如,可以通过预先训练好的神经网络(发音诊断模块/模型)实现,对于发音诊断模块的具体模型结构本申请实施例不做限定,可选的,发音诊断模块可以将样本语音对应的样本文本转换成标准音素串,也就是样本文本对应的各个标准音素,基于该标准音素串,发音诊断模块可以计算得到样本语音中每个音素的发音正确性。其中,在确定各个音素的发音状态之前,还可以对样本语音进行预处理,比如,对样本语音进行去噪处理得到相对更干净的语音,基于该语音确定各个音素的发音正确性,可以进一步提高诊断结果的准确性。
为了提升训练得到的目标语音合成模型的模型性能,使得模型最终所成的新语音既能够逼近输入语音所对应的说话人的音色特点,又能够保证语音数据发音的正确性,本申请实施例提供的训练方式包括如图1中所示的步骤S131至步骤S133的训练操作,基于各训练样本,通过对初始语音合成模型不断执行该训练操作,可以得到上述目标语音合成模型。
步骤S131:获取各样本语音中各语音帧的第一语音特征;
步骤S132:通过初始语音合成模型对各训练样本分别执行以下操作,得到各训练样本各自对应的第一声纹特征、第二声纹特征和新语音:
基于训练样本对应的第一语音特征提取第一声纹特征,根据该样本对应的样本文本和第一声纹特征,生成该样本对应的各新的语音帧的第二语音特征,并基于该第二语音特征得到该样本对应的第二声纹特征和新语音;
步骤S133:根据各训练样本对应的第一声纹特征和第二声纹特征、以及各样本语音中发音正确的各语音帧对应的第一语音特征和第二语音特征,确定训练总损失,并基于训练总损失对初始语音合成模型的模型参数进行调整。
本申请实施例中,对于任一样本语音,第一语音特征可以包括该样本语音的时域特征或频域特征中的至少一项,样本语音的第一语音特征包括样本语音中各个语音帧的语音特征,可选的,该语音特征可以包括该样本语音中个语音帧的频域特征,如梅尔谱(即梅尔频谱特征)或MFCC(梅尔倒谱系数)特征。下文的实施例中以梅尔谱作为语音特征为例进行描述。对于语音帧的帧长可以根据实际需求配置,本申请实施例不做限定。
对于各个训练样本中的样本语音,可以通过对样本语音进行时频转换得到该语音的梅尔谱,可选的,可以直接基于样本语音提取得到梅尔谱,也可以先对样本语音进行预处理,基于预处理后的语音提取得到该样本语音的梅尔谱。作为一可选方案,上述获取各样本语音的各语音帧的第一语音特征,可以包括:
对各样本语音进行预处理,得到各样本语音对应的预处理后的语音;
基于各样本语音对应的预处理后的语音,得到各样本语音对应的第一语音特征;
其中,对于任一样本语音,预处理包括以下至少一项:
对样本语音进行语音增强;
随机生成样本语音对应的声道长度调整系数,采用声道长度调整系数对样本语音进行调整。
该可选方案中,可以通过语音增强和/或声道长度规整对各样本语音(即上述采样声道调整系数对样本语音进行调整)进行预处理。其中,通过语音增强可以提高语音信号的信号质量,从而可以提高提取得到的语音特征的质量。其中,对于语音增强的具体实现方式本申请实施例不做限定,可选的,可以对样本语音进行降噪处理实现语音增强,也可以通过训练好的语音增强模型对样本语音进行增强处理。声道长度规整可以通过对频率轴进行压缩和伸长以仿真声道长度的伸长和缩短,不同对象的声道长度通常都是有所差异的,通过声道长度规整可以不同对象的声道长度的差异,因此,在对语音合成模型进行训练时,通过对各样本语音进行声道长度规整,可以降低不同样本语音对应的声道长度的不同所造成的差异,更有利于获取到与声道长度无关的样本语音的语音特征。
可选的,可以采用VTLN(Vocal Tract Length Normalization,声道长度归一化)技术来实现样本语音的声道长度的调整,上述声道长度调整系数即声道长度规整系数,每个样本语音对应的声道长度规整系数可以在预设取值范围内随机生成,其中,预设取值范围可以根据经验值或实验值预先配置,比如,声道长度规整系数(频率压缩和伸长系数)的预设取值范围可以在0.75-1.25之间,对应的声道长度可以拉长到1.3倍和缩短到0.8倍之间。
可选的,在对语音合成模型进行训练的过程中,对于各个样本语音,可以只对该样本语音进行一次预处理(如声道长度规整),基于预处理后的语音得到该样本语音的梅尔谱,每次训练操作都使用该梅尔谱,也可以是每次训练操作时都重新随机生成该样本语音对应的声道长度调整系数,根据新生成的系数对样本语音进行调整,并基于调整后的语音得到此次训练操作所使用的梅尔谱。通过对样本语音进行声道长度规整,可以将样本语音的声道长度被随机压缩或拉长,从而可以使得语音合成模型可以适用于任意声道长度的语音数据,可以提高训练得到的目标语音合成模型的泛化性。
在得到样本语音的第一语音特征之后,可以将样本语音的该语音特征输入到语音合成模型的声纹特征器中,由声纹特征提取器提取得到样本语音的第一声纹特征。声纹识别的理论基础是每一个声音都具有独特的声纹特征,通过该声纹特征能够将不同对象的声音进行有效的是区分。通过对语音合成模型进行不断的训练,可以使得模型能够很好的学习到各样本语音对应的对象的发音特点,从而可以基于声纹特征和样本文本合成发音正确且符合样本语音的发音对象的音色的新语音。
在通过声纹提取器提取得到样本语音的第一声纹特征之后,可以基于该样本中的样本文本和该第一声纹特征,通过语音合成模型进一步生成融合了该声纹特征的该样本文本对应的新的语音特征即第二语音特征(如新的梅尔谱),并可以进一步基于该新的语音特征通过声码器转换得到该语音特征对应的语音信号即上述新的语音,还可以基于该新的语音特征,通过声纹提取器得到新的语音对应的第二声纹特征。
可选的,在对语音合成模型进行训练时,对于任一训练样本,该样本对应的各新的语音帧的第二语音特征可以通过以下方式得到的:
基于该训练样本中的样本文本,得到该样本文本对应的各语音单元的第一编码特征;
根据各语音单元的第一编码特征和该训练样本中的样本语音的第一声纹特征,预测得到该样本文本对应的各语音单元的预测发音时长;
根据该样本文本对应的各语音单元的第一编码特征和预测发音时长,得到该样本文本对应的各新的语音帧的第二编码特征;
根据各新的语音帧的第二编码特征,解码得到该训练样本对应的第二语音特征。
以一个语音单元是一个音素为例,在通过语音合成模型得到样本文本对应的各音素的编码结果即上述第一编码特征、以及各音素的预测预测时长之后,同样可以根据音素和语音帧的时长对应关系,得到样本文本对应的各新的语音帧的第二编码特征,语音合成模型可以根据各帧的编码特征通过解码得到各新的语音帧的语音特征,并可以将该新的语音特征通过声码器转换得到新的语音。
可选的,在得到各音素的编码特征之后,可以根据音素的发音时长和语音帧帧长之间的对应关系,将音素的编码特征作为该音素对应的各个语音帧的编码特征,即复制音素的编码特征作为该音素对应的语音帧的编码特征,也可以在通过复制得到各语音帧的编码特征之后,再进行进一步的特征提取,得到各语音帧的第二编码特征。
本申请实施例中,为了使得模型所合成的新的语音的发音特点(即第二声纹特征)能够更加符合样本语音的发音对象的真实发音特点(基于该发音对象的样本语音提取得到的第一声纹特征),即合成的声音与发音对象的真实声音越来相似,本申请实施例中,在通过得到各样本语音的第二声纹特征之后,会基于各训练样本对应的第一声纹特征和第二声纹特征之间的差异,计算模型的一部分损失(第一训练损失),而为了保证模型所合成的新的语音的发音正确性即不会合成发音错误的语音,还可以基于各训练样本对应的发音正确的各语音帧对应的第一语音特征和第二语音特征之间的差异,计算模型的一部分损失(第二训练损失),基于这两部分损失计算得到训练总损失。
由上述步骤S131至步骤S133可以看出,本申请实施例提供的该模型训练方式中,模型的训练损失至少可以包括上述两部分损失,其中,第一训练损失可以约束模型更好的学习到发音者的音色,而第二训练损失可以尽量避免模型输出的新语音中存在发音错误的问题,因此,基于这两部损失,通过不断的训练学习,可以使得语音合成模型所合成的输出语音的发音特点越来越接近输入语音的说话人的音色,且输出语音是输入语音对应的文本的正确音频数据,可以有效避免出现发音错误的情况。
对于基于上述第一训练损失和第二训练损失确定训练总损失的具体方式本申请实施例不做限定。可选的,由于两部分损失对模型的学习起到不同的约束作用,在实际实施时,可以根据应用需要预先设置第一训练损失和第二训练损失的损失权重,在每次训练操作中,可以基于这第一训练损失和第二训练损失各自对应的损失权重,对两部分损失进行加权求和,基于求和结果得到训练总损失,之后,则可以基于训练总损失对要训练的语音合成模型的模型参数进行调整,并基于训练样本对模型参数调整后的语音合成模型继续进行训练,直至得到满足预设条件的目标语音合成模型。
对于计算第一训练损失和第二训练损失所采用的损失函数的函数形式本申请实施例不做限定,可以根据实际应用需求选择和配置,理论上只要就是第一训练损失表征的是训练样本对应的第一声纹特征和第二声纹特征之间的差异即可,只要第二训练损失表征的是训练样本对应的第一语音特征和第二语音特征之间的差异即可,第一训练损失和第二训练损失可以选用相同的损失函数,也可以选用不同的损失函数,比如,可以采用余弦相似度函数来计算第一训练损失和第二训练损失。
可以理解的是,在基于训练样本集对语音合成模型进行训练时,可以将训练样本集划分为多个批次(batch),每次训练操作可以使用一个batch内训练样本对模型进行训练,相应的,每次训练操作过程,可以通过语音合成模型得到当前所使用的的一个batch中的每个训练样本对应的第一声纹特征、第二声纹特征和新语音,所对应的模型的训练总损失是基于此次训练操作使用的各训练样本对应的声纹特征和语音特征计算得到的。
本申请实施例提供的上述语音数据处理方法,在采用训练样本对初始语音合成模型进行训练时,可以根据训练样本中样本语音的声纹特征和该语音对应的文本,通过语音合成模型来得到新的语音特征即第二语音特征,从而可以根据该语音特征得到新的合成语音,由于该合成语音采用了样本语音的声纹特征,也就是样本语音的发音对象的音色,因此模型合成的语音也是能够具有发音对象的音色特点的,在训练过程中,不仅会根据样本语音的声纹特征和样本文本通过模型合成新的语音,还会提取模型所生成的新的语音特征的声纹特征,并会根据样本语音的声纹特征和对应的新的声纹特征来计算训练损失,从而可以使得模型所学习生成的新的声纹特征能够与样本语音的声纹特征越来越接近,更加逼近发音对象的发音特色,此外,本申请提供的该方法中,还会确定各样本语音的发音情况,在计算样本语音的第一语音特征和对应的第二语音特征之间的训练损失时,通过只计算发音正确的语音帧对应的第一语音特征和第二语音特征之间的训练损失,采用这两部分损失可以让模型不仅可以学习到发音者的特色,还可以保证模型所合成的语音发音的正确性,从而使得训练得到的目标语音合成模型可以合成接近说话人声音且不存在发音错误的新语音。
为了进一步提高训练得到的模型的性能,本申请的可选实施例中,每个训练样本还包括该训练样本中的样本文本所对应的各语音单元的真实发音时长;上述根据各训练样本对应的第一声纹特征和第二声纹特征、以及各样本语音中发音正确的各语音帧对应的第一语音特征和第二语音特征,确定训练总损失,包括:
根据各训练样本对应的第一声纹特征和第二声纹特征之间的差异,确定第一训练损失;
基于各样本语音中发音正确的各语音帧对应的第一语音特征和第二语音特征之间的差异,确定第二训练损失;
根据各训练样本对应的各语音单元的真实发音时长和预测发音时长,确定第三训练损失;
根据第一训练损失、第二训练损失和第三训练损失,确定训练总损失。
也就是说,模型的训练总损失还可以包括模型预测出的各语音单元的时长信息与真实时长信息之间的训练损失,采用该损失约束模型的训练,可以使模型更加准确地预测文本所对应的各个语音单元的发音时长,从而采用训练好的目标合成模型合成新语音时,新语音的发音时长可以更加接近真实发音时长。
由于不同的说话人的音色都是不同的,为了可以得到能够合成更加贴合不同说话人的音色的语音合成模型,本申请的可选实施例中,上述多个训练样本可以包括多个第一样本和多个第二样本,其中,多个第一样本中的样本语音包括对应于多个第一对象对应的样本语音,多个第二样本中的样本语音是对应于同一目标对象的样本语音,其中,多个第一对象中的至少部分对象不所述目标对象;上述预设条件可以包括第一条件和第二条件;在该可选实施例中,通过对初始语音合成模型重复执行训练操作,得到满足预设条件的目标语音合成模型,可以包括:
基于多个第一样本,对初始语音合成模型重复执行训练操作,直至满足第一条件,得到第一语音合成模型;
基于多个第二样本,对第一语音合成模型重复执行训练操作,直至满足第二条件,得到目标语音合成模型。
在该可选方案中,语音合成模型的训练可以分为两阶段,第一阶段是基于上述多个第一样本(称为第一训练集)对初始语音合成模型进行训练,第二阶段是采用多个第二样本(称为第二训练集)进行对第一阶段训练后的模型继续进行训练。其中,第一训练集包括多个不同的说话人所对应的训练样本,每个样本中的样本语音是一个说话人的语音数据,第二训练集中是同一个说话人对应的训练样本,即该训练集中的所有样本语音都是同一个说话人的语音数据。
可选的,第一训练集中的训练数据的量大于第二训练集中的训练样本的数据量。第一阶段可以称为预训练(原始模型训练阶段),第二阶段可以称为微调训练(自适应学习阶段),通过预训练可以得到满足基本需求的第一语音合成模型,通过微调训练,第一语音合成模型可以进一步学习目标对象的发音特点,从而可以得到与目标对象的音色特点更加匹配的目标语音合成模型。
可以理解的是,上述目标对象可以是任一说话人,比如,在提供跟读学习服务的应用程序中,目标对象可以是任一使用该应用程序的想要进行跟读学习的使用者,如果使用者想到基于与自己的音色一致的语音数据进行跟读学习,在使用者授权的情况下,以获取该使用者对应的训练样本,采用这些训练样本可以训练得到与其匹配的目标语音合成模型,从而可以采用该模型合成与该使用者的音色一致的语音数据并提供给该使用者进行跟读学习,可以有效提升使用者的学习效果。
可以理解的是,预阶段的训练总损失是基于第一训练集中样本对应的声纹特征和语音特征来计算的,微调训练的训练总损失是基于第二训练集中对应的声纹特征和语音特征计算的。在实际实施时,两个阶段也可以将对应的训练集划分为多个批次(当然也可以不划分,比如,第二训练集可以是少量的训练样本,可以不进行划分),每次训练操作采用其中一个批次的样本进行,相应的,训练总损失也是采用一个批次中的训练样本的相关特征计算得到。预训练阶段对应的第一条件和微调训练阶段对应的第二条件可以相同,也可以不同,两个阶段所采用的损失函数可以相同,也可以不同。
需要说明的是,在训练语音合成模型时,可以采用本申请该实施例中提供的两阶段训练方式,也可以不分成两个阶段,例如,可以直接采用获取大量说话人的训练样本对模型进行迭代训练,得到目标合成模型,在样本数量足够多的情况下,该模型也可以合成效果很好的符合说话人口音特点的语音数据,再例如,也可以直接获取足够数量的目标对象对应的训练样本,采用这些样本对初始语音合成模型进行迭代训练,得到对应于目标对象的目标语音合成模型。
在采用上述两阶段的训练方案时,预训练阶段和微调训练阶段的训练操作可以由同一电子设备执行,也可以由不同的电子设备执行,比如,预训练阶段由训练服务器执行,训练后的第一语音合成模型可以部署到应用服务器中作为通用语音合成模型,应用服务器可以基于各个对象各自对应的第二训练集,再继续对该通用模型进行训练,得到每个对象各自对应的目标语音合成模型,在需要合成对应于某个对象的语音时,应用服务器可以调用该对象对应的目标语音合成模型来合成与该对象更加匹配的目标语音数据,采用该方案,如果有新增对象,应用服务器只需要获取该新增对象的少量第二样本,即可以通过对通用模型进行微调训练得到该新增对象对应的目标语音合成模型。
可选的,在微调训练阶段,可以采用EWC学习方式对语音合成模型继续训练,以避免模型遗忘在预训练阶段所学习到的知识,可以更好的提升训练得到的目标语音合成模型的模型性能。
可选的,对于模型的训练总损失,在预训练阶段,训练总损失可以包括声纹特征对应的第一训练损失、语音特征对应的第二训练损失、以及预测发音时长和真实发音时长对应的第三训练损失,在微调训练阶段,训练总损失可以包括声纹特征对应的第一训练损失、语音特征对应的第二训练损失、以及EWC学习对应的正则项损失,可以包括发音时长对应的训练损失。这是因为在预先阶段,采用真实发音时长(也就个标准/参考发音时长)约束模型的训练,可以使得训练得到第一语音合成模型更加具有通用性,而不偏向于某个或模型说话人的音素发音时长,在微调阶段,不使用参考发音时长来约束模型的学习,可以使得进一步训练得到的模型所合成的新语音中各个音素的发音时长更加符合目标对象的发音特点。
对于语音合成模型的具体网络结构可以根据实际应用选择,可选的,初始语音合成模型可以包括编码网络和解码网络,对于任一训练样本,该训练样本对应的第一声纹特征、第二声纹特征和新语音可以是通过以下方式得到的:
基于该训练样本中样本语音的第一语音特征,通过编码网络提取得到该样本语音的第一声纹特征;
基于该训练样本中的样本文本,通过编码网络得到该样本文本对应的各语音单元的第一编码特征;
基于该训练样本对应的各语音单元的第一编码特征和第一声纹特征,通过解码网络得到该训练样本对应的第二语音特征,并基于第二语音特征得到该样本文本对应的新语音;
基于该训练样本对应的第二语音特征,通过编码网络得到的声纹特征。
本申请实施例中的语音合成模型可以是采用编码器-解码器结构的神经网络模型,其中,编码器即上述编码网络可以包括音素编码器和声纹提取器,解码器则基于音素编码器的编码结果和声纹提取器提取的声纹特征生成新的语音特征,并将该语音特征转化为新语音,其中,新语音的声纹特征可以基于新的声纹特征通过声纹提取器提取得到。语音合成模型的模型结构可以包括但不限于图2中所示的结构。
由于第一语音合成模型已经是基于大量第一样本训练得到的符合基本需求的通用语音合成模型,因此,作为一可选方案,在基于多个第二样本,对第一语音合成模型执行训练操作时,基于训练总损失对第一语音合成模型的模型参数进行调整,可以包括:基于训练总损失对第一语音合成模型的解码网络的模型参数进行调整。
也就是说,微调训练阶段可以固定编码网络的模型参数,只对解码网络的模型参数进行调整。采用该方案,可以在保证训练后的模型性能的前提下,有效加快模型的训练速度。
基于本申请实施例提供的上述语音数据处理方法,本申请实施例还提供了一种语音数据处理方法,该方法可以由任一电子设备执行,可以由服务器执行,也可以由用户终端执行,如图3所示,该方法包括:
步骤S310:获取目标文本和目标对象对应于目标文本的初始语音;
步骤S320:基于目标文本和初始语音,通过目标语音合成模型生成目标对象对应于目标文本的目标语音,其中,目标语音合成模型是采用图1中所示的方法的任一可选实施例中的训练方式训练得到的。
其中,目标文本可以是任意文本,对于目标文本的获取方式本申请实施例不做限定,可以是目标对象选择的文本,也可以是服务器通过目标对象的终端设备提供该目标对象的文本。初始语音可以是通过任意语音采集设备(如终端设备自带的语音采集设备)的目标对象对于目标文本的语音,其中,初始语音可以是实时采集的,也可以是预先采集好的。
目标语音合成模型是通过训练样本训练得到的语音合成模型,该模型可以根据目标文本和目标对象对应于该文本的初始语音,合成不仅可以具有正确的发音,还具有目标对象的发音特色的目标语音,其中,目标语音也就是初始语音对应的新语音。
可选的,上述获取目标对象对应于目标文本的初始语音,包括:
获取目标文本对应的初始跟读模板语音;
将初始跟读模板语音播放给目标对象;
获取目标对象对应于初始跟读模板语音的跟读语音,将跟读语音作为初始语音;其中,目标语音为对应于目标对象的目标跟读模板语音。
其中,初始跟读模板语音可以是任意说话人(比如教师、专家、AI对象等)对于目标文本的语音信号,也可以是机器合成的语音信号,可以是采用上述目标语音合成模型合成的,也可以是采用其他方式合成的。比如,可以获取任一对象对于目标文本的语音,可以将该语音的语音特征和目标文本输入到目标语音合成模型中,将模型输出的语音信号作为上述初始跟读模板语音。
通过将初始跟读模板语音播放给目标对象,目标对象可以进行跟读,通过采集目标对象的跟读语音即可得到目标对象对于目标文本的初始语音。在获取到该初始语音之后,则可以基于该初始语音和目标文本通过目标语音合成模型合成发音正确、且符合目标对象音色特点的目标跟读模板语音,可以将该语音提供给目标对象。可选的,目标语音合成模型可以是采用上述两阶段方式训练得到的语音合成模型,该目标语音合成对象可以是与该目标对象相匹配的合成模型。作为一可选方式,上述基于目标文本和所述初始语音,通过目标语音合成模型生成所述目标对象对应于所述目标文本的目标语音,可以包括:
获取目标对象的对象标识;根据该对象标识,从多个目标语音合成模型中确定出与该对象标识相匹配的目标语音合成模型;
基于目标文本和初始语音,采用确定出的该语音合成模型生成该目标对象对应于目标文本的目标语音。
可以理解的是,上述多个目标语音合成模型可以是采用多个对象对应的第二训练集分别对第一语音合成模型进行微调训练后得到的模型,每个目标语音合成模型对应一个对象(即与一个对象标识相关联),在需要合成某个对象对应的目标语音时,则可以基于该对象的标识调用该对象对应的目标语音合成模型进行新的语音的生成。
其中,如果多个目标语音合成模型中没有当前该目标对象对应的模型,可选的,可以获取该目标对象对应的多个第二样本,采用多个第二样本对第一语音合成模型进行微调训练,得到该对象对应的目标语音合成模型。
可选的,上述基于所述目标文本和初始语音,通过目标语音合成模型生成目标对象对应于目标文本的目标语音,具体可以包括:
获取初始语音的第三语音特征;
基于目标文本和所述第三语音特征,通过目标语音合成模型执行以下操作,得到目标语音:
基于第三语音特征,提取得到目标对象的第三声纹特征;基于目标文本,得到目标文本对应的各语音单元的第三编码特征;
基于各语音单元的第三编码特征和第三声纹特征,得到各语音帧的第四编码特征;
根据各语音帧的第四编码特征,解码得到各语音帧的语音特征,基于各语音帧的语音特征,得到目标语音。
其中,基于各语音单元的第三编码特征和第三声纹特征,得到各语音帧的第四编码特征,可以包括:基于各语音单元的第三编码特征和第三声纹特征,预测目标文本对应的各语音单元的发音时长;根据各语音单元的第三编码特征和发音时长,得到各语音帧的第四编码特征。
其中,第三语音特征可以是但不限于初始语音的梅尔谱特征,在通过时频转换提取得到初始语音的语音特征之后,可以将该语音特征和目标文本输入到目标语音合成模型中,通过模型合成目标语音。可选的,语音合成模型可以基于初始语音的语音特征,提取得到目标对象的声纹特征,可以通过对目标文本包含的各个音素进行编码,得到音素的编码结果即上述第三编码特征,之后,可以基于音素编码结果和目标对象的声纹特征,可以预测各音素的发音时长,从而可以基于音素编码结果预测得到帧级别的编码结果,并通过解码帧级别的编码结果得到对应的语音特征,之后,可以通过声码器将语音特征转成语音信号即目标语音。
本申请实施例提供的语音数据处理方法,可以适用于任何需要合成带有说话人音色特点的语音的应用场景中。例如,可以根据本申请实施例提供的方法,合成具有各种各样的音色特点的语音数据库,再例如,在一些具有语音播放功能的程序中,可以根据合成特定音色的语音数据。
为了更好的说明和理解本申请实施例提供的方案以及其实用价值,下面先结合一个应用场景的实施例对本申请实施例提供的方法进行说明。该实施例中以将本申请实施例提供的方法应用于具有跟读学习功能的应用程序中为例。
可选的,图4中示出来本场景实施例所适用的一种实施环境的结构示意图,如图4中所示,该实施环境可以包括训练服务器10、应用服务器20和终端设备,其中,训练服务器10可以用于执行本申请实施例提供的语音合成模型的训练方式,得到训练好的目标语音合成提取模型,训练好的目标语音合成模型可以部署到应用服务器20。应用服务器20为目标应用程序的服务器,可以为目标应用程序的使用者提供跟读学习服务,终端设备可以运行目标应用程序的任一终端,图4中示意性的示出了对象1的第一终端31和对象2的第二终端32,终端用户(对象1或对象2)可以通过其终端设备上运行的该程序进行发音学习。
目前已有的一些语音学习系统中,通常只能评估出用户的发音得分高低,对于学习者学习的反馈程度不足,学习者在学习过程中的主观听觉感受反馈低,不利用学习者的学习进步,导致学习效果不够理想。
而基于本申请实施例提供的语音数据处理方法,可以为学习者提供一种的新的学习范式,语音学习系统可以生成符合学习者自身的口音的语音材料,提供给用户跟读、模仿等,可以有效增强学习者的感受度和正面反馈效果,可解决学习者在学习过程中主观听觉反馈感受度低的问题。本申请实施例提供的方法,可以实现口音自适应学习,基于此,可以提供一种听音模仿训练的学习范式。对学习者而言,听音模仿的难点在于需要将听到的声音进行信息解耦合,将发音对象的属性、嗓音等复杂特征与发音特征解耦合,因此学习难度大、学习速度慢。比如,儿童极大概率是无法模仿成年人声音的,因此儿童在根据成年人的语音材料进行跟读学习时,难以判断其模仿发音与成人发音的接近程度。而采用本申请实施例提供的方案,语音学习系统可以通过在为学习者提供语音学习材料时,可以根据使用者的发音特点为使用者提供接近该使用者自身音色、发音速度、发音韵律的学习材料,从而学习者可以模仿自己声音学习,可以更好地自我鉴定跟读的相似程度,有效地进行自监督学习,比如,儿童可以完美模仿童声,从而可有效降低语言学习中的模仿难度。
图5分别示出了本场景实施例中基于图4所示的实施环境的一种语音数据处理方法的实施流程图,该实施例中的实施过程可以分为两个阶段,第一阶段是模型训练阶段,可以由训练服务器10执行,第二阶段是模型部署及应用阶段,如图5所示,第一阶段可以包括图中所示的步骤S11和S12,第二阶段可以包括图中所示的步骤S21至步骤S24。下面结合图4和图5对本申请实施例提供的方案进行展开说明。
模型训练阶段
本实施例中,模型训练阶段分为原始模型训练阶段和自适应学习阶段两个阶段,其中,原始模型训练阶段是预训练阶段,可以训练得到第一语音合成模型,即图5中的步骤S11:基于第一训练集训练得到通用语音合成模型。自适应学习阶段为微调训练阶段,可以训练得到更加适用于特定对象的目标语音合成,即步骤S12:基于各个目标对象各自对应的第二训练集,训练得到各个目标对象对应的目标语音合成模型。
图6示出了本实施例中提供的一种基于神经网络模型的语音学习系统的结构及工作原理示意图,如图中所示,该示例中的语音学习系统可以包括语音增强模块/模型、发音诊断模块/模型和语音合成模型。其中,语音合成模型的结构可以采用图2中所示的结构,包含一个音素编码器、一个音素到语音帧解析器、一个梅尔谱解码器、一个声纹提取器和一个梅尔谱转语音声码器,语音合成模型的工作原理是音素编码器编码发音内容信息(对音素进行编码),声纹提取器提取说话人声纹特征,音素到语音帧解析器将音素编码器的编码结果与声纹提取器提取的声纹特征拼接后预测每个音素的时长信息,并按时长将音素级别的长度解析成帧级别的长度,形成帧级别发音内容,梅尔谱解码器将帧级别发音内容经过多层变换转为梅尔谱特征,梅尔谱特征经过声码器转换为语音时域信号。
需要说明的是,在实际实施时,语音合成模型的神经网络结构也可以是其他结构,可以是但不限于图2中所示的结构,比如,语音合成模型也可以采用FastSpeech(一种高效的语音合成模型)、FastSpeech2、Tacotron(一种带有注意力机制的语音合成模型)、Tacotron2等结构中的任何一种。
下面结合图6对语音合成模型的两个训练阶段分别进行说明。
第一阶段:原始模型训练阶段
在原始模型训练阶段,系统可以采用多人数据库和声道长度规整技术训练模型,多人数据库中包括多个样本对象对应的大量样本数据,可选的,该阶段可以包括如下流程:
①预先训练声纹提取器、语音增强模型和发音诊断模型。
在预训练语音合成模型之前,可以先对系统的多个模型或模型中的部分网络结构进行预先训练,可以加快后续语音合成模型的预训练速度和效果。
其中,可以采用多人语音库训练声纹提取器,损失函数可以采用AM-Softmax损失函数或AAM-Softmax损失函数。可选的,该多人语音库中可以包括多个样本对象对应的样本数据,其中可以包括多个带有标签的样本语音,标签为说话人标签,表征了样本语音具体是哪个样本对象的语音数据,可以将样本数据输入到声纹特征提取器中,得到对应的声纹特征,基于声纹特征可以基于分类器预测出说话人信息,可以根据分类器预测出的说话人信息和说话人标签计算模型的训练损失,并可以基于训练损失对声纹提取器和分类器的模型参数进行调整,再继续进行训练。
对于声纹提取器的神经网络结构本申请实施例不做限定,作为一可选方案,声纹提取器可以采用基于ECAPA(Emphasized Channel Attention,Propagation andAggregation)模型的神经网络,本实施例中提供了一种改进的ECAPA模型,并可以将该模型作为声纹提取器,图7示出了该声纹提取器的网络结构,如图7中所示,该声纹提取器在ECAPA模型的前段增加了WAV2VEC提取器(音频特征提取器),WAV2VEC提取器用于提取输入语音的初始特征,之后,初始特征经由ECAPA模型提取得到输入语音的声纹特征。
可选的,声纹提取器也可以采用基于ResNet(残差网络)、ECAPA模型或其他声纹提取模型中的任一种。
语音增强模型的作用是用于语音数据的预处理,可以去除语音中的噪声、增强语音,语音增强模型可以采用多人语音库和真实环境噪声训练得到,可选的,该模型的训练样本可以是一个样本语音对,其中包括一个干净语音和对该干净语音加噪后的包含有噪声的语音,可以将含有噪声的语音输入到语音增强模型中,通过模型得到去噪后的语音,可以根据模型输出的语音与输入语音对应的干净语音之间的差异,计算得到训练损失并对模型参数调整。
发音诊断模型用于诊断语音中的各个音素的发音状态是否正确,对于发音诊断模型的具体网络结构和预先训练方式本申请实施例不做限定,可以采用现有的发音诊断模型及训练方式。
②采用多人语音库训练语音合成模型。
在通过上述步骤①得到预先训练的声纹提取器、语音增强模型和发音诊断模型的基础上,可以对语音合成模型进行预训练,其中,此时需要训练的语音合成模型中的声纹提取器是经过步骤①训练后的。
该步骤中用于训练语音合成模型的多人语音库即为上述第一训练集,其中包含多个训练样本,每个样本包括一个样本文本、该文本对应的样本语音、以及该样本语音中的各个音素的真实发音时长,如图6中所示,在语音合成模型的原始模型训练过程中对于样本语音的处理流程可以包括如下步骤:
步骤1.1:生成0.75-1.25之间的随机声道长度系数R即声道长度调整系数。
可选的,可以为每个样本语音生成各自对应的系数R,也可以是每次训练操作所使用的所有的样本语音采用一个长度系数R。
步骤1.2:利用声道长度系数R修改语音,得到规整后的语音(也就是预处理后的语音)。
可以采用VTLN声道长度规整方案,利用随机生成的声道长度系数R对样本语音进行调整,得到规整后的语音。
步骤1.3:通过发音诊断模块诊断样本语音的发音情况。
可选的,如图6所示,通过发音诊断模块可以得到规整后的语音中各个音素的发音诊断结果(也就是音素的发音状态是否正确),在得到各个音素的发音诊断结果之后,可以根据各个音素的发音状态、各个音素的真实发音时长和确定出规整后的语音所包含的各个语音帧的发音状态,可选的,可以将样本语音中发音正确的语音帧的发音状态标记为1,将发音错误的语音帧的发音状态标记为0。
步骤1.4:提取规整后的语音的梅尔谱M。
如图6所示,对于上述步骤1.1至1.3,样本语音作为原始模型训练阶段的输入语音,在对样本语音进行声道长度规整之前,可以先采用语音增强模型对样本语音进行语音增强,得到增强语音,再采用声道长度系数R对该增强语音进行规整,得到规整后的语音,并提取该语音中包含的各语音帧的梅尔谱即图6中的梅尔谱1。
可以看出的是,该实施流程中很多步骤之间是没有执行先后的限制的,比如,上述步骤1.3和步骤1.4。
步骤1.5:将样本语音的梅尔谱送入语音合成模型的声纹提取器提取声纹向量E(第一声纹特征),将样本语音对应的样本文本T送入语音合成模型的音素编码器获得音素编码C(音素编码特征)。
在得到规整后的样本语音的语音特征即各个语音帧的梅尔谱1之后,可以将该语音特征(图7中的语音)输入到图7所示的声纹特征提取器中,得到该样本语音的声纹向量E(图6中的声纹特征1)。对于样本语音对应的样本文本,则可以通过音素编码器对其进行编码,得到该文本对应的各个音素的音素编码C。
作为一可选方案,图8示出了音素编码器一种可选的神经网络结构,该音素编码器由词嵌入层(音素嵌入层)、轻量级动态卷积神经网络(Light DyConv)和双向循环神经网络(如双向长短时记忆网络BiLSTM)构成,其中,轻量级动态卷积神经网络可以有一个或者多个级联的该网络,如图8中所示,音素编码器的输入是样本文本的音素标签(也就是样本文本所包含的各个音素),音素标签经由音素嵌入层(Phoneme embedding)之后可以得到音素的嵌入特征向量,该特征向量再经由一层或多层轻量级动态卷积网络以及双向循环神经网络进行进一步的特征提取之后,得到各个音素的编码向量C即音素的语言表征。
步骤1.6:将音素编码C和声纹向量E送入音素到语音帧解析器,得到帧级特征F。
该步骤是基于样本语音的各个音素的音素编码和第一声纹特征,来获得语音帧的编码特征F。音素到语音帧解析器可以包括一个时长预测器、一个时长扩展器和一个输出平滑器,其中,时长预测器用于预测各个音素的音素时长信息D’(预测发音时长),时长扩展器用于根据各个音素的编码特征C得到对应的各语音帧的初步编码结果,该编码结果再经由输出平滑器进行进一步处理后,得到各个语音帧的编码特征即上述帧级特征F。
作为一可选方案,图9示出了一种时长预测器的网络结构,该时长预测器包括三层卷积模块、一层双向LSTM网络和一层全连接层,可选的,卷积模块可以包括一维卷积神经网络(Conv1d)、激活函数层(如Relu激活函数)和层归一化(LN,Layer Normalization)。样本语音的各音素的音素编码C和声纹向量E输入时长预测器中,可以得到各个音素的预测发音时长D’。之后,时长扩展器可以基于各个音素的预测发音时长D’,将音素编码器的输出即音素编码C按照时长重复扩充至语音频谱帧的长度,也就是可以根据音素时长和语音帧的帧长的关系,对音素编码C进行复制,作为音素所对应的各语音帧的编码特征。输出平滑器的网络结构与时长预测器的网络结构可以相同,可以将通过时长扩充器得到各个语音帧的编码特征经由输出平滑器进行进一步特征提取后,得到各个语音帧的最终编码特征F。因此,经由时长扩充器和输出平滑器的处理可以将音素编码C根据预测的音素时长D’解码到帧级特征F。
可以理解的是,音素到语音帧解析器的神经网络结构可以采用但不限于上述图9所示的网络结构,比如,时长预测器也可以采用基于TDNN(时延神经网络)、CRN(一种卷积循环神经网络)、Tansformer(一种采用注意力机制的神经网络)等任一种的神经网络模型。
步骤1.7:将帧级特征F送到梅尔谱解码器预测语音梅尔谱M’。
步骤1.8:将梅尔谱M’送入声纹提取器提取声纹向量E’。
这两个步骤是通过梅尔谱解码器解码得到新的语音特征即第二语音特征,也就是图6中所示的梅尔谱2,之后,该新的梅尔谱可以输入到声纹特征提取器,得到新的声纹向量E’即第二声纹特征(图6中的声纹特征2)。
作为一可选方案,图10中示出了本实施例中提供的一种梅尔谱解码器的网络结构示意图,该梅尔谱解码器由6层带CIN的卷积层(条件实例归一化卷积层即条件卷积)、3层自注意力(Self-attention)层和3层轻量动态卷积网络构成。梅尔谱解码器的输入是音素到语音帧解析器的输出即模型合成的各语音帧的语音特征,输出是模型合成的各语音帧的梅尔谱。
通过梅尔谱解码器解码得到的各语音帧的梅尔谱特征可以输入到声码器中,通过声码器得到合成的新语音。对于声码器的模型结构本申请实施例不做限定,可以包含但不限于HiFiGAN声码器(一种基于生成对抗网络GAN的高速声码器)、MelGAN(一种用于条件波形合成的GAN声码器)、MultiBandMelGAN声码器(多频带MelGAN)或WaveRNN(一种基于循环神经网络RNN的声码器)等神经网络模型。
步骤1.9:计算声纹损失(第一训练损失)、梅尔谱损失(第二训练损失)和时长预测损失(第三训练损失)。
可选的,可以采用相似度损失函数,分别通过下述公式(1)和公式(2)计算声纹损失和梅尔谱损失,利用均方误差损失通过下述公式(3)计算时长预测损失。
公式(1)中,Ls表示一个训练样本对应的声纹损失,m为预设值,是声纹训练时的临界值,具体取值可以是经验值,通常取值可以在0.2-0.3之间,Euser表示样本语音的声纹特征即上述声纹向量E,表示合成的声纹特征即上述声纹向量E’。
公式(2)中,Lmel表示一个训练样本对应的梅尔谱损失,T表示样本语音所包含的语音帧的帧数,t表示第t帧,表示样本语音的第t帧语音帧的梅尔谱即上述梅尔谱M,表示合成的第t帧语音帧的梅尔谱即上述梅尔谱M’,Maskt表示第t帧语音帧的发音状态,发音正确Maskt=1,发音正确Maskt=0。因此,梅尔谱损失计算的是样本语音对应的发音正确的各语音帧的第一语音特征和第二语音特征之间的差异。
Ldur=MSE(D′,D) (3)
公式(3)中,Ldur表示一个训练样本对应的时长预测损失,该损失是通过计算样本语音中各个音素的真实发音时长和预测发音时长之间的均方误差MSE得到。
步骤1.10:计算训练总损失,并利用模型训练优化器(如Adam优化器)优化语音合成模型的模型参数。
可选的,可以通过下述公式(4)计算模型的损失总损失:
L=αLs总+βLmel总+γLdur总 (4)
其中,L表示训练总损失,Ls总、Lmel总和Ldur总分别表示参与训练的所有训练样本的声纹损失、梅尔谱损失和时长预测损失,α、β和γ分别为三部分损失的损失权重。
步骤1.11:重复1.1-1.10的步骤直到模型参数收敛,也就是满足初始模型训练阶段的训练结束条件,如模型的总损失函数收敛或者迭代训练的次数达到一定次数。
第二阶段:模型自适应学习阶段
在自适应学习阶段是根据用户发音自适应调整系统合成参数,即基于目标对象对应的第二训练集对第一阶段得到的语音合成继续进行微调训练,以使最终得到的语音合成模型更加适用于目标对象。自适应学习阶段的训练样本同样包括一个样本文本、该文本对应的样本语音以及样本语音中各音素的真实发音时长,与第一阶段不同的是,该阶段中的样本语音都是同一对象的语音数据,而非多人语音数据。该阶段只需要少量的训练样本即实现模型的微调,对于任一目标对象,可以通过采集该对象对应于样本文本若干句话作为样本语音。
作为一可选方案,图11和图12示出了自适应学习阶段即微调阶段的一种语音处理系统的结构示意图,如图11和图12所示,该系统中可以包括一个录音模块、一个播音模块、一个语音合成模块(语音合成模型)、一个发音诊断模块和一个语音增强模块,其中,语音合成模块只示出了其包含的部分结构。在经过微调训练得到目标对象(即图11和图12中的学习者)对应的目标语音合成模型之后,可以采用图12所示的结构来生成目标对象对应于学习文本(即目标文本)的目标语音,并可以通过学习者的用户终端上自带或外接的播音模块将目标语音提供给学习者学习。
以图4中的对象1作为目标对象,该对象的用户终端为第一终端31,可选的,对象1的样本语音可以通过以下方式获取:
步骤1.1:通过第一终端31展现跟读文本TEXT给对象1学习。
步骤1.2:训练服务器或应用服务器采用语音合成模块将跟读文本TEXT转成22K采样率的参考音REF。
步骤1.3:通过第一终端31的语音播放模块将参考音REF播放给对象1学习。
步骤1.4:通过第一终端31的语音采集模块用22K采样率采集对象1的单通道跟读录音HYP。
其中,在自适应学习阶段,上述跟读文本TEXT为样本文本,采用到的跟读语音HYP为对象1对应于该样本文本的样本语音。对于每个样本语音,可以通过人工标注或训练好的音素时长预测器得到样本语音的各个音素的真实时长信息。通过上述方式可以得到对象1的若干个训练样本。其中,步骤2得到的参考音REF可以是采用上述第一阶段训练得到的语音合成模型合成语音数据(此时可以将任意语音的梅尔谱作为声纹提取器的输入,语音合成模型根据该语音的梅尔谱和跟读文本TEXT合成参考语音),也可以是采用训练后的其他语音合成模型合成。
在得到目标对象对应的若干个训练样本之后,则可以基于这些样本对语音合成模型继续进行微调训练,可选的,在执行训练操作之前,还可以通过语音增强模型对各个训练样本中的样本语音进行语音增强处理,如图11所示,将通过录音模块采集的学习者的样本语音(学习者口音)输入语音增强模块,得到增强后的语音数据,基于增强处理后的样本进行训练,该阶段的训练流程可以包括以下步骤:
步骤1:通过发音诊断模块诊断跟读录音HYP(可以是增强后的语音)的发音情况,即训练样本中样本语音包含的各个语音帧的发音状态。
该步骤中,可以通过发音诊断模块预测得到跟读语音HYP中各个音素的发音状态,再根据各个音素的真实发音时长和语音帧帧长的关系,可以得到各个语音帧的发音状态,也就是得到了跟读录音HYP的帧级别的正确性掩膜MASK,发音正确的语音帧的掩码值为1,发音错误的语音帧的掩码值为0。
步骤2:提取跟读语音的梅尔谱Meluser。
可选的,在步骤1之前,还可以对跟读语音HYP进行声道长度规整处理(图11中所示的使用学习者口音声道长度系数(可以随机生成)修改目标语谱图),再对对规整后的语音进行发音诊断和梅尔谱特征的提取。也可以是对增强处里后的语音进行诊断,梅尔谱特征是对规整后的语音进行提取得到。
步骤3:将跟读语音的梅尔谱Meluser和跟读文本TEXT送入语音合成模型合成新跟读音TTS即微调阶段的新语音。
该步骤具体可以包括:
步骤3.1:基于跟读语音的梅尔谱Meluser,通过声纹提取器提取跟读录音HYP的声纹特征Euser。
步骤3.2:基于跟读文本TEXT,通过音素编码器得到各个音素的编码特征。
步骤3.3:将声纹特征Euser和各个音素的编码特征输入到音素到语音帧的解析器,通过解析器得到合成的帧级别的编码特征。
步骤3.4:帧级别的编码特征输入到梅尔谱解码器中,得到合成的各语音帧的梅尔谱MelTTS。
步骤3.5:合成的各语音帧的梅尔谱MelTTS经由梅尔谱转语音声码器得到合成的新语音;
步骤3.6:合成的各语音帧的梅尔谱MelTTS经由声纹提取器得到合成的声纹特征Etts。
步骤4:计算训练损失。
同样的,可以基于各跟读语音HYP对应的声纹特征Euser和声纹特征Etts,通过上述1.10中的公式(1)计算声纹相似度损失,可以基于各跟读语音HYP对应帧级别的正确性掩膜MASK、跟读录音HYP的梅尔谱Meluser和合成语音的梅尔谱MelTTS,通过上述1.10中的公式(2)计算得到发音正确的各语音帧的梅尔谱损失。
可选的,在微调训练阶段,可以采用EWC学习方式训练,相应的,模型的训练损失还可以包括EWC正则化项损失。微调训练阶段的训练总损失可以表示如下:
L=αLs总+βLmel总+γLewc总 (4)
其中,微调训练阶段的三部分损失对应的损失权重和第一阶段训练时三部分损失对应的损失权重可以相同,也可以不同,可以根据经验值设置和调整。
步骤13:按照损失总损失调整语音合成模型中解码器参数,固定语音合成编码器参数(音素编码器和声纹提取器的模型参数),并重复上述训练流程,直至模型的训练总损失收敛或迭代训练次数达到一定次数。
通过微调训练阶段的不断训练学习,即可得到对应于目标对象的目标语音合成模型。
由上述训练流程可以看出,本申请实施例提供的训练方式,采用声纹相似度损失约束口音自适应学习的合成输出结果,可以让语音合成模型在学习过程中实现对说话人口音(即图11和图12中的学习者音色)的自适应调节,在训练过程中,通过对样本语音进行声道长度规整,可以让语音合成模型在学习过程中实现对说话人的声道长度进行自适应调节,从而可以让训练得到的语音合成模型可以适用于任意声道长度。
可选的,在实际实施时,可以根据实际应用需求,训练得到对应于一个或多个目标对象的目标语音合成模型,并部署到应用服务器中,也就是说,可以存储对应于多个目标对象的多套模型参数,这样,应用服务器在需要为某个对象合成语音时,采用该对象对应的一套模型参数来合成语音即可,如图4中所示,可以分别基于对象1对应的训练样本和对象2对应的训练样本对第一训练阶段训练后的语音合成模型继续进行微调训练,得到对应于对象1的目标语音合成模型1和对应于对象2的目标语音合成模型2。也可以是将第一阶段训练后的语音合成模型部署到应用服务器,可以有应用服务器在线进行自适应学习,即可以由应用服务器基于目标对象对应的样本数据对语音合成模型进行微调训练,得到更加适用于学习者的目标语音合成模型。
如图5所示,应用服务器可以通过执行以下步骤为应用程序的使用者提供跟读服务:
步骤21:获取模板语音生成请求。
可选的,应用程序的客户端界面上可配置有跟读材料生成控件,使用者在想要进行根据学习时,可以选择根据系统默认提供的模板语音(如合成语音)进行跟读,也可以通过触发上述生成控件来获取与用户自身音色匹配的模板语音,终端设备在检测到用户的该操作时,可以向服务器发送包含语料标识(指示想要跟读的是哪个学习材料,该标识可以是文本标识)和用户标识(即目标对象标识)的模板语音生成请求。
步骤22:确定上述模板语音生成请求对应的目标文本,并获取目标对象对应于目标文本的初始语音。
服务器根据模板语音生成请求中的文本标识,可以从学习语料数据库中确定出当前用户想要根据的目标文本。服务器还可以通过用户终端提示用户先根据系统默认提供的模板语音(初始跟读模板语音)进行一次跟读,从而可以获取到跟读语音(即初始语音)。
步骤S23:调用目标对象对应的目标语音合成模型,合成目标语音。
应用服务器可以根据模板语音生成请求中的用户标识,调用该用户标识对应的目标语音合成模型,以基于目标文本和初始语音来合成新的语音,并将该合成语音(即目标跟读模板语音)作为新的语音学习材料提供给用户进行学习,即步骤S24:将目标语音发送给终端设备,终端设备可以将语音播放给用户进行跟读学习。比如,用户标识是图4中的对象2的标识,应用服务器则可以调用对象2对应的目标语音合成模型,合成符合对象2口音的目标语音(图4中的目标语音2),同样,如果用户标识是对象1,可以为对象1提供符合对象1发音特定的目标语音1,从而可以不同的对象都可以根据符合自身发音特色的语音材料进行跟读学习,可以有效提升学习效果。采用本申请实施例提供的方案,对象1和对象2在学习同一文本的发音时,也可以获取到发音特点不同的目标语音,更加有利于提升学习效果。
可见,基于本申请实施例提供的语音数据处理方法,可以提供一种更利用学习者学习的口音自适应的交互式语音学习方法和系统,经测试,通过该方法和系统,可以只需要1-5句话对系统进行微调,即可合成用户说话声音,并能够针对用户的发音习惯和用户口音进行自适应调整,生成逼近用户音色和发音速度、韵律的语音,从而用户可以模仿自己声音学习,更好地自我鉴定跟读的相似程度,有效地进行自监督学习。本申请实施例提供的该种学习范式与目前其他语音学习系统的学习反馈方式的不同之处在于其反馈给学习者的是学习者自身的口音的语音,而非分数或者错误提示,以便于其模仿学习目标。因为学习者模仿自己的语音总是较为容易的,因此,学习者经过一定的模仿学习后,可以再利用发音评分模块或发音诊断模块,即可判断自己的学习水平是否提高。
基于本申请实施例提供的方案,可使得系统在交互式学习过程中逐渐学习用户的口音特点,采用用户口音合成跟读材料,极大地降低了用户跟读的难度。实践表明该系统合成的语音的模仿难度低于其他合成系统语音的模仿难度,有效地加速了发音练习的过程,能够更好的满足应用需求。
对应于本申请实施提供的语音数据处理方法,本申请实施例还提供了一种语音数据处理装置,如图13所示,该语音数据处理装置100可以包括训练数据获取模块110、发音诊断模块120和模型训练模块130。
训练数据获取模块110,用于获取多个训练样本,训练样本包括一个样本文本和该样本文本对应的样本语音;
发音诊断模块120,用于确定各样本语音的发音情况,发音情况包括样本语音中各语音帧的发音状态是否正确;
模型训练模块130,用于通过对初始语音合成模型重复执行训练操作,得到满足预设条件的目标语音合成模型,其中,上述训练操作包括以下各个步骤:
获取各样本语音中各语音帧的第一语音特征;
通过初始语音合成模型对各训练样本分别执行以下操作,得到各训练样本各自对应的第一声纹特征、第二声纹特征和新语音:
基于该样本对应的第一语音特征提取第一声纹特征,根据该样本对应的样本文本和第一声纹特征,生成该样本对应的各新的语音帧的第二语音特征,并基于该第二语音特征得到该样本对应的第二声纹特征和新语音;
根据各训练样本对应的第一声纹特征和第二声纹特征、以及各样本语音中发音正确的各语音帧对应的第一语音特征和第二语音特征,确定训练总损失,并基于训练总损失对初始语音合成模型的模型参数进行调整。
可选的,每个训练样本还包括该训练样本中的样本文本所对应的各语音单元的真实发音时长;发音诊断模块在确定各样本语音的发音情况时,可以用于:
对应任一样本语音,通过以下方式确定该样本语音的发音情况:
基于该样本语音,确定该样本语音中各语音单元的发音状态;
基于该样本语音中各语音单元的真实发音时长和发音状态,确定该样本语音包含的各语音帧的发音状态。
可选的,每个训练样本还包括该训练样本中的样本文本所对应的各语音单元的真实发音时长;对于任一训练样本,模型训练模块可以用于:
基于该训练样本中的样本文本,得到该样本文本对应的各语音单元的第一编码特征;
根据各语音单元的第一编码特征和该训练样本中的样本语音的第一声纹特征,预测得到该样本文本对应的各语音单元的预测发音时长;
根据该样本文本对应的各语音单元的第一编码特征和预测发音时长,确定该样本文本对应的各新的语音帧的第二编码特征;
根据各新的语音帧的第二编码特征,解码得到该训练样本对应的第二语音特征。
基于该训练样本中的样本文本,得到该样本文本对应的各语音单元的第一编码特征;
根据各语音单元的第一编码特征和该训练样本中的样本语音的第一声纹特征,预测得到该样本文本对应的各语音单元的预测发音时长;
根据该样本文本对应的各语音单元的第一编码特征和预测发音时长,得到该样本文本对应的各语音帧的第二编码特征;
根据各语音帧的第二编码特征,解码得到该训练样本对应的第二语音特征。
可选的,模型训练模型在确定训练总损失时可以用于:
根据各训练样本对应的第一声纹特征和第二声纹特征之间的差异,确定第一训练损失;
基于各样本语音中发音正确的各语音帧对应的第一语音特征和第二语音特征之间的差异,确定第二训练损失;
根据各训练样本对应的各语音单元的真实发音时长和预测发音时长,确定第三训练损失;
根据第一训练损失、第二训练损失和第三训练损失,确定训练总损失。
可选的,多个训练样本包括多个第一样本和多个第二样本,其中,多个第一样本中的样本语音包括多个样本对象对应于样本文本的样本语音,多个第二样本中的样本语音是目标对象对应于样本文本的样本语音;预设条件包括第一条件和第二条件;
模型训练模块在通过对初始语音合成模型重复执行训练操作,得到满足预设条件的目标语音合成模型时,可以用于:
基于多个第一样本,对初始语音合成模型重复执行训练操作,直至满足第一条件,得到第一语音合成模型;基于多个第二样本,对第一语音合成模型重复执行训练操作,直至满足第二条件,得到目标语音合成模型。
可选的,初始语音合成模型包括编码网络和解码网络,对于任一训练样本,该训练样本对应的第二声纹特征和新语音是通过以下方式得到的:
基于该训练样本中样本语音的第一语音特征,通过编码网络提取得到该样本语音的第一声纹特征;
基于该训练样本中的样本文本,通过编码网络得到该样本文本对应的各语音单元的第一编码特征;
基于该训练样本对应的各语音单元的第一编码特征和第一声纹特征,通过解码网络得到该训练样本对应的第二语音特征,并基于第二语音特征得到该样本文本对应的新语音;
基于该训练样本对应的第二语音特征,通过编码网络得到的声纹特征。
可选的,模型训练模块在基于多个第二样本,对第一语音合成模型执行训练操作时,可以基于训练总损失对第一语音合成模型的解码网络的模型参数进行调整。
可选的各样本语音的第一语音特征可以是通过以下方式获取到的:
对各样本语音进行预处理,得到各样本语音对应的预处理后的语音;
基于各样本语音对应的预处理后的语音,得到各样本语音对应的第一语音特征;
其中,对于任一样本语音,预处理包括以下至少一项:
对样本语音进行语音增强;
随机生成样本语音对应的声道长度调整系数,采用声道长度调整系数对样本语音进行调整。
本申请实施例还提供了一种语音数据处理装置,该装置可以包括待处理数据获取模块和目标语音合成模块。
待处理数据获取模块,用于获取目标文本和目标对象对应于目标文本的初始语音;
目标语音合成模块,用于基于目标文本和初始语音,通过目标语音合成模型生成目标对象对应于目标文本的目标语音,其中,目标语音合成模型是采用本申请实施例提供的语音数据处理方法中的训练方式训练得到的。
可选的,目标语音合成模块可以用于:获取初始语音的第三语音特征;基于目标文本和第三语音特征,通过目标语音合成模型执行以下操作,得到目标语音:基于第三语音特征,提取得到目标对象的第三声纹特征;基于目标文本,得到目标文本对应的各语音单元的第三编码特征;基于各语音单元的第三编码特征和第三声纹特征,预测目标文本对应的各语音单元的发音时长;根据各语音单元的第三编码特征和发音时长,得到各语音帧的第四编码特征;根据各语音帧的第四编码特征,解码得到各语音帧的语音特征,基于各语音帧的语音特征,得到目标语音。
可选的,待处理数据获取模块在获取目标对象对应于目标文本的初始语音时,可以用于:获取目标文本对应的初始跟读模板语音;将初始跟读模板语音播放给目标对象;获取目标对象对应于初始跟读模板语音的跟读语音,将跟读语音作为初始语音;其中,目标语音为对应于目标对象的目标跟读模板语音。
可以理解的是,本申请实施例的装置可执行本申请实施例所提供的方法,其实现原理相类似,本申请各实施例的装置中的各模块所执行的动作是与本申请各实施例的方法中的步骤相对应的,对于装置的各模块的详细功能描述具体可以参见前文中所示的对应方法中的描述,此处不再赘述。
本申请实施例中提供了一种电子设备,包括存储器、处理器及存储在存储器上的计算机程序,该处理器执行存储器中存储的计算机程序时可实现本申请任一可选实施例中的方法。
图14示出了本发明实施例所适用的一种电子设备的结构示意图,如图14所示,该电子设备可以为服务器或者用户终端,该电子设备可以用于实施本发明任一实施例中提供的方法。
如图14中所示,该电子设备2000主要可以包括至少一个处理器2001(图14中示出了一个)、存储器2002、通信模块2003和输入/输出接口2004等组件,可选的,各组件之间可以通过总线2005实现连接通信。需要说明的是,图14中示出的该电子设备2000的结构只是示意性的,并不构成对本申请实施例提供的方法所适用的电子设备的限定。
其中,存储器2002可以用于存储操作系统和应用程序等,应用程序可以包括在被处理器2001调用时实现本发明实施例所示方法的计算机程序,还可以包括用于实现其他功能或服务的程序。存储器2002可以是ROM(Read Only Memory,只读存储器)或可存储静态信息和指令的其他类型的静态存储设备,RAM(Random Access Memory,随机存取存储器)或者可存储信息和计算机程序的其他类型的动态存储设备,也可以是EEPROM(ElectricallyErasable Programmable Read Only Memory,电可擦可编程只读存储器)、CD-ROM(CompactDisc Read Only Memory,只读光盘)或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。
处理器2001通过总线2005与存储器2002连接,通过调用存储器2002中所存储的应用程序实现相应的功能。其中,处理器2001可以是CPU(Central Processing Unit,中央处理器),通用处理器,DSP(Digital Signal Processor,数据信号处理器),ASIC(Application Specific Integrated Circuit,专用集成电路),FPGA(FieldProgrammable Gate Array,现场可编程门阵列)或者其他可编程逻辑器件、晶体管逻辑器件、硬件部件或者其任意组合,其可以实现或执行结合本发明公开内容所描述的各种示例性的逻辑方框,模块和电路。处理器2001也可以是实现计算功能的组合,例如包含一个或多个微处理器组合,DSP和微处理器的组合等。
电子设备2000可以通过通信模块2003(可以包括但不限于网络接口等组件)连接到网络,以通过网络与其它设备(如用户终端或服务器等)的通信,实现数据的交互,如向其他设备发送数据或从其他设备接收数据。其中,通信模块2003可以包括有线网络接口和/或无线网络接口等,即通信模块可以包括有线通信模块或无线通信模块中的至少一项。
电子设备2000可以通过输入/输出接口2004可以连接所需要的输入/输出设备,如键盘、显示设备等,电子设备200自身可以具有显示设备,还可以通过接口2004外接其他显示设备。可选的,通过该接口2004还可以连接存储装置,如硬盘等,可以将电子设备2000中的数据存储到存储装置中,或者读取存储装置中的数据,还可以将存储装置中的数据存储到存储器2002中。可以理解的,输入/输出接口2004可以是有线接口,也可以是无线接口。根据实际应用场景的不同,与输入/输出接口2004连接的设备,可以是电子设备2000的组成部分,也可以是在需要时与电子设备2000连接的外接设备。
用于连接各组件的总线2005可以包括一通路,在上述组件之间传送信息。总线2005可以是PCI(Peripheral Component Interconnect,外设部件互连标准)总线或EISA(Extended Industry Standard Architecture,扩展工业标准结构)总线等。根据功能的不同,总线2005可以分为地址总线、数据总线、控制总线等。
可选的,对于本发明实施例所提供的方案而言,存储器2002可以用于存储执行本发明方案的计算机程序,并由处理器2001来运行,处理器2001运行该计算机程序时实现本发明实施例提供的方法或装置的动作。
基于与本申请实施例提供的方法相同的原理,本申请实施例提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时可实现前述方法实施例的相应内容。
本申请实施例还提供了一种计算机程序产品,该产品包括计算机程序,该计算机程序被处理器执行时可实现前述方法实施例的相应内容。
需要说明的是,本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”、“第四”、“1”、“2”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例能够以除图示或文字描述以外的顺序实施。
应该理解的是,虽然本申请实施例的流程图中通过箭头指示各个操作步骤,但是这些步骤的实施顺序并不受限于箭头所指示的顺序。除非本文中有明确的说明,否则在本申请实施例的一些实施场景中,各流程图中的实施步骤可以按照需求以其他的顺序执行。此外,各流程图中的部分或全部步骤基于实际的实施场景,可以包括多个子步骤或者多个阶段。这些子步骤或者阶段中的部分或全部可以在同一时刻被执行,这些子步骤或者阶段中的每个子步骤或者阶段也可以分别在不同的时刻被执行。在执行时刻不同的场景下,这些子步骤或者阶段的执行顺序可以根据需求灵活配置,本申请实施例对此不限制。
以上仅是本申请部分实施场景的可选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请的方案技术构思的前提下,采用基于本申请技术思想的其他类似实施手段,同样属于本申请实施例的保护范畴。
Claims (15)
1.一种语音数据处理方法,其特征在于,包括:
获取多个训练样本,每个所述训练样本包括一个样本文本和该样本文本对应的样本语音;
确定各所述样本语音的发音情况,所述发音情况包括样本语音中各语音帧的发音状态是否正确;
通过对初始语音合成模型重复执行训练操作,得到满足预设条件的目标语音合成模型,其中,所述训练操作包括以下各个步骤:
获取各所述样本语音中各语音帧的第一语音特征;
通过所述初始语音合成模型对各所述训练样本分别执行以下操作,得到各所述训练样本各自对应的第一声纹特征、第二声纹特征和新语音:
基于所述训练样本对应的第一语音特征提取第一声纹特征,根据该样本对应的样本文本和第一声纹特征,生成该样本对应的各新的语音帧的第二语音特征,并基于该第二语音特征得到该样本对应的第二声纹特征和新语音;
根据各所述训练样本对应的第一声纹特征和第二声纹特征、以及各所述样本语音中发音正确的各语音帧对应的第一语音特征和第二语音特征,确定训练总损失,并基于所述训练总损失对初始语音合成模型的模型参数进行调整。
2.根据权利要求1所述的方法,其特征在于,每个所述训练样本还包括该训练样本中的样本文本所对应的各语音单元的真实发音时长;
所述确定各所述样本语音的发音情况,包括:
对应任一所述样本语音,通过以下方式确定该样本语音的发音情况:
基于该样本语音,确定该样本语音中各语音单元的发音状态;
基于该样本语音中各语音单元的真实发音时长和发音状态,确定该样本语音包含的各语音帧的发音状态。
3.根据权利要求1所述的方法,其特征在于,对于任一训练样本,所述根据该样本对应的样本文本和第一声纹特征,生成该样本对应的各新的语音帧的第二语音特征,包括:
基于该训练样本中的样本文本,得到该样本文本对应的各语音单元的第一编码特征;
根据所述各语音单元的第一编码特征和该训练样本中的样本语音的第一声纹特征,预测得到该样本文本对应的各语音单元的预测发音时长;
根据该样本文本对应的各语音单元的第一编码特征和预测发音时长,确定该样本文本对应的各新的语音帧的第二编码特征;
根据所述各新的语音帧的第二编码特征,解码得到该训练样本对应的第二语音特征。
4.根据权利要求3所述的方法,其特征在于,每个所述训练样本还包括该训练样本中的样本文本所对应的各语音单元的真实发音时长;
所述根据各所述训练样本对应的第一声纹特征和第二声纹特征、以及各所述样本语音中发音正确的各语音帧对应的第一语音特征和第二语音特征,确定训练总损失,包括:
根据各所述训练样本对应的第一声纹特征和第二声纹特征之间的差异,确定第一训练损失;
基于各所述样本语音中发音正确的各语音帧对应的第一语音特征和第二语音特征之间的差异,确定第二训练损失;
根据各所述训练样本对应的各语音单元的真实发音时长和预测发音时长,确定第三训练损失;
根据所述第一训练损失、所述第二训练损失和所述第三训练损失,确定训练总损失。
5.根据权利要求1所述的方法,其特征在于,所述多个训练样本包括多个第一样本和多个第二样本,其中,所述多个第一样本中的样本语音包括对应于多个第一对象对应的样本语音,所述多个第二样本中的样本语音是对应于同一目标对象的样本语音,其中,所述多个第一对象中的至少部分对象不所述目标对象;
所述通过对初始语音合成模型重复执行训练操作,得到满足预设条件的目标语音合成模型,包括:
基于所述多个第一样本,对所述初始语音合成模型重复执行训练操作,直至满足第一条件,得到第一语音合成模型;
基于所述多个第二样本,对所述第一语音合成模型重复执行训练操作,直至满足第二条件,得到对应于所述目标对象的目标语音合成模型;
其中,所述预设条件包括所述第一条件和所述第二条件。
6.根据权利要求5所述的方法,其特征在于,所述初始语音合成模型包括编码网络和解码网络,对于任一训练样本,该训练样本对应的第一声纹特征、第二声纹特征和新语音是通过以下方式得到的:
基于该训练样本中样本语音的第一语音特征,通过所述编码网络提取得到该样本语音的第一声纹特征;
基于该训练样本中的样本文本,通过所述编码网络得到该样本文本对应的各语音单元的第一编码特征;
基于该训练样本对应的各语音单元的第一编码特征和第一声纹特征,通过所述解码网络得到该训练样本对应的第二语音特征,并基于所述第二语音特征得到该样本文本对应的新语音;
基于该训练样本对应的第二语音特征,通过所述编码网络得到的声纹特征;
其中,在基于所述多个第二样本,对所述第一语音合成模型执行训练操作时,基于训练总损失对第一语音合成模型的模型参数进行调整,包括:
基于训练总损失对第一语音合成模型的解码网络的模型参数进行调整。
7.根据权利要求1至6中任一项所述的方法,其特征在于,所述获取各所述样本语音中各语音帧的第一语音特征,包括:
对各所述样本语音进行预处理,得到各样本语音对应的预处理后的语音;
基于各所述样本语音对应的预处理后的语音,得到各所述样本语音对应的第一语音特征;
其中,对于任一所述样本语音,所述预处理包括以下至少一项:
对所述样本语音进行语音增强;
随机生成所述样本语音对应的声道长度调整系数,采用所述声道长度调整系数对所述样本语音进行调整。
8.一种语音数据处理方法,其特征在于,所述方法包括:
获取目标文本和目标对象对应于目标文本的初始语音;
基于所述目标文本和所述初始语音,通过目标语音合成模型生成所述目标对象对应于所述目标文本的目标语音,其中,所述目标语音合成模型是采用权利要求1至7中任一项所述的方法训练得到的。
9.根据权利要求8所述的方法,其特征在于,所述基于所述目标文本和所述初始语音,通过目标语音合成模型生成所述目标对象对应于所述目标文本的目标语音,包括:
获取所述初始语音的第三语音特征;
基于所述目标文本和所述第三语音特征,通过所述目标语音合成模型执行以下操作,得到所述目标语音:
基于所述第三语音特征,提取得到所述目标对象的第三声纹特征;
基于所述目标文本,得到所述目标文本对应的各语音单元的第三编码特征;
基于所述各语音单元的第三编码特征和所述第三声纹特征,预测所述目标文本对应的各语音单元的发音时长;
根据所述各语音单元的第三编码特征和发音时长,得到各语音帧的第四编码特征;
根据所述各语音帧的第四编码特征,解码得到所述各语音帧的语音特征,基于各所述语音帧的语音特征,得到所述目标语音。
10.根据权利要求8或9所述的方法,其特征在于,获取目标对象对应于目标文本的初始语音,包括:
获取所述目标文本对应的初始跟读模板语音;
将所述初始跟读模板语音播放给所述目标对象;
获取所述目标对象对应于所述初始跟读模板语音的跟读语音,将所述跟读语音作为所述初始语音;
其中,所述目标语音为对应于所述目标对象的目标跟读模板语音。
11.一种语音数据处理装置,其特征在于,包括:
训练数据获取模块,用于获取多个训练样本,所述训练样本包括一个样本文本和该样本文本对应的样本语音;
发音诊断模块,用于确定各所述样本语音的发音情况,所述发音情况包括样本语音中各语音帧的发音状态是否正确;
模型训练模块,用于通过对初始语音合成模型重复执行训练操作,得到满足预设条件的目标语音合成模型,其中,所述训练操作包括以下各个步骤:
获取各所述样本语音中各语音帧的第一语音特征;
通过所述初始语音合成模型对各所述训练样本分别执行以下操作,得到各所述训练样本各自对应的第一声纹特征、第二声纹特征和新语音:
基于所述训练样本对应的第一语音特征提取第一声纹特征,根据该样本对应的样本文本和第一声纹特征,生成该样本对应的各新的语音帧的第二语音特征,并基于该第二语音特征得到该样本对应的第二声纹特征和新语音;
根据各所述训练样本对应的第一声纹特征和第二声纹特征、以及各所述样本语音中发音正确的各语音帧对应的第一语音特征和第二语音特征,确定训练总损失,并基于所述训练总损失对初始语音合成模型的模型参数进行调整。
12.一种语音数据处理装置,其特征在于,包括:
待处理数据获取模块,用于获取目标文本和目标对象对应于目标文本的初始语音;
目标语音合成模块,用于基于所述目标文本和所述初始语音,通过目标语音合成模型生成所述目标对象对应于所述目标文本的目标语音,其中,所述目标语音合成模型是采用权利要求1至7中任一项所述的方法训练得到的。
13.一种电子设备,其特征在于,所述电子设备包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器通过执行所述计算机程序以实现权利要求1至7任一项所述的方法,或者实现权利要求8至10任一项所述的方法。
14.一种计算机可读存储介质,其特征在于,所述存储介质中存储有计算机程序,所述计算机程序被处理器执行时实现1至7任一项所述的方法,或者实现权利要求8至10任一项所述的方法。
15.一种计算机程序产品,其特征在于,所述计算机产品包括计算机程序,所述计算机程序被处理器执行时实现1至7任一项所述的方法,或者实现权利要求8至10任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211091837.2A CN117012182A (zh) | 2022-09-07 | 2022-09-07 | 语音数据处理方法、装置、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211091837.2A CN117012182A (zh) | 2022-09-07 | 2022-09-07 | 语音数据处理方法、装置、电子设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117012182A true CN117012182A (zh) | 2023-11-07 |
Family
ID=88564253
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211091837.2A Pending CN117012182A (zh) | 2022-09-07 | 2022-09-07 | 语音数据处理方法、装置、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117012182A (zh) |
-
2022
- 2022-09-07 CN CN202211091837.2A patent/CN117012182A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10930263B1 (en) | Automatic voice dubbing for media content localization | |
US11587569B2 (en) | Generating and using text-to-speech data for speech recognition models | |
CN111667812B (zh) | 一种语音合成方法、装置、设备及存储介质 | |
CN111326136B (zh) | 语音处理方法、装置、电子设备及存储介质 | |
CN110246488B (zh) | 半优化CycleGAN模型的语音转换方法及装置 | |
CN112071330B (zh) | 一种音频数据处理方法、设备以及计算机可读存储介质 | |
CN116364055B (zh) | 基于预训练语言模型的语音生成方法、装置、设备及介质 | |
CN112786004B (zh) | 语音合成方法以及电子设备、存储装置 | |
CN113539231B (zh) | 音频处理方法、声码器、装置、设备及存储介质 | |
Zhao et al. | Converting foreign accent speech without a reference | |
CN111862934A (zh) | 语音合成模型的改进方法和语音合成方法及装置 | |
WO2024055752A1 (zh) | 语音合成模型的训练方法、语音合成方法和相关装置 | |
CN112530400A (zh) | 基于深度学习的文本生成语音的方法、系统、装置及介质 | |
Qu et al. | LipSound: Neural Mel-Spectrogram Reconstruction for Lip Reading. | |
CN113555000A (zh) | 声学特征转换及模型训练方法、装置、设备、介质 | |
CN114582317B (zh) | 语音合成方法、声学模型的训练方法及装置 | |
CN112908293A (zh) | 一种基于语义注意力机制的多音字发音纠错方法及装置 | |
CN113205793A (zh) | 音频生成方法、装置、存储介质及电子设备 | |
CN117373431A (zh) | 音频合成方法、训练方法、装置、设备及存储介质 | |
Lavechin et al. | Modeling early phonetic acquisition from child-centered audio data | |
Lavechin et al. | Statistical learning models of early phonetic acquisition struggle with child-centered audio data | |
CN116312476A (zh) | 语音合成方法和装置、存储介质、电子设备 | |
CN114783410B (zh) | 语音合成方法、系统、电子设备和存储介质 | |
CN114283781A (zh) | 语音合成方法及相关装置、电子设备和存储介质 | |
CN117012182A (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 |