一种多语种文本生成方法、装置、设备及存储介质与流程

文档序号:27820408发布日期:2021-12-04 13:08阅读:68来源:国知局
一种多语种文本生成方法、装置、设备及存储介质与流程

1.本技术涉及文本生成技术领域,尤其涉及一种多语种文本生成方法、装置、设备及存储介质。


背景技术:

2.文本生成是自然语言处理中较难的研究方向,其应用场景多且广泛。近年来,文本生成已经在信息抽取、对话系统、小说合成和广告文案生成取得了较大的进展。
3.随着全球化的发展,在日常交流、非正式信息等文本生成应用的重要场景中,文本或者语音中不同语种混合的语言现象越发明显。此外,在语种判别、多语种语音合成、多语种语音识别等领域,需要大量的多语种文本语料,但是,在实际生活中,多语种文本往往混杂在单语种文本之中,占比较低,即大量的多语种文本难以获得。
4.综上,为了满足某些文本生成应用场景对于多语种文本生成的需求,以及某些领域对于大量多语种文本的需求,目前亟需一种多语种文本生成方案。


技术实现要素:

5.有鉴于此,本技术提供了一种多语种文本生成方法、装置、设备及存储介质,用以自动生成多语种文本,其技术方案如下:
6.一种多语种文本生成方法,包括:
7.获取多语种单词表,所述多语种单词表包含多个词条,每个词条包括一个单词以及所述单词的语种信息;
8.利用预先建立的多语种文本生成模型,以所述多语种单词表为依据生成多语种文本,其中,所述多语种文本生成模型以生成符合真实多语种文本特点的多语种文本为生成目标进行文本生成。
9.可选的,所述多语种文本生成模型采用对抗生成网络中的生成网络;
10.所述多语种文本生成模型的训练目标为,使所述对抗生成网络中的判别网络无法区分输入的多语种文本为所述生成网络生成的文本还是真实文本。
11.可选的,所述以所述多语种单词表为依据生成多语种文本,包括:
12.根据所述多语种单词表中的语种信息,从所述多语种单词表中随机采样若干词条组成目标单词表;
13.以所述目标单词表为依据生成多语种文本。
14.可选的,所述以所述目标单词表为依据生成多语种文本,包括:
15.确定所述目标单词表中每个词条的特征向量以及所述目标单词表的特征向量,其中,所述目标单词表的特征向量为所述目标单词表中所有词条整体的特征向量;
16.基于所述目标单词表的特征向量,确定包含句子文法信息的向量,作为全局计划隐变量;
17.基于所述全局计划隐变量、所述目标单词表中每个词条的特征向量以及所述目标
单词表的特征向量,生成多语种文本。
18.可选的,所述基于所述目标单词表的特征向量,确定包含句子文法信息的向量,作为全局计划隐变量,包括:
19.基于所述目标单词表的特征向量,确定所述目标单词表的特征向量服从的正态分布;
20.从所述正态分布上采样若干值,以得到所述全局计划隐变量。
21.可选的,所述基于所述全局计划隐变量、所述目标单词表中每个词条的特征向量以及所述目标单词表的特征向量,生成多语种文本,包括:
22.基于所述全局计划隐变量以及所述目标单词表中每个词条的特征向量,从所述目标单词表中确定参与文本生成的词条,作为目标词条;
23.基于所述目标单词表的特征向量、所述全局计划隐变量以及所述目标词条的特征向量,生成多语种文本。
24.可选的,所述基于所述全局计划隐变量以及所述目标单词表中每个词条的特征向量,从所述目标单词表中确定参与文本生成的词条,作为目标词条,包括:
25.基于所述全局计划隐变量以及所述目标单词表中每个词条的特征向量,预测所述目标单词表中每个词条参与文本生成的概率;
26.基于所述目标单词表中每个词条参与文本生成的概率,确定所述目标单词表中参与文本生成的词条,作为目标词条。
27.可选的,所述基于所述目标单词表中每个词条参与文本生成的概率,确定所述目标单词表中参与文本生成的词条,包括:
28.若所述目标单词表中存在参与文本生成的概率大于预设概率阈值的词条,则将所述参与文本生成的概率大于预设概率阈值的词条确定为参与文本生成的词条;
29.若所述目标单词表中不存在参与文本生成的概率大于所述预设概率阈值的词条,则将参与文本生成的概率最大的词条确定为参与文本生成的词条。
30.可选的,所述基于所述目标单词表的特征向量、所述全局计划隐变量以及所述目标词条的特征向量,生成多语种文本,包括:
31.计算所有目标词条的特征向量的均值;
32.对所有目标词条的特征向量的均值、所述目标单词表的特征向量以及所述全局计划隐变量进行解码,以获得多语种文本。
33.可选的,所述对所有目标词条的特征向量的均值、所述目标单词表的特征向量以及所述全局计划隐变量进行解码,以获得多语种文本,包括:
34.在每个解码时刻,根据所有目标词条的特征向量的均值、所述目标单词表的特征向量、所述全局计划隐变量以及上一解码时刻的文本预测向量,确定当前解码时刻的文本预测向量;
35.以当前解码时刻的文本预测向量为预测依据,预测当前解码时刻生成的单词为多语种词典中各单词的概率;
36.根据当前解码时刻生成的单词为多语种词典中各单词的概率,确定当前解码时刻生成的单词。
37.可选的,建立所述多语种文本生成模型的过程包括:
38.利用对抗生成网络中作为多语种文本生成模型的生成网络,以所述多语种单词表为依据生成多语种文本,作为多语种生成文本;
39.将所述多语种生成文本输入所述对抗生成网络中的判别网络,以得到所述多语种生成文本为真实文本的概率;
40.确定所述多语种生成文本对应的语种多样性指示值,其中,所述语种多样性指示值能够表征对应文本的语种多样性;
41.以所述多语种生成文本为真实文本的概率以及所述多语种生成文本对应的语种多样性指示值为依据,对多语种文本生成模型进行参数更新。
42.可选的,所述确定所述多语种生成文本对应的语种多样性指示值,包括:
43.计算所述多语种生成文本中目标单词所属语种的表示向量的平均值,作为平均语种表示向量,其中,所述目标单词为所述多语种单词表中参与文本生成的词条中的单词;
44.根据所述多语种生成文本中目标单词的个数、所述多语种生成文本中目标单词所属语种的表示向量以及所述平均语种表示向量,确定所述多语种生成文本对应的语种多样性指示值。
45.一种多语种文本生成装置,包括:多语种单词表获取模块和多语种文本生成模块;
46.所述多语种单词表获取模块,用于获取多语种单词表,所述多语种单词表包含多个词条,每个词条包括一个单词以及所述单词的语种信息;
47.所述多语种文本生成模块,用于利用预先建立多语种文本生成模型,以所述多语种单词表为依据生成多语种文本,其中,所述多语种文本生成模型以生成符合真实多语种文本特点的多语种文本为生成目标进行文本生成。
48.一种多语种文本生成设备,包括:存储器和处理器;
49.所述存储器,用于存储程序;
50.所述处理器,用于执行所述程序,实现上述任一项所述的多语种文本生成方法的各个步骤。
51.一种可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时,实现上述任一项所述的多语种文本生成方法的各个步骤。
52.经由上述方案可知,本技术提供的多语种文本生成方法、装置、设备及存储介质,首先获取多语种单词表,然后利用预先建立的多语种文本生成模型,以多语种单词表为依据生成多语种文本。本技术提供的多语种文本生成方法可自动生成多语种文本,由于多语种文本利用多语种文本生成模型生成,而多语种文本生成模型以生成符合真实多语种文本特点的多语种文本为生成目标进行文本生成,因此,利用多语种文本生成模型生成的多语种文本符合真实多语种文本的特点,即经由本技术提供的多语种文本生成方法能够生成流畅自然、符合人类表达习惯的多语种文本。
附图说明
53.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
54.图1为本技术实施例提供的多语种文本生成方法的流程示意图;
55.图2为本技术实施例提供的以目标单词表为依据生成多语种文本的流程示意图;
56.图3为本技术实施例提供的基于全局计划隐变量、目标单词表中每个词条的特征向量以及目标单词表的特征向量,生成多语种文本的流程示意图;
57.图4为本技术实施例提供的多语种文本生成模型的一种可能的结构示意图;
58.图5为本技术实施例提供的多语种文本生成模型中的输入编码模块对输入的目标单词表进行处理的过程示意图;
59.图6为本技术实施例提供的多语种文本生成模型中的计算处理模块获得计划向量的过程示意图;
60.图7为本技术实施例提供的多语种文本生成模型中的句子生成模块生成多语种文本的示意图;
61.图8为本技术实施例提供的建立多语种文本生成模型的流程示意图;
62.图9为本技术实施例提供的训练判别网络的的流程示意图;
63.图10为本技术实施例提供的多语种文本生成装置的结构示意图;
64.图11为本技术实施例提供的多语种文本生成设备的结构示意图。
具体实施方式
65.下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
66.为了能够生成多语种文本,申请人进行了研究,起初的思路是:采用基于规则的多语种文本生成方案,即设定大量的多语种文本生成规则,根据设定的多语种文本生成规则生成多语种文本。
67.然而,申请人在对基于规则的多语种文本生成方案进行研究的过程中发现:基于规则的多语种文本生成方案存在诸多缺陷,比如,需要较多的专家知识,难以生成大量多变的多语种文本,生成的文本不够流畅自然,不够符合人类表达习惯等等。
68.鉴于基于规则的多语种文本生成方案存在的问题,本案发明人继续进行研究,最终提出了一种效果较好的多语种文本生成方法,该方法不需要较多的专家知识,能够自动生成流畅自然、符合人类表达习惯的多语种文本,且能够生成丰富多样的多语种文本。本技术提供的多语种文本生成方法可应用于任何需要生成多语种文本的场景。
69.本技术提供的多语种文本生成方法可应用于具有数据处理能力的电子设备,该电子设备可以为网络侧的服务器(可以为单个服务器,也可以为多个服务器或服务器集群),也可以为用户侧使用的终端,比如pc、笔记本、pad、智能手机等等。接下来通过下述实施例对本技术提供的多语种文本生成方法进行介绍。
70.第一实施例
71.请参阅图1,示出了本技术实施例提供的多语种文本生成方法的流程示意图,该方法可以包括:
72.步骤s101:获取多语种单词表。
73.其中,多语种单词表包含多个词条,每个词条包括一个单词以及该单词的语种信息。如下示出了多语种单词表的一示例:
74.语种单词中文我英文plan中文你好英文document
……
75.上表中的<中文,我>是一个词条,<英文,plan>是一个词条,<中文,你好>是一个词条,<英文,document>是一个词条,


