CN108305612B - 文本处理、模型训练方法、装置、存储介质和计算机设备 - Google Patents
文本处理、模型训练方法、装置、存储介质和计算机设备 Download PDFInfo
- Publication number
- CN108305612B CN108305612B CN201711168460.5A CN201711168460A CN108305612B CN 108305612 B CN108305612 B CN 108305612B CN 201711168460 A CN201711168460 A CN 201711168460A CN 108305612 B CN108305612 B CN 108305612B
- Authority
- CN
- China
- Prior art keywords
- sequence
- word
- vector
- word vector
- prosody
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000012545 processing Methods 0.000 title claims abstract description 167
- 238000012549 training Methods 0.000 title claims abstract description 91
- 238000000034 method Methods 0.000 title claims abstract description 79
- 238000003672 processing method Methods 0.000 title claims description 17
- 239000013598 vector Substances 0.000 claims abstract description 1460
- 238000013507 mapping Methods 0.000 claims abstract description 45
- 230000002441 reversible effect Effects 0.000 claims description 86
- 239000011159 matrix material Substances 0.000 claims description 44
- 230000008569 process Effects 0.000 claims description 32
- 230000011218 segmentation Effects 0.000 claims description 32
- 230000015572 biosynthetic process Effects 0.000 claims description 28
- 238000003786 synthesis reaction Methods 0.000 claims description 28
- 230000015654 memory Effects 0.000 claims description 22
- 238000004590 computer program Methods 0.000 claims description 18
- 238000003062 neural network model Methods 0.000 claims description 17
- 230000000306 recurrent effect Effects 0.000 claims description 14
- 238000012546 transfer Methods 0.000 claims description 13
- 238000002372 labelling Methods 0.000 description 43
- 230000033764 rhythmic process Effects 0.000 description 43
- 230000002457 bidirectional effect Effects 0.000 description 17
- 238000010586 diagram Methods 0.000 description 13
- 230000000694 effects Effects 0.000 description 7
- 238000010801 machine learning Methods 0.000 description 6
- 241000220225 Malus Species 0.000 description 5
- 125000004122 cyclic group Chemical group 0.000 description 4
- 230000006870 function Effects 0.000 description 4
- 238000012360 testing method Methods 0.000 description 4
- 238000012795 verification Methods 0.000 description 4
- 230000008859 change Effects 0.000 description 3
- 230000009466 transformation Effects 0.000 description 3
- 230000007704 transition Effects 0.000 description 3
- 235000021016 apples Nutrition 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 235000013399 edible fruits Nutrition 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000006403 short-term memory Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 239000000126 substance Substances 0.000 description 1
- 238000010200 validation analysis Methods 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/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
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/279—Recognition of textual entities
- G06F40/289—Phrasal analysis, e.g. finite state techniques or chunking
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/30—Semantic analysis
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L13/00—Speech synthesis; Text to speech systems
- G10L13/08—Text analysis or generation of parameters for speech synthesis out of text, e.g. grapheme to phoneme translation, prosody generation or stress or intonation determination
- G10L13/10—Prosody rules derived from text; Stress or intonation
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Computational Linguistics (AREA)
- Health & Medical Sciences (AREA)
- Theoretical Computer Science (AREA)
- Artificial Intelligence (AREA)
- General Health & Medical Sciences (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Acoustics & Sound (AREA)
- Multimedia (AREA)
- Machine Translation (AREA)
Abstract
本发明涉及一种文本处理、模型训练方法、装置、存储介质和计算机设备,该方法包括:获取目标文本;向量化组成所述目标文本的各词,得到词向量序列;将所述词向量序列输入韵律预测模型,在所述韵律预测模型的隐层中,按所述词向量序列中各词向量的先后顺序处理各所述词向量得到语义向量序列;通过所述韵律预测模型的输出层,输出由所述语义向量序列映射得到的预测韵律标签序列。本申请提供的方案提高了文本处理效率。
Description
技术领域
本发明涉及计算机技术领域,特别是涉及一种文本处理、模型训练方法、装置、存储介质和计算机设备。
背景技术
随着计算机技术的发展,语音合成的应用越来越广泛,如有声读物、自动新闻播报或者语音导航音等。伴随着生活水平的提高,人们对语音合成已经不仅仅满足于单纯地将文本转换为语音,还要求合成的语音更符合自然人的说话风格。
传统技术中,在语音合成的文本处理阶段,通常是通过人工对目标文本进行分词、读音标注以及韵律标注等处理,再将携带标注的文本转换为语音,这样来保证合成的语音真实地反应自然人的说话风格。然而传统的这种方式引入了大量的人力,耗时长,导致文本处理的效率低。
发明内容
基于此,有必要针对传统技术中文本处理效率低的问题,提供一种文本处理、模型训练方法、装置、存储介质和计算机设备。
一种文本处理方法,包括:
获取目标文本;
向量化组成所述目标文本的各词,得到词向量序列;
将所述词向量序列输入韵律预测模型,在所述韵律预测模型的隐层中,按所述词向量序列中各词向量的先后顺序处理各所述词向量得到语义向量序列;
通过所述韵律预测模型的输出层,输出由所述语义向量序列映射得到的预测韵律标签序列。
一种语音合成装置,包括:
获取模块,用于获取目标文本;
向量化模块,用于向量化组成所述目标文本的各词,得到词向量序列;
处理模块,用于将所述词向量序列输入韵律预测模型,在所述韵律预测模型的隐层中,按所述词向量序列中各词向量的先后顺序处理各所述词向量得到语义向量序列;
输出模块,用于通过所述韵律预测模型的输出层,输出由所述语义向量序列映射得到的预测韵律标签序列。
一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时,使得所述处理器执行以下步骤:
获取目标文本;
向量化组成所述目标文本的各词,得到词向量序列;
将所述词向量序列输入韵律预测模型,在所述韵律预测模型的隐层中,按所述词向量序列中各词向量的先后顺序处理各所述词向量得到语义向量序列;
通过所述韵律预测模型的输出层,输出由所述语义向量序列映射得到的预测韵律标签序列。
一种计算机设备,包括存储器和处理器,所述存储器中储存有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行以下步骤:
获取目标文本;
向量化组成所述目标文本的各词,得到词向量序列;
将所述词向量序列输入韵律预测模型,在所述韵律预测模型的隐层中,按所述词向量序列中各词向量的先后顺序处理各所述词向量得到语义向量序列;
通过所述韵律预测模型的输出层,输出由所述语义向量序列映射得到的预测韵律标签序列。
上述文本处理方法、装置、存储介质和计算机设备,在获取到待处理的目标文本之后,即可自动将目标文本包括的词向量化,再自动通过韵律预测模型来进行韵律预测得到目标文本的韵律标注结果。其中,将向量化的数据作为模型的输入可极大地减少模型运算量,而且在模型的隐层中,按照词向量序列中各词向量的先后顺序对各词向量进行处理,生成能够反映上下文关系的语义向量序列,并依据上下文关系进行韵律标注。这样避免了引入大量人力而带来的耗时,提高了文本处理效率,而且在将韵律标注后的目标文本进行语音合成时,也能够极大程度上真实地反应自然人的说话风格,提高语音合成效果。
一种模型训练方法,包括:
获取词向量样本序列和相应的韵律标签序列;
将所述词向量样本序列输入韵律预测模型;
在所述韵律预测模型的隐层中,按照所述词向量样本序列中各词向量样本的先后顺序对各所述词向量样本进行处理得到语义向量样本序列;
通过所述韵律预测模型的输出层,输出由所述语义向量样本序列映射得到的预测韵律标签序列;
按照所述预测韵律标签序列与所述韵律标签序列的差异,调整所述韵律预测模型,并继续训练直至满足训练结束条件。
一种模型训练装置,包括:
获取模块,用于获取词向量样本序列和相应的韵律标签序列;
输入模块,用于将所述词向量样本序列输入韵律预测模型;
处理模块,用于在所述韵律预测模型的隐层中,按照所述词向量样本序列中各词向量样本的先后顺序对各所述词向量样本进行处理得到语义向量样本序列;
输出模块,用于通过所述韵律预测模型的输出层,输出由所述语义向量样本序列映射得到的预测韵律标签序列;
调整模块,用于按照所述预测韵律标签序列与所述韵律标签序列的差异,调整所述韵律预测模型,并继续训练直至满足训练结束条件。
一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时,使得所述处理器执行以下步骤:
获取词向量样本序列和相应的韵律标签序列;
将所述词向量样本序列输入韵律预测模型;
在所述韵律预测模型的隐层中,按照所述词向量样本序列中各词向量样本的先后顺序对各所述词向量样本进行处理得到语义向量样本序列;
通过所述韵律预测模型的输出层,输出由所述语义向量样本序列映射得到的预测韵律标签序列;
按照所述预测韵律标签序列与所述韵律标签序列的差异,调整所述韵律预测模型,并继续训练直至满足训练结束条件。
一种计算机设备,包括存储器和处理器,所述存储器中储存有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行以下步骤:
获取词向量样本序列和相应的韵律标签序列;
将所述词向量样本序列输入韵律预测模型;
在所述韵律预测模型的隐层中,按照所述词向量样本序列中各词向量样本的先后顺序对各所述词向量样本进行处理得到语义向量样本序列;
通过所述韵律预测模型的输出层,输出由所述语义向量样本序列映射得到的预测韵律标签序列;
按照所述预测韵律标签序列与所述韵律标签序列的差异,调整所述韵律预测模型,并继续训练直至满足训练结束条件。
上述模型训练方法、装置、存储介质和计算机设备,采用词向量样本序列和相应的韵律标签序列来训练韵律预测模型,训练韵律预测模型的过程在于学习对词序列进行韵律标注。其中,以向量化的数据作为模型的训练数据可极大地减少模型运算量,而且在韵律预测模型的隐层中,按照词向量样本序列中各词向量样本的先后顺序对各词向量样本进行处理,学习到生成能够反映上下文关系的语义向量样本序列,并依据上下文关系进行韵律标注的能力。这样在利用训练得到的韵律预测模型进行语音合成时能够根据待合成的文本上下文关系进行韵律标注,既能够极大程度上真实地反应自然人的说话风格,又能提高文本处理效率。
附图说明
图1为一个实施例中文本处理方法的流程示意图;
图2为一个实施例中文本处理方法的原理示意图;
图3为另一个实施例中文本处理方法的流程示意图;
图4为一个实施例中模型训练方法的流程示意图;
图5为另一个实施例中模型训练方法的流程示意图;
图6为一个实施例中模型的训练和使用的流程图;
图7为一个实施例中文本处理装置的模块结构图;
图8为另一个实施例中文本处理装置的模块结构图;
图9为一个实施例中模型训练装置的模块结构图;
图10为一个实施例中计算机设备的内部结构图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
图1为一个实施例中文本处理方法的流程示意图。本实施例主要以该方法应用于计算机设备来举例说明。参照图1,该文本处理方法具体包括如下步骤:
S102,获取目标文本。
其中,目标文本是待进行处理后合成为语音的文本数据。文本数据是多于一个的字符按照顺序构成的字符串。目标文本比如“致以诚挚的问候和良好的祝愿”或者“阿卡耶夫对此表示同意”等。
具体地,计算机设备可提供输入界面,以获取用户通过输入界面输入的需要进行语音合成的文本数据,将获取的文本数据作为目标文本。计算机设备也可接收其他设备发送的需要进行语音合成的文本数据,将接收到的文本数据作为目标文本。计算机设备还可以获取用户通过界面选择的中展示的文本数据,将获取的文本数据作为目标文本。比如,微信读书应用程序中,用户选择的待语音输出的文章等。
S104,向量化组成目标文本的各词,得到词向量序列。
具体地,计算机设备可对目标文本进行分词,得到组成目标文本的各词,再将各词向量化,得到各词各自对应的词向量,从而得到词向量序列。
其中,词向量是用于将文本形式的词以数学形式表达的数据。比如,文本形式的“话筒”表示为数学形式“[0 0 0 1 0 0 0 0 0 0 0...]”,此时,“[0 0 0 1 0 0 0 0 0 00...]”即为“话筒”的词向量。可以理解,这里不限定将文本形式的词转换为何种表示的词向量,只要能够将文本形式的词进行数学化表示即可。
词向量序列包括文本形式的各词向量化得到的各词向量。各词向量的先后顺序与相应的词在目标文本中出现的先后顺序一致。可以理解,目标文本中最开始的词所对应的词向量在词向量序列中的顺序最靠前。
比如,目标文本为“阿卡耶夫对此表示同意”,将其分词得到“阿卡耶夫/对/此/表示/同意”,那么词“阿卡耶夫”的词向量为V1,“对”的词向量为V2,“此”的词向量为V3,“表示”的词向量为V4,“同意”的词向量为V5,则词向量序列包括的词向量依次为V1、V2、V3、V4、V5。
S106,将词向量序列输入韵律预测模型,在韵律预测模型的隐层中,按词向量序列中各词向量的先后顺序处理各词向量得到语义向量序列。
其中,韵律预测模型是经过训练后具有韵律预测能力的机器学习模型。机器学习英文全称为Machine Learning,简称ML。机器学习模型可通过样本学习具备韵律预测能力。机器学习模型可采用神经网络模型、支持向量机或者逻辑回归模型等。神经网络模型比如卷积神经网络、反向传播神经网络、反馈神经网络、径向基神经网络或者自组织神经网络等。
层系结构的机器学习模型通过包括输入层、中间层和输出层。其中,中间层即为隐层。机器学习模型可通过中间层对输入层传递的数据进行线性或者非线性变换。隐层的数量可以是多个,每层隐层都有对应的模型参数,每层的模型参数可以是多个,每层隐层中一个模型参数对输入的数据进行线性或非线性变化,得到运算结果。每个隐层接收前一层的运算结果,经过自身的运算,对下一层输出本层的运算结果。其中,模型参数是模型结构中的各个参数,能反应模型输出和输入的对应关系。
语义向量是反映相应词的语义的向量。可以理解,这里的语义是该词在目标文本中表达的语义。也就是说,语义向量所表达的语义是相应词在目标文本的语境中结合上下文内容反映的语义。举例说明,“我每天早上要吃一个苹果”和“我明天要买一个苹果手机”,这两个文本中均包括词“苹果”,但两个“苹果”分别代表不同的意思,前者是水果,后者是手机品牌。此时,两个“苹果”对应的词向量相同,但对应的语义向量不同。
具体地,计算机设备可将词向量序列输入韵律预测模型,按词向量序列中各词向量的先后顺序,利用隐层的模型参数对各词向量依次进行运算,得到运算结果,也就是各词向量相应的语义向量。其中,利用隐层的模型参数对词向量进行的运算可以是线性变换、非线性变换或者卷积变换等。
在一个实施例中,计算机设备可以按照词向量序列中各词向量的先后顺序,通过韵律预测模型的隐层依次地对各词向量进行运算,循环地将前次的运算结果和当前词向量作为当次运算的输入值,进行当次运算,直至最后一次运算为止,依次得到各词向量相应的语义向量。可以理解,由于第一次处理时不存在前次运算,所以第一次运算时的输入值为第一个词向量。
举例说明,目标文本对应的词向量序列为V1、V2、V3、V4、V5。韵律预测模型的隐层可按照V1到V5的顺序或者V5到V1的顺序依次地对各词向量进行运算。比如,先将V1作为输入进行运算,得到运算结果W1,然后将W1和V2作为输入进行运算,得到运算结果W2,然后将W2和V3作为输入进行运算,得到运算结果W3,依次类推,直至得到最后一个词向量V5相应的运算结果W5。
S108,通过韵律预测模型的输出层,输出由语义向量序列映射得到的预测韵律标签序列。
其中,韵律是发声体发出声音的基础音调与节奏,在物理学上通过基频参数、时长分布以及信号强度来表征韵律。在本实施例中,韵律具体可以是相邻词间的停顿时长。韵律标签是对词进行韵律标注的数据。一个韵律标签对应一种韵律。
具体地,计算机设备可通过韵律预测模型的隐层(该隐层用于将语义向量映射为韵律标签)或者是输出层,利用该层的模型参数将各语义向量分别映射相应的韵律标签,从而得到语义向量序列映射相应的预测韵律标签序列输出。
举例说明,通常情况下韵律结构一般被认为包括三个层级,从小到大依次为韵律词(PW,Prosodic Words)、韵律短语(PP,Prosodic Phrase)和语调短语(IP,IntonationalPhrase)。其中,韵律短语是韵律词组合成的短语。语调短语是表明一个短语应该用陈述句、疑问句或是感叹句等语调念出来的短语。也就是IP的停顿时长长于PP,PP的停顿时长长于PW。此时,韵律标签可设置为0、1、2和3共4种。其中0代表无停顿,1代表词为PW,按照PW的停顿时长停顿,2代表词为PP,按照PP的停顿时长停顿,3代表词为IP,按照IP的停顿时长停顿。比如,对词向量序列“阿卡耶夫/对/此/表示/同意”添加韵律标签后得到“阿卡耶夫/2对/0此/2表示/1同意/3”,那么输出的韵律标签序列为“2,0,2,1,3”。
上述文本处理方法,在获取到待处理的目标文本之后,即可自动将目标文本包括的词向量化,再自动通过韵律预测模型来进行韵律预测得到目标文本的韵律标注结果。其中,将向量化的数据作为模型的输入可极大地减少模型运算量,而且在模型的隐层中,按照词向量序列中各词向量的先后顺序对各词向量进行处理,生成能够反映上下文关系的语义向量序列,并依据上下文关系进行韵律标注。这样避免了引入大量人力而带来的耗时,提高了文本处理效率,而且在将韵律标注后的目标文本进行语音合成时,也能够极大程度上真实地反应自然人的说话风格,提高语音合成效果。
在一个实施例中,S104包括:对目标文本进行分词得到相应的词序列;确定词序列中各词相应的词性与词长;根据词性与词长向量化相应词,得到词向量序列。
其中,分词是将一个连续的字符序列切分成多个单独的字符或者字符序列的过程。词性(POS,Part of speech)是反映词的内容所属类型的数据。词性包括形容词、介词、谓词和名词等12种词性。词长是词所包含的字符的数量。词性和词长会很大程度上影响韵律,比如自然人习惯在谓词后停顿较长的时间,或者在词长较长的词后停顿较长的时间等。
具体地,计算机设备可采用预设的分词方式对目标文本进行分词处理,得到多个字符或者字符序列,这些字符或者字符序列按照各自在文本中出现的先后顺序形成词序列。计算机设备可再根据词汇表确定词序列中各词相应的词性,并统计各词相应的词长。其中,预设的分词方式可以是基于字符匹配、基于语义理解或者基于统计的分词方式。计算机设备可设置分词得到的词的词长阈值,使得分词得到的各词的词长均不超过词长阈值。
举例说明,计算机设备对词序列“阿卡耶夫/对/此/表示/同意”确定各词相应的词性后得到“阿卡耶夫/nr对/p此/r表示/v同意/v”,其中nr表示人名,p表示介词,v表示谓词等。计算机设备对词序列“阿卡耶夫/对/此/表示/同意”确定各词相应的词长后得到“阿卡耶夫/4对/1此/1表示/2同意/2”,其中数字表示词长。
进一步地,计算机设备再根据各词的内容、词性与词长,将该词向量化,得到该词相应的词向量,从而得到词序列相应的词向量序列。其中,计算机设备可以利用机器学习模型将词转化为词向量。机器学习模型比如word2vec等。
在一个实施例中,根据词性与词长向量化相应词,得到词向量序列,包括:对于词序列中的每个词,根据当前词的内容特征得到内容向量,并将当前词相应的词性和词长分别映射为词性向量和词长向量;组合内容向量、词性向量和词长向量得到相应词所对应的词向量,得到词向量序列。
具体地,计算机设备可以预先设置编码方式,通过该编码方式将词性编码为词性向量,将词长编码为词长向量。然后将内容向量、词性向量和词长向量进行组合得到相应词所对应的词向量,得到词向量序列。其中,编码方式比如One-Hot编码或者整数编码等。内容向量、词性向量和词长向量组合的方式可以是直接拼接或者是通过连接向量间接拼接。连接向量比如[0]或[1]等,可根据实际情况设定。可以理解,在拼接过程中对内容向量、词性向量和词长向量的拼接顺序不作限定。
举例说明,假设词性的种类共有4种,分别为名词、动词、形容词和副词,则其One-Hot编码分别为:[1,0,0,0],[0,1,0,0],[0,0,1,0],[0,0,0,1]。也就是说名词、动词、形容词和副词各自被映射为的词性向量为[1,0,0,0],[0,1,0,0],[0,0,1,0],[0,0,0,1]。计算机设备可设置分词得到的词的词长阈值。假设词长阈值为10,那么词长为1的词的One-Hot编码(词长向量)为:[1,0,0,0,0,0,0,0,0,0],词长为2的词的编码(词长向量)为:[0,1,0,0,0,0,0,0,0,0],以此类推。假设词“明天”的内容向量为[1,0,1,0,0,1,0,1,0,0],词性向量为[1,0,0,0],词长向量为[0,1,0,0,0,0,0,0,0,0],那么该词的词向量为由[1,0,1,0,0,1,0,1,0,0]、[1,0,0,0]和[0,1,0,0,0,0,0,0,0,0]直接拼接得到的[1,0,1,0,0,1,0,1,0,0,1,0,0,0,0,1,0,0,0,0,0,0,0,0]。
图2为一个实施例中文本处理方法的原理示意图。参考图2,计算机设备对目标文本“我们马上下班了”进行分词处理后,得到文本形式的词“我们”、“马上”、“下班”和“了”。计算机设备可再分别对这些词进行向量化处理,得到各词相应的词向量。
在本实施例中,提供了具体根据词文本形式的内容、词性和词长生成数字化词向量的方式,通过该方式及可获得词向量序列,进而以向量化的数据作为模型的输入可极大地减少模型运算量,提高文本处理效率。
上述实施例中,在将组成目标文本的各词向量化时,不仅考虑到词的内容,还结合了词性信息与词长信息,使得所生成的词向量能够更加充分、完整地反映词的信息,进而基于该词向量所进行的韵律预测更加的准确,提高了韵律预测的准确性。
在一个实施例中,S106包括:将词向量序列输入韵律预测模型;在韵律预测模型的前向传播隐层中,按照词向量序列中各词向量的先后顺序,顺序地对各词向量进行处理得到第一语义向量序列;在韵律预测模型的反向传播隐层中,按照词向量序列中各词向量的先后顺序,逆序地对各词向量进行处理得到第二语义向量序列;根据第一语义向量序列和第一语义向量序列,得到语义向量序列。
其中,前向传播隐层是在词向量处理过程中,将文本顺序靠前的词向量的处理结果作为处理文本顺序靠后的词向量的输入数据的隐层。通过前向传播隐层的处理,可将文本顺序靠前的词向量携带的信息传递至文本顺序靠后的词向量的处理过程。反向传播隐层是在词向量处理过程中,将文本顺序靠后的词向量的处理结果作为处理文本顺序靠前的词向量的输入数据的隐层。通过反向传播隐层的处理,可将文本顺序靠后的词向量携带的信息传递至文本顺序靠前的词向量的处理过程。
在一个实施例中,在韵律预测模型的前向传播隐层中,按照词向量序列中各词向量的先后顺序,顺序地对各词向量进行处理得到第一语义向量序列,包括:按照词向量序列中各词向量的先后顺序,顺序地将各词向量作为韵律预测模型的前向传播隐层当前处理的词向量;在当前处理的词向量为词向量序列的首个词向量时,通过前向传播隐层根据当前处理的词向量得到相应的语义向量;在当前处理的词向量不为词向量序列的首个词向量时,通过前向传播隐层根据当前处理的词向量,及前次处理的词向量相应的语义向量,得到当前处理的词向量相应的语义向量;获得词向量序列相应的第一语义向量序列。
具体地,计算机设备可以按照词向量序列中各词向量的先后顺序,通过韵律预测模型的前向传播隐层顺序地对各词向量进行运算,循环地将前次的运算结果和当前词向量作为当次处理的输入值,进行当次处理,直至最后一次处理为止,依次得到各词向量相应的语义向量。可以理解,由于第一次处理时不存在前次处理,所以第一次处理时的输入值为顺序第一个词向量。
参考图2,计算机设备将词向量序列输入韵律预测模型后,韵律预测模型的前向传播隐层先对顺序第一个词向量V1进行处理,得到V1相应的运算结果W1,再对W1和顺序第二个词向量V2进行处理,得到V2相应的运算结果W2,再对W2和顺序第三个词向量V3进行处理,得到V3相应的运算结果W3…直至得到最后一个词向量V4相应的运算结果W4。
在本实施例中,在句子方向上,循环地将前次运算结果和当前词向量作为当次运算的输入值,使得在后生成的语义向量既能反映本词所携带的信息,还能反映在前的词所携带的信息,从而能够更加充分、完整地反映本词在句子中的语义,进而基于该语义向量所进行的韵律预测更加的准确性。
在一个实施例中,在韵律预测模型的反向传播隐层中,按照词向量序列中各词向量的先后顺序,逆序地对各词向量进行处理得到第二语义向量序列,包括:按照词向量序列中各词向量的先后顺序,逆序地将各词向量作为韵律预测模型的反向传播隐层当前处理的词向量;在当前处理的词向量为词向量序列中末尾的词向量时,通过反向传播隐层根据当前处理的词向量得到相应的语义向量;在当前处理的词向量不为词向量序列中末尾的词向量时,通过反向传播隐层根据当前处理的词向量,及前次处理的词向量相应的语义向量,得到当前处理的词向量相应的语义向量;获得词向量序列相应的第二语义向量序列。
具体地,计算机设备可以按照词向量序列中各词向量的先后顺序,通过韵律预测模型的前向传播隐层逆序地对各词向量进行运算,循环地将前次的运算结果和当前词向量作为当次处理的输入值,进行当次处理,直至最后一次处理为止,依次得到各词向量相应的语义向量。可以理解,由于第一次处理时不存在前次处理,所以第一次处理时的输入值为逆序第一个词向量。
参考图2,计算机设备将词向量序列输入韵律预测模型后,韵律预测模型的反向传播隐层先对逆序第一个词向量V4进行处理,得到V4相应的运算结果U4,再对U4和逆序第二个词向量V3进行处理,得到V3相应的运算结果U3,再对U3和逆序第三个词向量V2进行处理,得到V2相应的运算结果U2…直至得到最后一个词向量V1相应的运算结果U1。
在本实施例中,在句子反方向上,循环地将前次运算结果和当前词向量作为当次运算的输入值,使得在后生成的语义向量既能反映本词所携带的信息,还能反映在后的词所携带的信息,从而能够更加充分、完整地反映本词在句子中的语义,进而基于该语义向量所进行的韵律预测更加的准确性。
进一步地,计算机设备可通过韵律预测模型的隐层,通过该隐层的模型参数对第一语义向量序列和第一语义向量序列进行线性或者非线性变化,得到语义向量序列。
参考图2,韵律预测模型的隐层可根据词向量V1相应的运算结果W1和U1,得到V1相应的语义向量X1,韵律预测模型的隐层可根据词向量V2相应的运算结果W2和U2,得到V2相应的语义向量X2,依次类推,从而得到词向量序列对应的语义向量序列。
上述实施例中,按照各词向量间的先后顺序,双向循环地将前次运算结果和当前词向量作为当次运算的输入值,使得生成的语义向量既能反映本词所携带的信息,还能反映上下文所携带的信息,从而能够更加充分、完整地反映本词在句子中的语义,进而基于该语义向量所进行的韵律预测更加的准确性。
在一个实施例中,S108包括:在韵律预测模型的输出层中,根据语义向量与韵律标签之间的特征矩阵确定各语义向量对应各韵律标签的概率;对应每个语义向量,选取相应确定的概率中最大概率对应的韵律标签;按照语义向量序列中的各语义向量的先后顺序,将相应选取的韵律标签组合为预测韵律标签序列后输出。
其中,语义向量与韵律标签之间的特征矩阵是韵律预测模型的模型参数。该特征矩阵用于反映语义向量和韵律标签的对应关系。也就是说,通过该特征矩阵将语义向量映射为韵律标签。在一个实施例中,特征矩阵也可以是特征函数。
具体地,计算机设备在通过韵律预测模型对词向量序列进行处理时,通过输出层根据语义向量与韵律标签之间的特征矩阵确定各语义向量对应各韵律标签的概率,也就是各语义向量被标记为各韵律标签的概率。进一步地,对于每一个语义向量,在该语义向量被标记为各韵律标签的概率中,选择最大概率对于的韵律标签,将该韵律标签作为当前语义向量相应的预测韵律标签。再按照语义向量序列中的各语义向量的先后顺序,将相应选取的韵律标签组合为预测韵律标签序列后输出。
举例说明,假设有0、1、2和3共4个韵律标签,对于词序列“阿卡耶夫/对/此/表示/同意”中词“阿卡耶夫”相应的语义向量X1,根据语义向量与韵律标签之间的特征矩阵,得到X1对应各韵律标签的概率为(0.1,0.2,0.7,0.0),其中0.7为最大概率,对应韵律标签2,那么韵律标签2即为X1相应的预测韵律标签。
在一个实施例中,各语义向量对应各韵律标签的概率可通过以下公式计算:
其中,X为目标文本,y为预测韵律标签序列。表示穷举目标文本X中可能被标注的韵律标签集合中的每一个韵律标签。YX表示目标文本X所有可能的预测韵律标签序列。s(X,y)表示对应目标文本X输出预测韵律标签序列y的置信度。置信度越高,说明韵律预测越合理。
上述实施例中,根据概率最大的韵律标签组合得到的预测韵律标签序列,使得对目标文本的韵律预测更加的准确。
在一个实施例中,韵律预测模型包括第一模型和第二模型。将S106包括:将词向量序列输入第一模型,在第一模型的隐层中,按照词向量序列中各词向量的先后顺序对各词向量进行处理得到语义向量序列。S108包括:将语义向量序列输入第二模型,通过第二模型的输出层,输出由语义向量序列映射得到的预测韵律标签序列。
其中,第一模型用于处理目标文本相应的词向量序列得到语义向量序列。第二模型用于处理目标文本相应的语义向量序列得到预测韵律标签序列。在一个实施例中,第一模型为双向循环神经网络模型。第二模型为条件随机场模型。双向循环神经网络模型具体可以是GRU(Gated recurrent unit,门限递归单元)或者LSTM(Long Short-Term Memory,长短时记忆网络)等。
在一个实施例中,将语义向量序列输入第二模型,通过第二模型的输出层,输出由语义向量序列映射得到的预测韵律标签序列,包括:在第二模型的输出层中,根据语义向量与韵律标签之间的特征矩阵,及各韵律标签之间的转移矩阵,确定各语义向量对应各韵律标签的概率;对应每个语义向量,选取相应确定的概率中最大概率对应的韵律标签;按照语义向量序列中的各语义向量的先后顺序,将相应选取的韵律标签组合为预测韵律标签序列后输出。
其中,语义向量与韵律标签之间的特征矩阵,及各韵律标签之间的转移矩阵是第二模型的模型参数。该特征矩阵用于反映语义向量和韵律标签的对应关系。该转移矩阵用于反映输出的预测韵律标签序列中相邻的韵律标签之间的关系。相邻的韵律标签之间的关系可以是韵律标签之间的约束关系。比如,韵律标签与其相邻的韵律标签之间的条件概率关系,也就是在前的韵律标签已经确定的情况下,下一个韵律标签为某一韵律标签的概率。
在本实施例中,利用公式(1)计算各语义向量对应各韵律标签的概率时,s(X,y)可通过以下公式计算:
参考图2,将语义向量序列X1,X2,X3,X4输入条件随机场模型,输出预测韵律标签序列y1,y2,y3,y4。其中,X1,X2,X3,X4分别到y1,y2,y3,y4的约束关系即为语义向量与韵律标签之间的特征矩阵。y1,y2,y3,y4之间的约束关系即为各韵律标签之间的转移矩阵。
上述实施例中,通过第一模型对词向量和语义向量之间的对应关系建模,通过第二向量对语义向量与韵律标签及韵律标签之间的对应关系建模,从而根据语义向量和韵律标签的对应关系,以及韵律标签之间的约束关系进行韵律预测得到预测韵律标签序列,使得对目标文本的韵律预测更加的准确。
在一个实施例中,该文本处理方法还包括:根据预测韵律标签序列,确定组成目标文本的各词各自对应的韵律标签;按照各词各自对应的韵律标签输出目标文本对应的合成语音。
具体地,计算机设备对目标文本进行分词处理后,对分词后的各词进行读音标注。标注读音过程中进行多音字、儿化音、轻声至少一种处理。计算机设备可在对各词进行时长标注。计算机设备可再根据预测韵律标签序列,确定组成目标文本的各词各自对应的韵律标签,对应每个词,根据该词的读音标注、时长标注与韵律标签合成语音数据,从而得到目标文本对应的合成语音。
在本实施例中,通过依据上下文关系进行韵律标注的预测韵律标签序列来进行目标文本的语音合成,极大程度上真实地反应了自然人的说话风格,提高语音合成效果。
如图3所示,在一个具体的实施例中,该文本处理方法具体包括以下步骤:
S302,获取目标文本。
S304,对目标文本进行分词得到相应的词序列;确定词序列中各词相应的词性与词长。
S306,对于词序列中的每个词,根据当前词的内容特征得到内容向量,并将当前词相应的词性和词长分别映射为词性向量和词长向量;组合内容向量、词性向量和词长向量得到相应词所对应的词向量,得到词向量序列。
S308,词向量序列输入双向循环神经网络模型。
S310,按照词向量序列中各词向量的先后顺序,顺序地将各词向量作为双向循环神经网络模型的前向传播隐层当前处理的词向量;在当前处理的词向量为词向量序列的首个词向量时,通过前向传播隐层根据当前处理的词向量得到相应的语义向量;在当前处理的词向量不为词向量序列的首个词向量时,通过前向传播隐层根据当前处理的词向量,及前次处理的词向量相应的语义向量,得到当前处理的词向量相应的语义向量;获得词向量序列相应的第一语义向量序列。
S312,按照词向量序列中各词向量的先后顺序,逆序地将各词向量作为双向循环神经网络模型的反向传播隐层当前处理的词向量;在当前处理的词向量为词向量序列中末尾的词向量时,通过反向传播隐层根据当前处理的词向量得到相应的语义向量;在当前处理的词向量不为词向量序列中末尾的词向量时,通过反向传播隐层根据当前处理的词向量,及前次处理的词向量相应的语义向量,得到当前处理的词向量相应的语义向量;获得词向量序列相应的第二语义向量序列。
S314,根据第一语义向量序列和第一语义向量序列,得到语义向量序列。
S316,将语义向量序列输入条件随机场模型。
S318,在条件随机场模型的输出层中,根据语义向量与韵律标签之间的特征矩阵,及各韵律标签之间的转移矩阵,确定各语义向量对应各韵律标签的概率;对应每个语义向量,选取相应确定的概率中最大概率对应的韵律标签;按照语义向量序列中的各语义向量的先后顺序,将相应选取的韵律标签组合为预测韵律标签序列后输出。
S320,根据预测韵律标签序列,确定组成目标文本的各词各自对应的韵律标签;按照各词各自对应的韵律标签输出目标文本对应的合成语音。
在本实施例中,在获取到待处理的目标文本之后,即可自动将目标文本包括的词向量化,再自动通过韵律预测模型来进行韵律预测得到目标文本的韵律标注结果。其中,将向量化的数据作为模型的输入可极大地减少模型运算量,而且在模型的隐层中,按照词向量序列中各词向量的先后顺序对各词向量进行处理,生成能够反映上下文关系的语义向量序列,并依据上下文关系进行韵律标注。这样避免了引入大量人力而带来的耗时,提高了文本处理效率,而且在将韵律标注后的目标文本进行语音合成时,也能够极大程度上真实地反应自然人的说话风格,提高语音合成效果。
图4为一个实施例中模型训练方法的流程示意图。本实施例主要以该方法应用于计算机设备来举例说明。参照图4,该模型训练方法具体包括如下步骤:
S402,获取词向量样本序列和相应的韵律标签序列。
其中,词向量样本序列是用于训练模型的样本数据。词向量样本序列包括按序排列的多个词向量。各词向量相应的词按词向量的排列顺序,可组合得到完整的语句文本。韵律标签序列是事先根据自然人说话风格为词向量样本序列标注韵律标签后得到的韵律标签序列。该韵律标签序序列所对应的韵律是预期的词向量样本序列所对应的文本的韵律。
在一个实施例中,S402包括:获取文本样本;将组成文本样本的各词向量化得到词向量样本序列;确定词向量样本序列中各词向量样本相应的韵律标签;得到与词向量样本序列相应的韵律标签序列。
计算机设备可直接从互联网上拉取训练语料。训练语料比如新闻或者文章等。计算机设备可再对训练语料进行按照标点符号进行语句分割,得到若干语句,从而得到文本样本。计算机设备可再对文本样本进行分词,得到组成文本样本的各词,再将各词向量化,得到各词各自对应的词向量,从而得到词向量样本序列,以将词向量样本序列作为输入,将相应的韵律标签序列作为预期输出来训练模型。
计算机设备可再获取模型训练人员根据自然人说话风格为词向量样本序列标注韵律标签后得到的韵律标签序列。比如,对词向量序列“阿卡耶夫/对/此/表示/同意”添加韵律标签后得到“阿卡耶夫/2对/0此/2表示/1同意/3”,那么相应预期的韵律标签序列为“2,0,2,1,3”。
在一个实施例中,将组成文本样本的各词向量化得到词向量样本序列,包括:对文本样本进行分词得到相应的词序列;确定词序列中各词相应的词性与词长;根据词性与词长向量化相应词,得到词向量样本序列。
在一个实施例中,根据词性与词长向量化相应词,得到词向量样本序列,包括:对于词序列中的每个词,根据当前词的内容特征得到内容向量,并将当前词相应的词性和词长分别映射为词性向量和词长向量;组合内容向量、词性向量和词长向量得到相应词所对应的词向量样本,得到词向量样本序列。
具体地,计算机设备可以根据预先设置的编码方式将词性编码为词性向量,并将词长编码为词长向量。然后将内容向量、词性向量和词长向量进行组合得到相应词所对应的词向量,得到词向量序列。其中,编码方式比如One-Hot编码或者整数编码等。内容向量、词性向量和词长向量组合的方式可以是直接拼接或者是通过连接向量间接拼接。连接向量比如[0]或[1]等,可根据实际情况设定。可以理解,在拼接过程中对内容向量、词性向量和词长向量的拼接顺序不作限定。
上述实施例中,在将组成文本样本的各词向量化时,不仅考虑到词的内容,还结合了词性信息与词长信息,使得所生成的词向量能够更加充分、完整地反映词的信息,进而基于该词向量所进行的韵律预测模型训练更加的准确。
S404,将词向量样本序列输入韵律预测模型。
S406,在韵律预测模型的隐层中,按照词向量样本序列中各词向量样本的先后顺序对各词向量样本进行处理得到语义向量样本序列。
其中,语义向量样本是反映相应词的语义的向量。可以理解,这里的语义是该词在文本样本中表达的语义。也就是说,语义向量样本所表达的语义是相应词在文本样本的语境中结合上下文内容反映的语义。
S408,通过韵律预测模型的输出层,输出由语义向量样本序列映射得到的预测韵律标签序列。
S410,按照预测韵律标签序列与韵律标签序列的差异,调整韵律预测模型,并继续训练直至满足训练结束条件。
具体地,计算机设备可根据预测韵律标签序列与韵律标签序列的差异,构建损失函数,按照最小化损失函数的方向调整韵律预测模型的模型参数。利用时序反向传播算法(Backpropagation Through Time,BPTT)将预测韵律标签序列与预期得到的韵律标签序列进行比较,通过对比预测韵律标签序列与韵律标签序列之间的差异,通过更新模型参数缩小两者之间的差距,不断优化统计参数模型的模型参数,采用差距最小化原则确定使两者之间差距最小的模型参数,训练韵律预测模型。
上述模型训练方法,采用词向量样本序列和相应的韵律标签序列来训练韵律预测模型,训练韵律预测模型的过程在于学习对词序列进行韵律标注。其中,以向量化的数据作为模型的训练数据可极大地减少模型运算量,而且在韵律预测模型的隐层中,按照词向量样本序列中各词向量样本的先后顺序对各词向量样本进行处理,学习到生成能够反映上下文关系的语义向量样本序列,并依据上下文关系进行韵律标注的能力。这样在利用训练得到的韵律预测模型进行语音合成时能够根据待合成的文本上下文关系进行韵律标注,既能够极大程度上真实地反应自然人的说话风格,又能提高文本处理效率。
在一个实施例中,S406包括:在韵律预测模型的前向传播隐层中,按照词向量样本序列中各词向量样本的先后顺序,顺序地对各词向量样本处理得到第一语义向量样本序列;在韵律预测模型的反向传播隐层中,按照词向量样本序列中各词向量样本的先后顺序,逆序地对各词向量样本处理得到第二语义向量样本序列;根据第一语义向量样本序列和第一语义向量样本序列,得到语义向量样本序列。
在一个实施例中,在韵律预测模型的前向传播隐层中,按照词向量样本序列中各词向量样本的先后顺序,顺序地对各词向量样本处理得到第一语义向量样本序列,包括:按照词向量样本序列中各词向量样本的先后顺序,顺序地将各词向量样本作为韵律预测模型的前向传播隐层当前处理的词向量样本;在当前处理的词向量样本为词向量样本序列的首个词向量样本时,通过前向传播隐层根据当前处理的词向量样本得到相应的语义向量样本;在当前处理的词向量样本不为词向量样本序列的首个词向量样本时,通过前向传播隐层根据当前处理的词向量样本,及前次处理的词向量样本相应的语义向量样本,得到相应的语义向量样本;获得词向量样本序列相应的第一语义向量样本序列。
具体地,计算机设备可以按照词向量样本序列中各词向量样本的先后顺序,通过韵律预测模型的前向传播隐层顺序地对各词向量样本进行运算,循环地将前次的运算结果和当前词向量样本作为当次运算的输入值,进行当次运算,直至最后一次运算为止,依次得到各词向量样本相应的语义向量样本。可以理解,由于第一次运算时不存在前次运算,所以第一次运算时的输入值为顺序第一个词向量样本。
在本实施例中,在句子方向上,循环地将前次运算结果和当前词向量作为当次运算的输入值,使得在后生成的语义向量既能反映本词所携带的信息,还能反映在前的词所携带的信息,从而能够更加充分、完整地反映本词在句子中的语义,进而基于该语义向量所进行的韵律预测模型训练更加的准确性。
在一个实施例中,在韵律预测模型的反向传播隐层中,按照词向量样本序列中各词向量样本的先后顺序,逆序地对各词向量样本处理得到第二语义向量样本序列,包括:按照词向量样本序列中各词向量样本的先后顺序,逆序地将各词向量样本作为韵律预测模型的反向传播隐层当前处理的词向量样本;在当前处理的词向量样本为词向量样本序列中末尾的词向量样本时,通过反向传播隐层根据当前处理的词向量样本得到相应的语义向量样本;在当前处理的词向量样本不为词向量样本序列中末尾的词向量样本时,通过反向传播隐层根据当前处理的词向量样本,及前次处理的词向量样本相应的语义向量样本,得到相应的语义向量样本;获得词向量样本序列相应的第二语义向量样本序列。
具体地,计算机设备可以按照词向量样本序列中各词向量样本的先后顺序,通过韵律预测模型的前向传播隐层逆序地对各词向量样本进行运算,循环地将前次的运算结果和当前词向量样本作为当次运算的输入值,进行当次运算,直至最后一次运算为止,依次得到各词向量样本相应的语义向量样本。可以理解,由于第一次运算时不存在前次运算,所以第一次运算时的输入值为逆序第一个词向量样本。
在本实施例中,在句子反方向上,循环地将前次运算结果和当前词向量作为当次运算的输入值,使得在后生成的语义向量既能反映本词所携带的信息,还能反映在后的词所携带的信息,从而能够更加充分、完整地反映本词在句子中的语义,进而基于该语义向量所进行的韵律预测模型的训练更加的准确性。
进一步地,计算机设备可通过韵律预测模型的隐层,通过该隐层的模型参数对第一语义向量样本序列和第一语义向量样本序列进行线性或者非线性变化,得到语义向量样本序列。
上述实施例中,按照各词向量间的先后顺序,双向循环地将前次运算结果和当前词向量作为当次运算的输入值,使得生成的语义向量既能反映本词所携带的信息,还能反映上下文所携带的信息,从而能够更加充分、完整地反映本词在句子中的语义,进而基于该语义向量所进行的韵律预测更加的准确性。
在一个实施例中,韵律预测模型包括第一模型和第二模型。S406包括:在第一模型的隐层中,按照词向量样本序列中各词向量样本的先后顺序对各词向量样本进行处理得到语义向量样本序列。S408包括:通过第二模型的输出层,输出由语义向量样本序列映射得到的预测韵律标签序列。
在一个实施例中,第一模型为双向循环神经网络模型。第二模型为条件随机场模型。
在一个实施例中,通过第二模型的输出层,输出由语义向量样本序列映射得到的预测韵律标签序列,包括:在第二模型的输出层中,根据语义向量样本与韵律标签之间的特征矩阵,及各韵律标签之间的转移矩阵,确定各语义向量样本对应各韵律标签的概率;对应每个语义向量样本,选取相应确定的概率中最大概率对应的韵律标签;按照语义向量样本序列中的各语义向量样本的先后顺序,将相应选取的韵律标签组合为预测韵律标签序列后输出。
在一个实施例中,在训练过程中,按照预测韵律标签序列与韵律标签序列的差异调整韵律预测模型,可以是最大化各语义向量样本对应的韵律标签序列中相应位置的韵律标签的概率。
举例说明,对词向量序列“阿卡耶夫/对/此/表示/同意”相应预期的韵律标签序列为“2,0,2,1,3”。那么即最大化“阿卡耶夫”对应韵律标签2的概率,最大化“对”对应韵律标签0的概率,最大化“此”对应韵律标签2的概率,最大化“表示”对应韵律标签1的概率,以及最大化“同意”对应韵律标签3的概率。
计算机设备在训练韵律预测模型时,可最大化对数概率:
在一个实施例中,损失函数也可以被定义为:
L=argminθ{-log[p(y|X)]} (5)
其中,θ为韵律预测模型中的模型参数,包括语义向量样本与韵律标签之间的特征矩阵,及各韵律标签之间的转移矩阵。
可以理解是的,求解log[p(y|X)]的最大值,与log[p(y|X)]取负后求解最小值是等价的,也就是说求解式(4)的最大值即为求解式(5)的最小值。
在一个实施例中,计算机设备可将文本样本按照一定比例分为训练文本样本和测试文本样本。比如80%的文本样本设置为训练文本样本、20%的文本样本设置为测试文本样本。计算机设备可在通过训练文本样本训练完韵律预测模型后,采用测试文本样本对训练得到的预测韵律模型进行验证,根据验证结果计算预先设置的验证指标。其中验证指标可包括Acuracy准确率,Precision精确率,Recall召回率以及F1Score F1分数等。
在本实施例中,可以根据韵律预测模型的预测结果与预期结果的类别组合划分为:真正例(TP)、假正例(FP)、真反例(TN)、假反例(FN)。其中,Acuracy=(TP+TN)/(TP+FN+TN+FN),Precision=TP/(TP+FP),Recall=TP/(TP+FN),F1=2*Precision*Recall/(Precision+Recall)。
举例说明,假设一个测试文本样本的韵律标注如下:“阿卡耶夫/2对/0此/2表示/1同意/3”,即预期的韵律标签序列为“2,0,2,1,3”,预测的韵律如下:“阿卡耶夫/1对/2此/2表示/1同意/3”,即实际预测的韵律标签序列为“1,2,2,1,3”。
则对于韵律标签“2”,预期的韵律标签序列转换为二分类“P,N,P,N,N”,实际预测的韵律标签序列转换为二分类“N,P,P,N,N”。其中P代表是,N代表否。那么此时TP=1(此),FP=1(对),TN=2(表示,同意),FN=1(阿卡耶夫)。Acuracy=(1+2)/(1+1+2+1)=0.6,Precision=1/(1+1)=0.5,Recall=1/(1+1)=0.5,F1=2*0.5*0.5/(0.5+0.5)=0.5。
下表示出了训练完的模型的验证结果:
从上表可以明显看出本案相对于传统方案,大部分验证指标都有显著的提示。
如图5所示,在一个具体的实施例中,该模型训练方法具体包括以下步骤:
S502,获取文本样本;对文本样本进行分词得到相应的词序列;确定词序列中各词相应的词性与词长。
S504,对于词序列中的每个词,根据当前词的内容特征得到内容向量,并将当前词相应的词性和词长分别映射为词性向量和词长向量;组合内容向量、词性向量和词长向量得到相应词所对应的词向量样本,得到词向量样本序列。
S506,确定词向量样本序列中各词向量样本相应的韵律标签;得到与词向量样本序列相应的韵律标签序列。
S508,将词向量样本序列输入双向循环神经网络模型。
S510,按照词向量样本序列中各词向量样本的先后顺序,顺序地将各词向量样本作为双向循环神经网络模型的前向传播隐层当前处理的词向量样本;在当前处理的词向量样本为词向量样本序列的首个词向量样本时,通过前向传播隐层根据当前处理的词向量样本得到相应的语义向量样本;在当前处理的词向量样本不为词向量样本序列的首个词向量样本时,通过前向传播隐层根据当前处理的词向量样本,及前次处理的词向量样本相应的语义向量样本,得到相应的语义向量样本;获得词向量样本序列相应的第一语义向量样本序列。
S512,按照词向量样本序列中各词向量样本的先后顺序,逆序地将各词向量样本作为双向循环神经网络模型的反向传播隐层当前处理的词向量样本;在当前处理的词向量样本为词向量样本序列中末尾的词向量样本时,通过反向传播隐层根据当前处理的词向量样本得到相应的语义向量样本;在当前处理的词向量样本不为词向量样本序列中末尾的词向量样本时,通过反向传播隐层根据当前处理的词向量样本,及前次处理的词向量样本相应的语义向量样本,得到相应的语义向量样本;获得词向量样本序列相应的第二语义向量样本序列。
S514,根据第一语义向量样本序列和第一语义向量样本序列,得到语义向量样本序列。
S516,将语义向量样本序列输入条件随机场模型。
S518,在条件随机场模型的输出层中,根据语义向量样本与韵律标签之间的特征矩阵,及各韵律标签之间的转移矩阵,确定各语义向量样本对应各韵律标签的概率;对应每个语义向量样本,选取相应确定的概率中最大概率对应的韵律标签;按照语义向量样本序列中的各语义向量样本的先后顺序,将相应选取的韵律标签组合为预测韵律标签序列后输出。
S520,按照预测韵律标签序列与韵律标签序列的差异,调整韵律预测模型,并继续训练直至满足训练结束条件。
在本实施例中,采用词向量样本序列和相应的韵律标签序列来训练韵律预测模型,训练韵律预测模型的过程在于学习对词序列进行韵律标注。其中,以向量化的数据作为模型的训练数据可极大地减少模型运算量,而且在韵律预测模型的隐层中,按照词向量样本序列中各词向量样本的先后顺序对各词向量样本进行处理,学习到生成能够反映上下文关系的语义向量样本序列,并依据上下文关系进行韵律标注的能力。这样在利用训练得到的韵律预测模型进行语音合成时能够根据待合成的文本上下文关系进行韵律标注,既能够极大程度上真实地反应自然人的说话风格,又能提高文本处理效率。
应该理解的是,虽然上述各实施例的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,上述各实施例中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
如图6所示,在一个实施例中韵律预测模型的训练和使用的流程图。参考图6,在训练阶段,计算机设备可先收集训练语料得到语料库,然后对语料库中的语料进行文本语句分割,得到若干文本样本(句子),再对文本样本进行分词处理和向量化处理,得到文本样本对应的词向量样本序列和相应的韵律标签序列,根据词向量样本序列和相应的韵律标签序列训练韵律预测模型。在使用阶段,计算机设备可获取目标文本,对目标文本进行分词处理和向量化处理,得到目标文本对应的词向量序列,将词向量序列输入训练完成的韵律预测模型中,输出预测韵律标签序列。
如图7所示,在一个实施例中,提供了一种文本处理装置700。参照图7,该文本处理装置700包括:获取模块701、向量化模块702、处理模块703和输出模块704。
获取模块701,用于获取目标文本。
向量化模块702,用于向量化组成目标文本的各词,得到词向量序列。
处理模块703,用于将词向量序列输入韵律预测模型,在韵律预测模型的隐层中,按词向量序列中各词向量的先后顺序处理各词向量得到语义向量序列。
输出模块704,用于通过韵律预测模型的输出层,输出由语义向量序列映射得到的预测韵律标签序列。
上述文本处理装置700,在获取到待处理的目标文本之后,即可自动将目标文本包括的词向量化,再自动通过韵律预测模型来进行韵律预测得到目标文本的韵律标注结果。其中,将向量化的数据作为模型的输入可极大地减少模型运算量,而且在模型的隐层中,按照词向量序列中各词向量的先后顺序对各词向量进行处理,生成能够反映上下文关系的语义向量序列,并依据上下文关系进行韵律标注。这样避免了引入大量人力而带来的耗时,提高了文本处理效率,而且在将韵律标注后的目标文本进行语音合成时,也能够极大程度上真实地反应自然人的说话风格,提高语音合成效果。
在一个实施例中,向量化模块702还用于对目标文本进行分词得到相应的词序列;确定词序列中各词相应的词性与词长;根据词性与词长向量化相应词,得到词向量序列。
在一个实施例中,向量化模块702还用于对于词序列中的每个词,根据当前词的内容特征得到内容向量,并将当前词相应的词性和词长分别映射为词性向量和词长向量;组合内容向量、词性向量和词长向量得到相应词所对应的词向量,得到词向量序列。
在一个实施例中,处理模块703还用于将词向量序列输入韵律预测模型;在韵律预测模型的前向传播隐层中,按照词向量序列中各词向量的先后顺序,顺序地对各词向量进行处理得到第一语义向量序列;在韵律预测模型的反向传播隐层中,按照词向量序列中各词向量的先后顺序,逆序地对各词向量进行处理得到第二语义向量序列;根据第一语义向量序列和第一语义向量序列,得到语义向量序列。
在一个实施例中,处理模块703还用于按照词向量序列中各词向量的先后顺序,顺序地将各词向量作为韵律预测模型的前向传播隐层当前处理的词向量;在当前处理的词向量为词向量序列的首个词向量时,通过前向传播隐层根据当前处理的词向量得到相应的语义向量;在当前处理的词向量不为词向量序列的首个词向量时,通过前向传播隐层根据当前处理的词向量,及前次处理的词向量相应的语义向量,得到当前处理的词向量相应的语义向量;获得词向量序列相应的第一语义向量序列。
在一个实施例中,处理模块703还用于按照词向量序列中各词向量的先后顺序,逆序地将各词向量作为韵律预测模型的反向传播隐层当前处理的词向量;
在当前处理的词向量为词向量序列中末尾的词向量时,通过反向传播隐层根据当前处理的词向量得到相应的语义向量;在当前处理的词向量不为词向量序列中末尾的词向量时,通过反向传播隐层根据当前处理的词向量,及前次处理的词向量相应的语义向量,得到当前处理的词向量相应的语义向量;获得词向量序列相应的第二语义向量序列。
在一个实施例中,输出模块704还用于在韵律预测模型的输出层中,根据语义向量与韵律标签之间的特征矩阵确定各语义向量对应各韵律标签的概率;对应每个语义向量,选取相应确定的概率中最大概率对应的韵律标签;按照语义向量序列中的各语义向量的先后顺序,将相应选取的韵律标签组合为预测韵律标签序列后输出。
在一个实施例中,韵律预测模型包括第一模型和第二模型。处理模块703还用于将词向量序列输入第一模型,在第一模型的隐层中,按照词向量序列中各词向量的先后顺序对各词向量进行处理得到语义向量序列。输出模块704还用于将语义向量序列输入第二模型,通过第二模型的输出层,输出由语义向量序列映射得到的预测韵律标签序列。
在一个实施例中,输出模块704还用于在第二模型的输出层中,根据语义向量与韵律标签之间的特征矩阵,及各韵律标签之间的转移矩阵,确定各语义向量对应各韵律标签的概率;对应每个语义向量,选取相应确定的概率中最大概率对应的韵律标签;按照语义向量序列中的各语义向量的先后顺序,将相应选取的韵律标签组合为预测韵律标签序列后输出。
在一个实施例中,第一模型为双向循环神经网络模型;第二模型为条件随机场模型。
如图8所示,在一个实施例中,文本处理装置700还包括:合成模块705。
合成模块705,用于根据预测韵律标签序列,确定组成目标文本的各词各自对应的韵律标签;按照各词各自对应的韵律标签输出目标文本对应的合成语音。
如图9所示,在一个实施例中,提供了一种模型训练装置900。参照图9,该模型训练装置900包括:获取模块901、输入模块902、处理模块903、输出模块904和调整模块905。
获取模块901,用于获取词向量样本序列和相应的韵律标签序列。
输入模块902,用于将所述词向量样本序列输入韵律预测模型。
处理模块903,用于在所述韵律预测模型的隐层中,按照所述词向量样本序列中各词向量样本的先后顺序对各所述词向量样本进行处理得到语义向量样本序列。
输出模块904,用于通过所述韵律预测模型的输出层,输出由所述语义向量样本序列映射得到的预测韵律标签序列。
调整模块905,用于按照所述预测韵律标签序列与所述韵律标签序列的差异,调整所述韵律预测模型,并继续训练直至满足训练结束条件。
上述模型训练装置900,采用词向量样本序列和相应的韵律标签序列来训练韵律预测模型,训练韵律预测模型的过程在于学习对词序列进行韵律标注。其中,以向量化的数据作为模型的训练数据可极大地减少模型运算量,而且在韵律预测模型的隐层中,按照词向量样本序列中各词向量样本的先后顺序对各词向量样本进行处理,学习到生成能够反映上下文关系的语义向量样本序列,并依据上下文关系进行韵律标注的能力。这样在利用训练得到的韵律预测模型进行语音合成时能够根据待合成的文本上下文关系进行韵律标注,既能够极大程度上真实地反应自然人的说话风格,又能提高文本处理效率。
在一个实施例中,获取模块901还用于获取文本样本;将组成文本样本的各词向量化得到词向量样本序列;确定词向量样本序列中各词向量样本相应的韵律标签;得到与词向量样本序列相应的韵律标签序列。
在一个实施例中,获取模块901还用于对文本样本进行分词得到相应的词序列;确定词序列中各词相应的词性与词长;根据词性与词长向量化相应词,得到词向量样本序列。
在一个实施例中,获取模块901还用于对于词序列中的每个词,根据当前词的内容特征得到内容向量,并将当前词相应的词性和词长分别映射为词性向量和词长向量;组合内容向量、词性向量和词长向量得到相应词所对应的词向量样本,得到词向量样本序列。
在一个实施例中,处理模块903还用于在韵律预测模型的前向传播隐层中,按照词向量样本序列中各词向量样本的先后顺序,顺序地对各词向量样本处理得到第一语义向量样本序列;在韵律预测模型的反向传播隐层中,按照词向量样本序列中各词向量样本的先后顺序,逆序地对各词向量样本处理得到第二语义向量样本序列;根据第一语义向量样本序列和第一语义向量样本序列,得到语义向量样本序列。
在一个实施例中,处理模块903还用于按照词向量样本序列中各词向量样本的先后顺序,顺序地将各词向量样本作为韵律预测模型的前向传播隐层当前处理的词向量样本;在当前处理的词向量样本为词向量样本序列的首个词向量样本时,通过前向传播隐层根据当前处理的词向量样本得到相应的语义向量样本;在当前处理的词向量样本不为词向量样本序列的首个词向量样本时,通过前向传播隐层根据当前处理的词向量样本,及前次处理的词向量样本相应的语义向量样本,得到相应的语义向量样本;获得词向量样本序列相应的第一语义向量样本序列。
在一个实施例中,处理模块903还用于按照词向量样本序列中各词向量样本的先后顺序,逆序地将各词向量样本作为韵律预测模型的反向传播隐层当前处理的词向量样本;在当前处理的词向量样本为词向量样本序列中末尾的词向量样本时,通过反向传播隐层根据当前处理的词向量样本得到相应的语义向量样本;在当前处理的词向量样本不为词向量样本序列中末尾的词向量样本时,通过反向传播隐层根据当前处理的词向量样本,及前次处理的词向量样本相应的语义向量样本,得到相应的语义向量样本;获得词向量样本序列相应的第二语义向量样本序列。
在一个实施例中,韵律预测模型包括第一模型和第二模型。处理模块903还用于在第一模型的隐层中,按照词向量样本序列中各词向量样本的先后顺序对各词向量样本进行处理得到语义向量样本序列。输出模块904还用于通过第二模型的输出层,输出由语义向量样本序列映射得到的预测韵律标签序列。
在一个实施例中,输出模块904还用于在第二模型的输出层中,根据语义向量样本与韵律标签之间的特征矩阵,及各韵律标签之间的转移矩阵,确定各语义向量样本对应各韵律标签的概率;对应每个语义向量样本,选取相应确定的概率中最大概率对应的韵律标签;按照语义向量样本序列中的各语义向量样本的先后顺序,将相应选取的韵律标签组合为预测韵律标签序列后输出。
在一个实施例中,第一模型为双向循环神经网络模型;第二模型为条件随机场模型。
图10示出了一个实施例中计算机设备的内部结构图。该计算机设备具体可以是终端或者服务器。如图10所示,该计算机设备包括通过系统总线连接的处理器、存储器和网络接口。其中,存储器包括非易失性存储介质和内存储器。该计算机设备的非易失性存储介质存储有操作系统,还可存储有计算机程序,该计算机程序被处理器执行时,可使得处理器实现文本处理方法和/或模型训练方法。该内存储器中也可储存有计算机程序,该计算机程序被处理器执行时,可使得处理器执行文本处理方法和/或模型训练方法。本领域技术人员可以理解,图10中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,本申请提供的文本处理装置和模型训练装置均可以实现为一种计算机程序的形式,计算机程序可在如图10所示的计算机设备上运行,计算机设备的非易失性存储介质可存储组成该文本处理装置和/或模型训练装置的各个程序模块,比如,图7所示的获取模块701、向量化模块702、处理模块703和输出模块704等。各个程序模块组成的计算机程序使得处理器执行本说明书中描述的本申请各个实施例的文本处理方法和/或模型训练方法中的步骤。
例如,图10所示的计算机设备可以通过如图7所示的文本处理装置700中的获取模块701获取目标文本。通过向量化模块702向量化组成目标文本的各词,得到词向量序列。通过处理模块703将词向量序列输入韵律预测模型,在韵律预测模型的隐层中,按词向量序列中各词向量的先后顺序处理各词向量得到语义向量序列。通过输出模块704通过韵律预测模型的输出层,输出由语义向量序列映射得到的预测韵律标签序列。
再例如,图10所示的计算机设备还可以通过如图9所示的模型训练装置900中的获取模块901获取词向量样本序列和相应的韵律标签序列。通过输入模块902将所述词向量样本序列输入韵律预测模型。通过处理模块903在所述韵律预测模型的隐层中,按照所述词向量样本序列中各词向量样本的先后顺序对各所述词向量样本进行处理得到语义向量样本序列。通过输出模块904通过所述韵律预测模型的输出层,输出由所述语义向量样本序列映射得到的预测韵律标签序列。通过调整模块905按照所述预测韵律标签序列与所述韵律标签序列的差异,调整所述韵律预测模型,并继续训练直至满足训练结束条件。
在一个实施例中,提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器执行时,使得处理器执行以下步骤:获取目标文本;向量化组成目标文本的各词,得到词向量序列;将词向量序列输入韵律预测模型,在韵律预测模型的隐层中,按词向量序列中各词向量的先后顺序处理各词向量得到语义向量序列;通过韵律预测模型的输出层,输出由语义向量序列映射得到的预测韵律标签序列。
在一个实施例中,向量化组成目标文本的各词,得到词向量序列,包括:对目标文本进行分词得到相应的词序列;确定词序列中各词相应的词性与词长;根据词性与词长向量化相应词,得到词向量序列。
在一个实施例中,根据词性与词长向量化相应词,得到词向量序列,包括:对于词序列中的每个词,根据当前词的内容特征得到内容向量,并将当前词相应的词性和词长分别映射为词性向量和词长向量;组合内容向量、词性向量和词长向量得到相应词所对应的词向量,得到词向量序列。
在一个实施例中,将词向量序列输入韵律预测模型,在韵律预测模型的隐层中,按词向量序列中各词向量的先后顺序处理各词向量得到语义向量序列,包括:将词向量序列输入韵律预测模型;在韵律预测模型的前向传播隐层中,按照词向量序列中各词向量的先后顺序,顺序地对各词向量进行处理得到第一语义向量序列;在韵律预测模型的反向传播隐层中,按照词向量序列中各词向量的先后顺序,逆序地对各词向量进行处理得到第二语义向量序列;根据第一语义向量序列和第一语义向量序列,得到语义向量序列。
在一个实施例中,在韵律预测模型的前向传播隐层中,按照词向量序列中各词向量的先后顺序,顺序地对各词向量进行处理得到第一语义向量序列,包括:按照词向量序列中各词向量的先后顺序,顺序地将各词向量作为韵律预测模型的前向传播隐层当前处理的词向量;在当前处理的词向量为词向量序列的首个词向量时,通过前向传播隐层根据当前处理的词向量得到相应的语义向量;在当前处理的词向量不为词向量序列的首个词向量时,通过前向传播隐层根据当前处理的词向量,及前次处理的词向量相应的语义向量,得到当前处理的词向量相应的语义向量;获得词向量序列相应的第一语义向量序列。
在一个实施例中,在韵律预测模型的反向传播隐层中,按照词向量序列中各词向量的先后顺序,逆序地对各词向量进行处理得到第二语义向量序列,包括:按照词向量序列中各词向量的先后顺序,逆序地将各词向量作为韵律预测模型的反向传播隐层当前处理的词向量;在当前处理的词向量为词向量序列中末尾的词向量时,通过反向传播隐层根据当前处理的词向量得到相应的语义向量;在当前处理的词向量不为词向量序列中末尾的词向量时,通过反向传播隐层根据当前处理的词向量,及前次处理的词向量相应的语义向量,得到当前处理的词向量相应的语义向量;获得词向量序列相应的第二语义向量序列。
在一个实施例中,通过韵律预测模型的输出层,输出由语义向量序列映射得到的预测韵律标签序列,包括:在韵律预测模型的输出层中,根据语义向量与韵律标签之间的特征矩阵确定各语义向量对应各韵律标签的概率;对应每个语义向量,选取相应确定的概率中最大概率对应的韵律标签;按照语义向量序列中的各语义向量的先后顺序,将相应选取的韵律标签组合为预测韵律标签序列后输出。
在一个实施例中,韵律预测模型包括第一模型和第二模型。将词向量序列输入韵律预测模型,在韵律预测模型的隐层中,按词向量序列中各词向量的先后顺序处理各词向量得到语义向量序列,包括:将词向量序列输入第一模型,在第一模型的隐层中,按照词向量序列中各词向量的先后顺序对各词向量进行处理得到语义向量序列。通过韵律预测模型的输出层,输出由语义向量序列映射得到的预测韵律标签序列,包括:将语义向量序列输入第二模型,通过第二模型的输出层,输出由语义向量序列映射得到的预测韵律标签序列。
在一个实施例中,将语义向量序列输入第二模型,通过第二模型的输出层,输出由语义向量序列映射得到的预测韵律标签序列,包括:在第二模型的输出层中,根据语义向量与韵律标签之间的特征矩阵,及各韵律标签之间的转移矩阵,确定各语义向量对应各韵律标签的概率;对应每个语义向量,选取相应确定的概率中最大概率对应的韵律标签;按照语义向量序列中的各语义向量的先后顺序,将相应选取的韵律标签组合为预测韵律标签序列后输出。
在一个实施例中,第一模型为双向循环神经网络模型;第二模型为条件随机场模型。
在一个实施例中,该计算机程序被处理器执行时,还使得处理器执行以下步骤:根据预测韵律标签序列,确定组成目标文本的各词各自对应的韵律标签;按照各词各自对应的韵律标签输出目标文本对应的合成语音。
上述存储介质,在获取到待处理的目标文本之后,即可自动将目标文本包括的词向量化,再自动通过韵律预测模型来进行韵律预测得到目标文本的韵律标注结果。其中,将向量化的数据作为模型的输入可极大地减少模型运算量,而且在模型的隐层中,按照词向量序列中各词向量的先后顺序对各词向量进行处理,生成能够反映上下文关系的语义向量序列,并依据上下文关系进行韵律标注。这样避免了引入大量人力而带来的耗时,提高了文本处理效率,而且在将韵律标注后的目标文本进行语音合成时,也能够极大程度上真实地反应自然人的说话风格,提高语音合成效果。
在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器中储存有计算机程序,计算机程序被处理器执行时,使得处理器执行以下步骤:获取目标文本;向量化组成目标文本的各词,得到词向量序列;将词向量序列输入韵律预测模型,在韵律预测模型的隐层中,按词向量序列中各词向量的先后顺序处理各词向量得到语义向量序列;通过韵律预测模型的输出层,输出由语义向量序列映射得到的预测韵律标签序列。
在一个实施例中,向量化组成目标文本的各词,得到词向量序列,包括:对目标文本进行分词得到相应的词序列;确定词序列中各词相应的词性与词长;根据词性与词长向量化相应词,得到词向量序列。
在一个实施例中,根据词性与词长向量化相应词,得到词向量序列,包括:对于词序列中的每个词,根据当前词的内容特征得到内容向量,并将当前词相应的词性和词长分别映射为词性向量和词长向量;组合内容向量、词性向量和词长向量得到相应词所对应的词向量,得到词向量序列。
在一个实施例中,将词向量序列输入韵律预测模型,在韵律预测模型的隐层中,按词向量序列中各词向量的先后顺序处理各词向量得到语义向量序列,包括:将词向量序列输入韵律预测模型;在韵律预测模型的前向传播隐层中,按照词向量序列中各词向量的先后顺序,顺序地对各词向量进行处理得到第一语义向量序列;在韵律预测模型的反向传播隐层中,按照词向量序列中各词向量的先后顺序,逆序地对各词向量进行处理得到第二语义向量序列;根据第一语义向量序列和第一语义向量序列,得到语义向量序列。
在一个实施例中,在韵律预测模型的前向传播隐层中,按照词向量序列中各词向量的先后顺序,顺序地对各词向量进行处理得到第一语义向量序列,包括:按照词向量序列中各词向量的先后顺序,顺序地将各词向量作为韵律预测模型的前向传播隐层当前处理的词向量;在当前处理的词向量为词向量序列的首个词向量时,通过前向传播隐层根据当前处理的词向量得到相应的语义向量;在当前处理的词向量不为词向量序列的首个词向量时,通过前向传播隐层根据当前处理的词向量,及前次处理的词向量相应的语义向量,得到当前处理的词向量相应的语义向量;获得词向量序列相应的第一语义向量序列。
在一个实施例中,在韵律预测模型的反向传播隐层中,按照词向量序列中各词向量的先后顺序,逆序地对各词向量进行处理得到第二语义向量序列,包括:按照词向量序列中各词向量的先后顺序,逆序地将各词向量作为韵律预测模型的反向传播隐层当前处理的词向量;在当前处理的词向量为词向量序列中末尾的词向量时,通过反向传播隐层根据当前处理的词向量得到相应的语义向量;在当前处理的词向量不为词向量序列中末尾的词向量时,通过反向传播隐层根据当前处理的词向量,及前次处理的词向量相应的语义向量,得到当前处理的词向量相应的语义向量;获得词向量序列相应的第二语义向量序列。
在一个实施例中,通过韵律预测模型的输出层,输出由语义向量序列映射得到的预测韵律标签序列,包括:在韵律预测模型的输出层中,根据语义向量与韵律标签之间的特征矩阵确定各语义向量对应各韵律标签的概率;对应每个语义向量,选取相应确定的概率中最大概率对应的韵律标签;按照语义向量序列中的各语义向量的先后顺序,将相应选取的韵律标签组合为预测韵律标签序列后输出。
在一个实施例中,韵律预测模型包括第一模型和第二模型。将词向量序列输入韵律预测模型,在韵律预测模型的隐层中,按词向量序列中各词向量的先后顺序处理各词向量得到语义向量序列,包括:将词向量序列输入第一模型,在第一模型的隐层中,按照词向量序列中各词向量的先后顺序对各词向量进行处理得到语义向量序列。通过韵律预测模型的输出层,输出由语义向量序列映射得到的预测韵律标签序列,包括:将语义向量序列输入第二模型,通过第二模型的输出层,输出由语义向量序列映射得到的预测韵律标签序列。
在一个实施例中,将语义向量序列输入第二模型,通过第二模型的输出层,输出由语义向量序列映射得到的预测韵律标签序列,包括:在第二模型的输出层中,根据语义向量与韵律标签之间的特征矩阵,及各韵律标签之间的转移矩阵,确定各语义向量对应各韵律标签的概率;对应每个语义向量,选取相应确定的概率中最大概率对应的韵律标签;按照语义向量序列中的各语义向量的先后顺序,将相应选取的韵律标签组合为预测韵律标签序列后输出。
在一个实施例中,第一模型为双向循环神经网络模型;第二模型为条件随机场模型。
在一个实施例中,该计算机程序被处理器执行时,还使得处理器执行以下步骤:根据预测韵律标签序列,确定组成目标文本的各词各自对应的韵律标签;按照各词各自对应的韵律标签输出目标文本对应的合成语音。
上述计算机设备,在获取到待处理的目标文本之后,即可自动将目标文本包括的词向量化,再自动通过韵律预测模型来进行韵律预测得到目标文本的韵律标注结果。其中,将向量化的数据作为模型的输入可极大地减少模型运算量,而且在模型的隐层中,按照词向量序列中各词向量的先后顺序对各词向量进行处理,生成能够反映上下文关系的语义向量序列,并依据上下文关系进行韵律标注。这样避免了引入大量人力而带来的耗时,提高了文本处理效率,而且在将韵律标注后的目标文本进行语音合成时,也能够极大程度上真实地反应自然人的说话风格,提高语音合成效果。
在一个实施例中,提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器执行时,使得处理器执行以下步骤:获取词向量样本序列和相应的韵律标签序列;将词向量样本序列输入韵律预测模型;在韵律预测模型的隐层中,按照词向量样本序列中各词向量样本的先后顺序对各词向量样本进行处理得到语义向量样本序列;通过韵律预测模型的输出层,输出由语义向量样本序列映射得到的预测韵律标签序列;按照预测韵律标签序列与韵律标签序列的差异,调整韵律预测模型,并继续训练直至满足训练结束条件。
在一个实施例中,获取词向量样本序列和相应的韵律标签序列,包括:获取文本样本;将组成文本样本的各词向量化得到词向量样本序列;确定词向量样本序列中各词向量样本相应的韵律标签;得到与词向量样本序列相应的韵律标签序列。
在一个实施例中,将组成文本样本的各词向量化得到词向量样本序列,包括:对文本样本进行分词得到相应的词序列;确定词序列中各词相应的词性与词长;根据词性与词长向量化相应词,得到词向量样本序列。
在一个实施例中,根据词性与词长向量化相应词,得到词向量样本序列,包括:对于词序列中的每个词,根据当前词的内容特征得到内容向量,并将当前词相应的词性和词长分别映射为词性向量和词长向量;组合内容向量、词性向量和词长向量得到相应词所对应的词向量样本,得到词向量样本序列。
在一个实施例中,在韵律预测模型的隐层中,按照词向量样本序列中各词向量样本的先后顺序对各词向量样本进行处理得到语义向量样本序列,包括:在韵律预测模型的前向传播隐层中,按照词向量样本序列中各词向量样本的先后顺序,顺序地对各词向量样本处理得到第一语义向量样本序列;在韵律预测模型的反向传播隐层中,按照词向量样本序列中各词向量样本的先后顺序,逆序地对各词向量样本处理得到第二语义向量样本序列;根据第一语义向量样本序列和第一语义向量样本序列,得到语义向量样本序列。
在一个实施例中,在韵律预测模型的前向传播隐层中,按照词向量样本序列中各词向量样本的先后顺序,顺序地对各词向量样本处理得到第一语义向量样本序列,包括:按照词向量样本序列中各词向量样本的先后顺序,顺序地将各词向量样本作为韵律预测模型的前向传播隐层当前处理的词向量样本;在当前处理的词向量样本为词向量样本序列的首个词向量样本时,通过前向传播隐层根据当前处理的词向量样本得到相应的语义向量样本;在当前处理的词向量样本不为词向量样本序列的首个词向量样本时,通过前向传播隐层根据当前处理的词向量样本,及前次处理的词向量样本相应的语义向量样本,得到相应的语义向量样本;获得词向量样本序列相应的第一语义向量样本序列。
在一个实施例中,在韵律预测模型的反向传播隐层中,按照词向量样本序列中各词向量样本的先后顺序,逆序地对各词向量样本处理得到第二语义向量样本序列,包括:按照词向量样本序列中各词向量样本的先后顺序,逆序地将各词向量样本作为韵律预测模型的反向传播隐层当前处理的词向量样本;在当前处理的词向量样本为词向量样本序列中末尾的词向量样本时,通过反向传播隐层根据当前处理的词向量样本得到相应的语义向量样本;在当前处理的词向量样本不为词向量样本序列中末尾的词向量样本时,通过反向传播隐层根据当前处理的词向量样本,及前次处理的词向量样本相应的语义向量样本,得到相应的语义向量样本;获得词向量样本序列相应的第二语义向量样本序列。
在一个实施例中,韵律预测模型包括第一模型和第二模型。在韵律预测模型的隐层中,按照词向量样本序列中各词向量样本的先后顺序对各词向量样本进行处理得到语义向量样本序列,包括:在第一模型的隐层中,按照词向量样本序列中各词向量样本的先后顺序对各词向量样本进行处理得到语义向量样本序列。通过韵律预测模型的输出层,输出由语义向量样本序列映射得到的预测韵律标签序列,包括:通过第二模型的输出层,输出由语义向量样本序列映射得到的预测韵律标签序列。
在一个实施例中,通过第二模型的输出层,输出由语义向量样本序列映射得到的预测韵律标签序列,包括:在第二模型的输出层中,根据语义向量样本与韵律标签之间的特征矩阵,及各韵律标签之间的转移矩阵,确定各语义向量样本对应各韵律标签的概率;对应每个语义向量样本,选取相应确定的概率中最大概率对应的韵律标签;按照语义向量样本序列中的各语义向量样本的先后顺序,将相应选取的韵律标签组合为预测韵律标签序列后输出。
在一个实施例中,第一模型为双向循环神经网络模型;第二模型为条件随机场模型。
上述存储介质,采用词向量样本序列和相应的韵律标签序列来训练韵律预测模型,训练韵律预测模型的过程在于学习对词序列进行韵律标注。其中,以向量化的数据作为模型的训练数据可极大地减少模型运算量,而且在韵律预测模型的隐层中,按照词向量样本序列中各词向量样本的先后顺序对各词向量样本进行处理,学习到生成能够反映上下文关系的语义向量样本序列,并依据上下文关系进行韵律标注的能力。这样在利用训练得到的韵律预测模型进行语音合成时能够根据待合成的文本上下文关系进行韵律标注,既能够极大程度上真实地反应自然人的说话风格,又能提高文本处理效率。
在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器中储存有计算机程序,计算机程序被处理器执行时,使得处理器执行以下步骤:获取词向量样本序列和相应的韵律标签序列;将词向量样本序列输入韵律预测模型;在韵律预测模型的隐层中,按照词向量样本序列中各词向量样本的先后顺序对各词向量样本进行处理得到语义向量样本序列;通过韵律预测模型的输出层,输出由语义向量样本序列映射得到的预测韵律标签序列;按照预测韵律标签序列与韵律标签序列的差异,调整韵律预测模型,并继续训练直至满足训练结束条件。
在一个实施例中,获取词向量样本序列和相应的韵律标签序列,包括:获取文本样本;将组成文本样本的各词向量化得到词向量样本序列;确定词向量样本序列中各词向量样本相应的韵律标签;得到与词向量样本序列相应的韵律标签序列。
在一个实施例中,将组成文本样本的各词向量化得到词向量样本序列,包括:对文本样本进行分词得到相应的词序列;确定词序列中各词相应的词性与词长;根据词性与词长向量化相应词,得到词向量样本序列。
在一个实施例中,根据词性与词长向量化相应词,得到词向量样本序列,包括:对于词序列中的每个词,根据当前词的内容特征得到内容向量,并将当前词相应的词性和词长分别映射为词性向量和词长向量;组合内容向量、词性向量和词长向量得到相应词所对应的词向量样本,得到词向量样本序列。
在一个实施例中,在韵律预测模型的隐层中,按照词向量样本序列中各词向量样本的先后顺序对各词向量样本进行处理得到语义向量样本序列,包括:在韵律预测模型的前向传播隐层中,按照词向量样本序列中各词向量样本的先后顺序,顺序地对各词向量样本处理得到第一语义向量样本序列;在韵律预测模型的反向传播隐层中,按照词向量样本序列中各词向量样本的先后顺序,逆序地对各词向量样本处理得到第二语义向量样本序列;根据第一语义向量样本序列和第一语义向量样本序列,得到语义向量样本序列。
在一个实施例中,在韵律预测模型的前向传播隐层中,按照词向量样本序列中各词向量样本的先后顺序,顺序地对各词向量样本处理得到第一语义向量样本序列,包括:按照词向量样本序列中各词向量样本的先后顺序,顺序地将各词向量样本作为韵律预测模型的前向传播隐层当前处理的词向量样本;在当前处理的词向量样本为词向量样本序列的首个词向量样本时,通过前向传播隐层根据当前处理的词向量样本得到相应的语义向量样本;在当前处理的词向量样本不为词向量样本序列的首个词向量样本时,通过前向传播隐层根据当前处理的词向量样本,及前次处理的词向量样本相应的语义向量样本,得到相应的语义向量样本;获得词向量样本序列相应的第一语义向量样本序列。
在一个实施例中,在韵律预测模型的反向传播隐层中,按照词向量样本序列中各词向量样本的先后顺序,逆序地对各词向量样本处理得到第二语义向量样本序列,包括:按照词向量样本序列中各词向量样本的先后顺序,逆序地将各词向量样本作为韵律预测模型的反向传播隐层当前处理的词向量样本;在当前处理的词向量样本为词向量样本序列中末尾的词向量样本时,通过反向传播隐层根据当前处理的词向量样本得到相应的语义向量样本;在当前处理的词向量样本不为词向量样本序列中末尾的词向量样本时,通过反向传播隐层根据当前处理的词向量样本,及前次处理的词向量样本相应的语义向量样本,得到相应的语义向量样本;获得词向量样本序列相应的第二语义向量样本序列。
在一个实施例中,韵律预测模型包括第一模型和第二模型。在韵律预测模型的隐层中,按照词向量样本序列中各词向量样本的先后顺序对各词向量样本进行处理得到语义向量样本序列,包括:在第一模型的隐层中,按照词向量样本序列中各词向量样本的先后顺序对各词向量样本进行处理得到语义向量样本序列。通过韵律预测模型的输出层,输出由语义向量样本序列映射得到的预测韵律标签序列,包括:通过第二模型的输出层,输出由语义向量样本序列映射得到的预测韵律标签序列。
在一个实施例中,通过第二模型的输出层,输出由语义向量样本序列映射得到的预测韵律标签序列,包括:在第二模型的输出层中,根据语义向量样本与韵律标签之间的特征矩阵,及各韵律标签之间的转移矩阵,确定各语义向量样本对应各韵律标签的概率;对应每个语义向量样本,选取相应确定的概率中最大概率对应的韵律标签;按照语义向量样本序列中的各语义向量样本的先后顺序,将相应选取的韵律标签组合为预测韵律标签序列后输出。
在一个实施例中,第一模型为双向循环神经网络模型;第二模型为条件随机场模型。
上述计算机设备,采用词向量样本序列和相应的韵律标签序列来训练韵律预测模型,训练韵律预测模型的过程在于学习对词序列进行韵律标注。其中,以向量化的数据作为模型的训练数据可极大地减少模型运算量,而且在韵律预测模型的隐层中,按照词向量样本序列中各词向量样本的先后顺序对各词向量样本进行处理,学习到生成能够反映上下文关系的语义向量样本序列,并依据上下文关系进行韵律标注的能力。这样在利用训练得到的韵律预测模型进行语音合成时能够根据待合成的文本上下文关系进行韵律标注,既能够极大程度上真实地反应自然人的说话风格,又能提高文本处理效率。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一非易失性计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。
Claims (30)
1.一种文本处理方法,包括:
获取目标文本;
向量化组成所述目标文本的各词,得到词向量序列;
将所述词向量序列输入韵律预测模型,在所述韵律预测模型的隐层中,按所述词向量序列中各词向量的先后顺序处理各所述词向量得到语义向量序列;
通过所述韵律预测模型的输出层,输出由所述语义向量序列映射得到的预测韵律标签序列。
2.根据权利要求1所述的方法,其特征在于,所述向量化组成所述目标文本的各词,得到词向量序列,包括:
对所述目标文本进行分词得到相应的词序列;
确定所述词序列中各词相应的词性与词长;
根据所述词性与所述词长向量化相应词,得到词向量序列。
3.根据权利要求2所述的方法,其特征在于,所述根据所述词性与所述词长向量化相应词,得到词向量序列,包括:
对于所述词序列中的每个词,根据当前词的内容特征得到内容向量,并将当前词相应的词性和词长分别映射为词性向量和词长向量;
组合所述内容向量、所述词性向量和所述词长向量得到相应词所对应的词向量,得到词向量序列。
4.根据权利要求1所述的方法,其特征在于,所述将所述词向量序列输入韵律预测模型,在所述韵律预测模型的隐层中,按所述词向量序列中各词向量的先后顺序处理各所述词向量得到语义向量序列,包括:
将所述词向量序列输入韵律预测模型;
在所述韵律预测模型的前向传播隐层中,按照所述词向量序列中各词向量的先后顺序,顺序地对各所述词向量进行处理得到第一语义向量序列;
在所述韵律预测模型的反向传播隐层中,按照所述词向量序列中各词向量的先后顺序,逆序地对各所述词向量进行处理得到第二语义向量序列;
根据所述第一语义向量序列和所述第一语义向量序列,得到语义向量序列。
5.根据权利要求4所述的方法,其特征在于,所述在所述韵律预测模型的前向传播隐层中,按照所述词向量序列中各词向量的先后顺序,顺序地对各所述词向量进行处理得到第一语义向量序列,包括:
按照所述词向量序列中各词向量的先后顺序,顺序地将各词向量作为所述韵律预测模型的前向传播隐层当前处理的词向量;
在当前处理的词向量为所述词向量序列的首个词向量时,通过所述前向传播隐层根据当前处理的词向量得到相应的语义向量;
在当前处理的词向量不为所述词向量序列的首个词向量时,通过所述前向传播隐层根据当前处理的词向量,及前次处理的词向量相应的语义向量,得到当前处理的词向量相应的语义向量;
获得所述词向量序列相应的第一语义向量序列。
6.根据权利要求4所述的方法,其特征在于,所述在所述韵律预测模型的反向传播隐层中,按照所述词向量序列中各词向量的先后顺序,逆序地对各所述词向量进行处理得到第二语义向量序列,包括:
按照所述词向量序列中各词向量的先后顺序,逆序地将各词向量作为所述韵律预测模型的反向传播隐层当前处理的词向量;
在当前处理的词向量为所述词向量序列中末尾的词向量时,通过所述反向传播隐层根据当前处理的词向量得到相应的语义向量;
在当前处理的词向量不为所述词向量序列中末尾的词向量时,通过所述反向传播隐层根据当前处理的词向量,及前次处理的词向量相应的语义向量,得到当前处理的词向量相应的语义向量;
获得所述词向量序列相应的第二语义向量序列。
7.根据权利要求1所述的方法,其特征在于,所述通过所述韵律预测模型的输出层,输出由所述语义向量序列映射得到的预测韵律标签序列,包括:
在所述韵律预测模型的输出层中,根据语义向量与韵律标签之间的特征矩阵确定各所述语义向量对应各韵律标签的概率;
对应每个语义向量,选取相应确定的概率中最大概率对应的韵律标签;
按照语义向量序列中的各语义向量的先后顺序,将相应选取的韵律标签组合为预测韵律标签序列后输出。
8.根据权利要求1所述的方法,其特征在于,所述韵律预测模型包括第一模型和第二模型;
所述将所述词向量序列输入韵律预测模型,在所述韵律预测模型的隐层中,按所述词向量序列中各词向量的先后顺序处理各所述词向量得到语义向量序列,包括:
将所述词向量序列输入第一模型,在所述第一模型的隐层中,按照所述词向量序列中各词向量的先后顺序对各所述词向量进行处理得到语义向量序列;
所述通过所述韵律预测模型的输出层,输出由所述语义向量序列映射得到的预测韵律标签序列,包括:
将所述语义向量序列输入第二模型,通过所述第二模型的输出层,输出由所述语义向量序列映射得到的预测韵律标签序列。
9.根据权利要求8所述的方法,其特征在于,所述将所述语义向量序列输入第二模型,通过所述第二模型的输出层,输出由所述语义向量序列映射得到的预测韵律标签序列,包括:
在所述第二模型的输出层中,根据语义向量与韵律标签之间的特征矩阵,及各韵律标签之间的转移矩阵,确定各所述语义向量对应各韵律标签的概率;
对应每个语义向量,选取相应确定的概率中最大概率对应的韵律标签;
按照语义向量序列中的各语义向量的先后顺序,将相应选取的韵律标签组合为预测韵律标签序列后输出。
10.根据权利要求8所述的方法,其特征在于,所述第一模型为双向循环神经网络模型;所述第二模型为条件随机场模型。
11.根据权利要求1至10中任一项所述的方法,其特征在于,所述方法还包括:
根据所述预测韵律标签序列,确定组成所述目标文本的各词各自对应的韵律标签;
按照各所述词各自对应的韵律标签输出所述目标文本对应的合成语音。
12.一种模型训练方法,包括:
获取词向量样本序列和相应的韵律标签序列;
将所述词向量样本序列输入韵律预测模型;
在所述韵律预测模型的隐层中,按照所述词向量样本序列中各词向量样本的先后顺序对各所述词向量样本进行处理得到语义向量样本序列;
通过所述韵律预测模型的输出层,输出由所述语义向量样本序列映射得到的预测韵律标签序列;
按照所述预测韵律标签序列与所述韵律标签序列的差异,调整所述韵律预测模型,并继续训练直至满足训练结束条件。
13.根据权利要求12所述的方法,其特征在于,所述获取词向量样本序列和相应的韵律标签序列,包括:
获取文本样本;
将组成所述文本样本的各词向量化得到词向量样本序列;
确定所述词向量样本序列中各词向量样本相应的韵律标签;
得到与所述词向量样本序列相应的韵律标签序列。
14.根据权利要求13所述的方法,其特征在于,所述将组成所述文本样本的各词向量化得到词向量样本序列,包括:
对所述文本样本进行分词得到相应的词序列;
确定所述词序列中各词相应的词性与词长;
根据所述词性与所述词长向量化相应词,得到词向量样本序列。
15.根据权利要求14所述的方法,其特征在于,所述根据所述词性与所述词长向量化相应词,得到词向量样本序列,包括:
对于所述词序列中的每个词,根据当前词的内容特征得到内容向量,并将当前词相应的词性和词长分别映射为词性向量和词长向量;
组合所述内容向量、所述词性向量和所述词长向量得到相应词所对应的词向量样本,得到词向量样本序列。
16.根据权利要求12所述的方法,其特征在于,所述在所述韵律预测模型的隐层中,按照所述词向量样本序列中各词向量样本的先后顺序对各所述词向量样本进行处理得到语义向量样本序列,包括:
在所述韵律预测模型的前向传播隐层中,按照所述词向量样本序列中各词向量样本的先后顺序,顺序地对各所述词向量样本处理得到第一语义向量样本序列;
在所述韵律预测模型的反向传播隐层中,按照所述词向量样本序列中各词向量样本的先后顺序,逆序地对各所述词向量样本处理得到第二语义向量样本序列;
根据所述第一语义向量样本序列和所述第一语义向量样本序列,得到语义向量样本序列。
17.根据权利要求16所述的方法,其特征在于,所述在所述韵律预测模型的前向传播隐层中,按照所述词向量样本序列中各词向量样本的先后顺序,顺序地对各所述词向量样本处理得到第一语义向量样本序列,包括:
按照所述词向量样本序列中各词向量样本的先后顺序,顺序地将各词向量样本作为所述韵律预测模型的前向传播隐层当前处理的词向量样本;
在当前处理的词向量样本为所述词向量样本序列的首个词向量样本时,通过所述前向传播隐层根据当前处理的词向量样本得到相应的语义向量样本;
在当前处理的词向量样本不为所述词向量样本序列的首个词向量样本时,通过所述前向传播隐层根据当前处理的词向量样本,及前次处理的词向量样本相应的语义向量样本,得到相应的语义向量样本;
获得所述词向量样本序列相应的第一语义向量样本序列。
18.根据权利要求16所述的方法,其特征在于,所述在所述韵律预测模型的反向传播隐层中,按照所述词向量样本序列中各词向量样本的先后顺序,逆序地对各所述词向量样本处理得到第二语义向量样本序列,包括:
按照所述词向量样本序列中各词向量样本的先后顺序,逆序地将各词向量样本作为所述韵律预测模型的反向传播隐层当前处理的词向量样本;
在当前处理的词向量样本为所述词向量样本序列中末尾的词向量样本时,通过所述反向传播隐层根据当前处理的词向量样本得到相应的语义向量样本;
在当前处理的词向量样本不为所述词向量样本序列中末尾的词向量样本时,通过所述反向传播隐层根据当前处理的词向量样本,及前次处理的词向量样本相应的语义向量样本,得到相应的语义向量样本;
获得所述词向量样本序列相应的第二语义向量样本序列。
19.根据权利要求12所述的方法,其特征在于,所述韵律预测模型包括第一模型和第二模型;
所述在所述韵律预测模型的隐层中,按照所述词向量样本序列中各词向量样本的先后顺序对各所述词向量样本进行处理得到语义向量样本序列,包括:
在所述第一模型的隐层中,按照所述词向量样本序列中各词向量样本的先后顺序对各所述词向量样本进行处理得到语义向量样本序列;
所述通过所述韵律预测模型的输出层,输出由所述语义向量样本序列映射得到的预测韵律标签序列,包括:
通过所述第二模型的输出层,输出由所述语义向量样本序列映射得到的预测韵律标签序列。
20.根据权利要求19所述的方法,其特征在于,所述通过所述第二模型的输出层,输出由所述语义向量样本序列映射得到的预测韵律标签序列,包括:
在所述第二模型的输出层中,根据语义向量样本与韵律标签之间的特征矩阵,及各韵律标签之间的转移矩阵,确定各所述语义向量样本对应各韵律标签的概率;
对应每个语义向量样本,选取相应确定的概率中最大概率对应的韵律标签;
按照语义向量样本序列中的各语义向量样本的先后顺序,将相应选取的韵律标签组合为预测韵律标签序列后输出。
21.根据权利要求19所述的方法,其特征在于,所述第一模型为双向循环神经网络模型;所述第二模型为条件随机场模型。
22.一种文本处理装置,包括:
获取模块,用于获取目标文本;
向量化模块,用于向量化组成所述目标文本的各词,得到词向量序列;
处理模块,用于将所述词向量序列输入韵律预测模型,在所述韵律预测模型的隐层中,按所述词向量序列中各词向量的先后顺序处理各所述词向量得到语义向量序列;
输出模块,用于通过所述韵律预测模型的输出层,输出由所述语义向量序列映射得到的预测韵律标签序列。
23.根据权利要求22所述的装置,其特征在于,所述向量化模块还用于对所述目标文本进行分词得到相应的词序列;确定所述词序列中各词相应的词性与词长;根据所述词性与所述词长向量化相应词,得到词向量序列。
24.根据权利要求22所述的装置,其特征在于,所述处理模块还用于将所述词向量序列输入韵律预测模型;在所述韵律预测模型的前向传播隐层中,按照所述词向量序列中各词向量的先后顺序,顺序地对各所述词向量进行处理得到第一语义向量序列;在所述韵律预测模型的反向传播隐层中,按照所述词向量序列中各词向量的先后顺序,逆序地对各所述词向量进行处理得到第二语义向量序列;根据所述第一语义向量序列和所述第一语义向量序列,得到语义向量序列。
25.根据权利要求22所述的装置,其特征在于,所述韵律预测模型包括第一模型和第二模型;
所述处理模块还用于将所述词向量序列输入第一模型,在所述第一模型的隐层中,按照所述词向量序列中各词向量的先后顺序对各所述词向量进行处理得到语义向量序列;
所述输出模块还用于将所述语义向量序列输入第二模型,通过所述第二模型的输出层,输出由所述语义向量序列映射得到的预测韵律标签序列。
26.根据权利要求22所述的装置,其特征在于,所述装置还包括:
合成模块,用于根据所述预测韵律标签序列,确定组成所述目标文本的各词各自对应的韵律标签;按照各所述词各自对应的韵律标签输出所述目标文本对应的合成语音。
27.一种模型训练装置,包括:
获取模块,用于获取词向量样本序列和相应的韵律标签序列;
输入模块,用于将所述词向量样本序列输入韵律预测模型;
处理模块,用于在所述韵律预测模型的隐层中,按照所述词向量样本序列中各词向量样本的先后顺序对各所述词向量样本进行处理得到语义向量样本序列;
输出模块,用于通过所述韵律预测模型的输出层,输出由所述语义向量样本序列映射得到的预测韵律标签序列;
调整模块,用于按照所述预测韵律标签序列与所述韵律标签序列的差异,调整所述韵律预测模型,并继续训练直至满足训练结束条件。
28.根据权利要求27所述的装置,其特征在于,所述韵律预测模型包括第一模型和第二模型;
所述处理模块还用于在所述第一模型的隐层中,按照所述词向量样本序列中各词向量样本的先后顺序对各所述词向量样本进行处理得到语义向量样本序列;
所述输出模块还用于通过所述第二模型的输出层,输出由所述语义向量样本序列映射得到的预测韵律标签序列。
29.一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时,使得所述处理器执行如权利要求1至21中任一项所述的方法的步骤。
30.一种计算机设备,包括存储器和处理器,所述存储器中储存有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行如权利要求1至21中任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711168460.5A CN108305612B (zh) | 2017-11-21 | 2017-11-21 | 文本处理、模型训练方法、装置、存储介质和计算机设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711168460.5A CN108305612B (zh) | 2017-11-21 | 2017-11-21 | 文本处理、模型训练方法、装置、存储介质和计算机设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108305612A CN108305612A (zh) | 2018-07-20 |
CN108305612B true CN108305612B (zh) | 2020-07-31 |
Family
ID=62869654
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201711168460.5A Active CN108305612B (zh) | 2017-11-21 | 2017-11-21 | 文本处理、模型训练方法、装置、存储介质和计算机设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108305612B (zh) |
Families Citing this family (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109065076B (zh) * | 2018-09-05 | 2020-11-27 | 深圳追一科技有限公司 | 音频标签的设置方法、装置、设备和存储介质 |
CN109522406A (zh) * | 2018-10-11 | 2019-03-26 | 平安科技(深圳)有限公司 | 文本语义匹配方法、装置、计算机设备和存储介质 |
CN109285537B (zh) * | 2018-11-23 | 2021-04-13 | 北京羽扇智信息科技有限公司 | 声学模型建立、语音合成方法、装置、设备及存储介质 |
CN109597993B (zh) * | 2018-11-30 | 2021-11-05 | 深圳前海微众银行股份有限公司 | 语句分析处理方法、装置、设备以及计算机可读存储介质 |
CN111291561B (zh) * | 2018-12-07 | 2023-04-18 | 阿里巴巴集团控股有限公司 | 文本识别方法、装置和系统 |
CN109697973A (zh) * | 2019-01-22 | 2019-04-30 | 清华大学深圳研究生院 | 一种韵律层级标注的方法、模型训练的方法及装置 |
CN110335587B (zh) * | 2019-06-14 | 2023-11-10 | 平安科技(深圳)有限公司 | 语音合成方法、系统、终端设备和可读存储介质 |
CN110362742A (zh) * | 2019-06-18 | 2019-10-22 | 平安普惠企业管理有限公司 | 课程信息匹配方法、装置、计算机设备及存储介质 |
CN110263854B (zh) * | 2019-06-20 | 2023-06-27 | 广州酷狗计算机科技有限公司 | 直播标签确定方法、装置及存储介质 |
CN110569330A (zh) * | 2019-07-18 | 2019-12-13 | 华瑞新智科技(北京)有限公司 | 一种基于智能选词的文本标注系统及装置、设备、介质 |
CN110782870B (zh) * | 2019-09-06 | 2023-06-16 | 腾讯科技(深圳)有限公司 | 语音合成方法、装置、电子设备及存储介质 |
CN110704621B (zh) * | 2019-09-25 | 2023-04-21 | 北京大米科技有限公司 | 文本处理方法、装置及存储介质和电子设备 |
CN110797005B (zh) * | 2019-11-05 | 2022-06-10 | 百度在线网络技术(北京)有限公司 | 韵律预测方法、装置、设备和介质 |
CN110853613B (zh) * | 2019-11-15 | 2022-04-26 | 百度在线网络技术(北京)有限公司 | 韵律停顿等级预测的校正方法、装置、设备和介质 |
CN111261140B (zh) * | 2020-01-16 | 2022-09-27 | 云知声智能科技股份有限公司 | 韵律模型训练方法及装置 |
CN111291550B (zh) * | 2020-01-17 | 2021-09-03 | 北方工业大学 | 一种中文实体提取方法及装置 |
CN111724765B (zh) * | 2020-06-30 | 2023-07-25 | 度小满科技(北京)有限公司 | 一种文本转语音的方法、装置及计算机设备 |
CN112037756A (zh) * | 2020-07-31 | 2020-12-04 | 北京搜狗科技发展有限公司 | 语音处理方法、装置和介质 |
CN112183114B (zh) * | 2020-08-10 | 2024-05-14 | 招联消费金融股份有限公司 | 模型训练、语义完整性识别方法和装置 |
CN113539231B (zh) * | 2020-12-30 | 2024-06-18 | 腾讯科技(深圳)有限公司 | 音频处理方法、声码器、装置、设备及存储介质 |
CN112988964B (zh) * | 2021-02-20 | 2024-03-08 | 平安科技(深圳)有限公司 | 文本韵律边界预测的方法、装置、设备及存储介质 |
CN115879469B (zh) * | 2022-12-30 | 2023-10-03 | 北京百度网讯科技有限公司 | 文本数据处理方法、模型训练方法、装置及介质 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101000765A (zh) * | 2007-01-09 | 2007-07-18 | 黑龙江大学 | 基于韵律特征的语音合成方法 |
CN102651217A (zh) * | 2011-02-25 | 2012-08-29 | 株式会社东芝 | 用于合成语音的方法、设备以及用于语音合成的声学模型训练方法 |
CN103366731A (zh) * | 2012-03-31 | 2013-10-23 | 盛乐信息技术(上海)有限公司 | 语音合成方法及系统 |
CN104867489A (zh) * | 2015-04-27 | 2015-08-26 | 苏州大学张家港工业技术研究院 | 一种模拟真人朗读发音的方法及系统 |
CN104867490A (zh) * | 2015-06-12 | 2015-08-26 | 百度在线网络技术(北京)有限公司 | 韵律结构预测方法和装置 |
CN105244020A (zh) * | 2015-09-24 | 2016-01-13 | 百度在线网络技术(北京)有限公司 | 韵律层级模型训练方法、语音合成方法及装置 |
CN107039034A (zh) * | 2016-02-04 | 2017-08-11 | 科大讯飞股份有限公司 | 一种韵律预测方法及系统 |
CN107239444A (zh) * | 2017-05-26 | 2017-10-10 | 华中科技大学 | 一种融合词性与位置信息的词向量训练方法及系统 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101452699A (zh) * | 2007-12-04 | 2009-06-10 | 株式会社东芝 | 韵律自适应及语音合成的方法和装置 |
US10242097B2 (en) * | 2013-03-14 | 2019-03-26 | Aperture Investments, Llc | Music selection and organization using rhythm, texture and pitch |
-
2017
- 2017-11-21 CN CN201711168460.5A patent/CN108305612B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101000765A (zh) * | 2007-01-09 | 2007-07-18 | 黑龙江大学 | 基于韵律特征的语音合成方法 |
CN102651217A (zh) * | 2011-02-25 | 2012-08-29 | 株式会社东芝 | 用于合成语音的方法、设备以及用于语音合成的声学模型训练方法 |
CN103366731A (zh) * | 2012-03-31 | 2013-10-23 | 盛乐信息技术(上海)有限公司 | 语音合成方法及系统 |
CN104867489A (zh) * | 2015-04-27 | 2015-08-26 | 苏州大学张家港工业技术研究院 | 一种模拟真人朗读发音的方法及系统 |
CN104867490A (zh) * | 2015-06-12 | 2015-08-26 | 百度在线网络技术(北京)有限公司 | 韵律结构预测方法和装置 |
CN105244020A (zh) * | 2015-09-24 | 2016-01-13 | 百度在线网络技术(北京)有限公司 | 韵律层级模型训练方法、语音合成方法及装置 |
CN107039034A (zh) * | 2016-02-04 | 2017-08-11 | 科大讯飞股份有限公司 | 一种韵律预测方法及系统 |
CN107239444A (zh) * | 2017-05-26 | 2017-10-10 | 华中科技大学 | 一种融合词性与位置信息的词向量训练方法及系统 |
Non-Patent Citations (2)
Title |
---|
基于深度神经网络的韵律结构预测研究;王琦;《中国优秀硕士学位论文全文数据库 信息科技辑》;20160715(第07期);第I138-1285页 * |
基于词向量的学术语义搜索研究;陈国华 等;《华南师范大学学报(自然科学版)》;20161231;第48卷(第3期);第53-58页 * |
Also Published As
Publication number | Publication date |
---|---|
CN108305612A (zh) | 2018-07-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108305612B (zh) | 文本处理、模型训练方法、装置、存储介质和计算机设备 | |
CN108920460B (zh) | 一种多类型实体识别的多任务深度学习模型的训练方法 | |
CN112712804B (zh) | 语音识别方法、系统、介质、计算机设备、终端及应用 | |
CN111739508B (zh) | 一种基于dnn-hmm双模态对齐网络的端到端语音合成方法及系统 | |
CN111247581B (zh) | 一种多语言文本合成语音方法、装置、设备及存储介质 | |
CN111145718B (zh) | 一种基于自注意力机制的中文普通话字音转换方法 | |
CN111897949A (zh) | 一种基于Transformer的引导性文本摘要生成方法 | |
CN113869044A (zh) | 关键词自动提取方法、装置、设备及存储介质 | |
CN110795552A (zh) | 一种训练样本生成方法、装置、电子设备及存储介质 | |
CN111341293B (zh) | 一种文本语音的前端转换方法、装置、设备和存储介质 | |
JP7061594B2 (ja) | 文章変換システム、文章変換方法、及びプログラム | |
CN113887229A (zh) | 地址信息的识别方法、装置、计算机设备及存储介质 | |
CN112463942A (zh) | 文本处理方法、装置、电子设备及计算机可读存储介质 | |
CN112530404A (zh) | 一种语音合成方法、语音合成装置及智能设备 | |
CN113327574A (zh) | 一种语音合成方法、装置、计算机设备和存储介质 | |
CN116312463A (zh) | 语音合成方法、语音合成装置、电子设备及存储介质 | |
US9658999B2 (en) | Language processing method and electronic device | |
CN112530402B (zh) | 一种语音合成方法、语音合成装置及智能设备 | |
CN113362804A (zh) | 一种合成语音的方法、装置、终端及存储介质 | |
US11893344B2 (en) | Morpheme analysis learning device, morpheme analysis device, method, and program | |
CN112735377A (zh) | 语音合成方法、装置、终端设备及存储介质 | |
CN117010907A (zh) | 一种基于语音和图像识别的多模态客户服务方法及系统 | |
CN115240713B (zh) | 基于多模态特征和对比学习的语音情感识别方法及装置 | |
CN116343747A (zh) | 语音合成方法、语音合成装置、电子设备及存储介质 | |
CN115424604B (zh) | 一种基于对抗生成网络的语音合成模型的训练方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |