掌桥专利:专业的专利平台
掌桥专利
首页

文本生成方法和设备

文献发布时间:2023-06-19 11:52:33


文本生成方法和设备

技术领域

本说明书涉及语言处理技术,更具体地,涉及文本生成方法、文本生成设备、新闻摘要生成方法、机器翻译方法、提供文本生成服务的方法、计算机可读存储介质。

背景技术

文本自动生成是机器学习在语言处理领域的一个重要研究方向,文本生成的应用在日常生活中十分广泛,例如机器翻译、智能问答、文本摘要等。在文本生成过程中,需要准确捕捉源文本的语义,才能够准确生成对应的目标文本。目前的文本生成技术主要是基于神经网络实现,关注词到词的映射,生成的目标文本准确度无法满足需求。

发明内容

本说明书公开的实施例提供一种文本生成的方案。

根据本发明公开的第一方面,提供了文本生成方法,包括以下步骤:

将源文本输入至编码器中,得到编码器的隐藏层输出的特征向量;

从编码器的隐藏层输出的特征向量中抽取出源文本的全局状态;

将编码器最终输出的特征向量和源文本的全局状态输入至解码器中,生成目标文本。

可选地,通过卷积神经网络或者胶囊网络从编码器的隐藏层输出的特征向量中抽取出源文本的全局状态。

可选地,所述编码器采用循环神经网络或者卷积神经网络实现;所述解码器采用循环神经网络或者卷积神经网络实现。

可选地,所述编码器包括M个隐藏层,M为整数并且M≥1;所述通过胶囊网络从编码器的隐藏层输出的特征向量中抽取出源文本的全局状态,包括:

将编码器的隐藏层输出的特征向量输入至胶囊网络中,得到该隐藏层对应的全局状态;

根据M个隐藏层对应的全局状态确定源文本的全局状态。

可选地,所述根据M个隐藏层对应的全局状态确定源文本的全局状态,包括:

对M个隐藏层对应的全局状态进行平均处理,将平均处理的结果作为源文本的全局状态。

可选地,所述将编码器的隐藏层输出的特征向量输入至胶囊网络中,得到该隐藏层对应的全局状态,包括:

将编码器的隐藏层输出的特征向量输入至具有K个胶囊的胶囊网络中,得到该隐藏层对应的K个胶囊矩阵,其中K为整数并且K≥2;

对该隐藏层对应的K个胶囊矩阵进行融合,得到该隐藏层对应的全局状态。

可选地,所述将编码器的隐藏层输出的特征向量输入至具有K个胶囊的胶囊网络中,得到该隐藏层对应的K个胶囊矩阵,包括:

将编码器的隐藏层输出的特征向量输入至具有K个胶囊的胶囊网络中,得到该隐藏层对应的K个初级胶囊矩阵;

使用动态路由算法对该隐藏层对应的K个初级胶囊矩阵进行迭代更新,得到该隐藏层对应的K个胶囊矩阵。

可选地,所述对该隐藏层对应的K个胶囊矩阵进行融合,得到该隐藏层对应的全局状态,包括:

计算所述K个胶囊矩阵的平均矩阵;

根据所述平均矩阵,计算所述K个胶囊矩阵中的每个胶囊矩阵的权重;

通过对所述K个胶囊矩阵进行加权求和,得到该隐藏层对应的全局状态。

可选地,使用基于注意力机制的池化算法、或者平均池化算法、或者最大池化算法实现所述融合。

可选地,所述将编码器最终输出的特征向量和源文本的全局状态输入至解码器中,生成目标文本,包括:

利用源文本的全局状态,对解码器的最后一个隐藏层输出的特征向量进行动态调节;

基于调节后的特征向量生成目标文本。

可选地,所述利用源文本的全局状态对解码器的最后一个隐藏层输出的特征向量进行动态调节,包括:

根据解码器的最后一个隐藏层在当前解码时间步输出的特征向量和源文本的全局状态的相关程度,确定源文本的全局状态在当前解码时间步的权重;

计算源文本的全局状态与源文本的全局状态在当前解码时间步的权重的乘积;