76.本实施例中的多语种单词表可以为两个语种的单词表,比如,中英的单词表,也可以为三个及以上语种的单词表,比如,中英法的单词表。需要说明的是,多语种单词表中的单词为经常出现在其它语种文本中的单词,比如,英文单词“plan”为经常出现在中文文本中的单词。
77.步骤s102:利用预先建立的多语种文本生成模型,以多语种单词表为依据生成多语种文本。
78.在本实施例中,以多语种单词表为依据生成多语种文本利用预先建立的多语种文本生成模型实现,其中,多语种文本生成模型以生成符合真实多语种文本特点的多语种文本为生成目标进行文本生成。多语种文本生成模型以生成符合真实多语种文本特点的多语种文本为生成目标生成的多语种文本流畅自然、符合人类表达习惯。
79.在一种可能的实现方式中,多语种文本生成模型可采用对抗生成网络中的生成网络,其通过训练得到,多语种文本生成模型训练时的训练目标为,使对抗生成网络中的判别网络无法区分输入的多语种文本为生成网络生成的文本还是真实文本。需要说明的是,对抗生成网络中的判别网络无法区分输入的多语种文本为生成网络生成的文本还是真实文本指的是,将作为多语种文本生成模型的生成网络生成的多语种文本输入判别网络后,判别网络将其判定为真实文本。
80.利用预先建立的多语种文本生成模型,以多语种单词表为依据生成多语种文本的实现方式有多种:
81.在一种可能的实现方式中,可直接将多语种单词表输入预先建立的多语种文本生成模型,由多语种文本生成模型根据输入的多语种单词表生成多语种文本。
82.考虑到直接将多语种单词表输入多语种文本生成模型生成的多语种文本在多样性上表现不佳,为了提升生成文本的多样性,本实施例提供了另一种较为优选的实现方式:
83.根据多语种单词表中的语种信息,从多语种单词表中随机采样若干词条组成目标单词表,将目标单词表输入预先建立的多语种文本生成模型,由多语种文本生成模型根据输入的目标单词表生成多语种文本。
84.其中,根据多语种单词表中的语种信息,从多语种单词表中随机采样若干词条组成目标单词表的过程可以包括:从多语种单词表中每个语种的单词中采样若干单词,由采样的单词所在的词条组成目标单词表。
85.示例性的,步骤s101获取的多语种单词表包括{中文:“你好”,中文:“世界”,英文:

hello”,英文:“world”,英文:“hi”},可设定每个语种的采样数量(各语种的采样数量可根据具体情况设定,各语种的采样数量可以相同,也可以不同),假设各语种的采样数量均为1,那么从语种为“中文”的两个单词“你好”和“世界”中随机抽取1个单词,从语种为“英文”的三个单词“hello”、“world”、“hi”中随机抽取1个单词,一个可能的抽取结果为{中文:“世界”,英文:“hello”}。
86.本技术实施例提供的多语种文本生成方法,首先获取多语种单词表,然后利用预先建立的多语种文本生成模型,以多语种单词表为依据生成多语种文本。本技术实施例提供的多语种文本生成方法可自动生成多语种文本,由于多语种文本利用多语种文本生成模型生成,而多语种文本生成模型以生成符合真实多语种文本特点的多语种文本为生成目标进行文本生成,因此,利用多语种文本生成模型生成的多语种文本符合真实多语种文本特点,即流畅自然、符合人类表达习惯。
87.另外,本技术实施例提供的多语种文本生成方法,在以多语种单词表为依据生成多语种文本时,可根据多语种单词表中的语种信息,从多语种单词表中随机采样若干词条组成目标单词表,进而根据目标单词表生成多语种文本,这种方式使得生成的多语种文本更具多样性。
88.第二实施例
89.上述实施例提到,可以多语种单词表为依据生成多语种文本,在以多语种单词表为依据生成多语种文本时,可直接以多语种单词表为依据生成多语种文本,也可根据语种信息从多语种单词表中采样若干词条组成目标单词表,以目标单词表为依据生成多语种文本,由于“直接以多语种单词表为依据生成多语种文本”与“以目标单词表为依据生成多语种文本”的方式相同,本实施例以“以目标单词表为依据生成多语种文本”为例,对多语种文本的生成过程进行介绍。
90.请参阅图2,示出了以目标单词表为依据生成多语种文本的流程示意图,可以包括:
91.步骤s201:确定目标单词表中每个词条的特征向量以及目标单词表的特征向量。
92.在本实施例中,可确定目标单词表中每个词条的词嵌入向量(即每个词条的表示向量),然后根据目标单词表中每个词条的词嵌入向量确定目标单词表中每个词条的特征向量,在获得目标单词表中每个词条的特征向量后,可进一步根据目标单词表中每个词条的特征向量确定目标单词表的特征向量。需要说明的是,目标单词表的特征向量为目标单词表中所有词条整体的特征向量。
93.其中,确定目标单词表中任一词条的词嵌入向量的过程可以包括:确定该词条中单词的词嵌入向量,并确定该词条中语种信息的语种嵌入向量;将该词条中单词的词嵌入向量与该词条中语种信息的语种嵌入向量拼接,拼接后向量作为该词条的词嵌入向量。
94.步骤s202:基于目标单词表的特征向量,确定包含句子文法信息的向量,作为全局计划隐变量。
95.其中,句子文法信息即句法信息,其包括句子结构信息(或者说句子成分信息)、句子中词与词之间的依存关系信息等。
96.具体的,基于目标单词表的特征向量,确定包含句子文法信息的向量,作为全局计划隐变量的过程可以包括:
97.步骤s2021、基于目标单词表的特征向量,确定目标单词表的特征向量符合的正态分布。
98.具体的,可基于目标单词表的特征向量确定均值μ
p
和方差σ
p
,以得到均值为μ
p
方差为σ
p
的正态分布
99.步骤s2022、从正态分布上采样若干值,以得到全局计划隐变量。
100.将从正态分布上采样的若干值组成包含句子文法信息的全局计划隐变量。
101.步骤s203:基于全局计划隐变量、目标单词表中每个词条的特征向量以及目标单词表的特征向量,生成多语种文本。
102.请参阅图3,示出了基于全局计划隐变量、目标单词表中每个词条的特征向量以及目标单词表的特征向量,生成多语种文本的流程示意图,可以包括:
103.步骤s301:基于全局计划隐变量以及目标单词表中每个词条的特征向量,从目标单词表中确定参与文本生成的词条作为目标词条,由确定出的目标词条的特征向量组成计划向量。
104.其中,计划向量表征的是后续参与文本生成的词条的信息。
105.具体的,基于全局计划隐变量以及目标单词表中每个词条的特征向量,从目标单词表中确定参与文本生成的词条的过程包括:
106.步骤s3011、基于全局计划隐变量以及目标单词表中每个词条的特征向量,预测目标单词表中每个词条参与文本生成的概率。
107.基于全局计划隐变量以及目标单词表中每个词条的特征向量预测目标单词表中每个词条参与文本生成的概率,本质上是对目标单词表中每个词条进行二分类预测。
108.步骤s3012、基于目标单词表中每个词条参与文本生成的概率,确定目标单词表中参与文本生成的词条。
109.具体的,基于目标单词表中每个词条参与文本生成的概率,确定目标单词表中参与文本生成的词条的过程可以包括:若目标单词表中存在参与文本生成的概率大于预设概率阈值的词条,则将参与文本生成的概率大于预设概率阈值的词条确定为参与文本生成的词条;若目标单词表中不存在参与文本生成的概率大于预设概率阈值的词条,则将参与文本生成的概率最大的词条确定为参与文本生成的词条。
110.示例性的,目标单词表中包括3个词条,分别为d1、d2、d3,3个词条参与文本生成的概率依次为p1、p2和p3,假设预设概率阈值为p
th
,若p1大于p
th
,p2小于p
th
,p3大于p
th
,则将d1与d3确定为后续参与文本生成的词条,若p1、p2和p3均小于预设概率阈值为p
th
,则将参与文本生成的概率最大的词条确定为参与文本生成的词条,假设p3最大,则将d3确定为参与文本生成的词条。
111.上述基于目标单词表中每个词条参与文本生成的概率确定目标单词表中参与文本生成的词条的方式使得,无论如何都会有词条参与后续的文本生成。
112.步骤s302:基于目标单词表的特征向量、全局计划隐变量以及计划向量,生成多语种文本。
113.具体的,基于目标单词表的特征向量、全局计划隐变量以及计划向量,生成多语种文本,生成多语种文本的过程可以包括:计算计划向量中所有目标词条的特征向量的均值,对所有目标词条的特征向量的均值、目标单词表的特征向量以及全局计划隐变量进行解
码,以获得多语种文本。
114.更为具体的,对所有目标词条的特征向量的均值、目标单词表的特征向量以及全局计划隐变量进行解码的过程包括:在每个解码时刻,根据目标词条的特征向量的均值、目标单词表的特征向量、全局计划隐变量和上一解码时刻确定的文本预测向量(用于预测文本的向量),确定当前解码时刻的文本预测向量,以当前解码时刻的文本预测向量为依据,从预先构建的多语种单词词典中确定当前解码时刻生成的单词。
115.第三实施例
116.第一实施例提到,以目标单词表为依据生成多语种文本可由预先建立的多语种文本生成模型实现,在上述第二实施例的基础上,本实施例重点对多语种文本生成模型的结构以及多语种文本生成模型的建立过程进行介绍。
117.本实施例首先对多语种文本生成模型的结构进行介绍。
118.请参阅图4,示出了本实施例提供的多语种文本生成模型的一种可能的结构示意图,可以包括:输入编码模块401、计划处理模块402和句子生成模块403。其中:
119.输入编码模块401的输入为目标单词表,目标单词表输入输入编码模块401后,输入编码模块401对其进行编码,输出目标单词表中每个词条的特征向量、目标单词表的特征向量和包含句子文法信息的全局计划隐变量。图5示出了输入编码模块401对输入的目标单词表进行处理,输出目标单词表中每个词条的特征向量(图5中的h1~h
n
)、目标单词表的特征向量和包含句子文法信息的全局计划隐变量(图5中的z
p
)的示意图。
120.在一种可能的实现方式中,输入编码模块401可以包括:词嵌入向量确定子模块、特征向量确定子模块和全局计划隐变量确定子模块。其中,词嵌入向量确定子模块用于确定目标单词表中每个词条的词嵌入向量(每个词条的词嵌入向量的具体确定方式可参见上述实施例中的相关部分);特征向量确定子模块用于根据目标单词表中每个词条的词嵌入向量确定目标单词表中每个词条的特征向量和目标单词表的特征向量;全局计划隐变量确定子模块用于根据目标单词表的特征向量确定包含句子文法信息的全局计划隐变量(全局计划隐变量的具体确定方式可参见上述实施例中的相关部分)。
121.可选的,特征向量确定子模块可以包括循环神经网络,比如双向gru,将目标单词表中各词条的特征向量经循环神经网络比如双向gru,可得到目标单词表的特征向量h:
[0122][0123]
其中,x表示目标单词表,x={d1,d2,...,d
n
},d1表示目标单词表中的第1个词条,...,d
n
表示目标单词表中的第n个词条,表示从后向前编码,编码第1个词条时,循环神经网络的输出,表示从前向后编码,编码第n个词条时,循环神经网络的输出。
[0124]
目标单词表中第i个词条d
i
的特征向量h
i
表示为:
[0125][0126]
可选的,全局计划隐变量确定子模块中可以包含正态分布确定子模块和采样子模块。其中,正态分布确定子模块可以为多层感知机,多层感知机用于根据目标单词表的特征向量h确定均值μ
p
和方差σ
p
,即,将目标单词表的特征向量h输入多层感知机,可得到μ
p
和log σ
p

