首页> 中国专利> 中文文本摘要生成系统及方法

中文文本摘要生成系统及方法

摘要

本发明公开了一种中文文本摘要生成系统,包括预处理模块、词汇理解模块、句子理解模块、段落理解模块和摘要自动生成模块,其中,预处理模块用于进行分词和原始词向量的形成,词汇理解模块、句子理解模块和段落理解模块分别用于采用双向长短记忆神经网络来对词汇、句子和段落进行深度理解,摘要自动生成模块用于根据词汇理解模块、句子理解模块、段落理解模块理解后的词向量、句子向量和段落向量采用seg2seq生成摘要。本发明还公开了一种中文文本摘要生成方法。本发明利用神经网络让机器真正的去阅读全文,并将理解后的文本表示在神经网络内,再序列化的输出简短摘要,系统在理解文章时,除了语义外,还结合文章的结构表示,更加精细的理解了全文。

著录项

  • 公开/公告号CN106919646A

    专利类型发明专利

  • 公开/公告日2017-07-04

    原文格式PDF

  • 申请/专利权人 南京云思创智信息科技有限公司;

    申请/专利号CN201710034464.8

  • 发明设计人 俞旸;凌志辉;

    申请日2017-01-18

  • 分类号G06F17/30(20060101);G06F17/27(20060101);

  • 代理机构南京苏高专利商标事务所(普通合伙);

  • 代理人柏尚春

  • 地址 210042 江苏省南京市玄武区玄武大道699号-22号9幢

  • 入库时间 2023-06-19 02:45:36

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2020-06-09

    授权

    授权

  • 2017-07-28

    实质审查的生效 IPC(主分类):G06F17/30 申请日:20170118

    实质审查的生效

  • 2017-07-04

    公开

    公开

说明书

技术领域

本发明涉及文本数据处理技术领域,尤其涉及一种中文文本摘要生成系统及方法。

背景技术

文本摘要生成和总结是一个最近随着大数据而出现的科研技术难题。因为随着数据的爆炸性产生,特别是文本数据,人们已经无法及时浏览和理解所有感兴趣的相关文本,但遗漏某些重要的文本信息又会造成很多组织和应用的损失。因此文本摘要自动归纳总结是实际应用中非常需要的应用面非常广的一项技术。比如,用户对商家的评论总结,自动新闻摘要的产生。

目前大部分中文文章摘要自动产生工具的工作方式是进行关键字式的片段提取形成文章总结或摘要。它们主要的方法是寻找文章中的关键字。然后选取含有关键字较多的句子形成摘要。这些方法的主要缺点是不能概括全文,摘要中的句子直接没有很好的自然衔接。最重要的是这些方法都没有真正的理解文章用自己理解后的语言组织成摘要。具体来说,目前主流技术的步骤如下:

1、将原文本拆分为句子,在每个句子中过滤掉停用词(可选),并只保留指定词性的单词(可选)。由此可以得到句子的集合和单词的集合。每个单词作为关联图中的一个节点。设定窗口大小为k,假设一个句子依次由下面的单词组成:w1,w2,w3,w4,w5,...,wn,其中{w1,w2,...,wk},{w2,w3,...,wk+1},{w3,w4,...,wk+2}等都是一个窗口。在一个窗口中的任两个单词对应的节点之间存在一个无向无权的边。基于上面构成图,可以计算出每个单词节点的重要性。最重要的若干单词可以作为关键词。

2、接着是关键短语提取。若原文本中存在若干个关键词相邻的情况,那么这些关键词可以构成一个关键词组。例如,在一篇介绍支持向量机的文章中,可以找到关键词支持、向量、机,通过关键词组提取,可以得到支持向量机。

3、最后是摘要的生成。将每个句子看成图中的一个节点,若两个句子之间有相似性,认为对应的两个节点之间有一个无向有权边,权值是相似度。通过某种算法计算得到的重要性最高的若干句子可以当作摘要。

另外有些方法针对部分特别的结构化的文本,比如网页,XML等。这些技术利用这些结构信息,去估计某些关键位置或关键标签下的句子。最后将这些系统认为重要的句子组合成摘要。其主要缺点是不能概括全文,没有真正的理解文章用自己理解后的语言组织成摘要。除以上缺点之外,目前主流的文本摘要方法都有人为特征定制和提取的工作。

本发明是基于深度学习的Seq2Seq技术,全称Sequence to Sequence。该技术突破了传统的固定大小输入问题框架,开通了将经典深度神经网络模型(DNNs)运用于翻译与智能问答这一类序列型(Sequence Based,项目间有固定的先后关系)任务的先河,并被证实在翻译以及人机短问快答的应用中有着不俗的表现。首先简单介绍下Seq2Seq模型。

