CN109670035B - 一种文本摘要生成方法 - Google Patents
一种文本摘要生成方法 Download PDFInfo
- Publication number
- CN109670035B CN109670035B CN201811466899.0A CN201811466899A CN109670035B CN 109670035 B CN109670035 B CN 109670035B CN 201811466899 A CN201811466899 A CN 201811466899A CN 109670035 B CN109670035 B CN 109670035B
- Authority
- CN
- China
- Prior art keywords
- words
- information
- input text
- field
- domain
- 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.)
- Active
Links
Images
Landscapes
- Machine Translation (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请披露了一种文本摘要生成方法,包括:基于输入文本的内容和输入文本对应领域的业务信息,获取普通生成词和领域词的概率;基于所述普通生成词和领域词的概率以及对应词汇,生成输入文本对应的摘要信息。本申请还披露了一种文本摘要生成方法,包括:基于编码后的输入文本,实时获取输入文本对应的普通生成词、复制词和领域词的概率,基于该三者的概率和对应词汇来获取摘要信息。本申请的方法能够结合相关的业务领域,基于对应的领域库纳入该领域的相关业务信息,提取摘要词,更为准确地总结出相关业务过程的摘要信息;同时,综合多种机制可准确识别关键信息、提高流畅度并避免信息冗余。
Description
技术领域
本发明涉及自然语言处理和人机互助技术领域,特别是涉及一种文本摘要生成方法。
背景技术
随着人工智能的迅猛发展,机器辅助人去完成任务越来越显得必要。各行各业都需要记录过往信息,形成总结,文章摘要技术就显得尤为必要。其中,理解文章意图、获取关键信息最为关键。
以公共服务业为代表。例如运营商,人们会咨询各种电信问题,而工作人员会对每天解答的问题形成记录,对于不能及时解决的便会填写工单提交下去。此技术将辅助工作人员完成工单的填写,减少其工作量。
还例如,在基于通信网络的聊天工具或者智能语音服务中,提供基于互联网客户端的会话服务,包括语音和文字传输。目前聊天工具大多进行简单的记录管理功能,不能提供精准的闲聊和秘书服务,主要问题在于不能对于获取信息进行准确提取其摘要信息。
现有的技术方案在自动文摘的技术框架内,主要分为抽取式和概括式两类。其中,抽取式的核心思想来自于一个假设,即一个文档的核心思想来自这个文档中的一句或者几句话。因此,抽取式的摘要任务就转化为对这篇文档句子重要程度的排序。另外,概括式要求系统理解文档所表达的意思,然后用可读性强的人类语言将其简练地总结出来。目前概括式常见的方法包括基于循环神经网络RNN的编码译码(encoder-decoder)模型。
对于一个普通文档不可避免的存在信息交叠和信息差异。目前技术提取出来的摘要流畅度不高,缺少可读性。而且对于一个文章中存在多意图的现象,会很容易出现信息冗余和总结出非关键信息等缺点。
如何准确识别关键信息、提高流畅度并且避免信息冗余是文本自动摘要技术的主要难点和问题。而对于相关领域的摘要,如何纳入该领域相关业务信息,总结出相关业务过程的摘要也是一个难点和问题。
发明内容
(一)要解决的技术问题
本发明的目的是:提供一种文本摘要的生成方法,以克服当前识别关键信息差、流畅度低并且信息冗余的缺陷,同时可以克服由于未纳入领域相关的业务信息所不能准确产生业务过程摘要的问题。
(二)技术方案
为了解决上述技术问题,本发明提供一种文本摘要的生成方法和系统。
根据本申请的第一方面,提供一种文本摘要生成方法,包括:基于输入文本和输入文本对应领域的业务信息,获取普通生成词和领域词的概率;基于所述普通生成词和领域词的概率以及对应词汇,生成输入文本对应的摘要信息。
其中,所述的方法,还包括:根据输入文本,识别输入文本的所属领域,获取对应领域库内的业务信息。
其中,所述识别输入文本的所属领域步骤进一步包括:将输入文本向量化,通过单层多通道卷积提取文本特征,将该文本特征通过池化层进行压缩得到输入文本对应的隐层特征,再将该隐层特征通过多层感知机转换为每个领域的概率值,选取概率值最大的领域作为该输入文本的所属领域。
其中,所述生成输入文本对应的摘要信息的步骤进一步包括:根据输入文本的内容获取复制词的概率,基于普通生成词、复制词和领域词的概率以及对应词汇来获取摘要信息。
其中,所述生成输入文本对应的摘要信息的步骤进一步包括:将输入文本向量化为输入向量,通过多头注意力机制丰富输入向量的向量信息,再基于全连接层构建向量矩阵。
其中,所述获取领域词的概率的步骤进一步包括:将领域库的业务信息与当前输入文本对应的编解码信息联合,拼接后做两层非线性变换,以降低维度;获取联合后信息与领域库中的对应业务信息的相似度,作为该领域库中业务信息对应的所述领域词的概率。
其中,所述基于普通生成词、复制词和领域词的概率以及对应词汇来获取摘要信息的步骤进一步包括:将基于生成机制、复制机制和结合领域库生成的结果进行联合,获取普通生成词、复制词和领域词中每个词成为摘要信息的概率,选择其中概率最高的词作为当前时序的摘要信息生成词。
其中,所述将输入文本向量化为输入向量的步骤进一步包括:将输入文本通过位置编码方式增加编码的位置信息和时序信息;和/或
将输入文本对应的输入向量和角色向量进行拼接,增加输入文本的角色信息。
其中,该方法还包括:对于所述输入文本,通过覆盖机制降低已出现词的注意力权重,消除重复出现的词汇。
其中,所属领域的业务信息包括领域内通用知识、业务专有知识和/或用户私有资料,所述业务信息通过业务内容标识、属性和属性对应的值来描述,所述属性对应的值基于定性、定量或者二者皆有的方式表达。
根据本申请第二方面,提供一种文本摘要生成方法,包括:将输入文本向量化,输入到编码端进行编码,构成编码后的向量矩阵;基于该编码后的向量矩阵,实时获取输入文本对应的普通生成词、复制词和领域词的概率,基于普通生成词、复制词和领域词的概率以及对应词汇来获取摘要信息。
根据本申请第三方面,提供一种文本摘要生成系统,包括:概率获取模块,所述概率获取模块用于基于输入文本和输入文本对应领域的业务信息,获取普通生成词和领域词的概率;摘要生成模块,所述摘要生成模块用于基于所述普通生成词和领域词的概率以及对应词汇,生成输入文本对应的摘要信息。
根据本申请第四方面,提供一种文本摘要生成系统,包括:向量构建模块,所述向量构建模块用于将输入文本向量化,构成编码后的向量矩阵;摘要生成模块,所述摘要生成模块用于基于该编码后的向量矩阵,实时获取输入文本对应的普通生成词、复制词和领域词的概率,基于该三者的概率和对应词汇来获取摘要信息。
(三)有益效果
与现有技术相比,本发明提出了文本自动摘要方法,该方法使用了多种机制,有效地解决了自动文摘中的可读性新颖性差、缺少专有词和词重复等问题,并且可以进一步准确识别关键信息、提高流畅度和避免信息冗余。另外,结合相关的业务领域,基于领域库纳入该领域相关业务信息,综合提取摘要词,更为准确地总结出相关业务过程的摘要信息。
附图说明
图1为本申请实施例的文本摘要生成方法的总的流程图;
图2为本申请一个实施例的文本摘要生成方法的流程图;
图3为本申请实施例的领域确定步骤的流程图;
图4为本申请实施例的领域识别模型的结构示意图;
图5为本申请实施例的摘要信息生成方法的具体流程图;
图6为本申请实施例的基于多机制的摘要生成步骤的流程图。
具体实施方式
下面结合附图和实施例,对本发明的具体实施方式作进一步详细描述。以下实例用于说明本发明,但不用来限制本发明的范围。
在本申请的一个实施例中,总的来说,如图1所示,本申请的方法在自动文本摘要中基于编码译码(encoder-decoder)结构,结合复制(copy)机制、提取(retrieval)机制和/或覆盖(coverage)机制,生成对话文本中的关键信息,产生摘要信息。
在本申请的另一个实施例中,总的来说,本申请的方法在自动文摘中基于编码译码(encoder-decoder)结构,结合业务领域对应领域库的业务信息,综合普通生成词的概率和业务领域生成词的概率,生成对话文本中的关键信息,通过和领域业务信息嵌入结合,产生摘要信息。
本申请实施例的各个方法可以在移动终端、计算机终端或者类似的运算装置中执行。以运算装置为例,一般地,该运算装置包括一个或者多个处理器、用于存储数据的存储器以及可以执行通信功能的传输模块。
该存储器可以存储应用软件的程序以及模块,例如本申请实施例的摘要生成方法,处理器可以运行存储在该存储器里的软件程序,执行各种数据处理,传输模块可以经由网络接收或者发送数据。
总的,如图2所示,在本申请的一个实施例中,提供一种文本摘要生成方法,该方法包括:根据输入文本,识别文本所属领域;基于所识别领域的业务信息和输入文本的内容,生成摘要信息。
可以理解,人们在咨询问题的时候,通常围绕某一领域进行询问,将业务领域的知识融合到摘要信息的提取中,可以进一步提高摘要信息的全面性和准确度。
注意到,基于输入文本的内容和该文本所属领域的业务信息生成摘要信息,该输入文本对应的领域可以通过预知、文本内容携带或者通过输入文本识别来获取。那么,也就是说,该输入文本所属领域的识别步骤并非必须在信息抽取之前来实施,也并不是必须和摘要信息生成步骤为一体化执行的步骤。
在一个实施例中,该方法还包括:对生成的摘要信息进行流畅度处理,以优化该摘要信息。
在一个实施例中,领域的业务信息包括该领域的通用知识、业务专有知识和/或用户私有资料。
在一个实施例中,所述输入文本包括文字内容和语音内容,优选地,所述输入文本包括人人对话,尤其是各种客户服务的人人对话。其中,所述语音内容可以通过公知的识别技术形成为文本内容。
在一个实施例中,所属领域是文本内容对应的技术领域,或者所属领域是文本内容场景的应用领域,又或者所属领域是该文本内容发生的行业领域。例如,在电信沟通的人人对话中,所输入的文本内容可以是电信通信的技术内容、话费内容、餐饮服务内容及其他内容,那么,所涉及的领域就会是通信领域、资费领域和/或生活服务领域等。
注意到,对于一段对话的内容总结,首先需要识别领域,领域清晰才能对于不全面的对话内容进行准确的诠释。基于所属领域的识别结果,结合该领域的一些特有业务信息,可以对人人对话内容进行关键信息抽取,内容推理,形成内容摘要。
在一个实施例中,参考图3,该领域识别步骤进一步包括:将输入的文本内容向量化(word embedding)表示为二维矩阵,通过单层多通道卷积提取矩阵特征,采用不同大小的过滤器,得到不同大小的矩阵;将这些矩阵通过池化层进行压缩,得到隐层特征,进一步输出为一维向量;将这些一维向量拼接到一起,经过多层感知机(MLP)处理,将隐层特征转换为每个领域的概率值进行输出,其中概率值最大的所对应的那个领域,确定为该人人对话文本的领域。
在一个实施例中,该领域识别的模型结构如图4所示,上述所属领域的识别步骤通过一个诸如卷积神经网络(CNN)模型的分类模型来实现,其中所述神经网络模型也可以是循环神经网络(RNN)、长短时记忆网络(LSTM)等神经网络模型。
具体地,如下参见图5,在一个实施例中,上述输入文本向量化步骤中,假设一段文本有200个词,每个词用一个100维的向量去表示,那么这个输入向量的大小就为一个(200,100)的二维矩阵。从而,通过单层多通道卷积充分提取矩阵特征,对于不同大小的filter,将得到不同大小的矩阵。
其中,通过池化层进行压缩,可以一方面降低网络计算复杂度,另一方面提取主要特征,得到隐层特征。
在一个实施例中,获取所识别领域的业务信息,根据所识别领域的领域库,获取对应的业务信息。在一个实施例中,对于获取业务信息的领域库,需要在之前去构建领域库的架构,并且填充或者更新领域库的内容。
在一个实施例中,因不同产品业务需求不同,需要针对不同产品先确定其支持的范围,建立领域库,领域库用来存储该领域的通用知识、业务专有知识或者用户私有资料。
如下表的运营商领域的用户画像信息(用户私有资料)。
或者,如下表的保险领域的业务专有知识:
对于这些业务领域里面的业务信息,可以用一个<primary-key-value>值进行存储。primary为这个业务信息的唯一标示,key是一个属性,value是属性对应的值。如保险名称,该领域库的库信息表示为<车险-保额-10W>
在一个实施例中,这些<primary-key-value>值中,value值包括多种描述方式,其中有定性描述、定量描述或者两者兼有。
在一个实施例中,对于定性描述,描述性语句可以利用嵌入(embedding)方式直接对其编码,获得一个二维矩阵。假设嵌入维度为128维,如将<车险-购买条件-一年内无交通违规行为>分别进行编码,得到ep(2,128),ek(4,128),ev(10,128)三个矩阵,将每个矩阵按词进行加权平均为一个(1,128)的向量,3个矩阵按维度拼接为一个矩阵f=(ep,ek,ev),大小为(1,384)。
在一个实施例中,对于value为定量描述的值,如<车险-保额-10W>,可以将10W用通用符号代替去进行词嵌入,即<车险-保额-10W>映射为<车险-保额-@金额>后,再进行词嵌入操作,进行向量表征。
在一个实施例中,对于定性和定量描述兼有的,如<xxx-历史工单-宽带报修KDBX2121111244>映射为<xxx-历史工单-宽带报修@工单号>,再进行词嵌入操作,进行向量表征。
这样,对于所有领域库里面的业务知识均可以用一个向量f=(ep,ek,ev)进行编码。则一个领域库里面所有的知识表示为F={f1,f2,......,fn},这样就完成了领域库的构建。
在一个实施例中,基于所识别领域的业务信息和输入文本,进行关键信息抽取,生成摘要信息。如图5所示,其中,将词典结合当前输入文本和领域库信息,共同纳入摘要信息的生成范围中,使生成的摘要信息表达的准确性和流畅度更高。
在一个实施例中,如图6所示,该步骤包括:将输入文本采用例如嵌入方式进行向量化,通过多头注意力机制丰富输入向量的向量信息,基于全连接层构建向量矩阵;基于该向量矩阵,实时获取普通生成词、复制(copy)词和领域词的概率,基于该三者的概率信息和对应的词汇,获取摘要信息。
在一个实施例中,对于最终摘要信息的形成,可以将普通encode-decode的生成、Copy机制和Retrieval机制相结合,共同产生摘要信息;也就是将结合字典的普通生成词、结合copy机制的复制词和结合业务领域的领域词基于概率来生成摘要信息。
在一个实施例中,向量化过程中,对于输入文本通过位置编码(PositionalEncoding)的方式来增加编码后信息的位置信息。
在一个实施例中,增加位置编码信息的输入向量和角色向量进行拼接,从而形成更能体现关键信息的输入向量。
在一个实施例中,该输入文本(例如人人对话)的编码过程基于纯注意力机制(attention)的网络。
在以下实施例中,将输入文本用人人对话的内容来示例,可以理解,这并不是将输入文本限制于人人对话,该处理过程同样可以应用于通过其他方式获取的信息。
在一个实施例中,将人人对话的内容采用嵌入(embedding)的方式向量化。假设一个词用一个100维的向量表示,那么一段人人对话有200个词的话,该向量化矩阵的大小就为(200,100)。
在一个实施例中,由于编码(Encoder)端是一个纯Attention的网络,不能掌握句子的位置前后关系的信息。在输入文本中通过位置编码(Positional Encoding)来增加人人对话编码的位置信息,从而同时增加输入文本的时序信息。公式如下:
其中,对嵌入后的(200,100)维矩阵加入位置信息,其中pos代表词位置,即矩阵第一维;i代表维度位置,即矩阵第二维;embed_dim代表embedding的维度,这里是100。实际上是对embedding后的(200,100)维矩阵中的每一个值进行正弦或余弦的变换,变换后矩阵的形状大小不变。三角函数的周期性能良好的反应两个词之间的相对位置,且其值域[-1,1]能良好的结合embedding的值。
在一个实施例中,将输入向量和角色向量相拼接,突出输入向量的部分信息的重要性。其中,记录人人对话中每个词对应的角色信息(A,B),分别用0,1符号表示,构成一个(200,1)的向量,对这个角色向量用一个(2,32)的embedding向量进行映射编码,形成一个(200,32)的矩阵,该embedding映射向量是可学习的。最终将Positional Encoding后的向量和角色向量进行拼接形成一个(200,132)的矩阵,作为后续网络的输入矩阵X({x1,x2,……,x200})。
所以,对于一些人人对话,可能对话中某个人起到主导作用,其语句重要度更高,角色信息的加入能让摘要结果更能抓住对话内容的重点,使摘要的生成更偏向某一个角色说的话。
在一个实施例中,对于拼接后的输入向量通过多头注意力机制(Mutil_HeadAttention)进一步完善输入向量的信息关注重点。
其中,基于自注意(Self-attention)机制能让人人对话进行自我关注,突出对话重点,而多头注意力机制的加入能让关注重点从多个维度进行。
MultiHead(Q,K,V)=Concat(head1......headh)。
Attention的目的是让Query(Q)与key(K)-value(V)做相似度比较,突出Query中与key相关的重点。Self-attention是进行自我关注,句子对句子本身做重要性突出,所有Q、K、V均指句子本身。其中,输入矩阵X,是K的维度,即X的维度dx,作为一个调节因子,使QKT不至于太大,避免softmax的结果非0即1。
其中,多头注意力机制是将Q、K和V进行多次不同映射,再去做基于注意力关注处理(attention),即headi,最终将attention的结果拼接起来。头(head)的数量是一个超参数h,对于每个headi,Q、K、V分别进行一次映射,映射后的维度为dx/h,即X做三次不同的映射,让X本身有着不同的表达,但X本身的重点信息是一致的。而每个头实际上带有不同的侧重,如词性、句法关系等等。最终将每个头的结果拼接起来,使信息更丰富。多头注意力机制输出的结果维度大小是不变的,仍然是(200,132)。
在一个实施例中,参见图5,为了防止深层网络梯度弥散问题,在多头注意力机制处理之后,引入残差单元。将多头注意力机制的输出与输入向量相加(Add Residua&norm),并进行正则化,得到一个(200,132)的矩阵。同时,可以注意到,在进行全连接层处理之后,也可以采用残差单元进行处理。
在一个实施例中,将上述得出的(200,132)输入向量进行一个全连接网络行变换,同时也加入残差单元,构建编码后的向量矩阵。
其中,FNN=ReLU(xW1+b1)*W2+b2;
其中,W1,b1,W2,b2均为学习参数,x为输入向量。该非线性变换需保证输出矩阵的维度和输入矩阵的维度一致,如W1的维度为(132,512),则W2的维度为(512,132),保持W1,W2的维度交换。最终输出(200,132)的矩阵,记为编码状态(Encode-State)。
在一个实施例中,在训练过程中,对标注摘要进行向量化(预测过程则对起始符进行向量化),对一个单向长短期记忆网络LSTM的每一个时序,假设隐层大小为100,生成一个特征向量yt(1,100)和当前状态st(1,100)。通过attention突出encode特征向量中与当前词最相关的句子表达,可以突出人人对话中的一些关键信息。
其中,Attention的公式如下:
αt=softmax(et),
其中,t代表时序,i代表编码状态的每一行(1,132)的向量,即输入的每一个词,st是当前LSTM编码处理的隐层状态。vt,Wh,Ws,battn均为attention层的参数。
其中,最终生成则为当前时序(时序指的是预测的时候按照词的顺序进行的)下的context向量,是一个(1,132)的向量。其中αt是人人对话中每个词的重要程度是一个(200,1)的向量,是copy机制中比较重要的参数。如下表中,“宽带”的重要度就比较高。
我 | 的 | 宽带 | 故障 | 了 | 要 | 报修 | 一下 | |
α<sup>τ</sup> | 0.04 | 0.001 | 0.52 | 0.11 | 0.001 | 0.002 | 0.31 | 0.001 |
在一个实施例中,通过覆盖机制消除重复出现的词汇。具体地,参见图5,为了防止生成的摘要信息出现重复的词,如“你好,你好,你好,很高兴见到你”,为了杜绝“你好”重复多次出现的现象,生成摘要时,对已出现的词降低它的注意力权重,以防重复出现。
其中,首先计算一个覆盖向量(coverage vector)ct,其中表示之前所有的解码时序的attention的权重求和向量。同时更改attention机制的计算公式,将coverage向量的影响加入到里面,计算覆盖损失(coverage loss)之后的损失计算更新,这表示前一时刻已经生成单词,它前一时刻的注意力权重已经比较高。那么,对应的就会比较大,也会变大。为了减小损失,就需要减小当前则梯度更新时就有一项是以减小为目标的。
如:
我 | 的 | 宽带 | 故障 | 了 | 要 | 报修 | 一下 | |
α<sup>t-1</sup> | 0.04 | 0.001 | 0.52 | 0.11 | 0.001 | 0.002 | 0.31 | 0.001 |
α<sup>τ</sup> | 0.01 | 0.001 | 0.28 | 0.60 | 0.001 | 0.006 | 0.10 | 0.002 |
这样,at-1时刻“宽带”的权重最大,摘要信息容易受“宽带”权重的影响而生成词A。为了避免t时刻再次生成词A,coverage机制的加入让当前时刻的“宽带”权重降低。
在一个实施例中,经过attention机制或者经过加入Coverage的改良attention机制后,得到一个(1,132)context向量,将这个向量与该时序LSTM隐藏状态st通过FNN进行拼接,做两层线性变换,得到一个词典长度大小的一维向量。
在一个实施例中,假设词典有5000个词,即生成摘要的每一个词从这5000个词中进行候选,则这个一维向量大小为(1,5000),对这个向量进行归一化处理(softmax),选出一个最大的概率,对应词典中该位置的词,代表普通生成的词。
其中,V′,V,b,b′均为网络参数,Pvocab为普通生成时词典中每一个词的概率。
在一个实施例中,通过复制(copy)机制来获取复制(copy)词。其中,copy机制用来找出人人对话中重要信息,并把重要信息直接copy到摘要中。有利于摘要信息直接包含对话中的重要信息,且能避免词典中不存在词的未知词(UNK)问题。即,当生成为UNK时,copy机制的存在会使由生成字典中的词变为copy原人人对话的词。
在一个实施例中,将上下文(context)向量与当前时序的状态变量和输入变量做非线性变换,产生一个当前时序下p_gen值作为摘要是普通生成词的概率阀值,则1-p_gen为摘要词从原文中copy词的概率。
其中,均为学习参数,为context向量、st为当前解码时序的隐层状态、xt为当前解码的输入(训练时则为参考摘要,预测时则为上一时刻的输出)。每一个时序的st,xt是变化的,依据每一时刻的编码、解码信息,求出普通生成词的概率。
这样,对于原人人对话中的每一个词都存在一个copy概率,结合attention求出的当前原文中每个词的重要度αt,也是从原文中copy重要信息的依据,即(1-p_gen)αt,表示机器生成的摘要中那些能从原文中拷贝出来的词。
如
我 | 的 | 宽带 | 故障 | 了 | 要 | 报修 | 一下 | |
α<sup>t-1</sup> | 0.04 | 0.001 | 0.52 | 0.11 | 0.001 | 0.002 | 0.31 | 0.001 |
α<sup>t</sup> | 0.01 | 0.001 | 0.28 | 0.60 | 0.001 | 0.006 | 0.10 | 0.002 |
t-1时刻,“宽带”的注意力权重最大,copy机制的加入,让摘要有可能直接从原文中选词进行摘要生成。即“宽带”为当前摘要生成词的概率增大。同理t时刻,可能copy出“故障”。这样摘要就成了“宽带故障”,充分利用了原文本来的信息,抓住了重点。
在一个实施例中,基于领域库的业务信息,对于当前解码时序,获取领域词的概率。其中,考虑对应业务知识库中的信息,使机器生成的摘要更专业,更具有领域知识和业务特定知识。或者有个对话中没有提及的信息,可以根据知识库,联系其中内容,进行推理。
其中,当前时序的领域信息需要结合当前时序的解码状态st、当前语料的编码信息(状态向量q)以及领域库中的知识F={f1,f2,......,fn}。对领域中每一条编码知识计算与当前解码隐层信息和上下文(context)向量的一个重要程度的计算:
DNN(q,st,fj)=tanh(W2tanh(W1[q,st,fj]+b1)+b2),
p_retj=cos(DNN(q,st,fj),fj),
其中,W2,W1,b1,b2是DNN的参数,q既是context向量,代表着原人人对话的信息在当前时刻的信息,st是前时序的解码状态。fj即为领域库构建时候编码完成的领域库信息。
在一个实施例中,获取领域词概率的方法进一步包括:先将领域库的信息与当前人人对话的编解码信息进行联合,带入到网络当中,即拼接q,st,fj形成一个(1,612)的向量;对这个向量做两层非线性变换,降低维度到(1,384),并使三者的联合信息更加突出;再计算这个突出信息与领域库的对应信息的相似度,用来表示该条领域数据的重要程度p_retj,以表示摘要信息使用该条领域信息的概率。即领域库value的概率可以用一个向量来表示:
如,“我之前打电话来已经报修过了,我宽带故障了,还没给我来修......”
在摘要生成的过程中,人人对话并没有提及有“历史工单”的字样。但根据“之前”“已经报修过了”“宽带”等关键信息,会和领域库中当前用户画像的信息进行匹配,推理出该用户存在历史工单的状态。则摘要信息生成的时候,就能把该字段下的业务知识进行添加,生成“来电人反映宽带故障已经报修过了,但是没人来修,历史工单:KDBX2121111244”类似语句,将之前的业务信息也加入到摘要信息的生成当中。
同时还有辅助信息的能力,如:“我想买车险,但是推销人员说我不合符条件......”。
在摘要信息生成的过程中,根据“车险”“条件”这些词,会很容易联合到<车险-购买条件-一年内无交通违规行为>这条领域库中的信息,这样在生成摘要信息的过程中能将购买条件的详细内容进行补全,即生成摘要有原人人对话根本不可能存在的领域知识。形成“该用户由于违反一年内无交通违规行为的条件,所以......”类似的结果。
为了能更准确的概括出人人对话中的主要内容和领域业务专业知识联合,进一步把copy机制和retrieval生成的结果进行联合,最终得到词典、原人人对话和领域信息中每个词成为摘要的概率,选择其中概率最高的词为当前时序的生成词。公式如下:
在一个实施例中,由于生成的摘要信息可能带有领域的业务信息,而领域的业务信息在编码的时候进行了符号化的映射;所以,还可以在生成摘要后,根据所选取的领域<primary-key-value>值,将生成的摘要信息进行修理。
如:“我之前打电话来已经报修过了,我宽带故障了,还没给我来修......”
结合领域的业务信息,生成“来电人反映宽带故障已经报修过了,但是没人来修,历史工单:@工单号”这种情况,需要将@工单号这个符号进行还原。结合所选领域知识条目,将@工单号替换为“KDBX2121111244”,这样生成的工单更加合理,与业务信息嵌入更加融合。
在本申请的另一个实施例中,提供一种文本摘要生成装置,该装置用于:基于输入文本的内容和输入文本对应领域的业务信息,生成输入文本对应的摘要信息。在一个实施例中,该装置还用于:根据输入文本的内容,识别输入文本的所属领域,获取对应领域库内的业务信息。
该装置包括领域识别模块,用于:将输入文本向量化为二维矩阵,通过单层多通道卷积提取矩阵特征,采用不同大小的过滤器得到不同大小的矩阵;将所述矩阵通过池化层压缩,得到隐层特征,输出一维输入向量;将所述一维输入向量拼接,经过多层感知机处理,将所述隐层特征转换为每个领域的概率值输出,选取概率值最大的领域作为该输入文本的所属领域。
在本申请的有一个实施例中,提供一种文本摘要生成装置,该装置包括:输入变换模块,用于将输入文本采用嵌入方式向量化,形成输入向量,基于全连接层构建编码后的向量矩阵;摘要生成模块,用于基于该编码后的向量矩阵,实时获取输入文本对应的普通生成词、复制词和领域词的概率,基于该三者的概率和对应词汇来获取摘要信息。
本实施例公开一种计算机程序产品,所述计算机程序产品包括存储在非暂态计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,计算机能够执行上述各方法实施例所提供的方法,例如包括:基于输入文本的内容和输入文本对应领域的业务信息,生成输入文本对应的摘要信息。
本实施例提供一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令使所述计算机执行上述各方法实施例所提供的方法,例如包括:基于输入文本的内容和输入文本对应领域的业务信息,生成输入文本对应的摘要信息。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
以上所描述的电子设备实施例仅仅是示意性的,其中作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分的方法。
最后,本申请的方法仅为较佳的实施方案,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (11)
1.一种文本摘要生成方法,包括:
基于输入文本和输入文本对应领域的业务信息,获取普通生成词和领域词的概率,所述领域的业务信息包括领域内通用知识、业务专有知识和/或用户私有资料;
基于所述普通生成词和领域词的概率以及对应词汇,生成输入文本对应的摘要信息;
所述获取领域词的概率的步骤进一步包括:
将领域库的业务信息与当前输入文本对应的编解码信息联合,拼接后做两层非线性变换,以降低维度;
获取联合后信息与领域库中的对应业务信息的相似度,作为该领域库中业务信息对应的所述领域词的概率。
2.根据权利要求1所述的方法,还包括:
根据输入文本,识别输入文本的所属领域,获取对应领域库内的业务信息。
3.根据权利要求2所述的方法,所述识别输入文本的所属领域步骤进一步包括:
将输入文本向量化,通过单层多通道卷积提取文本特征,将该文本特征通过池化层进行压缩得到输入文本对应的隐层特征;
将该隐层特征通过多层感知机转换为每个领域的概率值,选取所述概率值最大的领域作为该输入文本的所属领域。
4.根据权利要求1所述的方法,其中,所述生成输入文本对应的摘要信息的步骤进一步包括:
根据输入文本获取复制词的概率,基于普通生成词、复制词和领域词的概率以及对应词汇来获取摘要信息。
5.根据权利要求1所述的方法,其中,所述生成输入文本对应的摘要信息的步骤进一步包括:
将输入文本向量化为输入向量,通过多头注意力机制丰富所述输入向量的向量信息,再基于全连接层构建向量矩阵。
6.根据权利要求4所述的方法,其中,所述基于普通生成词、复制词和领域词的概率以及对应词汇来获取摘要信息的步骤进一步包括:
将基于生成机制、复制机制和结合领域库生成的结果进行联合,获取普通生成词、复制词和领域词中每个词成为摘要信息的概率,选择其中概率最高的词作为当前时序的摘要信息生成词。
7.根据权利要求5所述的方法,其中,所述将输入文本向量化为输入向量的步骤进一步包括:
将输入文本通过位置编码方式增加编码的位置信息和时序信息;和/或
将输入文本对应的输入向量和角色向量进行拼接,增加输入文本的角色信息。
8.根据权利要求1所述的方法,其中,该方法还包括:
对于所述输入文本,通过覆盖机制降低已出现词的注意力权重,消除重复出现的词汇。
9.根据权利要求1所述的方法,其中,所述业务信息通过业务内容标识、属性和属性对应的值来描述,所述属性对应的值基于定性、定量或者二者皆有的方式表达。
10.一种文本摘要生成方法,包括:
将输入文本向量化,输入到编码端进行编码,构成编码后的向量矩阵;
基于该编码后的向量矩阵,实时获取输入文本对应的普通生成词、复制词和领域词的概率,基于普通生成词、复制词和领域词的概率以及对应词汇来获取摘要信息;
其中,所述普通生成词和所述领域词的概率是基于所述输入文本和输入文本对应领域的业务信息确定的,所述领域的业务信息包括领域内通用知识、业务专有知识和/或用户私有资料;
所述获取领域词的概率的步骤进一步包括:
将领域库的业务信息与当前输入文本对应的编解码信息联合,拼接后做两层非线性变换,以降低维度;
获取联合后信息与领域库中的对应业务信息的相似度,作为该领域库中业务信息对应的所述领域词的概率。
11.一种文本摘要生成系统,包括:
概率获取模块,所述概率获取模块用于基于输入文本和输入文本对应领域的业务信息,获取普通生成词和领域词的概率;所述领域的业务信息包括领域内通用知识、业务专有知识和/或用户私有资料;
摘要生成模块,所述摘要生成模块用于基于所述普通生成词和领域词的概率以及对应词汇,生成输入文本对应的摘要信息;
所述概率获取模块,具体用于将领域库的业务信息与当前输入文本对应的编解码信息联合,拼接后做两层非线性变换,以降低维度;
获取联合后信息与领域库中的对应业务信息的相似度,作为该领域库中业务信息对应的所述领域词的概率。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811466899.0A CN109670035B (zh) | 2018-12-03 | 2018-12-03 | 一种文本摘要生成方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811466899.0A CN109670035B (zh) | 2018-12-03 | 2018-12-03 | 一种文本摘要生成方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109670035A CN109670035A (zh) | 2019-04-23 |
CN109670035B true CN109670035B (zh) | 2021-03-23 |
Family
ID=66143547
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811466899.0A Active CN109670035B (zh) | 2018-12-03 | 2018-12-03 | 一种文本摘要生成方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109670035B (zh) |
Families Citing this family (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109960733A (zh) * | 2019-04-01 | 2019-07-02 | 上海火商智能科技有限公司 | 一种端到端任务型对话系统 |
CN110188167B (zh) * | 2019-05-17 | 2021-03-30 | 北京邮电大学 | 一种融入外部知识的端到端对话方法及系统 |
CN110297885B (zh) * | 2019-05-27 | 2021-08-17 | 中国科学院深圳先进技术研究院 | 实时事件摘要的生成方法、装置、设备及存储介质 |
CN110597979B (zh) * | 2019-06-13 | 2023-06-23 | 中山大学 | 一种基于自注意力的生成式文本摘要方法 |
CN112148870B (zh) * | 2019-06-26 | 2022-09-16 | 阿里巴巴集团控股有限公司 | 摘要生成方法、装置、电子设备及计算机可读存储介质 |
CN110705310B (zh) * | 2019-09-20 | 2023-07-18 | 北京金山数字娱乐科技有限公司 | 一种文章生成的方法和装置 |
CN110811558B (zh) * | 2019-11-18 | 2022-07-05 | 郑州大学 | 基于深度学习的睡眠觉醒分析方法 |
CN111460132B (zh) * | 2020-03-10 | 2021-08-10 | 哈尔滨工业大学 | 一种基于图卷积神经网络的生成式会议摘要方法 |
CN111401045B (zh) * | 2020-03-16 | 2022-05-10 | 腾讯科技(深圳)有限公司 | 一种文本生成方法、装置、存储介质和电子设备 |
CN111813925A (zh) * | 2020-07-14 | 2020-10-23 | 混沌时代(北京)教育科技有限公司 | 一种基于语义的无监督自动摘要方法及系统 |
CN111862977B (zh) * | 2020-07-27 | 2021-08-10 | 北京嘀嘀无限科技发展有限公司 | 一种语音对话处理方法和系统 |
CN111897949B (zh) * | 2020-07-28 | 2021-10-26 | 北京工业大学 | 一种基于Transformer的引导性文本摘要生成方法 |
CN111737423B (zh) * | 2020-08-26 | 2021-01-01 | 北京声智科技有限公司 | 领域识别方法、装置、电子设备及存储介质 |
CN112528674B (zh) * | 2020-12-14 | 2023-06-30 | 网易(杭州)网络有限公司 | 文本处理方法、模型的训练方法、装置、设备及存储介质 |
CN112699231A (zh) * | 2020-12-25 | 2021-04-23 | 科讯嘉联信息技术有限公司 | 基于滑窗相关性计算和Copy机制的工单摘要总结方法 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140379378A1 (en) * | 2013-06-20 | 2014-12-25 | Koninklijke Philips N.V. | System and Method for Generating a Medical Summary Report |
CN104778161B (zh) * | 2015-04-30 | 2017-07-07 | 车智互联(北京)科技有限公司 | 基于Word2Vec和Query log抽取关键词方法 |
CN105930314B (zh) * | 2016-04-14 | 2019-02-05 | 清华大学 | 基于编码-解码深度神经网络的文本摘要生成系统及方法 |
CN108305632B (zh) * | 2018-02-02 | 2020-03-27 | 深圳市鹰硕技术有限公司 | 一种会议的语音摘要形成方法及系统 |
CN108376131A (zh) * | 2018-03-14 | 2018-08-07 | 中山大学 | 基于seq2seq深度神经网络模型的关键词抽取方法 |
CN108846130B (zh) * | 2018-06-29 | 2021-02-05 | 北京百度网讯科技有限公司 | 一种问题文本生成方法、装置、设备和介质 |
-
2018
- 2018-12-03 CN CN201811466899.0A patent/CN109670035B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN109670035A (zh) | 2019-04-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109670035B (zh) | 一种文本摘要生成方法 | |
JP7408574B2 (ja) | 質問応答としてのマルチタスク学習 | |
CN110321419B (zh) | 一种融合深度表示与交互模型的问答匹配方法 | |
CN111198937B (zh) | 对话生成及装置、计算机可读存储介质、电子设备 | |
CN110928997A (zh) | 意图识别方法、装置、电子设备及可读存储介质 | |
CN111046132A (zh) | 一种检索多轮对话的客服问答处理方法及其系统 | |
CN113032545B (zh) | 基于无监督对话预训练的对话理解与答案配置方法及系统 | |
CN109582767A (zh) | 对话系统处理方法、装置、设备及可读存储介质 | |
CN113127624B (zh) | 问答模型的训练方法及装置 | |
CN110838288A (zh) | 一种语音交互方法及其系统和对话设备 | |
CN111930914B (zh) | 问题生成方法和装置、电子设备以及计算机可读存储介质 | |
CN109344242B (zh) | 一种对话问答方法、装置、设备及存储介质 | |
CN110727778A (zh) | 一种面向税务的智能问答系统 | |
CN114722839B (zh) | 人机协同对话交互系统及方法 | |
CN111339781A (zh) | 意图识别方法、装置、电子设备和存储介质 | |
CN113268609A (zh) | 基于知识图谱的对话内容推荐方法、装置、设备及介质 | |
CN110598222A (zh) | 语言处理方法及装置、语言处理系统的训练方法及装置 | |
CN108959388A (zh) | 信息生成方法及装置 | |
CN111666400A (zh) | 消息获取方法、装置、计算机设备及存储介质 | |
CN116010581A (zh) | 一种基于电网隐患排查场景的知识图谱问答方法及系统 | |
CN115203372A (zh) | 文本意图分类方法、装置、计算机设备及存储介质 | |
CN115269836A (zh) | 意图识别方法及装置 | |
CN115062003A (zh) | 基于gpt2的云erp社区生成式问答方法 | |
CN110795531B (zh) | 一种意图识别方法、装置及存储介质 | |
CN112395887A (zh) | 对话应答方法、装置、计算机设备和存储介质 |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |