一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

文本摘要生成方法、装置、设备以及存储介质

2022-12-03 02:30:09 来源:中国专利 TAG:


1.本技术涉及自然语言处理技术领域,尤其涉及一种文本摘要生成方法、装置、设备以及存储介质。


背景技术:

2.21世纪互联网的快速发展,大量的文本数据涌现导致用户很难快速获取文本中的主题信息,如何快速高效地从海量文本中提炼出所需的有用信息,已经成为一个亟待解决的问题。
3.预训练语言模型bart是mike lewis等人提出的基于bert的变种模型,如果说bert模型是仅使用transformer-encoder结构的预训练语言模型,那么bart模型就是使用transformer模型整体结构的预训练语言模型,相较于bert,它在自然语言理解任务上表现没有下降,并且在自然语言生成任务上有明显的提高。但是它并未对传统bert模型的embedding方式进行修改,因此对于有多句子的文本摘要生成任务,由于其捕获句子间联系的能力并不出众,所以得到的结果也不够准确。
4.申请内容
5.本技术的主要目的在于提供一种文本摘要生成方法、装置、设备以及存储介质,旨在提高生成文本摘要的准确性。
6.为实现以上目的,本技术提供了一种文本摘要生成方法,所述方法包括:
7.获取输入文本;所述输入文本包括多个语句;
8.将多个预设标志分别插入至多个所述语句中,得到多个目标语句;
9.将多个目标语句输入至预训练模型bart,得到所述预训练模型bart输出的多个表示向量;
10.根据多个所述表示向量,得到各个所述表示向量的重要性得分;
11.根据所述重要性得分与所述目标语句,生成摘要文本。
12.可选地,将多个预设标志分别插入至多个所述语句中,得到多个目标语句,包括:
13.将第一预设标志插入至每一个所述语句中第一个字符之前;
14.将第二预设标志插入至每一个所述语句中最后一个字符之后,得到多个所述目标语句。
15.可选地,所述bart模型包括嵌入层,将多个目标语句输入至预训练模型bart,得到所述预训练模型bart输出的多个表示向量,包括:
16.将多个目标语句输入至预训练模型bart中的嵌入层;
17.所述嵌入层对所述目标语句进行词嵌入操作,得到多个所述表示向量。
18.可选地,所述嵌入层对所述目标语句进行词嵌入操作,得到多个所述表示向量,包括:
19.判断所述目标语句是否为第奇数个目标语句;
20.若是,则选择第一分段嵌入方式对所述目标语句进行词嵌入,得到多个所述表示
向量。
21.可选地,判断所述目标语句是否为第奇数个表示向量之后,所述方法还包括:
22.若否,则选择第二分段嵌入方式对所述目标语句进行嵌入,得到多个所述表示向量。
23.可选地,所述将多个目标语句输入至预训练模型bart,得到所述预训练模型bart输出的多个表示向量,包括:
24.将多个目标语句输入至预训练模型bart,得到所述预训练模型bart输出的多个表示向量和多个上下文信息向量;
25.所述根据多个所述表示向量,得到各个所述表示向量的重要性得分,包括:
26.根据多个所述表示向量以及多个所述上下文信息向量,得到所述输入文本的整体信息;
27.针对每个所述语句,将所述表示向量与所述整体信息进行关联度比对,得到关联度比对结果,并将所述关联度比对结果作为各个所述表示向量的重要性得分。
28.可选地,根据所述重要性得分与所述目标语句,生成摘要文本,包括:
29.筛选出所述重要性得分大于或者等于预设阈值的所述表示向量对应的所述目标语句,得到筛选语句;
30.根据所有所述筛选语句,得到所述摘要文本。
31.此外,为实现上述目的,本技术还提供一种文本摘要生成装置,所述装置包括:
32.文本获取模块,用于获取输入文本;所述输入文本包括多个语句;
33.标志插入模块,用于将多个预设标志分别插入至多个所述语句中,得到多个目标语句;
34.向量生成模块,用于将多个目标语句输入至预训练模型bart,得到所述预训练模型bart输出的多个表示向量;
35.评分模块,用于根据多个所述表示向量,得到各个所述表示向量的重要性得分;
36.摘要生成模块,用于根据所述重要性得分与所述目标语句,生成摘要文本。
37.本技术还提供一种文本摘要生成设备,包括:处理器,存储器以及存储在所述存储器中的文本摘要生成程序,所述文本摘要生成程序被所述处理器执行时实现第一方面的实现方式中的任一种可能的实现方式中所述的各个步骤。
38.本技术还提供一种计算机可读存储介质,其上存储有文本摘要生成程序,所述文本摘要生成程序被处理器执行时实现第一方面的实现方式中的任一种可能的实现方式中所述的各个步骤。
39.本技术实施例提出了一种文本摘要生成方法,通过获取输入文本中的多个语句,在多个语句中插入预设标志,得到多个目标语句,在将多个目标语句输入至bart模型,得到多个与目标语句相对应表示向量,将多个表示向量进行重要性评分,再根据重要性得分以及表示向量相对应的目标语句,生成摘要文本。即本技术将所有表示向量进行重要性评分,以确定每一个语句在输入文本中的重要性,再根据表示向量的重要性得分结果和目标语句,生成摘要文本,由此,可使得生成的摘要文本与输入文本中重要性较高的目标语句关联度更高,提高了生成文本摘要的准确性。
附图说明
40.图1为本技术涉及的硬件运行环境的文本摘要生成设备的结构示意图;
41.图2为本技术文本摘要生成方法第一实施例的流程示意图;
42.图3为本技术文本摘要生成方法第二实施例的流程示意图;
43.图4为本技术涉及的文本摘要生成装置的功能模块示意图。
44.本技术目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
45.应当理解,此处所描述的具体实施例仅仅用以解释本技术,并不用于限定本技术。
46.由于现有技术中是直接采用bart进行文本摘要的提取,而bart并未对传统bert模型的embedding方式进行修改,因此对于有多句子的文本摘要生成任务,由于其捕获句子间联系的能力并不出众,所以得到的结果也不够准确。
47.为此,本技术提出了一种文本摘要生成方法,通过获取输入文本中的多个语句,在多个语句中插入预设标志,得到多个目标语句,在将多个目标语句输入至bart模型,得到多个与目标语句相对应表示向量,将多个表示向量进行重要性评分,再根据重要性得分以及表示向量相对应的目标语句,生成摘要文本,通过对表示向量进行重要性评分的操作来确定每一个语句在输入文本中的重要性,提高了获取文本摘要的准确性。
48.如图1所示,该文本摘要生成设备可以包括:处理器1001,例如中央处理器(central processing unit,cpu),通信总线1002、用户接口1003,网络接口1004,存储器1005。其中,通信总线1002用于实现这些组件之间的连接通信。用户接口1003可以包括显示屏(display)、输入单元比如键盘(keyboard),可选用户接口1003还可以包括标准的有线接口、无线接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如无线保真(wireless-fidelity,wi-fi)接口)。存储器1005可以是高速的随机存取存储器(random access memory,ram)存储器,也可以是稳定的非易失性存储器(non-volatile memory,nvm),例如磁盘存储器。存储器1005可选的还可以是独立于前述处理器1001的存储装置。
49.本领域技术人员可以理解,图1中示出的结构并不构成对文本摘要生成设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
50.如图1所示,作为一种存储介质的存储器1005中可包括控制系统、数据获取模块、数据计算模块、数据判断模块以及文本摘要生成程序。
51.如图1所示,网络接口1004主要用于与网络服务器进行数据通信;用户接口1003主要用于与用户进行数据交互;本发明服务器中的处理器1001、存储器1005可以设置在服务器,服务器通过处理器1001调用存储器1005中存储的文本摘要生成程序,并执行本发明实施例提供的文本摘要生成方法。
52.基于上述硬件结构但不限于上述硬件结构,本发明提供一种文本摘要生成方法第一实施例。参照图2,图2为本发明文本摘要生成方法的第一实施例流程示意图。
53.参照图2,本技术第一实施例提供一种文本摘要生成方法,方法包括:
54.s10:获取输入文本;输入文本包括多个语句;
55.输入文本可以为一篇文章,或一段文字。
56.s20:将多个预设标志分别插入至多个语句中,得到多个目标语句;
57.预设标志用于分割输入文本的多个语句,在每一个语句中嵌入标志。
58.将预设标志插入至输入文本中的连续语句中,将连续语句分割成一个个语句,即得到了目标语句,例如,语句“sent one,sent two”,将预设标志[c]和[s]插入语句中,得到“[c]sent one[s],[c]sent two[s]”。
[0059]
s30:将多个目标语句输入至预训练模型bart,得到预训练模型bart输出的多个表示向量;
[0060]
预训练模型bart为一种基于去噪自编码器seq2seq结构的预训练模型,模型在预训练阶段,核心的预训练过程为使用任意噪声函数来破坏预训练时输入bart模型中的原始文本,bart模型在编码器encoder部分对输入的被破坏文本进行编码、计算与特征提取;解码器decoder则会利用交叉多头注意力聚合操作(cross_attention)与编码器最后一层的隐藏状态结果进行注意力聚合计算,进而以自回归的方式对被破坏的文档进行复原重建。
[0061]
表示向量为可以表示目标语句的向量,一个表示向量仅对应一个目标语句。
[0062]
将所有目标语句发送至预训练模型bart中,bart模型根据每一个目标语句,生成对应的表示向量,例如,语句“[c]sent one[s],[c]sent two[s]”,经过预训练模型bart,“[c]sent two[s]”生成表示向量a,“[c]sent two[s]”生成表示向量b。
[0063]
s40:根据多个表示向量,得到各个表示向量的重要性得分;
[0064]
重要性得分为将能表示输入文本的整体信息与表示向量所表示的句子进行比对,根据每一个语句能够包含多少整体信息进行评分,得出的分数即为表示向量的重要性评分,表示该目标语句在整个输入文本中的重要性。
[0065]
需要理解的是,可通过预训练模型bart中transform模型的函数计算得出每一个表示向量的重要性得分。
[0066]
s50:根据重要性得分与目标语句,生成摘要文本;
[0067]
具体而言,在生成摘要文本的过程中,可对重要性得分较高的目标语句重点考虑,即重点性得分较高的目标语句的权重较高,而重要性得分较低的目标语句次要考虑或者不考虑,即重点性得分较低的目标语句的权重较低,从而最后生成的摘要文本与重要性得分较高的目标语句关联度较高,以使得最后生成的摘要文本可以更加准确地反应输入文本。
[0068]
如可根据表示向量的重要性得分,获取得分高的表示向量对应的目标语句,将所有重要性得分高的目标语句进行结合,生成摘要文本,例如,表示向量a1重要性得分为90分,表示向量b1重要性得分为85分,表示向量a2重要性得分为40分,则将表示向量a1与表示向量b1对应的目标语句进行结合,生成摘要文本。
[0069]
本技术实施例通过获取输入文本中的多个语句,在多个语句中插入预设标志,得到多个目标语句,在将多个目标语句输入至bart模型,得到多个与目标语句相对应表示向量,将多个表示向量进行语句在整个输入文本中的重要性评分,再根据重要性得分以及表示向量相对应的目标语句,生成摘要文本,即提高了获取文本摘要的准确性。
[0070]
本实施例中通过将输入至预训练bart的目标语句先进行预设标志的插入,将多个连续的语句进行分割,更进一步加深了每一个语句的独特性,且在生成表示向量后,对表示向量的重要性进行评分,根据每一个表示向量的评分,将评分高的表示向量对应的目标语句进行结合,生成摘要文本,解决了现有技术中由于bart模型区分多个句子的能力不出众,而导致的摘要提取不精确的问题。
[0071]
参照图3,图3为本技术文本摘要生成方法第二实施例的流程示意图,基于上述图2所示的实施例,提出本发明文本摘要生成方法的第二实施例。
[0072]
在本实施例中,步骤s20,包括:
[0073]
s21:将第一预设标志插入至每一个语句中第一个字符之前;
[0074]
第一预设标志为标志[cls],用于分隔两个连续语句,放置于语句的第一个字符之前,例如,对于语句“sent one”,插入第一预设标志后为“[cls]sent one”。
[0075]
s22:将第二预设标志插入至每一个语句中最后一个字符之后,得到目标语句;
[0076]
第二预设标志为标志[sep],用于分隔两个连续语句,放置于语句的最后一个字符之前,例如,对于语句“sent one”,插入第一预设标志以及第二预设标志之后,得“[cls]sent one[sep]”。
[0077]
本实施例中,步骤s30,包括:
[0078]
s31:判断目标语句是否为第奇数个目标语句;
[0079]
s32:若是,则选择第一分段嵌入方式对目标语句进行词嵌入,得到多个表示向量;
[0080]
s33,若否,则选择第二分段嵌入方式对目标语句进行词嵌入,得到多个表示向量;
[0081]
将输入文本中顺序排第一的语句作为第一个语句,顺序排第二的语句作为第二个语句,其余语句以此类推,判断识别到的语句是第奇数个语句还是第偶数个语句,可以理解的是,segment embedding层只有两种向量表示,故若为第奇数个语句,选择第一嵌入方式,若为第偶数个语句,选择第二嵌入方式,例如,输入语句集合为[sent1,sent2,sent3,sent4],当判断当前语句为第奇数个,则选择分段嵌入向量ea,当前语句为第偶数个,则选择分段嵌入向量eb,故嵌入的向量为[ea,eb,ea,eb]。
[0082]
s34:将多个目标语句输入至预训练模型bart,得到预训练模型bart输出的多个表示向量和多个上下文信息向量;
[0083]
可通过transform模型或长短期记忆网络lstm获取上下文信息。
[0084]
若使用lstm获取句子的上下文信息,则将获取到的目标语句作为lstm的输入,在句子层面利用lstm抽取句子的上下文语义。
[0085]
若使用transform模型获取上下文信息,则使用transform中的attention机制,attention机制将4、将经过词嵌入的表示向量映射到三个新的子空间表示,q,k,v,根据以个目标向量q与每一个k的相似性,得到每个k的权重系数,再将权重系数与v加权求和得到每个向量的关联性数值,根据该关联性数值,得到上下文信息。
[0086]
预训练模型bart的嵌入层embedding,用于对输入语句进行词嵌入,将输入语句中的每一个词转换为表示向量,嵌入层分为token embedding、segment embedding以及position embedding。
[0087]
token embedding层是将输入文本中语句的各个词语转换为固定维度的向量,例如,“[cls]sent one[sep][cls]sent two[sep]”,生成向量e[cls],esent,eone,e[sep],e[cls],esent,etwo,e[sep]。
[0088]
segment embedding层是用于区分两个连续语句,这一层只有两种向量表示,前一个向量把向量ea赋给第一个句子的各个token,后一个向量把向量eb赋给第二个句子的各个token,例如,输入文本为“[cls]sent one[sep][cls]sent two[sep]”,则生成向量ea,ea,ea,ea,eb,eb,eb,eb。
[0089]
position embedding层用于表示向量的顺序,例如,输入文本为“[cls]sent one[sep][cls]sent two[sep]”,则生成向量e1,e2,e3,e4,e5,e6,e7,e8。
[0090]
将语句输入至嵌入层所生成的所有向量之和作为目标语句生成的表示向量,即将语句在token embedding层、segment embedding层以及position embedding层生成的所有向量之和,作为目标语句的表示向量。
[0091]
本实施例中,步骤s40,包括:
[0092]
s41:根据多个表示向量以及多个上下文信息向量,得到输入文本的整体信息;
[0093]
整体信息可表示整个输入文本的主题信息。
[0094]
s42:针对每个语句,将表示向量与整体信息进行关联度比对,得到关联度比对结果,并将关联度比对结果作为各个表示向量的重要性得分;
[0095]
关联度为表示向量对应的目标语句中整体信息的占比。
[0096]
可以理解是,本实施例采用的分类器对表示向量对应的目标语句中与整体信息关联度进行评分,分类器可为一下三种分类器之一:简单线性分类器(simple classifier)、句子间转换器加线性分类器(inter-sentence transformer)以及循环神经网络加线性分类器(recurrent neural network)。
[0097]
若采用简单线性分类器进行重要性评分,则使用sigmoid函数来获取预测得分,得分记为
[0098][0099]
其实中ti表示顶层bart第i个句子的[cls]标志所对应的向量,它将作为第i个句子的句子表示。
[0100]
若采用句子间转换器加线性分类器进行重要性评分,则将输入向量先经过转换器,
[0101][0102][0103]
其中h0是输入的句子向量t经过位置嵌入(position embedding)得到的,ln指的是层归一化操作,mhatt是转换器的多头注意力机制,l指的是对叠层的深度。
[0104]
输出层依旧为一个sigmoid分类器:
[0105][0106]
其中表示第i个句子在转换器顶层第l层的句子向量。
[0107]
若采用循环神经网络加线性分类器进行重要性评分,则采用长短期记忆网络(lstm)来捕获句子信息:
[0108][0109]ci
=σ(fi)
⊙ci-1
σ(ii)

