一种法语语音合成前端处理方法及装置
文献发布时间:2023-06-19 19:30:30
技术领域
本发明涉及自然语言处理技术领域,更具体的说,是涉及一种法语语音合成前端处理方法及装置。
背景技术
法语节奏组的划分主要依据语法、固定搭配和标点信息,比如对于句子“jevaisenFrancedetempsentemps.”,法语表达中习惯划将其分成三个节奏组:
“jevais||enFrance||detempsentemps.”
传统的法语语音合成任务的前端处理与其他印欧语系语种类似,常见做法是通过查词典/发音预测等处理流程获得输入文本的音素、音节、单词等信息。由于法语联诵现象的存在,处理过程需要使用一些方法对音素序列进行修改。这种常见的前端处理流程容易产生一些发音和韵律问题,主要是重音错误、联诵错误和语调错误,主要原因是忽视了节奏组划分的重要性。
发明内容
有鉴于此,本发明提供如下技术方案:
一种法语语音合成前端处理方法,包括:
对待处理法语文本数据进行预处理,得到预处理数据,所述预处理包括文本切分和数据压缩;
基于节奏组预测模型确定所述预处理数据的节奏组划分数据,所述节奏组预测模型以Transformer网络为基础的双向编码文本表示变换器BERT搭建而成;
基于所述节奏组划分数据确定所述待处理数据的韵律信息。
可选地,所述节奏组预测模型的训练过程包括:
对法语文本数据进行预处理,得到预处理数据;
获得所述法语文本数据的标注数据,所述标注数据表征所述法语文本数据的节奏组划分;
基于所述预处理数据和所述标注数据训练节奏组预测模型,得到训练完成的节奏组预测模型。
可选地,所述基于所述节奏组划分数据确定所述待处理数据的韵律信息,包括:
基于所述节奏组划分数据和设定的联诵规则确定每一个节奏组内的联诵数据,并确定相邻的节奏组之间不存在联诵。
可选地,其中,所述联颂规则包括但不限于以下至少一种:限定词/形容词+名词、人称代词+动词/代词、主语与其后连续的动词倒装、系动词être的变位+名词/介词/形容词/动词、单音节介词+名词、副词+形容词/副词/动词原形、et/quand/en+其他单词、复合名词/短语。
可选地,所述基于所述节奏组划分数据确定所述待处理数据的韵律信息,包括:
基于所述节奏组划分数据,依据节奏组末尾标签符号确定每个节奏组末尾的语调数据。
可选的,所述基于所述节奏组划分数据确定所述待处理数据的韵律信息,包括:
基于所述节奏组划分数据,为每个节奏组最后音节分配节奏重音,其他词不分配重音。
可选地,所述节奏组预测模型以Transformer网络为基础的BERT-tiny网络搭建而成。
可选地,所述BERT-tiny网络包括依次连接的多头注意力模块、前馈网络、两层残差结构和归一化层。
可选地,其中,所述预处理数据中每个子词通过随机初始化的得到512维编码,再加上该子词在句子中绝对位置的正弦编码,作为整个BERT-tiny网络的输入,所述BERT-tiny网络的输出标签为节奏组结束的位置标识。
一种法语语音合成前端处理装置,包括:
预处理模块,用于对待处理法语文本数据进行预处理,得到预处理数据,所述预处理包括文本切分和数据压缩;
节奏组划分模块,用于基于节奏组预测模型确定所述预处理数据的节奏组划分数据,所述节奏组预测模型以Transformer网络为基础的双向编码文本表示变换器BERT搭建而成;
韵律确定模块,用于基于所述节奏组划分数据确定所述待处理数据的韵律信息。
经由上述的技术方案可知,本发明实施例公开了一种法语语音合成前端处理方法及装置,方法包括:对待处理法语文本数据进行预处理,得到预处理数据,所述预处理包括文本切分和数据压缩;基于节奏组预测模型确定所述预处理数据的节奏组划分数据,所述节奏组预测模型以Transformer网络为基础的双向编码文本表示变换器BERT搭建而成;基于所述节奏组划分数据确定所述待处理数据的韵律信息。上述方案从法语节奏组这一特性出发,在进行语音合成前端处理时,首先通过模型预测出节奏组信息,然后在节奏组划分的基础上企业都能够法语文本韵律信息,从而能够得到更加准确的语音合成前端韵律信息,提升后续法语语音合成发音准确性和韵律效果。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本发明实施例公开的一种法语语音合成前端处理方法的流程图;
图2为本发明实施例公开的节奏组预测模型训练实现流程示意图;
图3为本发明实施例公开的收集并标定语料示例图;
图4为本发明实施例公开的使用BPE算法对法语单词进行切分示例图;
图5为本发明实施例公开的BERT输入和标签生成示例图;
图6为本发明实施例公开的BERT-tiny主体结构和注意力机制示例图;
图7为本发明实施例公开的全连接前馈网络示例图;
图8为本发明实施例公开的以节奏组为单位应用联诵规则的示例图;
图9为本发明实施例公开的根据节奏组结尾确定语调标签示例图;
图10为本发明实施例公开的确定节奏组重音示例图;
图11为本发明实施例公开的格式化前端信息数组送入后端声学模型示意图;
图12为本发明实施例公开的一个前端节奏组信息处理整体流程示意图;
图13为本发明实施例公开的一种法语语音合成前端处理装置的结构示意图;
图14为本申请实施例公开的一种电子设备的结构示意图。
具体实施方式
为了引用和清楚起见,下文中使用的技术名词的说明、简写或缩写总结如下:
Transformer:Transformer模型是一种神经网络,它通过跟踪序列数据中的关系(如这句话中的单词)来学习上下文并因此学习含义。Transformer模型应用了一组不断发展的数学技术,称为注意力或自我注意力,以检测甚至是系列中遥远的数据元素相互影响和相互依赖的微妙方式。
BERT:Bidirectional Encoder Representation form Transformer,双向编码文本表示变换器,BERT模型架构是一种基于多层双向变换器(Transformers)的编码器架构,在tensor2tensor库框架下发布。由于在实现过程当中采用了Transformers,BERT模型的实现几乎与Transformers一样。BERT预训练模型没有采用传统的从左到右或从右到左的单向语言模型进行预训练,而是采用从左到右和从右到左的双向语言模型进行预训练。
BERT-tiny:BERT等大模型性能强大,但很难部署到算力、内存有限的设备中。为此提出了BERT-tiny,这是一种为基于transformer的模型专门设计的知识蒸馏方法,模型大小不到BERT的1/7,但速度是BERT的9倍还要多,而且性能没有出现明显下降。
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
图1为本发明实施例公开的一种法语语音合成前端处理方法的流程图。参见图1所示,法语语音合成前端处理方法可以包括:
步骤101:对待处理法语文本数据进行预处理,得到预处理数据,所述预处理包括文本切分和数据压缩。
本申请所述前端处理,是指将文本信息转化到与发音相关信息的过程,发音相关的信息主要包括音素序列、韵律和语调等。其中,音素是指发音的最小单元,如中文里面声母、韵母;以及48个国际音标都属于音素级别;音节表示一个独立的语音单位,如中文中一个汉字为一个音节,每个音节必须包含一个韵母,可能包含声母。对于英语每个音节有且仅有一个元音,可能包含辅音。
本实施例中,在对法语文本进行节奏组划分前,需要首先对其进行预处理,也即进行基本的文本切分和数据压缩。一个可选的实施例中,可以采用字节对编码算法(bytepair encoder,BPE)对法语文本进行切分和数据压缩处理。BPE算法是一种介于字符和单词之间的语义单元表示,一方面可以解决印欧语系类语种的自然语言处理中出现的OOV词(Out-of-Vocabulary)的问题,使得OOV词也能够按照合理的方式拆分成子词词典中包含的子词再通过映射编码的方式完成数据的压缩。另一方面压缩数据的颗粒度大于字符级别,使得后续的模型的训练更加容易收敛。
步骤102:基于节奏组预测模型确定所述预处理数据的节奏组划分数据,所述节奏组预测模型以Transformer网络为基础的双向编码文本表示变换器BERT搭建而成。
在背景技术中已经介绍到,节奏组对于法语语音合成的发音正确性和韵律效果的影响,因此本申请方案在法语语音合成前端处理中,首先对法语文本进行节奏组划分,以此得到更加准确的语音合成前端韵律信息。
所述节奏组预测模型是预先搭建并训练好的模型,其具体实现将在后面的实施例中详细介绍,在此不再过多说明。
步骤103:基于所述节奏组划分数据确定所述待处理数据的韵律信息。
其中,所述韵律信息可以但不限于包括联诵数据、重音数据和语调数据。本申请充分考虑法语特殊的语言特性,基于节奏组划分数据确定出的韵律信息,能够有效提升后续语音合成系统在联诵、语调、重音问题上的效果表现。
本实施例所述法语语音合成前端处理方法从法语节奏组这一特性出发,在进行语音合成前端处理时,首先通过模型预测出节奏组信息,然后在节奏组划分的基础上企业都能够法语文本韵律信息,从而能够得到更加准确的语音合成前端韵律信息,提升后续法语语音合成发音准确性和韵律效果。
一个实现中,所述节奏组预测模型以Transformer网络为基础的BERT-tiny网络搭建而成。为了更好的理解本申请方案的具体实现,结合图2,下面将以句子“Excusez-moi,Tuvas en Italie de temps en temps?”为例说明节奏组预测模型训练实现。
第一步:收集法语文本数据,人工标注每句话的节奏组。
按照基础的法语语法和表达习惯,通常可以将句子划分为7种最小节奏组:限定词+名词,代词+动词,节词+名词,系动词+表语,形容词,副词和连接词。其中限定词包括冠词、主有形容词、指示形容词、泛指形容词等;代词包括主语人称代词、自反代词、直接宾语/间接宾语人称代词等,连接词包括连词和疑问词等。实际法语表达中会将最小的节奏组根据文本意思进行组合。节奏组的划分对于法语学习者十分容易进行划分,比如示例句子的节奏组划分如图3所示。
第二步:采用字节对编码算法对法语文本进行切分和数据压缩。
如示例句子的单词切分情况如图4所示。图4中,@符号表示原有单词的切分处,切分的方法基于BPE算法,BPE算法通过统计语料获得所有字词的词频词典,然后实现对于任意单词找到词频最高的子词组合方案。此方案的优点在于OOV词的编码以及NLP(NaturalLanguage Processing,自然语言处理)输入编码颗粒度的控制。
第三步:节奏组预测模型的搭建,采用以Transformer网络为基础的双向编码文本表示变换器BERT搭建节奏组预测模型,利用第一步标定的节奏组数据训练BERT网络。
由于法语节奏组的预测任务相对比较简单,本方案选择使用裁剪版本的BERT-tiny网络,输入和标签如图5所示,文本中每个子词(Sub-Word)通过随机初始化的得到512维编码(E0,E1,…,En),再加上该子词在句子中绝对位置的正弦编码(P0,P1,…,Pn),作为整个网络的输入(I0,I1,…,In),网络的输出标签为节奏组结束的位置标识。
绝对位置的正弦编码公式如公式1和公式2,其中pos表示位置编号,i表示编码向量第i维度,dmodel为模型的维度。
BERT-tiny的主体网络结构(图6左)所示,包括多头注意力模块(Multi-HeadAttention)、前馈网络(Feed Forward),以及两层残差结构(Residual Connection)和归一化层(LayerNorm)。本方案采用的Bert-tiny模型由四个这样的模块连续连接组成。其中网络的核心在于多头注意力模块(图6右),(I1,I2,…In)到的(Q1,Q2,…Qn)经过Scale之后与(K1,K2,…Kn)点乘的结果可以衡量子词之间的“依赖关系”,经过softmax得到归一化之后的“依赖程度”,再分别与(V1,V2,…Vn)按位相乘相加得到夹权平均之后的结果。多头注意力机制就是将多个注意力通过Concat连接起来,本方案中采用的头数(head_num)为4。输入embedding维度为512,Query的Scale参数由公式3确定。
图7为全连接前馈网络,由两个全连接层和中间一个ReLU激活函数层组成。图7为图6左图中的一个单元(前馈网络:FeedForward),图6左图中第二个归一化层(LayerNorm)的输出即为图7的输入。
基于以上内容,所述节奏组预测模型的训练过程可以概括为:对法语文本数据进行预处理,得到预处理数据;获得所述法语文本数据的标注数据,所述标注数据表征所述法语文本数据的节奏组划分;基于所述预处理数据和所述标注数据训练节奏组预测模型,得到训练完成的节奏组预测模型。
一个实现中,所述基于所述节奏组划分数据确定所述待处理数据的韵律信息,可以包括:基于所述节奏组划分数据和设定的联诵规则确定每一个节奏组内的联诵数据,并确定相邻的节奏组之间不存在联诵。
其中,关于联诵,法语单词单独存在时,末尾的辅音字母或者字母组合基本不发音,比如-s,-t,-le等,当处在句子中会根据其后的单词导致发音音素增加的现象;新增的音素并入下一个单词的首音节进行发声,这一现象称之为联诵现象。联诵的本质是一个原本不发音的词末辅音字母,在同一个节奏组内跟随其后的单词如果元音或者哑音h开头,则该辅音发音且与该元音合成一个音节,例如:Les
法语联诵现象仅仅出现在节奏组内部,节奏组之间是禁止进行联诵的,所以以节奏组为单位应用联诵规则更加合理。
本申请方案通过查询文献和咨询语言专家设计了一套联诵规则,以下仅仅罗列部分举例:
1、限定词/形容词+名词
法语限定词主要包括数词,冠词,主有形容词,指示形容词疑问词,泛指形容词等。
2、人称代词+动词/代词
法语中人称代词包括:je,tu,il,elle,nous,vous,ils,elles等。
3、主语与后面的动词倒装
4、动词/人称代词+代词(y,en)
5、系动词
6、单音节介词+名词
7、副词+形容词/副词/动词原形
8、et/quand/en+其他单词
9、复合名词/短语/特例
本方案将联诵规则的应用严格限定于节奏组单元内,例如示例句子联诵规则应用的过程与结果如图8所示。
一个实现中,所述基于所述节奏组划分数据确定所述待处理数据的韵律信息,可以包括:基于所述节奏组划分数据,依据节奏组末尾标签符号确定每个节奏组末尾的语调数据。
法语句子的语调一般来说比较平稳,并不会像英语中那种大幅度的升降。且实际句子的语调以节奏组为基本区分单元,无标点/逗号/冒号和破折号的节奏组末尾一般呈现升调,句号的节奏组末尾呈现降调,感叹号和问号的节奏组视句意情况进行升降调。
传统统计法语语调标签的方案都是根据文本句末的标点符号来进行建模,忽视了法语表达中语调主要以节奏组为基本单元。传统语音合成的方法由于没有节奏组的划分,使得句子中语调的颗粒度并不准确,容易产生预测偏差。
法语表达中语调通常以节奏组为单位,且可以根据节奏组末尾标点情况确定。本方案整理设计了一套语调规则,如下表所示:
示例句子的语调规则应用过程和结果如图9所示。
一个实现中,所述基于所述节奏组划分数据确定所述待处理数据的韵律信息,可以包括:基于所述节奏组划分数据,为每个节奏组最后音节分配节奏重音,其他词不分配重音。
法语属于典型的不限长词重音语种,且单词大多是开音节,本土词重音一般落在最后一个音节上,如单词Bonjour
当法语单词孤立表达时,单词一般在最后一个音节上有比较弱的重音,但是在句中大部分单词的词重音会消失,因此常见的法语语音合成前端处理的时候将法语当成无重音语种,依靠声学模型实现重音的预测,增加了模型预测的出错概率。
本申请方案中,法语表达中节奏组中除最后一个音节,其他单词的词重音都消失,最后一个音节重音为节奏重音,因此本方案在节奏组划分的基础上很容易得到音素串的重音标签。示例句子的重音标签如图10所示。
实际应用中,基于以上内容,可以将规范音素串、语调、重音信息等信息,作为后端声学模型的输入。如图11所示,将前面收集到法语对应的音素串、语调和重音信息规范化来作为后端声学模型的输入,用于指导模型韵律效果的提升。图12为一个前端节奏组信息处理整体流程示意图,可结合图12理解前述内容。
综上,本申请充分考虑了法语节奏组划分这一语言特性,结合节奏组对于法语口语表达在语调、重音、联诵方面对音频韵律的影响对法语语音合成做了如下处理:a对节奏组划分采用基于Transformer的BERT-tiny模型实现预测;b设计整理了一套联诵规则,结合节奏组的划分,提升前端音素联诵的准确率;c基于节奏组划分,设计了一套依据节奏组末尾标签符号情况的语调标签,使得语调标签更接近真实法语表达习惯;d基于节奏组划分,将每个节奏组最后音节分配节奏重音,其他词重音消失,使得重音标签更接近真实法语表达习惯。以上几点前端信息的改造均有利于改善后端声学模型训练,可以显著提升模型的发音正确性和韵律效果。
本申请方案从这些问题相关的语言学本质出发,并结合这些语音现象在实际口语表达中的表现形式制定处理流程,使得法语语音合成任务的韵律效果能够得到明显提升。
对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本发明所必须的。
上述本发明公开的实施例中详细描述了方法,对于本发明的方法可采用多种形式的装置实现,因此本发明还公开了一种装置,下面给出具体的实施例进行详细说明。
图13为本发明实施例公开的一种法语语音合成前端处理装置的结构示意图。参见图13所示,法语语音合成前端处理装置130可以包括:
预处理模块131,用于对待处理法语文本数据进行预处理,得到预处理数据,所述预处理包括文本切分和数据压缩。
节奏组划分模块132,用于基于节奏组预测模型确定所述预处理数据的节奏组划分数据,所述节奏组预测模型以Transformer网络为基础的双向编码文本表示变换器BERT搭建而成。
韵律确定模块133,用于基于所述节奏组划分数据确定所述待处理数据的韵律信息。
本实施例所述法语语音合成前端处理装置从法语节奏组这一特性出发,在进行语音合成前端处理时,首先通过模型预测出节奏组信息,然后在节奏组划分的基础上企业都能够法语文本韵律信息,从而能够得到更加准确的语音合成前端韵律信息,提升后续法语语音合成发音准确性和韵律效果。
所述法语语音合成前端处理装置及其各个模块的具体实现可参见方法实施例中相应部分的内容介绍,在此不再重复赘述。
上述实施例中的所述的任意一种法语语音合成前端处理装置包括处理器和存储器,上述实施例中的预处理模块、节奏组划分模块、韵律确定模块等均作为程序模块存储在存储器中,由处理器执行存储在所述存储器中的上述程序模块来实现相应的功能。
处理器中包含内核,由内核去存储器中调取相应的程序模块。内核可以设置一个或多个,通过调整内核参数来实现回访数据的处理。
存储器可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM),存储器包括至少一个存储芯片。
在示例性实施例中,还提供了一种计算机可读存储介质,可直接加载到计算机的内部存储器,其中含有软件代码,该计算机程序经由计算机载入并执行后能够实现上述法语语音合成前端处理方法任一实施例所示步骤。
在示例性实施例中,还提供一种计算机程序产品,可直接加载到计算机的内部存储器,其中含有软件代码,该计算机程序经由计算机载入并执行后能够实现上述所述的法语语音合成前端处理方法任一实施例所示步骤。
进一步,本发明实施例提供了一种电子设备。图14为本申请实施例公开的一种电子设备的结构示意图。参见图14所示,电子设备140包括至少一个处理器141、以及与处理器连接的至少一个存储器142、总线143;其中,处理器、存储器通过总线完成相互间的通信;处理器用于调用存储器中的程序指令,以执行上述的法语语音合成前端处理方法。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。