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

一种基于动态知识引导的摘要生成方法、系统及装置

文献发布时间:2024-04-18 19:58:26


一种基于动态知识引导的摘要生成方法、系统及装置

技术领域

本发明属于摘要生成技术领域,尤其涉及一种基于动态知识引导的摘要生成方法、系统及装置。

背景技术

摘要生成是自然语言处理中的一项重要任务,该任务是为较长的源文本生成一个最代表其主要信息的简短的摘要。摘要任务使得用户只需要阅读摘要就能获取原始文本的主要内容,让用户在短时间内可以阅读大量的文本,从而节省用户的时间,提高工作效率。文本摘要技术在新闻领域、医疗领域、科技文献领域都发挥了重要的作用,使得该技术在各种领域都得到了广泛应用。

近年来,摘要生成方法主要分为基于抽取式的方法和基于生成式的方法。基于抽取式的方法专注于从原始文本中抽取出完整的句子,然后构成最终的摘要。随着深度学习技术的发展以及计算机硬件技术的成熟,越来越多的人开始关注基于生成式的摘要生成方法。相比抽取式的摘要生成技术,基于生成式的摘要生成方法和人类生成摘要过程更加相似,但是挑战性更大。此外,和抽取式生成方法这种简单从原始文本中抽取句子的方式不同,基于生成式摘要生成技术可以生成原始文档中不存在的新颖的单词,更加达到总结的目的。

现在基于生成式的摘要生成技术的主要问题是生成的摘要比较空洞,具体表现为摘要中没有包含原始文档的具体信息,只是泛泛的总结。现有的解决方法未能很好的解决这个问题。一方面基于知识指导的方法,指导知识粒度大小不合适。现有的基于句子级指导信息粒度太大,包含较多的冗余信息。基于实体级别的指导知识粒度太小,无法包含原始文档中完整的指导信息。

另一方面是基于知识指导的摘要生成方法中,指导知识在整个摘要生成过程中没有随着摘要生成过程变化,而是保持静态的状态。随着摘要生成内容的不断进行,摘要关注的内容是不断变化的,导致这种基于指导知识静态不变的方法无法真正达到指导生成的目的,反而会引入较多的噪声。

发明内容

本发明目的在于针对现有技术的不足,提出一种基于动态知识引导的摘要生成方法、系统及装置。本发明主要通过以下两种途径解决摘要生成问题:一方面,本发明构建了三元组级别的知识库,不同于以前的基于句子级别的知识会带来冗余的指导信息,也不同于基于以前的基于实体级别的知识会导致知识不足的情况,本发明的三元组知识库不包含冗余信息,且包含实体之间的关系,构建了最佳粒度的知识库;另一方面,本发明采用了动态选择机制实现引导知识的动态变化。在充分利用已经生成的摘要内容的情况下,从知识库中动态选择最相关的知识作为引导,从而实现了真正的知识引导的摘要生成过程,生成和原文更加相关的摘要。

本发明的目的是通过以下技术方案来实现的:第一方面,本发明提供了一种基于动态知识引导的摘要生成方法,该方法包括以下步骤:

步骤一,收集原始文本数据,标注原始文本数据对应的摘要,构建训练集;

步骤二,利用开放信息抽取技术,对训练集文本进行信息抽取获取结构化三元组,按长度和数量进行筛选后,构建结构化三元组知识库;

步骤三,基于序列编码器文本模型构建原始文本的字符级向量表示,进而构建结构化三元组的向量表示,基于当前文本摘要的字符向量表示,根据动态选择机制,通过摘要生成的解码器文本模型得到下一个即将生成的文本摘要的字符向量表示;所述动态选择机制根据摘要对三元组的相关度分数筛选三元组,将筛选出来的三元组向量表示和当前的摘要字符的向量表示融合,得到最新的摘要字符的向量表示,生成最终的摘要字符;

步骤四,基于生成的摘要字符和标注的摘要中的字符,计算序列编码器文本模型和摘要生成的解码器文本模型的损失,更新序列编码器文本模型和摘要生成的解码器文本模型的权重,基于更新后的序列编码器文本模型和解码器文本模型生成摘要。

进一步地,所述步骤二中,按照长度和数量对三元组进行过滤,具体为:

过滤掉实体单词数大于10的三元组,并且每个原始文本只保留最多50个三元组。

进一步地,步骤三具体包括以下步骤;

(3.1)训练原始文本的序列编码器文本模型,获取原始文本的字符级向量表示;

(3.2)对知识库中结构化三元组,基于获取的原始文本的字符级向量表示,构建结构化三元组的向量表示;