Seq2Seq被提出于2014年,最早由两篇文章独立地阐述了它主要思想,分别是Google Brain团队的《Sequence to Sequence Learning with Neural Networks》和Yoshua Bengio团队的《Learning Phrase Representation using RNN Encoder-Decoderfor Statistical Machine Translation》。这两篇文章针对机器翻译的问题不谋而合地提出了相似的解决思路,Seq2Seq由此产生。Seq2Seq解决问题的主要思路是通过深度神经网络模型(常用的是LSTM,长短记忆网络,一种循环神经网络)将一个作为输入的序列映射为一个作为输出的序列,这一过程由编码输入与解码输出两个环节组成。seq2seq基础模型当应用于文档归纳时,它需要有独特的创新的变化,才能更好的解决特定问题。那么在文档归纳时,除了通常的seq2seq模型需要处理的问题以外,还需要以下注意几个关键特点:1、文章中句子的主题连续性;2、文章中句子之间的含义跳转;3、文章中段落之间的核心关系。这些现有技术中都没有得以解决。

发明内容

发明目的:本发明针对现有技术存在的问题,提供一种中文文本摘要生成系统及方法。

技术方案:本发明所述的中文文本摘要生成系统包括预处理模块、词汇理解模块、句子理解模块、段落理解模块和摘要自动生成模块,其中:

所述预处理模块,用于将原始文本进行分词,并对每个词都形成对应的原始词向量;

所述词汇理解模块,用于按将原始词向量集合作为输入,采用双向长短期记忆神经网络进行处理,得到对应词汇的具有上下文背景信息的词向量;

所述句子理解模块,用于将具有上下文背景信息的词向量转换为句子向量,并将句子向量集合作为输入,采用双向长短期记忆神经网络进行处理,得到对应句子的具有上下文背景信息的句子向量;

所述段落理解模块,用于将句子向量转换为段落向量,并将段落向量集合作为输入,采用双向长短期记忆神经网络按顺序进行处理,得到对应段落的具有上下文背景信息的段落向量;

所述摘要自动生成模块,用于将词汇理解模块生成的词向量、句子理解模块生成的句子向量和段落理解模块生成的段落向量连接成一个总向量,并作为seq2seq模型中解码序列RNN的原始状态,采用seq2seq模型进行逐字逐句的输出,得到文章摘要。

进一步的,所述预处理模块具体用于将原始文本进行分词,并将分词后得到的每个词汇都形成一个原始词向量,并按顺序排列得到原始词向量集合W={wiw|iw=1,2,…,nw},。

进一步的,所述词汇理解模块具体用于按将原始词向量集合W={wiw|iw=1,2,…,nw}作为输入,采用双向长短期记忆神经网络按顺序进行正向和反向处理,将最终神经网络中各神经单元的记忆状态作为对应词汇的具有上下文背景信息的词向量wbiw,,形成词向量集合Wb={wbiw|iw=1,2,…,nw},wiw表示第i个词向量,nw表示词向量总个数。

进一步的,所述句子理解模块具体用于按照原始文本中句子的词汇组成方式,将词向量集合Wb转换为句子向量集合S={sis|is=1,2,…,ns},并将句子向量集合S作为输入,采用双向长短期记忆神经网络按顺序进行正向和反向处理,将最终神经网络中各神经单元的记忆状态作为对应句子的具有上下文背景信息的句子向量sbis,,形成句子向量集合Sb={sbis|is=1,2,…,ns},其中,ns表示句子向量总个数。

进一步的,所述段落理解模块具体用于按照原始文本中段落的句子组成方式,将句子向量集合Sb转换为段落向量集合P={pip|ip=1,2,…,np},并将段落向量集合P作为输入,采用双向长短期记忆神经网络按顺序进行正向和反向处理,将最终神经网络中各神经单元的记忆状态作为对应段落的具有上下文背景信息的段落向量pbip,,形成段落向量集合Pb={pbip|ip=1,2,…,np},np表示段落向量总个数。

本发明所述的中文文本摘要生成方法包括以下步骤:

(1)将原始文本进行分词,并对每个词都形成对应的原始词向量;

(2)按将原始词向量集合作为输入,采用双向长短期记忆神经网络进行处理,得到对应词汇的具有上下文背景信息的词向量;

(3)将具有上下文背景信息的词向量转换为句子向量,并将句子向量集合作为输入,采用双向长短期记忆神经网络进行处理,得到对应句子的具有上下文背景信息的句子向量;

(4)将句子向量转换为段落向量,并将段落向量集合作为输入,采用双向长短期记忆神经网络按顺序进行处理,得到对应段落的具有上下文背景信息的段落向量;