[0127]

p
;log σ
p
]=mlp
θ
(h)
ꢀꢀ
(3)
[0128]
其中,mlp表示多层感知机,θ表示多层感知机的训练参数。
[0129]
在得到μ
p
和log σ
p
后,通过log σ
p
可获得σ
p
,最终可获得均值μ
p
和方差σ
p
,从而得到目标单词表的特征向量符合的正态分布在获得正态分布后,可通过采样子模块在正态分布上采样若干值,来获得全局计划隐变量。需要说明的是,确定目标单词表的特征向量符合的正态分布以及从正态分布上采样的过程可看作对信息进行压缩和重建以获得最简要信息(对应的是,在正态分布上采样的若干值)的过程,由于重建出的信息是最核心、最抽象、站在全局角度的信息,因此可认为其包含句子文法信息,另外需要说明的是,在训练阶段,由于采用判别网络监督作为多语种文本生成模型的生成网络产生质量较好的文本,因此,多语种文本生成模型通过不断学习,最终能够重建出最核心、最抽象、站在全局角度的信息,即上述的全局计划隐变量。
[0130]
计划处理模块402用于基于全局计划隐变量以及目标单词表中每个词条的特征向量,从目标单词表中确定参与文本生成的词条作为目标词条,由确定出的目标词条的特征向量组成计划向量。图6示出了计算处理模块402获得计划向量的过程示意图。
[0131]
可选的,计划处理模块402可以包括概率预测子模块和计划向量获取子模块。可选的,概率预测子模块可以是一个全连接网络,其对目标单词表中每个词条进行二分类预测,具体的,对于目标单词表中的一个词条d
i
,概率预测子模块可通过下式预测词条d
i
参与文本生成的概率:
[0132]
p(d
i
∈g)=σ(v
p tanh(w
p
[h
i
;z
p
]+b
p
))
ꢀꢀꢀꢀ
(4)
[0133]
其中,h
i
表示词条d
i
的特征向量,z
p
表示全局计划隐变量,g表示计划向量,v
p
,w
p
,b
p
为可训练参数。
[0134]
概率预测子模块预测出目标单词表中每个词条参与文本生成的概率后,计划向量获取子模块可根据概率预测子模块预测出的概率确定参与文本生成的词条即目标词条,进而获得由确定出的目标词条的特征向量组成的计划向量g。
[0135]
句子生成模块403,用于基于目标单词表的特征向量g、全局计划隐变量z
p
以及计划向量g,生成多语种文本。图7示出了句子生成模块403生成多语种文本的示意图。
[0136]
可选的,句子生成模块403可以包括:平均池化子模块和解码子模块。其中,平均池化子模块用于对计划向量g进行平均池化,即计算计划向量中各目标词条的特征向量的均值g