(3.3)训练摘要生成的解码器文本模型;基于获取的原始文本的字符级向量表示、结构化三元组的向量表示以及当前已经生成的文本摘要的字符向量表示,根据动态选择机制,得到下一个即将生成的文本摘要的字符向量表示。

进一步地,动态选择机制具体如下:

(3.3.1)对当前摘要中字符的向量表示和知识库中结构化三元组的向量表示进行多轮点积,得到摘要对知识库中三元组的相关度分数;

(3.3.2)根据相关度分数,保留相关度分数最大的指定数量的三元组,其余三元组相关度分数置为零,得到更新后的摘要中的字符对知识库中三元组的相关度分数;

(3.3.3)根据更新后的相关度分数,融合当前的摘要字符的向量表示和相关度分数最大指定数量三元组向量表示,得到最新的摘要字符的向量表示,生成最终的摘要字符。

进一步地,构建三元组的向量表示,具体为:

输入的原始文本为

使用序列编码模型得到原始文本的字符级向量表示:对于输入文本

根据得到的输入文本的语义向量表示

对于头实体

其中,

为了使得知识库中三元组之间能够彼此感知,采用了多头注意力机制去感知彼此的信息,得到上下文感知的三元组向量表示:

其中

进一步地,构建动态选择机制,具体为:

给定一个上下文感知的三元组知识库的向量表示

其中,

最终,得到和当前摘要中字符最相关的三元组去更新当前的字符的向量表示,同时过滤掉不相关的三元组,实现动态知识指导。

进一步地,训练摘要生成的解码器文本模型,具体为:

定义

首选通过

然后结合动态选择机制之后的摘要中字符的向量表示

之后再进行层归一化和多层线性变换输入到下一层的解码器中:

其中,

最后,对第

其中,

第二方面,本发明还提供了一种基于动态知识引导的摘要生成系统,该系统包括摘要标注模块、三元组构建模块、动态知识引导模块和摘要生成模块;

所述摘要标注模块用于收集原始文本数据,标注原始文本数据对应的摘要,构建训练集;

所述三元组构建模块用于利用开放信息抽取技术,对训练集文本进行信息抽取获取结构化三元组,按长度和数量进行筛选后,构建结构化三元组知识库:

所述动态知识引导模块用于基于序列编码器文本模型构建原始文本的字符级向量表示,进而构建结构化三元组的向量表示,基于当前的文本摘要的字符向量表示,根据动态选择机制,通过摘要生成的解码器文本模型得到下一个即将生成的文本摘要的字符向量表示;所述动态选择机制根据摘要对三元组的相关度分数筛选三元组,将筛选出来的三元组向量表示和当前的摘要字符的向量表示融合,得到最新的摘要字符的向量表示,生成最终的摘要字符;

所述摘要生成模块用于基于生成的摘要字符和标注的摘要中的字符,计算序列编码器文本模型和摘要生成的解码器文本模型的损失,更新序列编码器文本模型和摘要生成的解码器文本模型的权重,基于更新后的序列编码器文本模型和解码器文本模型生成摘要。

第三方面,本发明还提供了一种基于动态知识引导的摘要生成装置,包括存储器和一个或多个处理器,所述存储器中存储有可执行代码,所述处理器执行所述可执行代码时,实现所述的一种基于动态知识引导的摘要生成方法。

第四方面,本发明还提供了一种计算机可读存储介质,其上存储有程序,所述程序被处理器执行时,实现所述的一种基于动态知识引导的摘要生成方法。

本发明的有益效果如下:

1.构建了结构化三元组知识库,利用开放信息抽取方法,实现了对纯文本信息的结构化三元组信息的抽取,弥补纯文本信息中结构化知识不足的问题;

2.将知识库作为指导信息,指导摘要生成过程,解决摘要生成任务中生成内容和原始文档内容不一致问题。

3.在指导生成过程中,对知识库采用一个动态选择机制,只选择和当前摘要内容最相关的知识,过滤掉那些和当前摘要内容不相关的知识,保持摘要生成过程中重点信息随生成内容逐渐变化,最终生成动态知识引导的摘要。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图做简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动前提下,还可以根据这些附图获得其他附图。

图1为本发明实施提供一种基于动态知识引导的摘要生成方法的流程图。

图2为本发明提供的基于动态选择机制选择知识的流程示意图。

图3为本发明的摘要生成示意图。

图4为本发明提供的一种基于动态知识引导的摘要生成装置的结构图。

具体实施方式

为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图对本发明的具体实施方式做详细的说明。

在下面的描述中阐述了很多具体细节以便于充分理解本发明,但是本发明还可以采用其他不同于在此描述的其它方式来实施,本领域技术人员可以在不违背本发明内涵的情况下做类似推广,因此本发明不受下面公开的具体实施例的限制。