(5)将步骤(2)生成的词向量、步骤(3)生成的句子向量和步骤(4)生成的段落向量连接成一个总向量,并作为seq2seq模型中解码序列RNN的原始状态,采用seq2seq模型进行逐字逐句的输出,得到文章摘要。

进一步的,步骤(1)具体包括:

将原始文本进行分词,并将分词后得到的每个词汇都形成一个原始词向量,并按顺序排列得到原始词向量集合W={wiw|iw=1,2,…,nw},wiw表示第i个词向量,nw表示词向量总个数。

进一步的,步骤(2)具体包括:按将原始词向量集合W作为输入,采用双向长短期记忆神经网络按顺序进行正向和反向处理,将最终神经网络中各神经单元的记忆状态作为对应词汇的具有上下文背景信息的词向量wbiw,,形成词向量集合Wb={wbiw|iw=1,2,…,nw}。

进一步的,步骤(3)具体包括:按照原始文本中句子的词汇组成方式,将词向量集合Wb转换为句子向量集合S={sis|is=1,2,…,ns},并将句子向量集合S作为输入,采用双向长短期记忆神经网络按顺序进行正向和反向处理,将最终神经网络中各神经单元的记忆状态作为对应句子的具有上下文背景信息的句子向量sbis,,形成句子向量集合Sb={sbis|is=1,2,…,ns},其中,ns表示句子向量总个数。

进一步的,步骤(4)具体包括:按照原始文本中段落的句子组成方式,将句子向量集合Sb转换为段落向量集合P={pip|ip=1,2,…,np},并将段落向量集合P作为输入,采用双向长短期记忆神经网络按顺序进行正向和反向处理,将最终神经网络中各神经单元的记忆状态作为对应段落的具有上下文背景信息的段落向量pbip,,形成段落向量集合Pb={pbip|ip=1,2,…,np},np表示段落向量总个数。

有益效果:本发明与现有技术相比,其显著优点是:本发明模仿人类去通读全文,深层次理解文章总体含义。它的工作方式是模拟人类大脑的神经元,在每读入一个字的时候,会联系上下文形成短语,联系前后句子形成概要性的记忆。该记忆是选择性和持续更新的。当读完整片文章后,它的记忆里保留了对整个文章的一个深度理解概念。最后,它在通过序列化的输出字词序列,形成总结和摘要。再加上系统过去阅读的大量文献所形成的广义的基本常识,系统能够更加全面的总结摘要。

附图说明

图1是本发明的中文文本摘要生成系统的系统框图;

图2是本发明的流程示意图。

具体实施方式

如图1和图2所示,本实施例的中文文本摘要生成系统包括预处理模块、词汇理解模块、句子理解模块、段落理解模块和摘要自动生成模块,其中:

所述预处理模块,用于将原始文本进行分词,并将分词后得到的每个词汇都形成一个原始词向量,并按顺序排列得到原始词向量集合W={wiw|iw=1,2,…,nw},wiw表示第i个词向量,nw表示词向量总个数;其中,分词具体采用的是现有技术中的分词方法,词汇都形成原始词向量的方法也是现有技术的方法,例如CBOW模型。

所述词汇理解模块,用于将每个词汇的原始词向量wiw作为一个神经单元,采用双向长短期记忆神经网络按顺序进行正向和反向处理,将最终神经网络中各神经单元的记忆状态作为对应词汇的具有上下文背景信息的词向量wbiw,,形成词向量集合Wb={wbiw|iw=1,2,…,nw}。其中,该模块的双向长短期记忆神经网络的主要用途是让系统按顺序通读文章中每个词。双向是指从前往后和从后往前2个方向。递归网络在第t个时间步的判定会影响其在随后的时间步的判定。所以递归网络有来自当下和不久之前的两种输入,此二者的结合决定了网络对于新数据如何反应,与人类日常生活中的情形颇为相似。递归网络与前馈网络的区别便在于这种不断将自身上一刻输出当作输入的反馈循环。人们常说递归网络是有记忆的。为神经网络添加记忆的目的在于:序列本身即带有信息,而递归网络能利用这种信息完成前馈网络无法完成的任务。这些顺序信息保存在递归网络隐藏状态中,不断向前层层传递,跨越许多个时间步,影响每一个新样例的处理。人类记忆会在体内不断进行不可见的循环,对我们的行为产生影响而不显现出完整样貌,而信息也同样会在递归网络的隐藏状态中循环。用数学形式来描述将记忆向前传递的过程是:

ht=φ(Wxt+Uht-1),