,解码子模块用于对目标单词表的特征向量h、全局计划隐变量z
p
和计划向量中各目标词条的特征向量的均值g

进行解码,以获得多语种文本。
[0137]
其中,解码子模块在解码时,在每个解码时刻,根据目标单词表的特征向量h、全局计划隐变量z
p
和计划向量中各目标词条的特征向量的均值g

以及上一解码时刻确定的文本预测向量h
t
‑1(用于预测文本的向量),确定当前解码时刻的文本预测向量h
t
,根据当前解码时刻的文本预测向量确定当前解码时刻生成的文本。
[0138]
其中,在根据当前解码时刻的文本预测向量确定当前解码时刻生成的文本时,以当前解码时刻的文本预测向量为依据,从预先构建的多语种单词词典中确定当前解码时刻生成的单词。具体的,以当前解码时刻的文本预测向量为依据预测当前解码时刻生成的单词为多语种单词词典(若干个语种所有的单词)中各单词的概率,根据预测出的概率,确定当前解码时刻生成的单词,更为具体的,将确定出的概率中的最大概率对应的单词确定为
当前解码时刻生成的单词。
[0139]
可选的,解码子模块可以为transformer模块,也可以为循环神经网络(比如gru),解码子模块为gru时,当前解码时刻的文本预测向量h
t
可表示为:
[0140]
h
t
=gru([h;z
p
;g

],h
t
‑1)
ꢀꢀꢀꢀ
(5)
[0141]
在每个解码时刻t,将上一个解码时刻t