计算解码器的最后一个隐藏层在当前解码时间步输出的特征向量和所述乘积的和值,将所述和值作为解码器的最后一个隐藏层在当前解码时间步最终输出的特征向量。

可选地,所述解码器用于生成摘要,所述目标文本是摘要;或者,

所述解码器用于进行语言转换,所述目标文本是与源文本对应的另一种语言的文本。

根据本发明公开的第二方面,提供了文本生成设备,包括:

编码器,用于输入源文本,得到编码器的隐藏层输出的特征向量;

全局状态获取模块,用于从编码器的隐藏层输出的特征向量中抽取出源文本的全局状态;

解码器,用于输入编码器最终输出的特征向量和源文本的全局状态,生成目标文本。

根据本发明公开的第三方面,提供了文本生成设备,包括处理器和存储器;所述存储器中存储有计算机指令,所述计算机指令被所述处理器执行时实现前述任一项所述的文本生成方法。

根据本发明公开的第四方面,提供了新闻摘要生成方法,包括以下步骤:

将新闻文本输入至编码器中,得到编码器的隐藏层输出的特征向量;

从编码器的隐藏层输出的特征向量中抽取出所述新闻文本的全局状态;

将编码器最终输出的特征向量和所述新闻文本的全局状态输入至解码器中,生成所述新闻文本的摘要。

根据本发明公开的第五方面,提供了机器翻译方法,包括以下步骤:

将待翻译文本输入至编码器中,得到编码器的隐藏层输出的特征向量;

从编码器的隐藏层输出的特征向量中抽取出所述待翻译文本的全局状态;

将编码器最终输出的特征向量和所述待翻译文本的全局状态输入至解码器中,生成所述待翻译文本的译文。

根据本发明公开的第六方面,提供了提供文本生成服务的方法,包括以下步骤:

文本生成服务器接收用户通过终端设备上传的源本文;

文本生成服务器按照前述任一项所述的文本生成方法,生成目标文本;

文本生成服务器将所述目标文本下发给所述终端设备。

根据本发明公开的第七方面,提供了计算机可读存储介质,其上存储有计算机指令,所述计算机指令被处理器执行时实现前述任一项所述的文本生成方法。

根据本发明公开的第八方面,提供了计算机可读存储介质,其上存储有计算机指令,所述计算机指令被处理器执行时实现前述的新闻摘要生成方法。

根据本发明公开的第九方面,提供了计算机可读存储介质,其上存储有计算机指令,所述计算机指令被处理器执行时实现前述的机器翻译方法。

本发明实施例提供的文本生成方法,在生成目标文本的过程中融入了源文本的全局状态,提升了生成的目标文本的准确性和完整性。

通过以下参照附图对本说明书的示例性实施例的详细描述,本说明书的实施例的特征及其优点将会变得清楚。

附图说明

被结合在说明书中并构成说明书的一部分的附图示出了本说明书的实施例,并且连同其说明一起用于解释本说明书实施例的原理。

图1是本说明书一个实施例提供的文本生成系统的框图;

图2是本说明书一个实施例提供的翻译系统的框图;

图3是本说明书一个实施例提供的摘要生成系统的框图;

图4是本说明书一个实施例提供的文本生成方法的流程图;

图5是本说明书一个实施例提供的胶囊网络获取全局状态的示意图;

图6是本说明书一个实施例提供的解码器融入全局状态的示意图;

图7是本说明书一个实施例提供的文本生成设备的框图;

图8是本说明书一个实施例提供的文本生成设备的框图。

具体实施方式

现在将参照附图来详细描述本说明书的各种示例性实施例。

以下对至少一个示例性实施例的描述实际上仅仅是说明性的,决不作为对本说明书实施例及其应用或使用的任何限制。

应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步讨论。

目前的文本生成技术主要是基于神经网络实现,普遍只关注于词到词的映射关系,而忽略了对于全局信息的建模,导致生成的目标文本可能存在问题,不能准确表达源文本的真实意思。

本发明实施例提供的文本生成方案,在文本生成的过程中融入全局信息,使生成的目标文本能够更加的准确和完整。