即第t个时间步的隐藏状态ht是同一时间步的输入xt的函数,由一个权重矩阵W(和在前馈网络中使用的一样)修正,加上前一时间步的隐藏状态ht-1乘以它自己的隐藏状态到隐藏状态的矩阵U(或称过渡矩阵,与马尔可夫链近似)。其中φ是一个激活函数,常用sigmoid函数。权重矩阵W是决定赋予当前输入及过去隐藏状态多少重要性的筛选器。它们所产生的误差将会通过反向传播返回,用于调整权重,直到误差不能再降低为止。权重输入与隐藏状态之和用函数进行挤压-可能是逻辑S形函数(sigmoid函数)或双曲正切函数,视具体情况而定-这是将很大或很小的值压缩至一个逻辑空间内的标准工具,同时也用于产生反向传播所能接受的梯度。由于这一反馈循环会在系列的每一个时间步发生,每一个隐藏状态不仅仅跟踪前一个隐藏状态,还包括了记忆能力范围内所有在之前的状态。若输入一系列字母,则递归网络必定会根据第一个字符来决定对第二个字符的感知,例如,第一个字母如果是x,网络就可能推断下一个字母是y,而第一个字母如果是a,则网络可能推断下一个字母是b。由于递归网络具有时间维度,所以可能用动画示意最为清楚(最先出现的节点垂直线可被视为一个前馈网络,随时间展开后变为递归网络)。通过正向和反向的处理,最后就得到了包含前面和后面相关的语境上下文的词向量。

所述句子理解模块,用于按照原始文本中句子的词汇组成方式,将词向量集合Wb转换为句子向量集合S={sis|is=1,2,…,ns},并将每个句子向量sis作为一个神经单元,采用双向长短期记忆神经网络按顺序进行正向和反向处理,将最终神经网络中各神经单元的记忆状态作为对应句子的具有上下文背景信息的句子向量sbis,,形成句子向量集合Sb={sbis|is=1,2,…,ns},其中,ns表示句子向量总个数。词向量集合Wb转换的句子向量集合S中句子向量很好的具备了整个句子的信息和内部文字关系。再通过双向长短期记忆网络里,系统会着重的关注句子之间的转换或承接。

所述段落理解模块,用于按照原始文本中段落的句子组成方式,将句子向量集合Sb转换为段落向量集合P={pip|ip=1,2,…,np},并将每个段落向量pip作为一个神经单元,采用双向长短期记忆神经网络按顺序进行正向和反向处理,将最终神经网络中各神经单元的记忆状态作为对应段落的具有上下文背景信息的段落向量pbip,,形成段落向量集合Pb={pbip|ip=1,2,…,np},np表示段落向量总个数。

所述摘要自动生成模块,用于将词向量集合Wb、句子向量集合Sb、段落向量集合Pb作为输入,采用seq2seq模型进行逐字逐句的输出,得到文章摘要。本发明将3个向量(词,句子,段落)连接成一个大向量,这个大向量的大小是原来单独向量的3倍。然后把这个合并后的大向量,作为解码序列RNN的原始状态,然后逐步逐词的输出。其思想起源于“NeuralMachine>b、段落向量集合Pb作为输入,来关注句子和段落之间的承接。

本实施例的中文文本摘要生成方法包括以下步骤:

(1)将原始文本进行分词,并将分词后得到的每个词汇都形成一个原始词向量,并按顺序排列得到原始词向量集合W={wiw|iw=1,2,…,nw},wiw表示第i个词向量,nw表示词向量总个数;

(2)按将原始词向量集合W作为输入,采用双向长短期记忆神经网络按顺序进行正向和反向处理,将最终神经网络中各神经单元的记忆状态作为对应词汇的具有上下文背景信息的词向量wbiw,,形成词向量集合Wb={wbiw|iw=1,2,…,nw};

(3)按照原始文本中句子的词汇组成方式,将词向量集合Wb转换为句子向量集合S={sis|is=1,2,…,ns},并将句子向量集合S作为输入,采用双向长短期记忆神经网络按顺序进行正向和反向处理,将最终神经网络中各神经单元的记忆状态作为对应句子的具有上下文背景信息的句子向量sbis,,形成句子向量集合Sb={sbis|is=1,2,…,ns},其中,ns表示句子向量总个数;

(4)按照原始文本中段落的句子组成方式,将句子向量集合Sb转换为段落向量集合P={pip|ip=1,2,…,np},并将段落向量集合P作为输入,采用双向长短期记忆神经网络按顺序进行正向和反向处理,将最终神经网络中各神经单元的记忆状态作为对应段落的具有上下文背景信息的段落向量pbip,,形成段落向量集合Pb={pbip|ip=1,2,…,np},np表示段落向量总个数;

(5)将词向量集合Wb、句子向量集合Sb、段落向量集合Pb连接成一个总向量,并作为seq2seq模型中解码序列RNN的原始状态,采用seq2seq模型进行逐字逐句的输出,得到文章摘要。

该方法与上述系统一一对应,因此不再赘述。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号