1的文本预测向量h
t
‑1作为输入,输出的文本预测向量h
t
进入全连接层和softmax层,选择该解码时刻t的单词。
[0142]
需要说明的是,多语种单词列表中的单词仅仅是常出现在其它语种文本中的单词,但是仅仅依靠这些单词并不能形成完整的句子,比如包含“hello”和“给力”的多语种单词列表,需要穿插一些其它单词才能形成完整的句子,比如给“hello”和“给力”穿插“china”、“is”才能形成完整的句子“hello,china is给力”。
[0143]
有鉴于此,本实施例设置上述全连接层的输出维度为整个多语种单词词典大小,而非多语种单词列表大小,全连接层的输出经softmax层后,可获得解码时刻t生成的单词为多语种单词词典中各单词的概率,将最大概率对应的单词确定为解码时刻t生成的单词。
[0144]
示例性的,多语种单词词典包含三个单词“我”、“love”、“中国”,设置全连接层的输出维度为3,解码时刻t的文本预测向量h
t
进入全连接层和softmax层后,可获得解码时刻t生成的单词分别为“我”、“love”、“中国”的概率[0.1,0.3,0.6],由于解码时刻t生成的单词为“中国”的概率最大(0.6),因此,将“中国”确定为解码时刻t生成的单词。
[0145]
需要说明的是,本技术设置全连接层的输出维度为整个多语种单词词典大小,使得多语种单词词典中的每一个单词都有选中用于造句的可能性,至于每一步选中哪个,模型自己学习、自调整,另外需要说明的是,虽然让多语种单词词典中的每一个单词都可用于造句,但是句子的主体意思、句法等主要由目标单词表中的单词决定,即,围绕从目标单词列表中选取的单词进行遣词造句。
[0146]
另外,当句子生成模块输出一个特殊的句子结束单词时,整个文本生成结束。可选的,可在多语种单词词典中设置句子结束单词,比如“eos”,在某个解码时刻,若生成的单词为句子结束单词的概率最大,则将句子结束单词确定为生成的单词,此时文本生成结束。
[0147]
上述内容提供了多语种文本生成模型的一种结构,以及在该结构下实现多语种文本生成的过程,需要说明的是,本实施例并不限定多语种文本生成模型的结构为上述结构,上述结构仅为示例,凡是能够按第二实施例提供的多语种文本生成方式生成多语种文本的结构均属于本技术所保护的范围。
[0148]
接下来对建立多语种生成模型的过程进行介绍。
[0149]
请参阅图8,示出了建立多语种文本生成模型的流程示意图,可以包括:
[0150]
步骤s801:利用对抗生成网络中作为多语种文本生成模型的生成网络,以多语种单词表为依据生成多语种文本,作为多语种生成文本。
[0151]
利用对抗生成网络中作为多语种文本生成模型的生成网络,以多语种单词表为依据生成多语种文本的过程与上述“步骤s102:利用预先建立的多语种文本生成模型,以多语种单词表为依据生成多语种文本”的实现过程类似,具体可参见上述实施例,本实施例在此不做赘述。
[0152]
步骤s802a:将多语种生成文本输入对抗生成网络中的判别网络,以得到多语种生成文本为真实文本的概率。
[0153]
步骤s802b:确定多语种生成文本对应的语种多样性指示值。
[0154]
其中,语种多样性指示值能够表征对应文本的语种多样性。
[0155]
具体的,确定多语种生成文本对应的语种多样性指示值的过程可以包括:计算多语种生成文本中目标单词所属语种的表示向量的平均值,作为平均语种表示向量;根据多语种生成文本中目标单词的个数、多语种生成文本中目标单词所属语种的表示向量以及平均语种表示向量,确定多语种生成文本对应的语种多样性指示值。其中,目标单词为多语种单词表中参与文本生成的词条中的单词。
[0156]
更为具体的,可按下式计算多语种生成文本对应的语种多样性指示值l
lang

