CN112417854A - 中文文档抽取式摘要方法 - Google Patents
中文文档抽取式摘要方法 Download PDFInfo
- Publication number
- CN112417854A CN112417854A CN202011470330.9A CN202011470330A CN112417854A CN 112417854 A CN112417854 A CN 112417854A CN 202011470330 A CN202011470330 A CN 202011470330A CN 112417854 A CN112417854 A CN 112417854A
- Authority
- CN
- China
- Prior art keywords
- text
- sentence
- abstract
- extraction
- chinese
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 72
- 238000000605 extraction Methods 0.000 claims abstract description 70
- 238000013528 artificial neural network Methods 0.000 claims abstract description 23
- 230000011218 segmentation Effects 0.000 claims abstract description 23
- 238000007781 pre-processing Methods 0.000 claims abstract description 11
- 238000003780 insertion Methods 0.000 claims abstract description 4
- 230000037431 insertion Effects 0.000 claims abstract description 4
- 239000013598 vector Substances 0.000 claims description 20
- 230000007246 mechanism Effects 0.000 claims description 8
- 238000004364 calculation method Methods 0.000 claims description 7
- 238000010606 normalization Methods 0.000 claims description 6
- 238000004590 computer program Methods 0.000 claims description 4
- 230000000873 masking effect Effects 0.000 claims description 4
- 230000004931 aggregating effect Effects 0.000 claims description 3
- 230000009466 transformation Effects 0.000 claims description 3
- 238000002474 experimental method Methods 0.000 description 30
- 238000012549 training Methods 0.000 description 15
- 230000000694 effects Effects 0.000 description 10
- 238000011156 evaluation Methods 0.000 description 8
- 238000013135 deep learning Methods 0.000 description 7
- 238000010801 machine learning Methods 0.000 description 7
- 238000003058 natural language processing Methods 0.000 description 7
- 230000000052 comparative effect Effects 0.000 description 6
- 238000010586 diagram Methods 0.000 description 6
- 230000006870 function Effects 0.000 description 6
- 238000004422 calculation algorithm Methods 0.000 description 5
- 238000011160 research Methods 0.000 description 5
- 238000011161 development Methods 0.000 description 4
- 230000018109 developmental process Effects 0.000 description 4
- 230000008569 process Effects 0.000 description 4
- JEIPFZHSYJVQDO-UHFFFAOYSA-N iron(III) oxide Inorganic materials O=[Fe]O[Fe]=O JEIPFZHSYJVQDO-UHFFFAOYSA-N 0.000 description 3
- 230000002787 reinforcement Effects 0.000 description 3
- 238000012216 screening Methods 0.000 description 3
- 238000007619 statistical method Methods 0.000 description 3
- 230000009286 beneficial effect Effects 0.000 description 2
- 230000002457 bidirectional effect Effects 0.000 description 2
- 238000010276 construction Methods 0.000 description 2
- 230000007547 defect Effects 0.000 description 2
- 238000003062 neural network model Methods 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 235000016068 Berberis vulgaris Nutrition 0.000 description 1
- 241000335053 Beta vulgaris Species 0.000 description 1
- 241000590419 Polygonia interrogationis Species 0.000 description 1
- 230000004913 activation Effects 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 239000000969 carrier Substances 0.000 description 1
- 230000007812 deficiency Effects 0.000 description 1
- 238000003745 diagnosis Methods 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 239000003292 glue Substances 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 230000000306 recurrent effect Effects 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/258—Heading extraction; Automatic titling; Numbering
-
- 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
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/044—Recurrent networks, e.g. Hopfield networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Computational Linguistics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Biomedical Technology (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Evolutionary Computation (AREA)
- Data Mining & Analysis (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Biophysics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Machine Translation (AREA)
Abstract
本申请公开了一种中文文档抽取式摘要方法,包括:文本向量化;识别基本篇章单元;抽取摘要句,所述文本向量化,包括:对输入文本进行分句、分词、标识符插入操作,使用中文Bert预处理模型,对文本进行向量化。本申请实施例提供的中文文档抽取式摘要方法,利用Bert模型进行文本向量化,更好地捕捉长文本上下文的语义,提升信息抽取的准确性;在识别中文长文本的基本篇章单元的基础上,以基本篇章单元为抽取对象,降低摘要抽取的冗余度;最后利用Transformer神经网络抽取模型,实现基本篇章单元的抽取,提升了摘要句抽取的准确率。
Description
技术领域
本申请涉及文本处理技术领域,具体涉及一种中文文档抽取式摘要方法。
背景技术
随着互联网的快速发展,面对大量的文本信息,如新闻,文献,报告等,传统的阅读方式,需要人们自己阅读全篇,总结核心内容,效率低,成本高,如何快速、准确的获取长文本的概括主旨摘要是一个急需解决的问题。文本摘要在自然语言处理领域是最重要的研究工作之一,并随着深度学习的兴起成为研究热点,而中文长文本的摘要抽取面临更大的挑战,存在长文本-摘要语料库不足,摘要抽取信息不准确、目标摘要冗余、摘要句缺失等问题。
文本摘要方法可以分为提取式摘要和生成式摘要。提取式摘要方法包括根据单词和句子的特征从文档中选择高等级的句子,并将它们放在一起以生成摘要,句子的重要性取决于句子的统计和语言特征。生成式摘要用于理解给定文档中的主要概念,然后以清晰自然的语言表达这些概念。抽取式摘要和生成式摘要具有各自的优缺点。
抽取式摘要可以最大化地保证摘要内容来自于原文,抽取式摘要的任务对象非常适合科技文献,法律文书,医疗诊断书等文本载体,可以提高摘要内容的正确性,避免生成不准确甚至是错误的信息。然而,抽取式摘要也有较大的缺陷,抽取式摘要的对象是文本中的句子,当要抽取的数值确定时,会有正确的摘要句未被抽取,造成摘要内容的缺失,而被抽取的摘要内容也会有很大冗余。由于中文表达规则的宽泛性问题,一个句子所表达的内容并非都是重要的,并非都可以作为摘要组成部分的,以句子为单位的抽取模式摘要存在的冗余性问题较为严重,在一个句子中,可能只有部分内容应当被抽取,其他部分并不符合作为摘要。除了抽取式摘要本身的缺陷,在中文长文本抽取式摘要研究方面面临更大的挑战,当前公开主流语料库文本和摘要长度不足,大多都是短文本,而中文长文本-摘要语料库数量不足。
发明内容
本申请的目的是提供一种中文文档抽取式摘要方法。为了对披露的实施例的一些方面有一个基本的理解,下面给出了简单的概括。该概括部分不是泛泛评述,也不是要确定关键/重要组成元素或描绘这些实施例的保护范围。其唯一目的是用简单的形式呈现一些概念,以此作为后面的详细说明的序言。
根据本申请实施例的一个方面,提供一种中文文档抽取式摘要方法,包括:
文本向量化;
识别基本篇章单元;
抽取摘要句。
进一步地,所述文本向量化,包括:对输入文本进行分句、分词、标识符插入操作,使用中文Bert预处理模型,对文本进行向量化。
进一步地,所述文本向量化,包括:
对于一篇有i个句子的文本将输入文本通过两个特殊标记进行预处理,对每个句子之前插入一个[CLS]标识,在Bert中[CLS]用来从一个句子或一对句子中聚合特征,在每个句子后面插入一个[SEP]标识,通过[CLS]标识和[SEP]标识表示一篇文本的顺序特征,对文本进行分词预处理,采用StanfordNLP工具包对文本进行分词;
定义Vt为文本的字符嵌入,通过Bert预处理模型进行编码,对每个字符进行嵌入;
定义Vs为文本的区间嵌入,使用区间嵌入来区分文本中的多个句子,当句子编号i为奇数时,将句子Si定义为EA,与之对应,当句子编号i为偶数时,句子Si定义为EB;
通过[CLS]和[SEP]来区分每个句子的位置,每个句子向量表示为Ti=[Vt Vs Vp],i∈D,完成文本的向量化。
进一步地,所述识别基本篇章单元,包括:
对于输入文本,使用Berkeley NLP工具,以中文整句标点为界限,对文本进行分句,得到文本整句;
根据逗号从句原则,对整句进一步分句,以逗号为界限,得到整句的字句,同时,对每个字句区分左右,并标记为左从句和右从句;
对得到的子句,使用Jieba分词工具对每个子句进行分词;
对分词后的字句,使用Jieba词性识别工具,对每个词进行词性识别;
根据从句分割规则,利用基本篇章单元识别规则库对子句进行识别,得到一个句子的基本篇章单元。
进一步地,所述抽取摘要句,包括:
提出一个基于Transformer的神经网络抽取模型,对基本篇章单元进行抽取,最终生成摘要;
所述神经网络抽取模型包括三层叠加的Transformer,每个Transformer是一种全Attention机制的Seq2Seq模型,由Encoder和Decoder组成,Transformer是由6个编码器和6个解码器组成。
进一步地,所述抽取摘要句,还包括:使用公式(1)对输入文本Ti进行PositionalEncodings,
Pi=PE(Ti) (1)
对于编码器的输入向量Xi,公式(2)将Inputs Encodings和PositionalEncodings组成编码器的输入向量,
Xi=[Ti,Pi] (2)
初始化三个矩阵Wq,Wk,Wv,使用公式(3)分别和Xi相乘,得到Q,W,V,
Q=Xi×Wq (3)
对当前输入状态使用公式(4)计算Attention,
使用多头注意力机制进一步计算,Multi-Head Attention则是通过公式(5)、(6)对h个不同的线性变换对Q,K,V进行投影,最后将不同的Attention结果拼接起来;
MultiHead(Q,K,V)=Concat(head1,K,headh)WOr (6)
接着对Multi-Head的输出Z进行一次相加归一化计算,再经过一个前馈网络,对输出Z通过公式(7)计算,
FFN(Z)=max(0,ZW1+b1)W2+b2 (7)
最后再进行一次相加归一化计算,整个Encoder层完成。
进一步地,所述抽取摘要句,还包括:Decoder层结构和Encoder层相同,只是在最前面一层加上Masked Multi-Head Attention,对于Decoder中的第一个多头注意力子层,添加Masking,确保预测位置i的时候仅仅依赖于位置小于i的输出,确保预测第i个位置时不会接触到未来的信息;
在Decoder结束后,使用一个线性层做输出,通过公式(8)做分类,判断当前输入文本是否应该被抽取;
其中,1代表抽取,0代表不抽取。
根据本申请实施例的另一个方面,提供一种电子设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述程序,以实现上述的方法。
根据本申请实施例的另一个方面,提供一种非临时性计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行,以实现上述的方法。
本申请实施例的其中一个方面提供的技术方案可以包括以下有益效果:
本申请实施例提供的中文文档抽取式摘要方法,利用Bert模型进行文本向量化,更好地捕捉长文本上下文的语义,提升信息抽取的准确性;在识别中文长文本的基本篇章单元的基础上,以基本篇章单元为抽取对象,降低摘要抽取的冗余度;最后利用Transformer神经网络抽取模型,实现基本篇章单元的抽取,提升了摘要句抽取的准确率。
本申请的其他特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者,部分特征和优点可以从说明书中推知或毫无疑义地确定,或者通过实施本申请实施例了解。本申请的目的和其他优点可通过在所写的说明书、权利要求书、以及附图中所特别指出的结构来实现和获得。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1示出了本申请的一个实施例的BETES方法的整体框架图;
图2示出了本申请的一个实施例的文本向量生成模型示意图;
图3示出了本申请的一个实施例的基本篇章单元的快速识别模型示意图;
图4示出了本申请的一个实施例的抽取模型示意图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,下面结合附图和具体实施例对本申请做进一步说明。应当理解,此处所描述的具体实施例仅用以解释本申请,并不用于限定本申请。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本技术领域技术人员可以理解,除非另外定义,这里使用的所有术语(包括技术术语和科学术语),具有与本申请所属领域中的普通技术人员的一般理解相同的意义。还应该理解的是,诸如通用字典中定义的那些术语,应该被理解为具有与现有技术的上下文中的意义一致的意义,并且除非像这里一样被特定定义,否则不会用理想化或过于正式的含义来解释。
本申请的一个实施例提供了一种中文文档抽取式摘要方法,中文文档抽取式摘要方法可以简称为BETES。
文本向量化是自然语言处理任务极其重要的工作,计算机无法对文本直接读取,向量化是将高维文本进行数字化,编码成低维向量。文本早期的向量化方法是基于统计的方法,例如One-hot编码、TF-IDF、N-Gram,这些早期的编码方式,代价成本高,特征表示是离散的,稀疏的,向量的维数过高,且不能表示一词多义。为了提高模型的精度,降低成本,谷歌在2013年提出了Word2Vec,它是目前最常用的词嵌入模型之一。
除了Word2Vec,GloVe也是一种常见的词向量模型,GloVe可以被看作是更换了目标函数和权重函数的全局Word2Vec,它更容易并行化,速度更快,容易在大规模语料上训练。
虽然Word2Vec和GloVe效果很好,但是无法针对特定任务做动态优化,对于长文本很难获取上下文特征,Bert预训练模型的出现,可以很好的解决这个问题,更加高效地捕捉更长距离的依赖,可以更好的进行上下文表示,因此,利用Bert进行文本向量化可以更好地捕捉文本的语义,进而应用在下游任务中具有更好的效果。
基本篇章单元识别
对于基本篇章单元,国内外很多学者给出了自己的定义,不同的理论看法并不完全相同,而汉语在语法和表达上更为复杂和丰富,当前并未完全定义出汉语的基本篇章单元表达方式,定义是,基本篇章单元可以称为句子的字句,通常是以逗号、分号、句号等标点结尾,每一个字句至少有一个谓语,表达一个命题,并且是独立的,不作为其他字句的结构,字句之间发生命题关系。
语篇分析中的基本篇章单元的识别是自然语言处理中一个基础且重要的研究方向,基本篇章单元的识别大致分为两种方法,第一种是通过自然语言学的知识,分析篇章和句式结构,确定基本篇章单元的表达形式,通过制定规则进而识别。另外,为了进一步提高识别的准确性,目前主流的方法,是通过标注汉语篇章话题结构语料库(CDTC)语料库,通过深度学习训练自动识别模型,虽然提高了识别准确度,但是,需要标注大量的语料库,人力和时间成本较大,不利于在其他领域直接灵活使用。
抽取式摘要方法
随着机器学习,深度学习等有监督的方法的发展,有监督的方法在摘要生成方面应用越来越多,有监督的方法大致可以分为三种,基于条件随机场方法、机器学习方法、神经网络方法。机器学习方法应用在摘要抽取工作上,可以根据语料库的特点,自动学到抽取特征,摘要句抽取更准确,任务细化更具体,但是,机器学习也有它自身的缺点,当数据量较大时,机器学习算法效率较低,当数据多样化时,抽取方法的灵活性低,无法根据复杂的数据,形成更好的抽取方法。
近几年,神经网络的深度学习方法已经成为文本摘要的主流方法,伴随着神经网络的发展,摘要生成的方法也在快速更新迭代。目前,随着神经网络的快速发展,自然语言处理工作应该紧密跟随最新的神经网络,通过最新的神经网络,在特定任务上以达到更好的效果。
中文长文档抽取式摘要方法(BETES)
针对中文长文本的摘要抽取中存在的问题,为了提高摘要句抽取的准确性,降低抽取摘要的冗余,提出了一种BETES方法,该方法主要有三部分组成:
文本向量化部分:对输入文本进行预处理,进行分句、分词、标识符插入等操作,使用中文Bert预处理模型,对文本进行向量化。
基本篇章识别部分:设计一个基于规则的基本篇章单元识别模型,针对中文科技文献长文本,可以实现自动识别基本篇章单元。
摘要抽取模型:设计一个基于Transformer的神经网络抽取模型,可以将上述生成的基本篇章单元自动抽取,然后对抽取后的基本篇章单元进行融合,生成最终的摘要。BETES方法的整体框架如图1所示。
一、文本向量生成模型
对于中文长文本数据,根据Bert预训练模型的思想,需要进行三部分编码,即词嵌入,区间段嵌入,位置嵌入,将三部分的文本编码相加,最终得到整个篇章中的句子编码,结构图如图2所示。
对于一篇文本有i个句子,首先,将输入文本通过两个特殊标记进行预处理,对每个句子之前插入一个[CLS]标识,在原始Bert中[CLS]用来从一个句子或一对句子中聚合特征,在每个句子后面插入一个[SEP]标识,通过多个这样的标识,可以表示一篇文本的顺序特征,然后对文本进行分词预处理,采用StanfordNLP工具包对文本进行分词。通过三部分的工作完成中文长文本的向量化表示:
1)首先定义Vt为文本的字符嵌入,通过Bert预处理模型进行编码,对每个字符进行嵌入;
2)定义Vs为文本的区间嵌入,使用区间嵌入来区分文本中的多个句子,当句子编号i为奇数时,将句子Si定义为EA,与之对应,当句子编号i为偶数时,句子Si定义为EB;
最后,通过[CLS]和[SEP]来区分每个句子的位置,每个句子向量表示为Ti=[Vt VsVp],i∈D,这样就完成了文本的向量化工作。
二、基本篇章单元识别模型
当前对于文本基本篇章单元的识别,是通过标注语料库,训练深度学习识别模型,使用模型识别基本篇章单元。基于深度学习的方法虽然会提高识别的准确率,但会消耗大量的人力和时间成本。经过综合考虑,本申请实施例的对象是中文长文本科技文献,在语言描述和句式句法上相对比较固定,的目的是快速获取文本的基本篇章单元,灵活地整合到整个摘要抽取框架中,因此,针对当前工作的实际需求,提出一个基本篇章单元的快速识别模型,流程图如3所示。
基本篇章单元的算法流程如下:
算法1中文长文本Edus识别
中文长文本基本篇章单元识别算法流程如下:
1)对于输入文本,使用Berkeley NLP工具,以中文常见的整句标点为界限,如句号,问号,感叹号等,对文本进行分句,得到文本整句。
2)根据逗号从句原则,对整句进一步分句,以逗号为界限,得到整句的字句,同时,对每个字句区分左右,并标记为左从句和右从句。
3)对得到的子句,使用Jieba分词工具对每个子句进行分词。
4)对分词后的字句,使用Jieba词性识别工具,对每个词进行词性识别。
5)以逗号为标志点分割的字句,并不是都可以作为基本篇章单元,因此,需要规则进行判定,针对中文科技文献的句式表达,根据从句分割规则,制定了一个基本篇章单元识别规则库(部分规则如表1所示),对子句进行识别,最终得到一个句子的基本篇章单元。
表1 基本篇章单元识别规则
三、摘要句抽取模型
抽取式摘要的工作,通常被认为是对原始文本的句子进行分数排名,选取分数排名最高的句子组合,作为最终的摘要,上述的工作的对象是更细粒度的基本篇章单元的抽取,因此的模型是抽取分数排名较高的基本篇章单元,这在原理和方法上与摘要句的抽取是相通的。
对于文本的摘要句进行抽取,主流方法是深度学习方法,通过训练神经网络模型对句子自动抽取。当前常见的方法,无论是LSTM还是GRU,大多还是以循环神经网络作为基线。在机器翻译领域,Transformer神经网络的优越性已经得到充分的验证,针对英文数据集,基于Transformer的神经网络也用于文本摘要任务中,效果提升明显。因此,对于中文长文本,提出一个基于Transformer的神经网络抽取模型,对上述生成的基本篇章单元进行抽取,最终生成摘要。
本申请实施例的抽取模型是三层Transformer叠加,每个Transformer是一种全Attention(注意力)机制的Seq2Seq模型,它的结构是由Encoder(编码器)和Decoder(解码器)组成,下面将介绍如何使用Transformer实现基本篇章单元的抽取模型,结构图如图4所示。
Transformer是由6个编码器和6个解码器组成,其中Encoder结构图如图4左边所示,输入对象是一个长文本,因此,使用公式(1)对输入文本Ti进行Positional Encodings(位置编码),
Pi=PE(Ti) (1)
对于编码器的输入向量Xi,公式(2)将Inputs Encodings(输入编码)和Positional Encodings组成编码器的输入向量,
Xi=[Ti,Pi] (2)
初始化三个矩阵Wq,Wk,Wv,使用公式(3)分别和Xi相乘,得到Q,W,V,
Q=Xi×Wq (3)
对当前输入状态使用公式4,计算Attention,
使用多头注意力机制进一步计算,Multi-Head Attention(多头注意力)则是通过公式(5)、(6)对h个不同的线性变换对Q,K,V进行投影,最后将不同的Attention结果拼接起来。
MultiHead(Q,K,V)=Concat(head1,K,headh)WO r (6)
接着对Multi-Head的输出Z进行一次相加归一化计算,再经过一个前馈网络,对输出Z通过公式(7)计算,
FFN(Z)=max(0,ZW1+b1)W2+b2 (7)
最后再进行一次相加归一化计算,这样整个Encoder层就完成了。
对于Decoder层,如图4右边所示,结构和Encoder层相同,只是在最前面一层加上Masked Multi-Head Attention(多头注意力机制),对于Decoder中的第一个多头注意力子层,需要添加Masking(掩饰层),确保预测位置i的时候仅仅依赖于位置小于i的输出,确保预测第i个位置时不会接触到未来的信息。feed-forward是前馈。
在Decoder结束后,使用一个线性层做输出,通过公式(8)做分类,判断当前输入文本是否应该被抽取。
其中,1代表抽取,0代表不抽取。
本申请的另一个实施例中进行了实验。针对中文长文本,首先建立了一个中文长文本-摘要数据集,对于实验的设置,在三个维度上,设置了九组对比实验,证明了提出的BETES方法的有效性,在评测指标上,选择ROUGE评测指标。
数据集
在中文文本自动摘要领域,文本-摘要数据集比较少,目前主流的数据集有两个,分别是哈工大LCSTS新浪微博短文本新闻摘要数据集和NLPCC(2015、2017、2018)中文新闻摘要数据集,除了上述主流的公开语料库外,还有一些其他语料库,例如,教育新闻自动摘要语料库、娱乐新闻文本摘要语料库、中文科学文献数据集(CSL)等。然而,在这些常见语料库中,原文本和生成的摘要长度都较短,表2是对三个语料库的数据长度统计分析。
表2 语料库长度统计
数据集 | 文本平均长度 | 摘要长度 |
LCSTS | 112 | 14 |
NLPCC2017 | 1036 | 45 |
CSL | 235 | 20 |
由上表可以看出,当前主流的文本摘要数据集,文本和摘要的长度都很短,即使是NLPCC的数据集,长度只能是中篇文本,中文长文本摘要数据集目前处于缺失状态,符合一定长度要求的文本比较难获取,手动构建过程比较困难,会消耗大量人力和物力。针对中文长文本摘要语料库的不足的情况,构建了一个的中文长文本-摘要数据集,数据集的构建过程如下。
首先,在人工智能领域,选取了十个方向,数据来源为知网和万方文献网站,通过手动和自动相结合方法,获得中文长文科技文献,进而对文献构建摘要。
构建科技文献的摘要,摘要句的表达有着特定的表达方式,使用温浩[24]总结出的科技文献创新点语句的表达方式,提取出能够构建摘要的句子,同时将文献的原始摘要作为参考,将提取出来的句子和原始摘要进行筛选组合,并辅以人工过滤筛选,构建科技文献的摘要。
构建的中文长文本-摘要数据集,经过筛选和处理,有3208篇科技文献,经过统计分析,数据集的文本平均长度为3802,摘要平均长度为145。本申请实施例使用的语料库公开在以下网址。
https://drive.google.com/file/d/1tfml9zC37WoTRfaNL6efjrrmcRbMizmq
对比实验
通过上述介绍的方法,在三个维度上进行对比实验,首先是文本向量化方法上的对比,其次是应用基本篇章单元方法的对比,最后是模型方法上的对比。
文本向量化实验:选择当前主流的中文文本向量化的方式,Word2Vec和GloVe词向量模型,来验证本申请实施例提出的文本向量化的有效性,Word2Vec和GloVe都采用中文维基百科的预训练模型,词向量设置为300维,对比实验采用BERT-Base-Chinese中文预训练模型。在抽取模型选择上,为了节省训练成本,只选取了简单的线性分类器进行训练,通过二元分类,进而抽取摘要句。
抽取模型对比实验:在模型的对比实验上,本申请实施例选择主流的摘要抽取模型方法,设置了四组对比实验,分别是:
1)强化学习抽取模型,使用Narayan[25]等提出的一种新颖的抽取方法,首先使用Glove对文本向量化表示,然后将句子选取概念化为对句子打分,通过强化学习目标来全局优化ROUGE评估指标,选取分数最高的句子。
2)双向LSTM神经网络抽取模型,以Bi-LSTM作为神经网络进行抽取模型训练也是当前主流的一种抽取式摘要的方法,使用Xiao[26]在论文中提出的Bi-LSTM摘要句抽取方法,使用Glove进行文本向量化,Bi-LSTM搭建神经网络进行训练,对文本进行摘要句的抽取。
3)Bi-LSTM+Attention抽取模型,在实验3的基础上,保持文本向量化相同,同时在LSTM的基础上加入Attention机制,这是当前在NLP领域比较常见的神经网络模型。
4)BETES模型方法是采用Bert进行文本向量化,使用Beet+Transformer抽取模型,为了实验的严谨性,排除Bert文本向量化带来的影响,仅对比在模型上的差距,使用Bert+Bi-LSTM,对原文Glove文本向量化替换为Bert文本向量化,这样就保证了在同一维度上的公平性。
基本篇章单元对比实验:除了上述文本向量化的对比实验,为了验证本申请实施例提出的BETES方法,以基本篇章单元作为更细粒度的抽取对象,在抽取式摘要任务中的有效性。在实验4的基础上,采用Bert进行文本向量化表示,通过基本篇章单元识别算法,获取文本的基本篇章单元,采用基于Transformer的神经网络抽取模型,以验证文本提出的BETES方法的最终效果。
实验过程
实验均在PyTorch 1.4.0环境上,采用4块TeslaV100 GPU并行训练,对比实验的方法详细介绍如下。
对比实验1中,采用简单的机器学习方法,只设置一个线性分类器,选择SoftMax分类器,在文本向量化之后,通过分类对句子进行分类,识别是否可以被选择为摘要句。
对比实验2中,由于原文数据集是英文,在文本向量化上,统一使用Glove词向量模型,词向量设置为200维,批次大小为20,每一批次训练20轮,学习率为0.001,损失函数采用文中提出的基于强化学习的损失函数。
对比实验3中,采用双向LSTM,其中,LSTM中隐藏单元数为300,每次训练数据的批次大小为128,学习率为0.0001,采用二元交叉熵损失函数,每个批次经过50轮的训练,多层感知机的最后一层为100维,最后通过1维线性层,计算句子被抽取的最大概率。
对比实验4中,Bert模型中dropout为0.1,隐藏层单元数为768,隐藏层数为12,采用glue激活函数,神经网络为两层transformer,学习率为0.002,经过10000步的训练,在最后一层为1维线性层,得出句子被抽取的概率。
在基本篇章单元对比实验中,实验过程在对比实验4的基础上,在得到文本向量化之后,通过本申请实施例提出的基本篇章单元识别方法,自动识别基本篇章单元,然后作为输入,利用Bert+Transformer的抽取方法进行训练,最终实现基本篇章单元的抽取。
实验结果及评测
本实施例的评测指标,使用ROUGE作为本申请实施例实验结果的评测指标,ROUGE是一种准对摘要生成任务的一种评测方法,现在已经成为应用最广泛的评测指标,分别计算ROUGE-1,ROUGE-2和ROUGE-L的F1值,来评测各个对比实验的结果,实验的结果如表3所示:
表3 实验结果
通过实验结果看出,在文本向量化模型的选择上,在保证抽取方法一致性的情况下,Word2Vec和GloVe词向量模型效果产局很小,而使用Bert进行文本向量化的效果,会比使用Word2Vec和GloVe词向量模型有着明显的提高。在摘要句的抽取模型上,排除文本向量化的影响,使用Bert+Transformer作为摘要抽取模型,效果会优于当前主流的摘要抽取模型。最后一个对比实验,在确定最优的抽取模型后,使用基本篇章单元作为更细粒度的抽取对象时,摘要句的抽取效果会进一步提高,因此,证明了所提出的BETES方法的有效性。
使用对比实验中得出的最优抽取模型Bert+Transformer对中文科技文献做抽取。同时,使用本申请实施例BETES方法作对比,实例对比结果如表5所示:
表5 实例对比结果
通过表6可以看出,在使用了最好的抽取模型Bert+Transformer对长文档进行摘要句抽取时,模型可以抽取句子数量是固定的,当数值较大时,会造成摘要的冗余,增大了模型的训练量,当数值较小时,可能未抽取到需要的句子,造成摘要句的缺失,影响最终摘要的准确性。而BETES方法以基本篇章单元作为更细粒度的抽取对象,在抽取句子过程中,很多多余信息,不必要抽取,对基本篇章单元进行抽取,可以降低抽取的摘要的冗余度,实现对更多信息进行抽取,避免了最终摘要信息缺失,最终,证明了本申请实施例方法的有效性。
本申请的实施例以中文长文本的摘要抽取为研究对象,提出一种BETES方法,基于规则和人工辅助筛选构建中文长文本-摘要语料库;利用Bert预处理模型进行文本向量化,更好地捕捉长文本上下文的语义,提升信息抽取的准确性;在识别中文长文本的基本篇章单元的基础上,以基本篇章单元为抽取对象,降低摘要抽取的冗余度;最后利用Transformer神经网络抽取模型,实现基本篇章单元的抽取,提升摘要句抽取的准确率。提出的BETES方法在中文长文本的抽取式摘要过程中提高了准确性,降低了冗余度,并且ROUGE分数优于主流的摘要抽取方法。
以上所述实施例仅表达了本申请的实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请的保护范围应以所附权利要求为准。
Claims (9)
1.一种中文文档抽取式摘要方法,其特征在于,包括:
文本向量化;
识别基本篇章单元;
抽取摘要句。
2.根据权利要求1所述的方法,其特征在于,所述文本向量化,包括:对输入文本进行分句、分词、标识符插入操作,使用中文Bert预处理模型,对文本进行向量化。
3.根据权利要求1所述的方法,其特征在于,所述文本向量化,包括:对于一篇有i个句子的文本D={S1,S2,L,Si},i∈D,将输入文本通过两个特殊标记进行预处理,对每个句子之前插入一个[CLS]标识,在Bert中[CLS]用来从一个句子或一对句子中聚合特征,在每个句子后面插入一个[SEP]标识,通过[CLS]标识和[SEP]标识表示一篇文本的顺序特征,对文本进行分词预处理,采用StanfordNLP工具包对文本进行分词;
定义Vt为文本的字符嵌入,通过Bert预处理模型进行编码,对每个字符进行嵌入;
定义Vs为文本的区间嵌入,使用区间嵌入来区分文本中的多个句子,当句子编号i为奇数时,将句子Si定义为EA,与之对应,当句子编号i为偶数时,句子Si定义为EB;
定义Vp为文本的位置嵌入,对分词后的文本,共有n个字符,定义[E1,E2,L,En]表示每个字符的顺序;
通过[CLS]和[SEP]来区分每个句子的位置,每个句子向量表示为Ti=[Vt Vs Vp],i∈D,完成文本的向量化。
4.根据权利要求1所述的方法,其特征在于,所述识别基本篇章单元,包括:
对于输入文本,使用Berkeley NLP工具,以中文整句标点为界限,对文本进行分句,得到文本整句;
根据逗号从句原则,对整句进一步分句,以逗号为界限,得到整句的字句,同时,对每个字句区分左右,并标记为左从句和右从句;
对得到的子句,使用Jieba分词工具对每个子句进行分词;
对分词后的字句,使用Jieba词性识别工具,对每个词进行词性识别;
根据从句分割规则,利用基本篇章单元识别规则库对子句进行识别,得到一个句子的基本篇章单元。
5.根据权利要求1所述的方法,其特征在于,所述抽取摘要句,包括:
提出一个基于Transformer的神经网络抽取模型,对基本篇章单元进行抽取,最终生成摘要;
所述神经网络抽取模型包括三层叠加的Transformer,每个Transformer是一种全Attention机制的Seq2Seq模型,由Encoder和Decoder组成,Transformer是由6个编码器和6个解码器组成。
6.根据权利要求5所述的方法,其特征在于,所述抽取摘要句,还包括:使用公式(1)对输入文本Ti进行Positional Encodings,
Pi=PE(Ti) (1)
对于编码器的输入向量Xi,公式(2)将Inputs Encodings和Positional Encodings组成编码器的输入向量,
Xi=[Ti,Pi] (2)
初始化三个矩阵Wq,Wk,Wv,使用公式(3)分别和Xi相乘,得到Q,W,V,
Q=Xi×Wq (3)
对当前输入状态使用公式(4)计算Attention,
使用多头注意力机制进一步计算,Multi-Head Attention则是通过公式(5)、(6)对h个不同的线性变换对Q,K,V进行投影,最后将不同的Attention结果拼接起来;
headi=Attention(QWi Q,KWi K,VWi V) (5)
MultiHead(Q,K,V)=Concat(head1,K,headh)WOr (6)
接着对Multi-Head的输出Z进行一次相加归一化计算,再经过一个前馈网络,对输出Z通过公式(7)计算,
FFN(Z)=max(0,ZW1+b1)W2+b2 (7)
最后再进行一次相加归一化计算,整个Encoder层完成。
8.一种电子设备,其特征在于,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述程序,以实现如权利要求1-7中任一所述的方法。
9.一种非临时性计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行,以实现如权利要求1-7中任一所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011470330.9A CN112417854A (zh) | 2020-12-15 | 2020-12-15 | 中文文档抽取式摘要方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011470330.9A CN112417854A (zh) | 2020-12-15 | 2020-12-15 | 中文文档抽取式摘要方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112417854A true CN112417854A (zh) | 2021-02-26 |
Family
ID=74776594
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011470330.9A Pending CN112417854A (zh) | 2020-12-15 | 2020-12-15 | 中文文档抽取式摘要方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112417854A (zh) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112711662A (zh) * | 2021-03-29 | 2021-04-27 | 贝壳找房(北京)科技有限公司 | 文本获取方法和装置、可读存储介质、电子设备 |
CN112883722A (zh) * | 2021-03-04 | 2021-06-01 | 中山大学 | 一种基于云数据中心分布式文本摘要方法 |
CN112906385A (zh) * | 2021-05-06 | 2021-06-04 | 平安科技(深圳)有限公司 | 文本摘要生成方法、计算机设备及存储介质 |
CN113076127A (zh) * | 2021-04-25 | 2021-07-06 | 南京大学 | 编程环境下问答内容的提取方法、系统、电子设备及介质 |
CN113434642A (zh) * | 2021-08-27 | 2021-09-24 | 广州云趣信息科技有限公司 | 文本摘要生成方法、装置及电子设备 |
CN113626582A (zh) * | 2021-07-08 | 2021-11-09 | 中国人民解放军战略支援部队信息工程大学 | 基于内容选择和融合的两阶段摘要生成方法及系统 |
CN113688230A (zh) * | 2021-07-21 | 2021-11-23 | 武汉众智数字技术有限公司 | 一种文本摘要生成的方法及系统 |
CN114330276A (zh) * | 2022-01-04 | 2022-04-12 | 四川新网银行股份有限公司 | 一种基于深度学习的短信模板生成方法、系统及电子装置 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111241267A (zh) * | 2020-01-10 | 2020-06-05 | 科大讯飞股份有限公司 | 摘要提取和摘要抽取模型训练方法及相关装置、存储介质 |
-
2020
- 2020-12-15 CN CN202011470330.9A patent/CN112417854A/zh active Pending
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111241267A (zh) * | 2020-01-10 | 2020-06-05 | 科大讯飞股份有限公司 | 摘要提取和摘要抽取模型训练方法及相关装置、存储介质 |
Non-Patent Citations (2)
Title |
---|
YANG LIU: "Fine-tune BERT for Extractive Summarization", ARXIV:1903.10318V2 * |
赵雨薇: "社交网络中基于话题发现的自动摘要算法研究", 中国优秀硕士学位论文全文数据库 信息科技辑 * |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112883722A (zh) * | 2021-03-04 | 2021-06-01 | 中山大学 | 一种基于云数据中心分布式文本摘要方法 |
CN112711662A (zh) * | 2021-03-29 | 2021-04-27 | 贝壳找房(北京)科技有限公司 | 文本获取方法和装置、可读存储介质、电子设备 |
CN113076127A (zh) * | 2021-04-25 | 2021-07-06 | 南京大学 | 编程环境下问答内容的提取方法、系统、电子设备及介质 |
WO2022226714A1 (zh) * | 2021-04-25 | 2022-11-03 | 南京大学 | 编程环境下问答内容的提取方法、系统、电子设备及介质 |
CN113076127B (zh) * | 2021-04-25 | 2023-08-29 | 南京大学 | 编程环境下问答内容的提取方法、系统、电子设备及介质 |
CN112906385A (zh) * | 2021-05-06 | 2021-06-04 | 平安科技(深圳)有限公司 | 文本摘要生成方法、计算机设备及存储介质 |
CN113626582A (zh) * | 2021-07-08 | 2021-11-09 | 中国人民解放军战略支援部队信息工程大学 | 基于内容选择和融合的两阶段摘要生成方法及系统 |
CN113626582B (zh) * | 2021-07-08 | 2023-07-28 | 中国人民解放军战略支援部队信息工程大学 | 基于内容选择和融合的两阶段摘要生成方法及系统 |
CN113688230A (zh) * | 2021-07-21 | 2021-11-23 | 武汉众智数字技术有限公司 | 一种文本摘要生成的方法及系统 |
CN113434642A (zh) * | 2021-08-27 | 2021-09-24 | 广州云趣信息科技有限公司 | 文本摘要生成方法、装置及电子设备 |
CN114330276A (zh) * | 2022-01-04 | 2022-04-12 | 四川新网银行股份有限公司 | 一种基于深度学习的短信模板生成方法、系统及电子装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112417854A (zh) | 中文文档抽取式摘要方法 | |
CN106776581B (zh) | 基于深度学习的主观性文本情感分析方法 | |
CN110717047B (zh) | 一种基于图卷积神经网络的Web服务分类方法 | |
CN107992597B (zh) | 一种面向电网故障案例的文本结构化方法 | |
CN110427623A (zh) | 半结构化文档知识抽取方法、装置、电子设备及存储介质 | |
CN109684642B (zh) | 一种结合页面解析规则和nlp文本向量化的摘要提取方法 | |
CN111738004A (zh) | 一种命名实体识别模型的训练方法及命名实体识别的方法 | |
CN110276069B (zh) | 一种中国盲文错误自动检测方法、系统及存储介质 | |
CN112818698B (zh) | 一种基于双通道模型的细粒度的用户评论情感分析方法 | |
CN114969304A (zh) | 基于要素图注意力的案件舆情多文档生成式摘要方法 | |
CN113723103A (zh) | 融合多源知识的中文医学命名实体和词性联合学习方法 | |
CN114818717A (zh) | 融合词汇和句法信息的中文命名实体识别方法及系统 | |
CN115017303A (zh) | 基于新闻文本进行企业风险评估的方法、计算设备和介质 | |
CN110222338A (zh) | 一种机构名实体识别方法 | |
CN113221569A (zh) | 一种毁伤试验文本信息抽取方法 | |
Hashemzadeh et al. | Improving keyword extraction in multilingual texts. | |
CN113901813A (zh) | 一种基于主题特征和隐式句子结构的事件抽取方法 | |
CN115033659A (zh) | 基于深度学习的子句级自动摘要模型系统及摘要生成方法 | |
CN114265936A (zh) | 一种科技项目文本挖掘的实现方法 | |
CN113869054A (zh) | 一种基于深度学习的电力领域项目特征识别方法 | |
CN115757775B (zh) | 基于文本蕴含的无触发词文本事件检测方法及系统 | |
Ovi et al. | BaNeP: An End-to-End Neural Network Based Model for Bangla Parts-of-Speech Tagging | |
CN115906824A (zh) | 一种文本细粒度情感分析方法、系统、介质和计算设备 | |
Berrimi et al. | A Comparative Study of Effective Approaches for Arabic Text Classification | |
CN114611489A (zh) | 文本逻辑条件抽取ai模型构建方法、抽取方法及系统 |
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 | ||
WD01 | Invention patent application deemed withdrawn after publication | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20210226 |