tanh(g
i-1
)
[0110]hi
=σ(o
t
)

tanh(lnc(c
t
))
[0111]
其中ii,oi,fi分别对应的是lstm的输入门,输出门和遗忘门,gi指的是隐藏层向量,ci是记忆向量,hi是输出向量。它的最终输出层也是一层sigmoid分类器:
[0112][0113]
本实施例中,步骤s50,包括:
[0114]
s51:筛选出重要性得分大于或者等于预设阈值的表示向量对应的目标语句,得到筛选语句;
[0115]
可以理解的是,可将表示向量根据重要性得分大小进行排序,目的在于将重要性得分高的表示向量筛选出来,为后续筛选出重要性评分高的目标语句提供依据。
[0116]
本实施例中,设置一预设阈值,即黄金标签。可以理解的是,将每一个表示向量的重要性得分与预设阈值进行比较,筛选出重要性得分大于等于预设阈值的表示向量,其对应的语句作为筛选语句,例如,将黄金标签的数值设置为60分,获取到表示向量e1的重要性得分为90,表示向量e2的重要性得分为85,表示向量e3的重要性得分为20,表示向量e4的重要性得分为30,则根据重要性得分进行排序,得到第一为e1,第二为e2,第三为e4,第四为e3,表示向量e1表示的目标语句为sent1,表示向量e2表示的目标语句为sent2,表示向量e3表示的目标语句为sent3,表示向量e4表示的目标语句为sent4,则重要性得分大于等于60分的表示向量有e1和e2,则筛选语句为sent1和sent2。
[0117]
s52:根据所有筛选语句,生成摘要文本;
[0118]
将重要性得分大于等于预设阈值的目标语句进行结合,根据结合后的语句生成摘要文本,例如获取到的筛选语句为,“sent one”和“sent two”,结合后得到“sent one,sent two”。然后根据“sent one,sent two”,生成摘要文本。值得一提的是,本领域技术人员知晓如何根据提供的语句生成摘要文本,且本技术的关键在于关注输入文本中的各个语句的重要性,并在生成摘要文本时根据重要性剔除关联度较低的语句,而对于具体的摘要生成过程并无改进,因此,此处不再赘述如何根据筛选语句生成摘要文本。本实施例中,摘要文本仅仅基于与输入文本的整体信息关联度较高的语句生成,而在摘要生成过程中剔除与输入文本的整体信息关联度较高的语句,从而可以进一步提高生成摘要文本的准确性。
[0119]
本实施例通过将第一预设标志和第二预设标志分别插入至每个语句之前与之后,得到目标语句,再将目标语句输入至预训练模型bart的嵌入层,根据目标语句是否为第奇数个目标语句,决定分段嵌入的方式,得到能够表示目标语句的表示向量,再将表示向量输入至摘要层,摘要层使用分类器对各个表示向量进行重要性评分,即表示向量所表示的目标语句在输入文本中的重要性评分,得到各个表示向量的重要性得分,根据重要性得分将表示向量从高到低进行排序,将重要性得分大于等于预设阈值的表示向量对应的目标语句作为筛选语句,最后根据所有筛选语句,生成摘要文本。本实施例通过在预训练模型bart将输入文本转换为表示向量之后,对表示向量进一步进行重要性评分,能够判断出每一个目标语句在输入文本中的重要性,根据重要性得分筛选出重要性高的所有目标语句组合生成摘要文本,提高了文本摘要提取的准确性。
[0120]
参阅图4,图4为本技术提供的一种文本摘要生成装置的结构示意图,该装置具体包括:
[0121]
文本获取模块,用于获取输入文本;输入文本包括多个语句;
[0122]
标志插入模块,用于将多个预设标志分别插入至多个语句中,得到多个目标语句;
[0123]
向量生成模块,用于将多个目标语句输入至预训练模型bart,得到预训练模型bart输出的多个表示向量;
[0124]
评分模块,用于根据多个表示向量,得到各个表示向量的重要性得分;
[0125]
摘要生成模块,用于根据重要性得分与目标语句,生成摘要文本。
[0126]
本实施例的技术方案,通过各个功能模块间的相互配合,实现了通过获取输入文本中的多个语句,在多个语句中插入预设标志,得到多个目标语句,在将多个目标语句输入至bart模型,得到多个与目标语句相对应表示向量,将多个表示向量进行重要性评分,再根据重要性得分以及表示向量相对应的目标语句,生成摘要文本,以提高了获取文本摘要的准确性。
[0127]
此外,本技术实施例还提出一种计算机存储介质,存储介质上存储有文本摘要生成程序,文本摘要生成程序被处理器执行时实现如上文的文本摘要生成方法的步骤。因此,这里将不再进行赘述。另外,对采用相同方法的有益效果描述,也不再进行赘述。对于本技术所涉及的计算机可读存储介质实施例中未披露的技术细节,请参照本技术方法实施例的描述。确定为示例,程序指令可被部署为在一个计算设备上执行,或者在位于一个地点的多个计算设备上执行,又或者,在分布在多个地点且通过通信网络互连的多个计算设备上执行。
[0128]
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,上述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,上述的存储介质可为磁碟、光盘、只读存储记忆体(read-only memory,rom)或随机存储记忆体(random accessmemory,ram)等。
[0129]
另外需说明的是,以上所描述的装置实施例仅仅是示意性的,其中作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。另外,本技术提供的装置实施例附图中,模块之间的连接关系表示它们之间具有通信连接,具体可以实现为一条或多条通信总线或信号线。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
[0130]
通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到本技术可借助软件加必需的通用硬件的方式来实现,当然也可以通过专用硬件包括专用集成电路、专用cpu、专用存储器、专用元器件等来实现。一般情况下,凡由计算机程序完成的功能都可以很容易地用相应的硬件来实现,而且,用来实现同一功能的具体硬件结构也可以是多种多样的,例如模拟电路、数字电路或专用电路等。但是,对本技术而言更多情况下软件程序实现是更佳的实施方式。基于这样的理解,本技术的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在可读取的存储介质中,如计算机的软盘、u盘、移动硬盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、磁碟或者光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本技术各个实施例的方法。
[0131]
以上仅为本技术的优选实施例,并非因此限制本技术的专利范围,凡是利用本申
请说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本技术的专利保护范围内。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献