[0157][0158]
其中,m表示多语种生成文本中目标单词的个数,表示多语种生成文本中第m个目标单词所属语种的表示向量,μ
l
表示平均语种表示向量。需要说明的是,语种多样性指示值越大,说明参与文本生成的语种越多,在训练时引入语种多样性指示值能够避免多语种文本生成模型倾向于生成单语种句子。
[0159]
需要说明的是,本实施例并不限定采用式(6)示出的计算方式计算多语种生成文本对应的语种多样性指示值,还可采用其他方式计算,比如,可计算多语种生成文本中目标单词所属语种的表示向量的平均值,作为平均语种表示向量,然后计算多语种生成文本中每个目标单词所属语种的表示向量与平均语种表示向量的差值的绝对值,以得到对应于多语种生成文本中每个目标单词的差值绝对值,对求得到所有差值绝对值求均值,求得的均值作为多语种生成文本对应的语种多样性指示值。
[0160]
步骤s803:以多语种生成文本为真实文本的概率以及多语种生成文本对应的语种多样性指示值为依据,对多语种文本生成模型进行参数更新。
[0161]
具体的,根据多语种生成文本为真实文本的概率以及多语种生成文本对应的语种多样性指示值确定多语种文本生成模型的预测损失,根据多语种文本生成模型的预测损失对多语种文本生成模型进行参数更新。
[0162]
更为具体的,可按下式计算多语种文本生成模型的预测损失lg
[0163][0164]
其中,y表示多语种文本生成模型生成的多语种文本,d(g(y))表示多语种文本y为真实文本的概率,l
lang
即为多语种文本生成模型生成的多语种文本对应的语种多样性指示值,λ为平衡损失项的超参数,表示求期望。
[0165]
按上述过程对多语种文本生成模型进行多次迭代训练,直至满足训练结束条件(比如达到预设的训练次数,或者多语种文本生成模型的性能满足要求)。训练结束后得到的模型即为建立的多语种文本生成模型。
[0166]
需要说明的是,作为多语种文本生成模型的生成网络与判别网络可分开训练,在对判别网络进行训练时,固定作为多语种文本生成模型的生成网络的参数,在训练作为多语种文本生成模型的生成网络时,固定判别网络的参数。上述训练过程是固定判别网络的参数对作为多语种文本生成模型的生成网络进行训练的过程,接下来对固定作为多语种文本生成模型的生成网络的参数对判别网络进行训练的过程进行介绍。
[0167]
请参阅图9,示出了训练判别网络的流程示意图,可以包括:
[0168]
步骤s901:获取作为多语种文本生成模型的生成网络生成的多语种文本作为多语种生成文本,并获取多语种真实文本。
[0169]
其中,多语种真实文本为真实场景中采集的多语种文本。
[0170]
步骤s902:将多语种生成文本和多语种真实文本输入判别网络,以得到多语种生成文本为真实文本的概率以及多语种真实文本为真实文本的概率。
[0171]
本技术利用生成对抗的思想,利用判别网络促进作为多语种文本生成模型的生成网络生成自然且符合人类习惯的文本,判别网络的输入为作为多语种文本生成模型的生成网络生成的多语种文本和真实场景中采集的多语种文本。可选的,判别网络可以采用多语种bert同时结合双向lstm和全连接层。
[0172]
步骤s903:以多语种生成文本为真实文本的概率以及多语种真实文本为真实文本的概率为依据,对判别网络进行参数更新。
[0173]
具体的,根据多语种生成文本为真实文本的概率以及多语种真实文本为真实文本的概率确定判别网络的预测损失,根据判别网络的预测损失对判别网络进行参数更新。
[0174]
更为具体的,可根据下式确定判别网络的预测损失l
d