<文本生成系统>

图1是本说明书实施例提供的文本生成系统的框图。如图1所示,该文本生成系统包括文本生成服务器101和用户的终端设备103,文本生成服务器101和终端设备103之间可以通过网络102通信连接。

文本生成服务器101的配置可以包括但不限于:处理器1011、存储器1012、接口装置1013、通信装置1014、输入装置1015、输出装置1016。处理器1011可以包括但不限于中央处理器CPU、微处理器MCU等。存储器1012可以包括但不限于ROM(只读存储器)、RAM(随机存取存储器)、诸如硬盘的非易失性存储器等。接口装置1013可以包括但不限于USB接口、串行接口、并行接口等。通信装置1014例如能够进行有线通信或无线通信,具体地可以包括WiFi通信、蓝牙通信、2G/3G/4G/5G通信等。输入装置1015包括但不限于键盘、鼠标、触摸屏、麦克风等。输出装置1016包括但不限于显示屏、扬声器等。服务器101的配置也可以仅包括上述装置中的部分装置。

终端设备103例如可以是安装有智能操作系统(例如安卓、IOS、Windows、Linux等系统)的电子设备,包括但不限于便携式电脑、台式计算机、手机、平板电脑等。终端设备103的配置包括但不限于处理器1031、存储器1032、接口装置1033、通信装置1034、GPU(Graphics Processing Unit,图像处理器)1035、显示装置1036、输入装置1037、扬声器1038、麦克风1039、以及相机1030。处理器1031包括但不限于中央处理器CPU、微处理器MCU等。存储器1032包括但不限于ROM(只读存储器)、RAM(随机存取存储器)、诸如硬盘的非易失性存储器等。接口装置1033包括但不限于USB接口、串行接口、并行接口等。通信装置1034例如能够进行有线通信或无线通信,具体地可以包括WiFi通信、蓝牙通信、2G/3G/4G/5G通信等。GPU 1035用于对图像进行处理。显示装置1036包括但不限于液晶屏、触摸屏等。输入装置1037包括但不限于键盘、鼠标、触摸屏等。终端设备103的配置也可以仅包括上述装置中的部分装置。

应用于本说明书的一个实施例中,用户可以通过终端设备103向文本生成服务器101提交源文本和摘要生成请求,文本生成服务器101识别源文本的语义,生成摘要文本,将摘要文本下发给终端设备103。

应用于本说明书的一个实施例中,用户可以通过终端设备103向文本生成服务器101提交源文本和翻译请求,文本生成服务器101识别源文本的语义,根据用户的翻译请求将源文本翻译成另一种语言的文本,将另一种语言的文本下发给终端设备103。

应用于本说明书的一个实施例中,用户可以通过终端设备103的麦克风以语音方式输入自己的需求(需求例如是提出问题),终端设备103将用户的语音转换成源文本并上传给文本生成服务器101,文本生成服务器101识别源文本的语义,生成目标文本(目标文本例如是问题的答案),将目标文本下发给终端设备103,终端设备103通过扬声器播放目标文本,从而实现了智能问答。

图1所示的文本生成系统仅仅是说明性的并且绝不意味着对本说明书实施例、其应用或使用的任何限制。本领域技术人员应当理解,尽管前面描述了文本生成服务器和终端设备的多个装置,但是,本说明书实施例可以仅涉及其中的部分装置。例如,文本生成服务器可以只涉及处理器、存储器以及通信装置,终端设备可以只涉及处理器、存储器、通信装置、显示屏以及麦克风。本领域技术人员可以根据本说明书实施例所公开的方案设计指令。指令如何控制处理器进行操作,是本领域公知技术,故在此不再详细描述。

本发明实施例提供的文本生成方法和文本生成设备可以应用于多种场景。文本生成设备可以是文本生成服务器。

例如,本发明实施例提供的文本生成方法和文本生成服务器,可被专用的翻译APP(application,应用)所使用。参见图2所示,用户终端搭载的翻译APP获取到用户输入的源文本后,将源文本和用户想要翻译成的目标语种信息发送给文本生成服务器104,文本生成服务器104接收到源文本和用户想要翻译成的目标语种信息后,将源文本翻译成目标语种的文本,然后返回给用户。

