CN109657226B - 多联结注意力的阅读理解模型、系统及方法 - Google Patents
多联结注意力的阅读理解模型、系统及方法 Download PDFInfo
- Publication number
- CN109657226B CN109657226B CN201811105566.5A CN201811105566A CN109657226B CN 109657226 B CN109657226 B CN 109657226B CN 201811105566 A CN201811105566 A CN 201811105566A CN 109657226 B CN109657226 B CN 109657226B
- Authority
- CN
- China
- Prior art keywords
- word
- article
- coding
- attention
- encoding
- 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
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/205—Parsing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/237—Lexical tools
- G06F40/242—Dictionaries
-
- 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/20—Natural language analysis
- G06F40/279—Recognition of textual entities
- G06F40/289—Phrasal analysis, e.g. finite state techniques or chunking
- G06F40/295—Named entity recognition
-
- 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)
- Machine Translation (AREA)
Abstract
本公开提供了一种多联结注意力的阅读理解模型,包括:编码层,包括双层双向循环门控单元——DbBiGRU,其输入是多个离散的词向量,编码过后,每个词向量中包含上下文的信息;交互层,由三组DbBiGRU与注意力机制——Attention组成,通过多次交互,得到包含着问题信息的文章编码;预测层,包含着一个指针网络——PtrNet,经过编码与交互,得到了包含着问题信息的文章的一个表示,在此基础上,PtrNet预测出答案在文中的起始位置和终止位置。本公开解决了神经网络模型的复杂度过高及中文适应性问题。
Description
技术领域
本公开涉及自然语言处理领域,尤其涉及一种多联结注意力的阅读理解模型、系统及方法。
背景技术
自然语言处理的长期目标是让计算机能够阅读、处理文本,并且理解文本的内在含义。一种有效测试机器理解能力的方法是在给定一篇文本或相关事实的基础上,要求机器根据文本的内容,对相应的问题作出回答,这类任务通常被称作机器阅读理解。相较于传统自然语言处理任务,机器阅读理解任务涉及到词法、句法、语法、语义等多种信息,需要综合运用文本的表示、分析、理解、推理等自然语言处理与理解技术,相当具有挑战性。
针对阅读理解任务,有如下几类代表性方法:1.基于传统特征工程的方法,其核心在于通过筛选不同的特征,然后基于选取的特征构造并学习一个打分函数。该方法在部分阅读理解任务上能起到非常好的效果,但是由于其学习机制,导致在文本更加复杂、表达更加多样化的阅读理解任务上存在着大量问题。2.基于深层次语义信息的图匹配方法,该方法利用文档的深层次语义信息构造一个语义知识图谱,然后将问题转化为图匹配问题。该方法尤其适用于与事件有关的阅读理解任务,但是与传统方法类似,有着一定局限性。3.基于神经网络的方法,也是当下最为主流的完成机器阅读理解任务的方法,该方法不要求手工筛选特征,网络将在训练的过程中自动捕获特征,除此外,神经网络可以更加全面的使用词法、句法等信息,不用再将问题化为图匹配问题,因此可以处理各种类型的机器阅读理解任务,打破了传统方法与图匹配方法在某些任务方面的局限性。
对于神经网络的方法来讲,由于国内技术起步较晚,因此该方法主要用在英文阅读理解的任务上。其中有很多代表性的网络结构,如:BiDAF、Match-LSTM、FusionNet等。
在实现本发明的过程中,申请人发现上述现有技术存在如下技术缺陷:
(1)神经网络模型的中文适应性问题,在英文数据集上发挥很好的模型在面对中文阅读理解任务时,效果会大幅下降;
(2)神经网络模型的复杂度过高,这样就导致了训练时间过长以及保存的模型无法随意部署的问题。
发明内容
(一)要解决的技术问题
本公开提供了一种多联结注意力的阅读理解模型、系统及方法,以至少部分解决以上所提出的技术问题。
(二)技术方案
根据本公开的一个方面,提供了一种多联结注意力的阅读理解模型,包括:编码层,包括双层双向循环门控单元——DbBiGRU,其输入是多个离散的词向量,经过编码后每个词向量中包含上下文的信息;交互层,包括三组DbBiGRU与注意力机制一一Attention,通过多次交互,得到包含着问题信息的文章编码;预测层,包扩一个指针网络——PtrNet,根据经过编码与交互得到的包含着问题信息的文章的一个表示,PtrNet预测出答案在文中的起始位置和终止位置。
在本公开一些实施例中,编码层输入为预处理后的数据,使用两个DbBiGRU分别对文章和问题进行编码,文章编码结果记为hdoc∈R|C|*2d,问题编码结果记为hqry∈R|Q|*2d,其中,R为编码后的张量,|C|为文章长度,|Q|为问题长度,d为编码维度,其中,DbBiGRU对文章或问题进行编码的过程利用公式(1)~(5)定义:
或公式(6)定义:
其中,hdoc和hqry统一表示为ht,x为文章或问题中词序列对应的索引序列形成的向量,v(x)表示将x中每个索引转化为词向量,公式(1)中表示向前(正方向)的GRU,得到公式(2)中表示向后(反方向)的GRU,计算得到将向前和向后计算的结果和并接,得到ht1(x)∈R1*2d,即单层BiGRU的最终结果,公式(4)为公式(1)(2)(3)的合并表示;公式(5)中ht2(x)∈R1*2d为x经过双层BiGRU之后得到的编码结果,对ht1(x)再次进行运算,公式(6)为公式(4)(5)的合并表示。
在本公开一些实施例中,交互层使用点积注意力方式进行交互,将hdoc∈R|C|*2d和hqry∈R|Q|*2d做点积运算,得到评分矩阵M∈R|C|*|Q|,即
M(i,j)=hdoc(i)T·hqry(j) (7)
其中i、j为索引,hdoc(i)为文章中的第i个词所对应的向量,hdoc(i)T表示对向量hdoc(i)进行转置,得到矩阵M后,分别在列方向与行方向做softmax操作,得到两个注意力矩阵α和β:
α(t)=softmax(M(1,t),...,M(|C|,t)) (8)
α=[α(1),α(2),...,α(|Q|)] (9)
β(t)=softmax(M(t,1),...,M(t,|Q|)) (10)
β=[β(1),β(2),...,β(|C|)] (11)
其中τ为索引,公式(8)中t的范围是1到|Q|,公式(10)中t的范围是1到|C|,将得到的注意力矩阵α与β做乘法,得到矩阵A1∈R|C|*|Q|,然后将A1再与问题的编码hqry∈R|Q|*2d相乘,得到最终的包含着问题信息的上下文G1∈R|C|*2d,即:
A1=α*β (12)
G1=A1·hqry (13)
将得到的含着问题信息的上下文G1∈R|C|*2d和进行注意力计算之前的文档的输入hdoc∈R|C|*2d进行拼接得到ha1_o∈R|C|*4d,即:
ha1_o=[hdoc;G1] (14)。
在本公开一些实施例中,在交互层中,在得到ha1_o之后,重复编码和交互步骤两次,仅对文章进行编码,最终得到ha1_o∈R|C|*4d,ha2_o∈R|C|*4d,ha3_o∈R|C|*4d与A1、A2、A3;将A1、A2、A3相加,然后在列的维度取平均,得到A∈R|C|*1;将A与ha1_o,ha2_o,ha3_o拼接,并进行最后一次编码,得到最终的文档表示hd∈R|C|*(12d+1):
A=mean(A1+A2+A3) (15)
在本公开一些实施例中,预测层使用PtrNet进行预测,预测的输出为答案在文章中的开始位置s和结束位置e:
s,e=PtrNet(hd) (17)
根据本公开的另一个方面,提供了一种多联结注意力的阅读理解系统,包括:输入模块,用于输入需要处理的原始的文章与问题;预处理模块,用于对所述原始的文章与问题进行预处理;模型计算模块,用于通过所述的阅读理解模型进行计算,对预处理模块输出的词向量进行编码、交互和预测;输出模块,用于在模型计算模块计算完成后,将预测结果进行输出。
在本公开一些实施例中,所述预处理模块包括:分词命名与识别子模块,针对中文与英文的差异,对于中文数据进行分词,以及进行命名实体识别;特征提取子模块,引入两个手工特征——字级别词语共现和词级别词语共现;词典子模块,用于在分词之后加载词典,词典格式为<单词,ID(数字)>形式的二元组;单词映射子模块,用于根据加载的词典完成单词映射的工作,将单词映射为词典中对应的ID;词向量转换子模块,用于加载预训练的词向量,将所述ID转换为词向量,并与所述两个手工特征拼接,得到最终的词向量。
根据本公开的另一个方面,提供了一种多联结注意力的阅读理解方法,包括:输入原始的文章与问题;对原始的文章与问题进行预处理;通过权利要求1-5任一项所述的阅读理解模型进行计算,预测答案在文章中的开始位置s和结束位置e;将预测结果进行输出。
在本公开一些实施例中,所述对原始的文章与问题进行预处理的步骤包括:分词与命名实体识别,针对中文与英文的差异,对于中文数据进行分词,以及进行命名实体识别;特征提取,引入了两个手工特征——字级别词语共现和词级别词语共现;加载词典,分词之后,加载词典,词典格式为<单词,ID(数字)>形式的二元组;单词映射,根据加载的词典,完成单词映射的工作,将分词形成的单词映射为词典中对应的ID;转换为词向量,加载预训练的词向量,将ID转换为词向量。
在本公开一些实施例中,所述通过双层低维的循环神经网络模型进行计算,预测答案在文章中的开始位置s和结束位置e步骤包括:将输入的预处理后的数据进行编码,使用级连在一起的两层双向循环编码模块——DbBiGRU,分别对文章和问题进行编码;使用点积注意力方式进行交互,得到评分矩阵,并在评分矩阵列方向与行方向做softmax操作,得到两个注意力矩阵α与β,将得到的注意力矩阵α与β做乘法得到A1,然后将得到的矩阵A1再与问题的编码相乘,得到最终的包含着问题信息的上下文;将得到的含着问题信息的上下文和进行注意力计算之前的文档的输入进行拼接得到ha1_o;重复上述编码与交互步骤2次,并且仅进行文章层面的编码;得到ha1_o,ha2_o,ha3_o与A1、A2、A3;将A1、A2、A3相加,然后在列的维度取平均,得到A;将A与ha1_o,ha2_o,ha3_o拼接并进行最后一次编码,得到最终的文档表示hd;使用PtrNet进行预测,预测的输出为答案在文章中的开始位置s和结束位置e。
(三)有益效果
从上述技术方案可以看出,本公开多联结注意力的阅读理解模型、系统及方法至少具有以下有益效果其中之一:
(1)通过针对中文问题提取的两个手工特征以及对中文分词方法的优化改进,提供了一种适用于中文的阅读理解任务的神经网络模型,解决了神经网络模型的中文适应性问题;
(2)通过采用双层低维循环神经网络,在保证模型效果的同时,大幅减少了模型的复杂度,加快了模型的训练过程;
(3)保存下来的模型可以部署在配置较低的设备之上,无需为了运行更换配置较高设备,减少了额外资源的花销。
附图说明
图1为本公开实施例多联结注意力的阅读理解系统的结构示意图。
图2为本公开实施例多联结注意力的阅读理解模型的结构示意图。
图3为本公开实施例多联结注意力的阅读理解方法的流程图。
图4为本公开实施例多联结注意力的阅读理解方法预处理步骤的流程图。
具体实施方式
本公开提供了一种多联结注意力的阅读理解模型、系统及方法。为了处理一般阅读理解模型系统过于复杂的问题,此处使用了双层低维循环神经网络对主流的单层高维循环神经网络进行了替代,但是该方式加深了神经网络结构,随着网络结构加深,有可能出现参数更新缓慢以及原始信息丢失的问题,因此加入了多联结注意力机制,即每次输入给循环神经网络的向量都是前一级的输出与注意力机制计算后的向量的联结,在最后一层时会联结除原始输入外所有的中间输出。
为使本公开的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本公开进一步详细说明。
本公开某些实施例于后方将参照所附附图做更全面性地描述,其中一些但并非全部的实施例将被示出。实际上,本公开的各种实施例可以由许多不同形式实现,而不应被解释为限于此处所阐述的实施例;相对地,提供这些实施例使得本公开满足适用的法律要求。
在本公开的一个示例性实施例中,提供了一种多联结注意力的阅读理解系统。图1为本公开实施例多联结注意力的阅读理解系统的结构示意图。如图1所示,本公开多联结注意力的阅读理解系统包括:输入模块、预处理模块、模型计算模块及输出模块。
以下对本实施例多联结注意力的阅读理解系统的各个部分进行详细说明。
输入模块用于输入需要处理的文章与问题。在阅读理解任务中,输入为文章与对应的问题,输出为预测答案(此处的答案一般是文章中的一个连续片段)。但是由于使用神经网络的方法,原始的文章与问题无法直接输入,因此在进行神经网络计算之前,需要加入预处理模块。
预处理模块包括分词与命名实体识别子模块、特征提取子模块、词典子模块、单词映射子模块以及词向量转换子模块。具体地,分词与命名实体识别子模块针对中文与英文的差异,对于中文数据,首先进行分词的工作,将连续的文字拆分成一个一个的词;为了提升分词效果,还进行了命名实体识别,从而针对专有名词等可以更好的划分。特征提取子模块是为了神经网络模型可以更好的处理中文数据以及处理在不同语境下导致的分词不一致的问题,这里引入了两个手工特征——字级别词语共现和词级别词语共现,共现指某个词/字在文章和对应的问题中同时出现的现象。词典子模块用于在分词并提取特征之后加载词典,词典格式为<单词,索引(数字)>形式的二元组。单词映射子模块用于根据加载的词典完成单词映射的工作,将单词映射为词典中对应的索引。词向量转换子模块用于加载预训练的词向量,将所述索引转换为词向量。最后,将转换完成的词向量与特征提取模块的两个手工特征拼接,得到最终的词向量。
模型计算模块用于通过改进的双层低维的循环神经网络进行计算,对预处理模块输出的词向量进行编码、交互和预测。
为了解决模型复杂度过高的问题,本系统的阅读理解模型中将循环神经网络的使用方式进行了改进。纵观当下主流的机器阅读理解模型,使用的均是单层且隐层维度较高的循环神经网络,由于循环神经网络的内部构造,不可避免的会导致模型复杂度变大,训练效率降低且保存下来的模型体积较大等问题;同时,还容易出现对于过长文本的长时依赖消失的问题。针对上述问题,本实施例的模型改为使用双层低维的循环神经网络,大幅降低了模型的复杂度,提升了训练速度,保存下来的模型体积也较小,除此之外,还在一定程度上缓解了长时依赖消失的问题。另外,关于双层低维循环神经网络的使用也较为简单,在搭建网络时指明参数即可。
阅读理解模型整体结构如图2所示,整体由DbBiGRU(双层双向循环门控单元)、Attention(Attention,注意力机制)及最终的PtrNet(Pointer-Net,指针网络,本质也是循环神经网络与注意力机制)拼接构成。
具体的,本实施例阅读理解模型可以按照功能划分为三部分:编码层、交互层、预测层。图2最左侧的虚线框中为编码层,结构上由两个DbBiGRU组成,可以看作是一个整体阅读的阶段,最左侧的输入是一个个离散的词向量,编码过后,每个词向量中就会包含着上下文的信息;中间虚线框中为交互层,由三组DbBiGRU与Attention组成,可以看作是带着问题到文章中找答案的过程,通过几次交互,最终会得到包含着问题信息的文章;最右侧为预测层,包含着一个PtrNet,可以视作最终确认答案范围的过程,经过前面的编码与交互,得到了包含着问题信息的文章的一个表示,在这个基础上,预测出答案在文中的起始位置和终止位置。
下面以公式的形式,进一步描述模型的计算细节:
首先是编码层,编码层输入为预处理后的数据,使用两个DbBiGRU分别对文章和问题进行编码,文章编码结果记为hdoc∈R|C|*2d,问题编码结果记为hqry,∈R|Q|*2d,其中,R为编码后的张量,|C|为文章长度,|Q|为问题长度,d为编码维度。构造词典,将词索引化之后,无论是文章还是问题都可以看作是一个由词的索引组成的序列x。DbBiGRU对文章或问题进行编码的过程可以利用公式(1)~(5)或公式(6)定义。
公式(1)(2)(3)为单层BiGRU的计算方式,其中,x为文章或问题中词序列对应的索引序列形成的向量,v(x)表示将x中每个索引转化为词向量。公式(1)中表示向前(正方向)的GRU,得到公式(2)由示向后(反方向)的GRU,计算得到将向前和向后计算的结果和并接,得到ht1(x)∈R1*2d,即单层BiGRU的最终结果。可以将公式(1)(2)(3)合并表示为公式(4)。公式(5)中ht2(x)∈R1*2d为x经过双层BiGRU之后得到的编码结果,只需要对ht1(x)再次进行运算即可。可以将公式(4)(5)合并表示为公式(6)。因为对文章和问题的编码过程一致,因此公式(1)~(6)中统一用t代表doc或qry。下文中hdoc和hqry即为利用公式(1)~(5)或公式(6)对文章和问题进行DbBiGRU之后得到的编码结果。
之后是交互层,此处使用点积注意力方式进行交互,首先将hdoc∈R|C|*2d和hqry∈R|Q|*2d做点积运算,得到评分矩阵M∈R|C|*|Q|。
M(i,j)=hdoc(i)T·hqry(j) (7)
其中i、j为索引,例如hdoc(i)为文章中的第i个词所对应的向量。hdoc(i)T表示对向量hdoc(i)进行转置。
得到矩阵M后,分别在列方向与行方向做softmax操作,得到两个注意力矩阵α和β:
α(t)=softmax(M(1,t),...,M(|C|,t)) (8)
α=[α(1),α(2),...,α(|Q|)] (9)
β(t)=softmax(M(t,1),...,M(t,|Q|)) (10)
β=[β(1),β(2),...,β(|C|)] (11)
其中t为索引,公式(8)中t的范围是1到|Q|,公式(10)中t的范围是1到|C|。
将得到的注意力矩阵α与β做乘法,得到矩阵A1∈R|C|*|Q|,再将A1与问题的编码hqry∈R|Q|*2d相乘,得到最终的包含着问题信息的上下文G1∈R|C|*2d,即:
A1=α*β (12)
G1=A1·hqry (13)
将得到的含着问题信息的上下文G1∈R|C|*2d和进行注意力计算之前的文档的输入hdoc∈R|C|*2d进行拼接得到ha1_o∈R|C|*4d,即:
ha1_o=[hdoc;G1] (14)
在得到ha1_o之后,重复编码和交互步骤两次(仅对文章进行编码),最终得到ha1_o∈R|C|*4d,ha2_o∈R|C|*4d,ha3_o∈R|C|*4d与A1、A2、A3;将A1、A2、A3相加,然后在列的维度取平均,得到A∈R|C|*1;将A与ha1_o,ha2_o,ha3_o拼接并进行最后一次编码,得到最终的文档表示hd∈R|C|*(12d+1):
A=mean(A1+A2+A3) (15)
最后是预测层,使用PtrNet进行预测,预测的输出为答案在文章中的开始位置s和结束位置e:
s,e=PtrNet(hd) (17)
在模型计算模块计算完成后,输出模块将预测结果进行输出。
在本公开的又一个示例性实施例中,提供了一种多联结注意力的阅读理解方法。图3为本实施例多联结注意力的阅读理解方法的流程图。如图所示,本实施例多联结注意力的阅读理解方包括:
输入原始的文章与问题;
对原始的文章与问题进行预处理;
通过双层低维的循环神经网络模型进行计算,预测答案在文章中的开始位置s和结束位置e;
将预测结果进行输出。
图4为本实施例多联结注意力的阅读理解方法预处理步骤的流程图。如图4所示,所述对原始的文章与问题进行预处理的步骤包括:
分词与命名实体识别,对于中文数据,首先要做的是分词的工作,将连续的文字拆分成一个一个的词,此处为了提升分词效果,还加入了命名实体识别的工作,从而针对专有名词等可以更好的划分;
特征提取,为了神经网络模型可以更好的处理中文数据以及处理在不同语境下导致的分词不一致的问题,这里引入了两个手工特征——字级别词语共现和词级别词语共现;
加载词典,分词并提取特征之后,加载词典,词典格式为<单词,索引(数字)>形式的二元组;
单词映射,根据加载的词典,完成单词映射的工作,将单词映射为词典中对应的索引;
转换为词向量,加载预训练的词向量,将索引转换为词向量。将转换的词向量与提取的两个特征拼接,得到最终的词向量。
下面举例说明预处理工作:
第一步,输入文章与问题。文章:“白云山坐落在广州,主峰海拔382米。”(为了方便举例,此处对文章长度进行了简化),问题:“白云山的海拔是多少?”。
第二步,分词及命名实体识别。文章:“白云山/坐落/在/广州/,/主峰/海拔/382/米/。”,问题:“白云山/的/海拔/是/多少/?”。此处的命名实体是白云山,以‘/’为划分符号。
第三步,手工特征提取。首先是词级别共现特征,文章:“1,0,0,0,0,0,1,0,1,0”,问题:“1,0,1,0,0,0”。此处“白云山”、“海拔”、“米”这三个词存在共现,将文章和问题中对应位置标注1,其余位置标注0。之后是字级别共现特征,即以字为单位,查看是否有共现。例如对于白云山一词,‘白’、‘云’、‘山’三字均出现了共现,则该词的特征值为3/3,分子的3是该词中共现的字的和,分母的3是‘白云山’词的长度。本例字级别的特征最终得到的结果与词级别的一致。
第四步,加载词典并映射,此处给出映射后的形式。文章:“100,30,42,55,78,34,86,93,27,44”,问题:“100,1,86,5,7,50”。
关于最后一步的映射与第四步类似,此处不再赘述。
所述通过双层低维的循环神经网络模型进行计算,预测答案在文章中的开始位置s和结束位置e步骤包括:
将输入的预处理后的数据进行编码,使用两个BiGRU分别对文章和问题进行编码,在得到单层BiGRU的最终结果的基础上,双层BiGRU完成扩展;
使用点积注意力方式进行交互,得到评分矩阵,并在评分矩阵列方向与行方向做softmax操作,得到两个注意力矩阵α与β,将得到的注意力矩阵α与β做乘法得到A1,然后将得到的矩阵A1再与问题的编码相乘,得到最终的包含着问题信息的上下文;将得到的含着问题信息的上下文和进行注意力计算之前的文档的输入进行拼接得到ha1_o;
重复上述编码与交互步骤2次,并且仅进行文章层面的编码;得到ha1_o,ha2_o,ha3_o与A1、A2、A3;将A1、A2、A3相加,然后在列的维度取平均,得到A。将A与ha1_o,ha2_o,ha3_o拼接并进行最后一次编码,得到最终的文档表示hd。
使用PtrNet进行预测,预测的输出为答案在文章中的开始位置s和结束位置e。
为了达到简要说明的目的,上述实施例1中任何可作相同应用的技术特征叙述皆并于此,无需再重复相同叙述。
至此,已经结合附图对本公开实施例进行了详细描述。需要说明的是,在附图或说明书正文中,未绘示或描述的实现方式,均为所属技术领域中普通技术人员所知的形式,并未进行详细说明。此外,上述对各元件和方法的定义并不仅限于实施例中提到的各种具体结构、形状或方式,本领域普通技术人员可对其进行简单地更改或替换。
此外,除非特别描述或必须依序发生的步骤,上述步骤的顺序并无限制于以上所列,且可根据所需设计而变化或重新安排。并且上述实施例可基于设计及可靠度的考虑,彼此混合搭配使用或与其他实施例混合搭配使用,即不同实施例中的技术特征可以自由组合形成更多的实施例。
在此提供的算法和显示不与任何特定计算机、虚拟系统或者其它设备固有相关。各种通用系统也可以与基于在此的示教一起使用。根据上面的描述,构造这类系统所要求的结构是显而易见的。此外,本公开也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本公开的内容,并且上面对特定语言所做的描述是为了披露本公开的最佳实施方式。
本公开可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。本公开的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)来实现根据本公开实施例的相关设备中的一些或者全部部件的一些或者全部功能。本公开还可以实现为用于执行此处所描述的方法的一部分或者全部的设备或者装置程序(例如,计算机程序和计算机程序产品)。这样的实现本公开的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。
本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。并且,在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。
类似地,应当理解,为了精简本公开并帮助理解各个公开方面中的一个或多个,在上面对本公开的示例性实施例的描述中,本公开的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本公开要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如下面的权利要求书所反映的那样,公开方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本公开的单独实施例。
以上所述的具体实施例,对本公开的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本公开的具体实施例而已,并不用于限制本公开,凡在本公开的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本公开的保护范围之内。
Claims (7)
1.一种多联结注意力的阅读理解模型装置,包括:
编码层,包括双层双向循环门控单元,其输入是多个离散的词向量,经过编码后每个词向量中包含上下文的信息;
交互层,包括三组双向循环门控单元与注意力机制单元,通过多次交互,得到包含着问题信息的文章编码,其中,多次交互是指使用注意力机制,对文章和问题的编码进行了三次交互计算;
预测层,包括一个指针网络,根据经过编码与交互得到的包含着问题信息的文章的一个向量化表示,指针网络预测出答案在文中的起始位置和终止位置;
其中,编码层输入为预处理后的数据,使用两个双向循环门控单元分别对预处理后的数据的文章和问题进行编码,文章编码结果记为hdoc∈R|C|*2d,问题编码结果记为hqry∈R|Q|*2d,其中,R为编码后的张量,|C|为文章长度,文章长度为文章经过分词操作之后所包含词的个数,|Q|为问题长度,问题长度为问题经过分词操作之后所包含词的个数,d为编码维度,其中,双向循环门控单元对文章或问题进行编码的公式表示为公式(1)~(5):
或公式(6):
其中,x为文章或问题中词序列对应的索引序列形成的向量,长度为L,v(x)表示将x中每个索引转化为词向量,公式(1)中表示向前的GRU,得到公式(2)中表示向后的GRU,计算得到将向前和向后计算的结果和拼接,得到hl1,即第一层BiGRU的最终结果,公式(4)为公式(1)(2)(3)的合并表示;公式(5)中hl2为x经过双层BiGRU之后得到的编码结果,即对hl1再次进行运算,公式(6)为公式(4)(5)的合并表示;其中,向前为正常的文字阅读顺序,即从前往后;向后为与向前反向的文字阅读顺序,即从后往前;
将文章和问题经过预处理后的数据分别使用上述方式进行编码,即可得到文章的编码结果hdoc∈R|C|*2d和问题的编码结果hqry∈R|Q|*2d,如公式(7)(8)所示:
其中,xdoc表示文章的词序列对应的索引序列形成的向量,xqry表示问题的词序列对应的索引序列形成的向量,R为编码后的张量;
其中,交互层使用点积注意力方式进行交互,将hdoc∈R|C|*2d和hqry∈R|Q|*2d做点积运算,得到评分矩阵M∈R|C|*|Q|,即
M(i,j)=hdoc(i)T·hqry(j) (9)
其中i、j为索引,hdoc(i)为文章中的第i个词所对应的向量,hdoc(i)T表示对向量hdoc(i)进行转置,得到矩阵M后,分别在列方向与行方向做softmax操作,得到两个注意力矩阵α和β:
α(t)=softmax(M(1,t),...,M(|C|,t)) (10)
α=[α(1),α(2),...,α(|Q|)] (11)
β(t′)=softmax(M(t′,1),...,M(t′,|Q|)) (12)
β=[β(1),β(2),...,β(|C|)] (13)
其中t和t′为索引,公式(10)中t的范围是1到|Q|,公式(12)中t′的范围是1到|C|,将得到的注意力矩阵α与β做乘法,得到矩阵A1∈R|C|*|Q|,然后将A1再与问题的编码hqry∈R|Q|*2d相乘,得到最终的包含着问题信息的上下文G1∈R|C|*2d,即:
A1=α*β (14)
G1=A1·hqry (15)
将得到的含着问题信息的上下文G1∈R|C|*2d和进行注意力计算之前的文档的输入hdoc∈R|C|*2d进行拼接得到ha1_o∈R|C|*4d,即:
ha1_o=[hdoc;G1] (16);
其中,在交互层中,在得到ha1_o之后,重复编码和交互步骤两次,仅对文章进行编码,最终得到ha1_o∈R|C|*4d,ha2_o∈R|C|*4d,ha3_o∈R|C|*4d与A1、A2、A3;将A1、A2、A3相加,然后在列的维度取平均,得到A∈R|C|*1;将A与ha1_o,ha2_o,ha3_o拼接,并进行最后一次编码,得到最终的文档表示hd∈R|C|*(12d+1):
A=mean(A1+A2+A3) (17)
其中,在交互层中,在得到ha1_o之后,重复编码和交互步骤两次,仅对文章进行编码,最终得到ha1_o∈R|C|*4d,ha2_o∈R|C|*4d,ha3_o∈R|C|*4d与A1、A2、A3包括:得到ha1_o后,将其送入双向循环门控单元编码,将编码结果带入公式(9)-(16)的hdoc,得到ha2_o与A2;将ha2_o送入双向循环门控单元编码,继续将编码结果带入公式(9)-(16)的hdoc,得到ha3_o与A3。
2.根据权利要求1所述的阅读理解模型装置,其中
预测层使用PtrNet进行预测,预测的输出为答案在文章中的开始位置s和结束位置e:
s,e=PtrNet(hd) (19)
其中,s为模型预测的答案在文章中的开始位置,e为模型预测的答案在文章中的结束位置,hd为最终的文档向量表示。
3.一种多联结注意力的阅读理解系统,包括:
输入模块,用于输入需要处理的原始的文章与问题;
预处理模块,用于对所述原始的文章与问题进行预处理;
模型计算模块,用于通过如权利要求1或2所述的阅读理解模型装置进行计算,对预处理模块输出的词向量进行编码、交互和预测;
输出模块,用于在模型计算模块计算完成后,将预测结果进行输出。
4.根据权利要求3所述的阅读理解系统,其中,所述预处理模块包括:
分词命名与识别子模块,针对中文与英文的差异,对于中文数据进行分词,以及进行命名实体识别;
特征提取子模块,引入两个手工特征,两个手工特征即字级别词语共现和词级别词语共现;
词典子模块,用于在分词之后加载词典,词典格式为单词和单词索引的二元组,单词索引从0开始,与单词一一对应;
单词映射子模块,用于根据加载的词典完成单词映射的工作,将单词映射为词典中对应的单词索引;
词向量转换子模块,用于加载预训练的词向量,将所述单词索引转换为词向量,并与所述两个手工特征拼接,得到最终的词向量。
5.一种多联结注意力的阅读理解方法,包括:
输入原始的文章与问题;
对原始的文章与问题进行预处理;
通过权利要求1或2所述的阅读理解模型装置进行计算,预测答案在文章中的开始位置s和结束位置e;
将预测结果进行输出。
6.根据权利要求5所述的阅读理解方法,所述对原始的文章与问题进行预处理的步骤包括:
分词与命名实体识别,针对中文与英文的差异,对于中文数据进行分词,以及进行命名实体识别;
特征提取,引入了两个手工特征,两个手工特征即字级别词语共现和词级别词语共现;
加载词典,分词之后,加载词典,词典格式为单词和单词索引的二元组,单词索引从0开始,与单词一一对应;
单词映射,根据加载的词典,完成单词映射的工作,将分词形成的单词映射为词典中对应的单词索引;
转换为词向量,加载预训练的词向量,将单词索引转换为词向量。
7.根据权利要求5所述的阅读理解方法,通过双层低维的循环神经网络模型进行计算,预测答案在文章中的开始位置s和结束位置e步骤包括:
将输入的预处理后的数据进行编码,使用级连在一起的两层双向循环编码模块——双向循环门控单元,分别对文章和问题进行编码,其中,级连表示是两层双向循环编码模块是在一起的,数据经过第一层双向循环编码模块得到输出后直接送入第二层双向循环编码模块;
使用点积注意力方式进行交互,得到评分矩阵,并在评分矩阵列方向与行方向做softmax操作,得到两个注意力矩阵α与β,将得到的注意力矩阵α与β做乘法得到A1,然后将得到的矩阵A1再与问题的编码相乘,得到最终的包含着问题信息的上下文;将得到的含着问题信息的上下文和进行注意力计算之前的文档的输入进行拼接得到ha1_o;
使用指针网络单元进行预测,预测的输出为答案在文章中的开始位置s和结束位置e;
其中,重复编码和交互步骤两次,仅对文章进行编码,最终得到ha1_o∈R|C|*4d,ha2_o∈R|C|*4d,ha3_o∈R|C|*4d与A1、A2、A3包括:得到ha1_o后,将其送入双向循环门控单元编码,将编码结果带入公式(9)-(16)的hdoc,得到ha2_o与A2;将ha2_o送入双向循环门控单元编码,继续将编码结果带入公式(9)-(16)的hdoc,得到ha3_o与A3。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811105566.5A CN109657226B (zh) | 2018-09-20 | 2018-09-20 | 多联结注意力的阅读理解模型、系统及方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811105566.5A CN109657226B (zh) | 2018-09-20 | 2018-09-20 | 多联结注意力的阅读理解模型、系统及方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109657226A CN109657226A (zh) | 2019-04-19 |
CN109657226B true CN109657226B (zh) | 2022-12-27 |
Family
ID=66110326
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811105566.5A Active CN109657226B (zh) | 2018-09-20 | 2018-09-20 | 多联结注意力的阅读理解模型、系统及方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109657226B (zh) |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110222152B (zh) * | 2019-05-29 | 2021-05-14 | 北京邮电大学 | 一种基于机器阅读理解的问题答案获取方法及系统 |
CN110287290A (zh) * | 2019-06-26 | 2019-09-27 | 平安科技(深圳)有限公司 | 基于阅读理解的营销线索提取方法、装置及计算机可读存储介质 |
CN112329465A (zh) * | 2019-07-18 | 2021-02-05 | 株式会社理光 | 一种命名实体识别方法、装置及计算机可读存储介质 |
WO2021012183A1 (zh) * | 2019-07-23 | 2021-01-28 | 中山大学 | 一种可推理的机器学习阅读理解系统以及存储介质 |
CN112445887B (zh) * | 2019-08-29 | 2024-05-03 | 南京大学 | 基于检索的机器阅读理解系统的实现方法及装置 |
CN111241807B (zh) * | 2019-12-31 | 2021-06-29 | 浙江大学 | 一种基于知识引导注意力的机器阅读理解方法 |
CN111291188B (zh) * | 2020-02-20 | 2023-06-23 | 阿基米德(上海)传媒有限公司 | 一种智能信息抽取方法及系统 |
CN112183085A (zh) * | 2020-09-11 | 2021-01-05 | 杭州远传新业科技有限公司 | 机器阅读理解方法、装置、电子设备及计算机存储介质 |
CN112699960B (zh) * | 2021-01-11 | 2023-06-09 | 华侨大学 | 基于深度学习的半监督分类方法、设备及存储介质 |
CN113010662B (zh) * | 2021-04-23 | 2022-09-27 | 中国科学院深圳先进技术研究院 | 一种层次化会话式机器阅读理解系统和方法 |
CN116468048B (zh) * | 2023-04-25 | 2024-02-13 | 深圳市智霊荟萃科技发展有限公司 | 一种基于大数据知识图谱的互联网电商投诉智能处理方法 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108415977A (zh) * | 2018-02-09 | 2018-08-17 | 华南理工大学 | 一个基于深度神经网络及强化学习的生成式机器阅读理解方法 |
CN108460019A (zh) * | 2018-02-28 | 2018-08-28 | 福州大学 | 一种基于注意力机制的新兴热点话题检测系统 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11087199B2 (en) * | 2016-11-03 | 2021-08-10 | Nec Corporation | Context-aware attention-based neural network for interactive question answering |
-
2018
- 2018-09-20 CN CN201811105566.5A patent/CN109657226B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108415977A (zh) * | 2018-02-09 | 2018-08-17 | 华南理工大学 | 一个基于深度神经网络及强化学习的生成式机器阅读理解方法 |
CN108460019A (zh) * | 2018-02-28 | 2018-08-28 | 福州大学 | 一种基于注意力机制的新兴热点话题检测系统 |
Non-Patent Citations (3)
Title |
---|
《Research on Construction Method of Chinese NT Clause Based on Attention-LSTM》;Teng Mao 等;《CCF International Conference on Natural Language Processing and Chinese Computing》;20180814;全文 * |
基于双线性函数注意力Bi-LSTM模型的机器阅读理解;刘飞龙等;《计算机科学》;20170615;全文 * |
基于双重注意力模型的微博情感分析方法;张仰森等;《清华大学学报(自然科学版)》;20180215(第02期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN109657226A (zh) | 2019-04-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109657226B (zh) | 多联结注意力的阅读理解模型、系统及方法 | |
Kiela et al. | Dynamic meta-embeddings for improved sentence representations | |
CN109241524B (zh) | 语义解析方法及装置、计算机可读存储介质、电子设备 | |
CN111753081B (zh) | 基于深度skip-gram网络的文本分类的系统和方法 | |
CN110490946B (zh) | 基于跨模态相似度和生成对抗网络的文本生成图像方法 | |
CN112487182A (zh) | 文本处理模型的训练方法、文本处理方法及装置 | |
CN110287961A (zh) | 中文分词方法、电子装置及可读存储介质 | |
CN109214006B (zh) | 图像增强的层次化语义表示的自然语言推理方法 | |
US20210375280A1 (en) | Systems and methods for response selection in multi-party conversations with dynamic topic tracking | |
CN110309511B (zh) | 基于共享表示的多任务语言分析系统及方法 | |
CN114676234A (zh) | 一种模型训练方法及相关设备 | |
CN111400494B (zh) | 一种基于GCN-Attention的情感分析方法 | |
CN112749274B (zh) | 基于注意力机制和干扰词删除的中文文本分类方法 | |
CN113392209A (zh) | 一种基于人工智能的文本聚类方法、相关设备及存储介质 | |
CN115221846A (zh) | 一种数据处理方法及相关设备 | |
CN115438215A (zh) | 图文双向搜索及匹配模型训练方法、装置、设备及介质 | |
JP2022145623A (ja) | ヒント情報を提示する方法及び装置並びにコンピュータプログラム | |
CN112507124A (zh) | 一种基于图模型的篇章级别事件因果关系抽取方法 | |
CN111145914B (zh) | 一种确定肺癌临床病种库文本实体的方法及装置 | |
CN115374771A (zh) | 文本标签确定方法及装置 | |
Pal et al. | R-GRU: Regularized gated recurrent unit for handwritten mathematical expression recognition | |
CN109902273A (zh) | 关键词生成模型的建模方法和装置 | |
CN111445545B (zh) | 一种文本转贴图方法、装置、存储介质及电子设备 | |
Rodriguez | Deep Learning Systems: Algorithms, Compilers, and Processors for Large-Scale Production | |
CN110852066B (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 |