[0175][0176]
其中,x表示多语种真实文本,y表示多语种文本生成模型生成的多语种文本,d(x)表示x为真实文本的概率,d(g(y))表示y为真实文本的概率,表示求期望。
[0177]
经由本实施例提供的多语种文本生成模型能够生成流畅自然、符合人类表达习惯的多语种文本。
[0178]
第四实施例
[0179]
本技术实施例还提供了一种多语种文本生成装置,下面对本技术实施例提供的多语种文本生成装置进行描述,下文描述的多语种文本生成装置与上文描述的多语种文本生成方法可相互对应参照。
[0180]
请参阅图10,示出了本技术实施例提供的多语种文本生成装置的结构示意图,可以包括:多语种单词表获取模块1001和多语种文本生成模块1002。
[0181]
多语种单词表获取模块1001,用于获取多语种单词表,所述多语种单词表包含多个词条,每个词条包括一个单词以及所述单词的语种信息;
[0182]
多语种文本生成模块1002,用于利用预先建立多语种文本生成模型,以所述多语种单词表为依据生成多语种文本,其中,所述多语种文本生成模型以生成符合真实多语种文本特点的多语种文本为生成目标进行文本生成。
[0183]
可选的,所述多语种文本生成模型采用对抗生成网络中的生成网络;
[0184]
所述多语种文本生成模型的训练目标为,使所述对抗生成网络中的判别网络无法区分输入的多语种文本为所述生成网络生成的文本还是真实文本。
[0185]
可选的,多语种文本生成模块1002包括:词条采样模块和文本生成模块。
[0186]
词条采样模块,用于根据所述多语种单词表中的语种信息,从所述多语种单词表中随机采样若干词条组成目标单词表;
[0187]
文本生成模块,用于以所述目标单词表为依据生成多语种文本。
[0188]
可选的,文本生成模块在以所述目标单词表为依据生成多语种文本时,具体用于:
[0189]
确定所述目标单词表中每个词条的特征向量以及所述目标单词表的特征向量,其中,所述目标单词表的特征向量为所述目标单词表中所有词条整体的特征向量;基于所述目标单词表的特征向量,确定包含句子文法信息的向量,作为全局计划隐变量;基于所述全局计划隐变量、所述目标单词表中每个词条的特征向量以及所述目标单词表的特征向量,生成多语种文本。
[0190]
可选的,文本生成模块在基于所述目标单词表的特征向量,确定包含句子文法信息的向量,作为全局计划隐变量时,具体用于:
[0191]
基于所述目标单词表的特征向量,确定所述目标单词表的特征向量服从的正态分布;从所述正态分布上采样若干值,以得到所述全局计划隐变量。
[0192]
可选的,文本生成模块在基于所述全局计划隐变量、所述目标单词表中每个词条的特征向量以及所述目标单词表的特征向量,生成多语种文本时,具体用于:
[0193]
基于所述全局计划隐变量以及所述目标单词表中每个词条的特征向量,从所述目标单词表中确定参与文本生成的词条,作为目标词条;基于所述目标单词表的特征向量、所述全局计划隐变量以及所述目标词条的特征向量,生成多语种文本。
[0194]
可选的,文本生成模块在基于所述全局计划隐变量以及所述目标单词表中每个词条的特征向量,从所述目标单词表中确定参与文本生成的词条,作为目标词条时,具体用于:
[0195]
基于所述全局计划隐变量以及所述目标单词表中每个词条的特征向量,预测所述目标单词表中每个词条参与文本生成的概率;基于所述目标单词表中每个词条参与文本生成的概率,确定所述目标单词表中参与文本生成的词条,作为目标词条。
[0196]
可选的,文本生成模块在基于所述目标单词表中每个词条参与文本生成的概率,确定所述目标单词表中参与文本生成的词条时,具体用于:
[0197]
若所述目标单词表中存在参与文本生成的概率大于预设概率阈值的词条,则将所述参与文本生成的概率大于预设概率阈值的词条确定为参与文本生成的词条;若所述目标单词表中不存在参与文本生成的概率大于所述预设概率阈值的词条,则将参与文本生成的概率最大的词条确定为参与文本生成的词条。
[0198]
可选的,文本生成模块在基于所述目标单词表的特征向量、所述全局计划隐变量以及所述目标词条的特征向量,生成多语种文本时,具体用于:
[0199]
计算所有目标词条的特征向量的均值;对所有目标词条的特征向量的均值、所述目标单词表的特征向量以及所述全局计划隐变量进行解码,以获得多语种文本。
[0200]
可选的,文本生成模块在对所有目标词条的特征向量的均值、所述目标单词表的特征向量以及所述全局计划隐变量进行解码,以获得多语种文本时,具体用于:
[0201]
在每个解码时刻,根据所有目标词条的特征向量的均值、所述目标单词表的特征向量、所述全局计划隐变量以及上一解码时刻的文本预测向量,确定当前解码时刻的文本预测向量;以当前解码时刻的文本预测向量为预测依据,预测当前解码时刻生成的单词为多语种词典中各单词的概率;根据当前解码时刻生成的单词为多语种词典中各单词的概率,确定当前解码时刻生成的单词。
[0202]
可选的,本技术实施例提供的多语种文本生成装置还可以包括:模型构建模块。模
型构建模块包括:多语种生成文本获取模块、文本判别模块、语种多样性指示值确定模块和模型参数更新模块。
[0203]
多语种生成文本获取模块,用于利用对抗生成网络中作为多语种文本生成模型的生成网络,以所述多语种单词表为依据生成多语种文本,作为多语种生成文本;
[0204]
文本判别模块,用于将所述多语种生成文本输入所述对抗生成网络中的判别网络,以得到所述多语种生成文本为真实文本的概率;
[0205]
语种多样性指示值确定模块,用于确定所述多语种生成文本对应的语种多样性指示值,其中,所述语种多样性指示值能够表征对应文本的语种多样性;
[0206]
模型参数更新模块,用于以所述多语种生成文本为真实文本的概率以及所述多语种生成文本对应的语种多样性指示值为依据,对多语种文本生成模型进行参数更新。
[0207]
可选的,语种多样性指示值确定模块在确定所述多语种生成文本对应的语种多样性指示值时,具体用于:
[0208]
计算所述多语种生成文本中目标单词所属语种的表示向量的平均值,作为平均语种表示向量,其中,所述目标单词为所述多语种单词表中参与文本生成的词条中的单词;根据所述多语种生成文本中目标单词的个数、所述多语种生成文本中目标单词所属语种的表示向量以及所述平均语种表示向量,确定所述多语种生成文本对应的语种多样性指示值。
[0209]
本技术实施例提供的多语种文本生成装置,首先获取多语种单词表,然后利用预先建立的多语种文本生成模型,以多语种单词表为依据生成多语种文本。本技术实施例提供的多语种文本生成装置可自动生成多语种文本,由于多语种文本利用多语种文本生成模型生成,而多语种文本生成模型以生成符合真实多语种文本特点的多语种文本为生成目标进行文本生成,因此,利用多语种文本生成模型生成生成的多语种文本符合真实多语种文本特点,即流畅自然、符合人类表达习惯。
[0210]
第五实施例
[0211]
本技术实施例还提供了一种多语种文本生成设备,请参阅图11,示出了该多语种文本生成设备的结构示意图,该多语种文本生成设备可以包括:至少一个处理器1101,至少一个通信接口1102,至少一个存储器1103和至少一个通信总线1104;
[0212]
在本技术实施例中,处理器1101、通信接口1102、存储器1103、通信总线1104的数量为至少一个,且处理器1101、通信接口1102、存储器1103通过通信总线1104完成相互间的通信;
[0213]
处理器1101可能是一个中央处理器cpu,或者是特定集成电路asic(application specific integrated circuit),或者是被配置成实施本发明实施例的一个或多个集成电路等;
[0214]
存储器1103可能包含高速ram存储器,也可能还包括非易失性存储器(non

volatile memory)等,例如至少一个磁盘存储器;
[0215]
其中,存储器存储有程序,处理器可调用存储器存储的程序,所述程序用于:
[0216]
获取多语种单词表,所述多语种单词表包含多个词条,每个词条包括一个单词以及所述单词的语种信息;
[0217]
利用预先建立的多语种文本生成模型,以所述多语种单词表为依据生成多语种文本,其中,所述多语种文本生成模型以生成符合真实多语种文本特点的多语种文本为生成
目标进行文本生成。
[0218]
可选的,所述程序的细化功能和扩展功能可参照上文描述。
[0219]
第六实施例
[0220]
本技术实施例还提供一种可读存储介质,该可读存储介质可存储有适于处理器执行的程序,所述程序用于:
[0221]
获取多语种单词表,所述多语种单词表包含多个词条,每个词条包括一个单词以及所述单词的语种信息;
[0222]
利用预先建立的多语种文本生成模型,以所述多语种单词表为依据生成多语种文本,其中,所述多语种文本生成模型以生成符合真实多语种文本特点的多语种文本为生成目标进行文本生成。
[0223]
可选的,所述程序的细化功能和扩展功能可参照上文描述。
[0224]
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个......”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
[0225]
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。
[0226]
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1