本发明中,知识三元组指:(头实体,关系,尾实体)。其中头实体和尾实体可以表示人、地点、组织,关系表示头实体和尾实体之间的具体关系。例如对于源文档中的描述“一位飞行员捕捉到了令人紧张的时刻”,那么对应的三元组为:(一位飞行员,捕捉到,令人紧张的时刻),三元组通常用于具有语义含义的最小单元,用于描述实体关系的最佳单元。

如图1和图3所示,本发明提供一种动态知识引导的摘要生成方法,步骤如下:

步骤一,获取新闻领域的原始文本数据并划分数据集,在每一个训练批次前,根据新闻领域的原始文本数据集总数量,将包含大规模标注样本数据集划分为训练集、验证集和测试集。

步骤二,构建结构化三元组知识库,具体包括以下三个步骤:

2.1 选择新闻领域的原始文本和摘要标注语料作为训练集,按照一定的规则对训练集进行过滤,得到最后的训练集;

a)训练集中原始文本的单词个数大于100,且小于1000;

b)训练集中原始文本对应的摘要的单词个数大于20,且小于200;

2.2 采用开放信息抽取技术,对训练集中的所有原始文档进行信息三元组抽取,得到训练集中每个原始文档对应的结构化三元组;

a)首先本地配置开放信息抽取工具。

b)把训练集原始文档输入到开放信息抽取工具中,得到处理好的结果文件。

c)从结果文件中解析三元组知识,三元组形如<实体、关系、实体>,其中关系代表两个实体之间的具体关系,实体包括人物、组织、时间、地点,关系表示实体之间存在的关系。

2.3 根据长度和数量对得到的三元组进行过滤,得到最终的三元组,构建结构化三元组知识库;

a)解析后的三元组如果实体单词数目大于10的过滤掉;

b)解析后的三元组如果关系单词数目大于10的过滤掉;

c)解析后的三元组对应每一个文档的数量大于50的过滤掉;

d)过滤后的三元组构建结构化三元组知识库,其中保存三元组、三元组对应的文档编号,保存在内存结构中;

步骤三,动态知识引导的摘要生成,包括以下步骤;

3.1 训练原始文档的序列编码器文本模型,获取文本的字符级语义向量表示;

3.2 对知识库中结构化三元组,基于获取的字符级语义向量表示,利用三元组编码器构建结构化三元组的向量表示;

3.3 训练摘要生成的解码器文本模型;基于获取的原文本的字符级向量表示、结构化三元组的向量表示、以及当前已经生成的摘要的向量表示(例如:飞行员的右后轮短暂接触),根据动态选择机制融合,得到下一个即将生成的摘要字符的向量表示;

3.4 基于生成的摘要字符和标注数据中的字符,计算序列编码器文本模型和摘要生成的解码器文本模型的损失,更新编码器文本模型和摘要生成的解码器文本模型的权重;

具体实施细节如下:

输入的新闻原始文档为

使用序列编码模型得到文本的字符级向量表示:对于输入文本

对于第

其中,

然后拼接头实体的特征表示

其中,

为了使得知识库中三元组之间能够彼此感知,采用了多头注意力机制去感知彼此的信息,得到上下文感知的三元组知识库向量表示:

其中

步骤三中的动态选择机制,包括以下步骤:

1)对当前摘要的向量表示和知识库中结构化三元组的表示进行多轮点积,得到知识库中三元组对当前摘要的相关度分数。

2)根据相关度分数,保留相关度分数最大的指定数量的三元组,其余三元组分数置为零,得到更新后的摘要对知识库中三元组的相关度分数。

3)根据更新后的相关度分数,融合当前的摘要和相关度分数最大的指定数量三元组,得到更新后的摘要字符的权重。

具体实施细节如下:

给定一个上下文感知的三元组知识库的向量表示

其中,

最终,得到和当前摘要中字符最相关的知识三元组去更新当前的字符的向量表示,同时过滤掉不相关的知识三元组,达到动态指导的目的。

定义

首先可以通过多头注意力获取第

然后结合动态选择机制之后的摘要中字符的向量

之后再进行层归一化和多层线性变换输入到下一层的解码器中:

其中,

其中,

首先采用最大相似度目标函数

其中,D为训练数据集,

其中,

其中,

在神经网络模型训练完成后,本发明可以将该模型运用到两个最常用的开放的摘要生成数据集CNN/DailyMail和XSum上测试其效果,得到的测试结果如表1和表2所示。和纯文本预训练方法、句子指导方法、实体指导方法、图知识的指导方法,本方法表现最优,更加有效。