例如,本发明实施例提供的文本生成方法和文本生成服务器,可被新闻网站所使用,用于帮助新闻网站生成新闻摘要。参见图3所示,新闻网站获取到记者撰写的新闻文本后,将新闻本文发送给文本生成服务器105,文本生成服务器105根据新闻文本生成新闻摘要,然后返回给新闻网站,使得新闻网站可以在新闻标题下方呈现新闻摘要,以供用户快速知晓新闻信息。

<文本生成方法>

参见图4所示,说明本发明的一个实施例提供的文本生成方法,由文本生成设备执行,该文本生成设备可以为图1中的文本生成服务器101。该文本生成方法基于编码器-解码器结构的文本生成模型实现。

在本发明实施例中,编码器和解码器可以采用相同或者相似的算法结构,也可以采用不同的算法结构,本发明实施例对此不作限定。在该实施例中,编码器可以采用循环神经网络或者卷积神经网络实现,解码器可以采用循环神经网络或者卷积神经网络实现。

循环神经网络(Recurrent Neural Network,RNN)是一类以序列数据为输入,在序列的演进方向进行递归且所有节点按链式连接的递归神经网络。卷积神经网络(Convolutional Neural Networks,CNN)是一类包含卷积计算且具有深度结构的前馈神经网络。循环神经网络具有记忆性、参数共享并且图灵完备,卷积神经网络具有表征学习能力,两者在自然语言处理(Natural Language Processing,NLP)、语音识别、语言建模、文本生成、机器翻译等领域具有应用优势。

本发明实施例的编码器和解码器利用循环神经网络或者卷积神经网络实现,有利于准确理解源文本的含义,生成较为准确的目标文本。

在该实施例中,编码器包括输入层、M个隐藏层、以及输出层,其中,M为整数并且M≥1。解码器包括输入层、N个隐藏层,以及输出层,其中,N为整数并且N≥1。M和N可以相同也可以不同,每个隐藏层可以包括一个或者多个神经网络。隐藏层的作用就是把输入数据的特征,抽象到另一个维度空间,来展现其更抽象化的特征。隐藏层的数量可以综合考虑任务的复杂程度和运算资源来进行设定。在本发明的一个实施例中,M的取值可以在6~20之间,N的取值可以在6~8之间。

在一个具体的例子中,解码器用于生成摘要,目标文本是摘要。

在一个具体的例子中,解码器用于进行语言转换,目标文本是与源文本对应的另一种语言的文本。

该实施例的文本生成方法包括步骤S2-S6。

S2、将源文本输入至编码器中,得到编码器的每一个隐藏层输出的特征向量。

源文本中一共有I个词,其向量化表示为:

x={x

在公式(1)中,x

在本发明实施例中,可以采用各种文本向量化方法得到源文本的向量化表示,例如,使用词语-向量word2vec算法得到源本文的向量化表示。

将源文本的向量化表示输入至编码器中,得到编码器的每一个隐藏层输出的特征向量。

S4、编码器的隐藏层输出的特征向量中抽取出源文本的全局状态。

源文本的全局状态是能够体现源文本的全局语义的特征向量。

在本发明实施例中,可以通过卷积神经网络或者胶囊网络(Capsule Networks)从编码器的隐藏层输出的特征向量中抽取出源文本的全局状态。胶囊网络不限制输入的特征向量的长度,能够更充分地利用隐藏层输出的特征向量来生成全局状态。

胶囊网络是一种特殊的神经网络,由胶囊构成,一个胶囊是一小群神经元。在该实施例中,该胶囊网络中具有K个胶囊,其中K为整数并且K≥2。

在图5中,

下面参见图5所示,通过一个具体的例子说明如何通过胶囊网络从编码器的隐藏层输出的特征量中抽取出源文本的全局状态,抽取过程包括步骤S42-S44。

S42、将编码器的每个隐藏层输出的特征向量分别输入至胶囊网络中,得到每个隐藏层对应的全局状态。

下面以编码器的第m个隐藏层为例,通过步骤S422-S446说明如何得到第m个隐藏层对应的全局状态。第m个隐藏层可以为编码器的任意一个隐藏层。

S422、将编码器的第m个隐藏层输出的特征向量输入至具有K个胶囊的胶囊网络中,得到第m个隐藏层对应的K个初级胶囊矩阵。

编码器包括M个隐藏层,第m个隐藏层输出的特征向量可以表示为:

在公式(2)中,上标m表示编码器的第m个隐藏层,m是整数并且1≤m≤M,第m个隐藏层中一共有I个节点,I是整数并且2≤I。

S424、使用动态路由算法对第m个隐藏层对应的K个初级胶囊矩阵进行迭代更新,得到第m个隐藏层对应的K个胶囊矩阵。

动态路由算法是一种通过测量输入和输出的相似性来更新路由系数的方法。

编码器的第m个隐藏层对应的全部胶囊矩阵表示为U

c

其中,softmax()是归一化指数函数,是将一个多维向量,映射到另一个多维空间中,在这一过程中,可以将该向量的每个维度的取值均压缩到(0,1)之间。q()非线性压缩函数。B是一个K行、I列的矩阵,B按照公式(5)进行迭代,其初始为零矩阵。b

在一个具体的例子中,当迭代次数达到预设的次数阈值时,停止迭代。

S426、对第m个隐藏层对应的全部K个胶囊矩阵进行融合,得到第m个隐藏层对应的全局状态。

在一个具体的例子中,可以使用基于注意力机制的池化算法、或者平均池化算法、或者最大池化算法实现这一融合。池化(pooling)的主要作用是整合压缩数据。平均池化(mean-pooling)即对局部接受域中的所有值求均值,最大池化(max-pooling)即取局部接受域中值最大的点。基于注意力机制的池化算法是一种关注输入项的权重分配的池化算法,具有良好的融合效果。

下面通过步骤S4262-S4266,说明使用基于注意力机制的池化算法,对第m个隐藏层对应的全部K个胶囊矩阵进行融合的过程:

S4262、计算第m个隐藏层对应的全部K个胶囊矩阵的平均矩阵。

在一个具体的例子中,通过公式(6)得到平均矩阵:

其中,FFN()表示前馈神经网络(feedforward neurnal network)函数。前馈神经网络是一种简单的神经网络,各神经元分层排列,每个神经元只与前一层的神经元相连,接收前一层的输出,并输出给下一层,直到输出层,是目前应用最广泛、发展最迅速的人工神经网络之一。对第m个隐藏层的K个胶囊矩阵进行直接平均,输入至前馈神经网络中进行调整,得到平均矩阵

S4264、根据第m个隐藏层对应的全部K个胶囊矩阵的平均矩阵,计算第m个隐藏层对应的K个胶囊矩阵中的每个胶囊矩阵的权重。

其中,a

S4266、通过对第m个隐藏层对应的全部K个胶囊矩阵进行加权求和,得到第m个隐藏层对应的全局状态。

在一个具体的例子中,通过公式(8)得到第m个隐藏层对应的全局状态:

其中,FFN()表示前馈神经网络函数。对第m个隐藏层对应的全部K个胶囊矩阵进行加权求和,输入至前馈神经网络中进行调整,得到第m个隐藏层对应的全局状态S

S44,根据编码器的M个隐藏层对应的全局状态确定源文本的全局状态。

在一个具体的例子中,通过对编码器的M个隐藏层对应的全局状态进行平均,确定源文本的全局状态。

在一个具体的例子中,通过公式(9)得到源文本的全局状态:

其中,FFN()表示前馈神经网络函数。对m个隐藏层的全局状态进行直接平均,输入至前馈神经网络中进行调整,得到源文本的全局状态S

在一个具体的例子中,如果编码器只有1个隐藏层,则该隐藏层的对应的全局状态作为源文本的全局状态。

本发明的一个实施例中,使用胶囊网络从编码器的隐藏层输出的特征向量中,也就是从源本文的局部状态中抽取出全局状态,能够得到更准确的全局状态。相比于直接用局部状态的平均作为全局状态,使用胶囊网络从局部特征抽取可以得到更好的全局状态。相比于使用卷积神经网络只能用定长的局部特征抽取全局状态,胶囊网络不限制输入的局部特征的长度,能够更充分地利用编码器隐藏层输出的特征向量来生成全局状态。

S6、将编码器最终输出的特征向量和源文本的全局状态输入至解码器中,生成目标文本。编码器最终输出的特征向量也就是编码器的最后一个隐藏层输出的特征向量。

该实施例中,步骤S6包括步骤S62-S64。

S62、利用源文本的全局状态,对解码器的最后一个隐藏层输出的特征向量进行动态调节。

假设解码器包括N个隐藏层,解码器的最后一个隐藏层,也就是第N个隐藏层输出的特征向量可以表示成:

在公式(10)中,上标N表示解码器的第N个隐藏层。

参见图6所示,“GATE”是指门控,表示有控制地引入源文本的全局状态。s

参见图6所示,本发明实施例的步骤S62,基于门控机制,将源文本的全局状态以动态控制的方式引入到解码器的最后一个隐藏层的每一个解码时间步中,以逐步调节每一个解码时间步输出的特征向量。

下面通过步骤S622-S626,说明如何利用源文本的全局状态,对解码器的第N个隐藏层在当前一个解码时间步的输出的特征向量进行动态调节。

假设当前一个解码时间步是第j个解码时间步:

S622、根据解码器的第N个隐藏层在第j个解码时间步输出的特征向量和源文本的全局状态的相关程度,确定源文本的全局状态在第j个解码时间步的权重。

在一个具体的例子中,利用公式(11)确定源文本的全局状态在第j个解码时间步的权重g

在公式(11)中,s

S624、计算源文本的全局状态与源文本的全局状态在第j个解码时间步的权重的乘积。

S626、计算解码器的第N个隐藏层在第j个解码时间步输出的特征向量和所述乘积的和值,将所述和值作为解码器的第N个隐藏层在第j个解码时间步最终输出的特征向量。

在公式(12)中,

本发明的一个实施例中,不是直接将全局状态作为起始状态输入到解码器,而是在解码器的每一个解码时间步中动态的融入全局状态,能够更充分、更持久地利用全局状态,使得生成的目标文本更准确更完整。

S64、基于解码器的最后一个隐藏层最终输出的调节后的特征向量生成目标文本。

在一个具体的例子中,利用公式(13)生成目标文本:

y={y

在公式(13)中,P(y

生成目标文本的过程可以理解为从词库中挑选词的过程。公式(13)的实际含义为,根据源本文的向量化表示和目标文本的前j-1个词,计算词库中的每个词的概率,将概率最大的词作为目标文本的第j个词。词库中包含停止符,如果停止符被挑中,表明目标文本结束。即,如果目标文本最新被确定的一个词为停止符,说明目标文本已经生成完毕,解码器停止工作。

本发明实施例提供的文本生成方法,在生成目标文本的过程中,利用了源文本的全局状态。源文本的全局状态能够体现源文本的全局语义,利用源文本的全局状态可以在生成目标文本的过程中提供额外的指导,从而提升生成的目标文本的准确性和完整性。

本发明实施例提供的文本生成方法,使用胶囊网络从编码器的隐藏层输出的特征向量中,也就是从源本文的局部状态中抽取出全局状态,能够得到更准确的全局状态。相比于直接用局部状态的平均作为全局状态,使用胶囊网络从局部特征抽取可以得到更好的全局状态。相比于使用卷积神经网络只能用定长的局部特征抽取全局状态,胶囊网络不限制输入的局部特征的长度,能够更充分地利用编码器隐藏层输出的特征向量来生成全局状态。

本发明实施例提供的文本生成方法,不是直接将全局状态作为起始状态输入到解码器,而是在解码器的每一个解码时间步中动态的融入全局状态,能够更充分、更持久地利用全局状态,使得生成的目标文本更准确更完整。

本发明实施例提供的文本生成方法已经经过发明人的大量实验验证,在摘要生成任务和机器翻译任务中,都能够显著提升目标文本的质量。特别在中英翻译任务中和中文短文本摘要生成任务中,达到了目前最好效果。

<文本生成设备>

图7是本说明书的一个实施例提供的文本生成设备20的示意图,该文本生成设备30包括编码器22、全局状态生成模块24、解码器26。

编码器22,用于输入源文本,得到编码器的隐藏层输出的特征向量。

全局状态获取模块24,用于从编码器的隐藏层输出的特征向量中抽取出源文本的全局状态。

解码器26,用于输入编码器22的最终输出的特征向量和源文本的全局状态,生成目标文本。

图8是本说明书的一个实施例提供的文本生成设备30的示意图,该文本生成设备30包括存储器34和处理器32。

存储器34中存储有指令,指令被处理器32执行时实现前述任一项实施例的文本生成方法。

本发明实施例提供的文本生成设备,在生成目标文本的过程中,利用了源文本的全局状态。源文本的全局状态能够体现源文本的全局语义,利用源文本的全局状态可以在生成目标文本的过程中提供额外的指导,从而提升生成的目标文本的准确性和完整性。

本发明实施例提供的文本生成设备,使用胶囊网络从编码器的隐藏层输出的特征向量中,也就是从源本文的局部状态中抽取出全局状态,能够得到更准确的全局状态。相比于直接用局部状态的平均作为全局状态,使用胶囊网络从局部特征抽取可以得到更好的全局状态。相比于使用卷积神经网络只能用定长的局部特征抽取全局状态,胶囊网络不限制输入的局部特征的长度,能够更充分地利用编码器隐藏层输出的特征向量来生成全局状态。

本发明实施例提供的文本生成设备,不是直接将全局状态作为起始状态输入到解码器,而是在解码器的每一个解码时间步中动态的融入全局状态,能够更充分、更持久地利用全局状态,使得生成的目标文本更准确更完整。

本发明实施例提供的文本生成设备已经经过发明人的大量实验验证,在摘要生成任务和机器翻译任务中,都能够显著提升目标文本的质量。特别在中英翻译任务中和中文短文本摘要生成任务中,达到了目前最好效果。

<新闻摘要生成方法>

本发明实施例提供了一种新闻摘要生成方法,包括以下步骤:

将新闻文本输入至编码器中,得到编码器的隐藏层输出的特征向量;

从编码器的隐藏层输出的特征向量中抽取出所述新闻文本的全局状态;

将编码器最终输出的特征向量和所述新闻文本的全局状态输入至解码器中,生成所述新闻文本的摘要。

本发明实施例提供了一种新闻摘要生成方法,将新闻文本作为源文本,按照前述任一实施例的文本生成方法生成该新闻文本的摘要。

<机器翻译方法>

本发明实施例提供了一种机器翻译方法,包括以下步骤:

将待翻译文本输入至编码器中,得到编码器的隐藏层输出的特征向量;

从编码器的隐藏层输出的特征向量中抽取出所述待翻译文本的全局状态;

将编码器最终输出的特征向量和所述待翻译文本的全局状态输入至解码器中,生成所述待翻译文本的译文。

本发明实施例提供了一种机器翻译方法,将待翻译文本作为源文本,按照前述任一实施例的文本生成方法生成该待翻译文本的译文

<提供文本生成服务的方法>

本发明实施例公开了一种提供文本生成服务的方法,包括以下步骤:

文本生成服务器接收用户通过终端设备上传的源本文;

文本生成服务器按照前述任一实施例的文本生成方法,生成目标文本;

文本生成服务器将所述目标文本下发给所述终端设备。

<计算机可读存储介质>

本发明实施例公开了一种计算机可读存储介质,其上存储有计算机指令,所述计算机指令被处理器执行时实现前述任一实施例的文本生成方法。

本发明实施例公开了一种计算机可读存储介质,其上存储有计算机指令,所述计算机指令被处理器执行时实现前述任一实施例的新闻摘要生成方法。

本发明实施例公开了一种计算机可读存储介质,其上存储有计算机指令,所述计算机指令被处理器执行时实现前述任一实施例的机器翻译方法。

本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置、设备实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。

上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。

本说明书的实施例可以是系统、方法和/或计算机程序产品。计算机程序产品可以包括计算机可读存储介质,其上载有用于使处理器实现本说明书实施例的各个方面的计算机可读程序指令。

计算机可读存储介质可以是可以保持和存储由指令执行设备使用的指令的有形设备。计算机可读存储介质例如可以是――但不限于――电存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或者上述的任意合适的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、静态随机存取存储器(SRAM)、便携式压缩盘只读存储器(CD-ROM)、数字多功能盘(DVD)、记忆棒、软盘、机械编码设备、例如其上存储有指令的打孔卡或凹槽内凸起结构、以及上述的任意合适的组合。这里所使用的计算机可读存储介质不被解释为瞬时信号本身,诸如无线电波或者其他自由传播的电磁波、通过波导或其他传输媒介传播的电磁波(例如,通过光纤电缆的光脉冲)、或者通过电线传输的电信号。

这里所描述的计算机可读程序指令可以从计算机可读存储介质下载到各个计算/处理设备,或者通过网络、例如因特网、局域网、广域网和/或无线网下载到外部计算机或外部存储设备。网络可以包括铜传输电缆、光纤传输、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘服务器。每个计算/处理设备中的网络适配卡或者网络接口从网络接收计算机可读程序指令,并转发该计算机可读程序指令,以供存储在各个计算/处理设备中的计算机可读存储介质中。

用于执行本说明书的实施例操作的计算机程序指令可以是汇编指令、指令集架构(ISA)指令、机器指令、机器相关指令、微代码、固件指令、状态设置数据、或者以一种或多种编程语言的任意组合编写的源代码或目标代码,编程语言包括面向对象的编程语言—诸如Smalltalk、C++等,以及常规的过程式编程语言—诸如“C”语言或类似的编程语言。计算机可读程序指令可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络—包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。在一些实施例中,通过利用计算机可读程序指令的状态信息来个性化定制电子电路,例如可编程逻辑电路、现场可编程门阵列(FPGA)或可编程逻辑阵列(PLA),该电子电路可以执行计算机可读程序指令,从而实现本说明书实施例的各个方面。

这里参照根据本说明书实施例的方法、装置(系统)和计算机程序产品的流程图和/或框图描述了本说明书实施例的各个方面。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机可读程序指令实现。

这些计算机可读程序指令可以提供给通用计算机、专用计算机或其它可编程数据处理装置的处理器,从而生产出一种机器,使得这些指令在通过计算机或其它可编程数据处理装置的处理器执行时,产生了实现流程图和/或框图中的一个或多个方框中规定的功能/动作的装置。也可以把这些计算机可读程序指令存储在计算机可读存储介质中,这些指令使得计算机、可编程数据处理装置和/或其他设备以特定方式工作,从而,存储有指令的计算机可读介质则包括一个制造品,其包括实现流程图和/或框图中的一个或多个方框中规定的功能/动作的各个方面的指令。

也可以把计算机可读程序指令加载到计算机、其它可编程数据处理装置、或其它设备上,使得在计算机、其它可编程数据处理装置或其它设备上执行一系列操作步骤,以产生计算机实现的过程,从而使得在计算机、其它可编程数据处理装置、或其它设备上执行的指令实现流程图和/或框图中的一个或多个方框中规定的功能/动作。

附图中的流程图和框图显示了根据本说明书的多个实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或指令的一部分,模块、程序段或指令的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。对于本领域技术人员来说公知的是,通过硬件方式实现、通过软件方式实现以及通过软件和硬件结合的方式实现都是等价的。

以上已经描述了本说明书的各实施例,上述说明是示例性的,并非穷尽性的,并且也不限于所披露的各实施例。在不偏离所说明的各实施例的范围的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实施例的原理、实际应用或对市场中的技术的技术改进,或者使本技术领域的其它普通技术人员能理解本文披露的各实施例。

相关技术
  • 文本生成模型生成方法、文本生成方法、装置及设备
  • 文本生成方法、文本生成装置、电子设备及存储介质
技术分类

06120113083321