表1 预测结果评估(CNN/DailyMail)

表2 预测结果评估(XSum)

与前述一种基于动态知识引导的摘要生成方法的实施例相对应,本发明还提供了一种基于动态知识引导的摘要生成系统,该系统包括摘要标注模块、三元组构建模块、动态知识引导模块和摘要生成模块;

所述摘要标注模块用于收集原始文本数据,标注原始文本数据对应的摘要,构建训练集;

所述三元组构建模块用于利用开放信息抽取技术,对训练集文本中进行信息抽取获取结构化三元组,按长度和数量进行筛后,构建结构化三元组知识库:

所述动态知识引导模块用于基于序列编码器文本模型构建原始文本的字符级向量表示,进而构建结构化三元组的向量表示,基于当前的文本摘要的字符向量表示,根据动态选择机制,通过摘要生成的解码器文本模型得到下一个即将生成的文本摘要的字符向量表示;所述动态选择机制根据摘要对三元组的相关度分数筛选三元组,将筛选出来的三元组向量表示和当前的摘要字符的向量表示融合,得到最新的摘要字符的向量表示,生成最终的摘要字符;

所述摘要生成模块用于基于生成的摘要字符和标注的摘要中的字符,计算序列编码器文本模型和摘要生成的解码器文本模型的损失,更新序列编码器文本模型和摘要生成的解码器文本模型的权重,基于更新后的序列编码器文本模型和解码器文本模型生成摘要。

与前述一种基于动态知识引导的摘要生成方法的实施例相对应,本发明还提供了一种基于动态知识引导的摘要生成装置的实施例。

参见图4,本发明实施例提供的一种基于动态知识引导的摘要生成装置,包括存储器和一个或多个处理器,所述存储器中存储有可执行代码,所述处理器执行所述可执行代码时,用于实现上述实施例中的一种基于动态知识引导的摘要生成方法。

本发明提供的一种基于动态知识引导的摘要生成装置的实施例可以应用在任意具备数据处理能力的设备上,该任意具备数据处理能力的设备可以为诸如计算机等设备或装置。装置实施例可以通过软件实现,也可以通过硬件或者软硬件结合的方式实现。以软件实现为例,作为一个逻辑意义上的装置,是通过其所在任意具备数据处理能力的设备的处理器将非易失性存储器中对应的计算机程序指令读取到内存中运行形成的。从硬件层面而言,如图4所示,为本发明提供的一种基于动态知识引导的摘要生成装置所在任意具备数据处理能力的设备的一种硬件结构图,除了图4所示的处理器、内存、网络接口、以及非易失性存储器之外,实施例中装置所在的任意具备数据处理能力的设备通常根据该任意具备数据处理能力的设备的实际功能,还可以包括其他硬件,对此不再赘述。

上述装置中各个单元的功能和作用的实现过程具体详见上述方法中对应步骤的实现过程,在此不再赘述。

对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本发明方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。

本发明实施例还提供一种计算机可读存储介质,其上存储有程序,该程序被处理器执行时,实现上述实施例中的一种基于动态知识引导的摘要生成方法。

所述计算机可读存储介质可以是前述任一实施例所述的任意具备数据处理能力的设备的内部存储单元,例如硬盘或内存。所述计算机可读存储介质也可以是任意具备数据处理能力的设备的外部存储设备,例如所述设备上配备的插接式硬盘、智能存储卡(Smart Media Card,SMC)、SD卡、闪存卡(Flash Card)等。进一步的,所述计算机可读存储介质还可以既包括任意具备数据处理能力的设备的内部存储单元也包括外部存储设备。所述计算机可读存储介质用于存储所述计算机程序以及所述任意具备数据处理能力的设备所需的其他程序和数据,还可以用于暂时地存储已经输出或者将要输出的数据。

以上所述仅是本发明的优选实施方式,虽然本发明已以较佳实施例披露如上,然而并非用以限定本发明。任何熟悉本领域的技术人员,在不脱离本发明技术方案范围情况下,都可利用上述揭示的方法和技术内容对本发明技术方案做出许多可能的变动和修饰,或修改为等同变化的等效实施例。因此,凡是未脱离本发明技术方案的内容,依据本发明的技术实质对以上实施例所做的任何的简单修改、等同变化及修饰,均仍属于本发明技术方案保护的范围内。

相关技术
  • 一种训练摘要生成模型的方法和装置
  • 一种视频摘要的生成方法及装置
  • 一种基于H5页面的海报生成方法、系统、装置及存储介质
  • 一种基于计划机制和知识图谱引导的摘要生成方法
  • 一种基于计划机制和知识图谱引导的摘要生成方法
技术分类

06120116487233