CN112445887B - 基于检索的机器阅读理解系统的实现方法及装置 - Google Patents
基于检索的机器阅读理解系统的实现方法及装置 Download PDFInfo
- Publication number
- CN112445887B CN112445887B CN201910808954.8A CN201910808954A CN112445887B CN 112445887 B CN112445887 B CN 112445887B CN 201910808954 A CN201910808954 A CN 201910808954A CN 112445887 B CN112445887 B CN 112445887B
- Authority
- CN
- China
- Prior art keywords
- documents
- retrieval
- module
- attention
- vector
- 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
- 238000000034 method Methods 0.000 title claims abstract description 33
- 239000000284 extract Substances 0.000 claims abstract description 13
- 239000013598 vector Substances 0.000 claims description 46
- 239000011159 matrix material Substances 0.000 claims description 18
- 230000002457 bidirectional effect Effects 0.000 claims description 11
- 238000012549 training Methods 0.000 claims description 11
- 238000004364 calculation method Methods 0.000 claims description 8
- 238000004590 computer program Methods 0.000 claims description 6
- 238000003062 neural network model Methods 0.000 claims description 5
- 125000004122 cyclic group Chemical group 0.000 claims description 4
- 238000011478 gradient descent method Methods 0.000 claims description 3
- 238000013528 artificial neural network Methods 0.000 claims description 2
- 230000008447 perception Effects 0.000 claims description 2
- 230000000306 recurrent effect Effects 0.000 claims 2
- 230000003993 interaction Effects 0.000 description 4
- 238000012795 verification Methods 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 3
- 238000000605 extraction Methods 0.000 description 3
- 238000011160 research Methods 0.000 description 3
- ORILYTVJVMAKLC-UHFFFAOYSA-N Adamantane Natural products C1C(C2)CC3CC1CC2C3 ORILYTVJVMAKLC-UHFFFAOYSA-N 0.000 description 2
- 241000282414 Homo sapiens Species 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 230000018109 developmental process Effects 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 238000011156 evaluation Methods 0.000 description 2
- 238000003058 natural language processing Methods 0.000 description 2
- 230000011218 segmentation Effects 0.000 description 2
- 241000288105 Grus Species 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 230000008451 emotion Effects 0.000 description 1
- 239000012634 fragment Substances 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 210000005036 nerve Anatomy 0.000 description 1
- 238000010606 normalization Methods 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 238000013179 statistical model Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/31—Indexing; Data structures therefor; Storage structures
- G06F16/313—Selection or weighting of terms for indexing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/332—Query formulation
- G06F16/3325—Reformulation based on results of preceding query
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/332—Query formulation
- G06F16/3329—Natural language query formulation or dialogue systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/335—Filtering based on additional data, e.g. user or group profiles
-
- 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/08—Learning methods
- G06N3/088—Non-supervised learning, e.g. competitive learning
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Mathematical Physics (AREA)
- General Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Computational Linguistics (AREA)
- Artificial Intelligence (AREA)
- Software Systems (AREA)
- Biomedical Technology (AREA)
- Computing Systems (AREA)
- Molecular Biology (AREA)
- General Health & Medical Sciences (AREA)
- Evolutionary Computation (AREA)
- Biophysics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Health & Medical Sciences (AREA)
- Human Computer Interaction (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
基于检索的机器阅读理解系统的实现方法及装置,包括文本初步检索模块、检索结果重排序模块和机器阅读理解模块,文本初步检索模块被配置为事先构造领域文档集合,提取文档集合特征,将用户提出的问题和领域文档集合中的文档计算相似度,返回相似度最高的前x个文档给检索结果重排序模块,检索结果重排序模块根据所得x个文档与问题重新计算相关性,并将相关性最高的文档传导至机器阅读理解模块,机器阅读理解模块根据问题从最相关的文档中抽取出问题对应的答案。本发明针对用户的问题找到最相关的文档,将得到的文档和用户的问题交给机器阅读理解模型,最终得到问题对应的答案,构成了一个基于检索的机器阅读理解系统,提高问题类搜索的效率。
Description
技术领域
本发明属于计算机技术领域,涉及文本检索和自然语言的机器阅读理解,为一种基于检索的机器阅读理解系统。
技术背景
随着科技的发展,信息的高效和快速的获取对人们来说越来越重要,当用户在网络搜索问题的答案时,现有的搜索引擎不仅仅返回一个检索文档的列表,而是同时会阅读和理解这些互联网文档并且高亮显示最有可能的答案在检索结果的前列。如何利用文本检索和机器阅读理解技术来帮助用户查找到满意的答案,是自然语言处理和信息检索技术研究领域中的一个经典课题。文本检索作为信息检索的一个子领域,让机器具备从海量的互联网文本中检索出用户所需的相关文本;机器阅读理解作为自然语言理解的一个子领域,让机器具备自然语言的阅读理解与问答能力,一直是学术界和工业界关注的热点问题,也是目前智能语音和人机交互的核心难题。机器阅读理解(Machine ReadingComprehension)是让机器像人类一样通过阅读自然语言文本,然后经过推理总结,从而能够精准地回答和阅读内容相关的问题。
机器阅读理解方法分为两类:分别为生成式和抽取式。生成式是从理论上来说不受知识的局限,对于问题自动生成答案,但是生成式有时生成的答案和用户的问题没关系,语法和句式上存在很大错误,不能很好地体现出人类的思维逻辑以及自然表述的特点。抽取式通过给定问题以及相关的文章进行训练,让机器具备阅读理解的能力,并对测试集中的新问题,在相关文章中抽取出相应的答案。相对于生成式来说,抽取式的技术优势更加明显,应用更为广泛。
近年来机器阅读理解的进步主要归功于:大规模以篇章、问题、答案三元组形式的监督数据集的构建,以及深度神经阅读理解模型的发展。传统的方法大多是基于规则的词袋方法加上一些语言学上的处理,例如词干、语义类别识别和指代消解,这种方法的代表是DEEP READ系统;或者是手动地基于词汇和语义对应生成一些规则,这种方法的代表是QUARC系统。在2013年到2015年期间,研究者们创建了以篇章、问题、答案三元组形式的人工标注的阅读理解数据集并且将阅读理解问题形式化为一个监督学习的问题,他们希望能够训练一个统计学模型将篇章,问题对映射到对应的答案。自斯坦福机器阅读理解数据集SQuAD问世以来,经过谷歌、斯坦福大学、艾伦研究院、微软、腾讯、百度、科大讯飞等在内的众多研究机构的不懈努力,形成了机器阅读理解的pipleline,即“词嵌入,语义编码,语义交互,答案边界预测”这样一套四层机器阅读理解模型体系,这种体系的代表方法有BIDAF,Match-LSTM,R-net,QANet等。该体系主要思想是:首先将问题和篇章中的每个词映射到高维语义空间,其次将问题和篇章分别进行编码,以获得关于上下文的信息,接着将问题的编码和篇章的编码进行融合使得机器学习到语义交互信息,然后根据语义交互信息生成边界开始位置和边界结束位置的概率分布,分别取最大概率值对应的边界起始位置,由边界起始位置从文章中抽取出答案片段。
现在,通过搜索引擎来搜索问题,会返回问题相关的网页,用户需要点击网页进行浏览,查找自己需要的答案。然而有时候问题答案对应的网页可能会排得靠后并且用户需要阅读长长的网页内容才能找到答案,这个过程很耗时,如果搜索引擎能够针对用户的问题,准确为用户返回问题对应的答案,这将会极大的节省用户宝贵的时间,提高搜索效率,并且带来良好的用户体验。
发明内容
本发明要解决的问题是:现有技术中,搜索引擎的反馈为一系列网页文档,不能直接返回答案,针对问题搜索答案的效率不高。
本发明的技术方案为:基于检索的机器阅读理解系统的实现方法,包括文本初步检索模块、检索结果重排序模块和机器阅读理解模块,文本初步检索模块被配置为事先构造领域文本集合,提取文本集合特征,对用户提出的问题,与领域文本集合中的文档计算相似度,得到相似度最高的前x个文档作为初步排序结果,将初步排序结果返回给检索结果重排序模块,检索结果重排序模块根据所述x个文档与问题重新计算相关性,并将相关性最高的文档传导至机器阅读理解模块,机器阅读理解模块根据问题从最相关的文档中抽取出问题对应的答案。
作为优选方式,所述文本初步检索模块事先构造领域文本集合,提取文本集合特征,包括:
根据基于检索的机器阅读理解系统所要对应的领域构建领域文本集合,对搜集的文档进行分词,使用基于bigram的TFIDF方法提取文档的词频特征,提取文档的词频特征具体方法为:
TFIDFuni_bi=log(tf+1)×log((N-Nt+0.5)/(Nt+0.5))
其中tf表示unigram,bigram的token对应的频率,Nt表示unigram,bigram的token所出现的文档数目,N表示总的文档数目;将每个文档表示成unigram,bigram的token的向量形式,即TFIDFuni_bi值组成的矩阵,对于用户提出的问题也表示成相应的向量形式,将问题向量与文档集合对应的矩阵进行点积,对文档按照点积值进行降序排列,返回点积值最大的前x篇文档。
作为优选方式,所述检索结果重排序模块对初步排序结果进行重排序,具体如下:
将用户提出的问题与初步检索得到的x篇文档分别计算score值,计算方式如下:
其中queryn-gram表示用户提出问题的n-gram集合,contentn-gram表示文档的n-gram集合,com表示两个集合交集的元素数目,count(queryn-gram)表示queryn-gram集合元素数目,这里M取4,最后取score最大的文档和用户提出的问题传导至机器阅读理解模块。
作为优选方式,所述机器阅读理解模块包括四层结构,第一层是词的预训练表示层,根据文本语料通过无监督学习的方法ELMo训练得到关于词的向量表示;第二层是上下文表示层,用于将上一层得到的词向量的表示经过两层的双向GRU层;第三层是双向注意力层,实现文章到问题的注意力机制和问题到文章的注意力机制,以获得文章关于问题的表示和问题关于文章的表示;第四层是答案指针层,计算注意力分布,将注意力分布作为一个软性的指针来输出答案的开始位置和结束位置,抽取出问题对应的答案。
本发明还提出了基于检索的机器阅读理解系统的实现装置,所述装置具有数据处理器和存储器,在所述装置中配置有计算机程序,所述计算机程序被执行时实现上述的基于检索的机器阅读理解方法。
本发明在现有技术的基础上进一步研究,提出了一种新的基于检索的机器阅读理解解决方案。通过构建领域文档集合,提取文档特征向量,将用户的问题转换成对应的特征向量,利用特征向量的点积计算问题与文档的相似度,根据相似度进行排序,对排序结果进行重排序得到最相关的文档,将得到的文档和用户的问题交给机器阅读理解模型,最终得到问题对应的答案,构成了一个基于检索的机器阅读理解系统。
本发明能够有效实现根据问题来进行的机器阅读理解,有利于提高检索效率。
附图说明
图1为本发明基于检索的机器阅读理解系统整体示意图。
图2为本发明机器阅读理解模型框架示意图。
具体实施方式
本发明提出了一种基于检索的机器阅读理解系统的实现方法,根据用户输入的检索问题,由机器阅读理解后,直接返回用户问题对应的答案,包括文本初步检索模块、检索结果重排序模块和机器阅读理解模块,文本初步检索模块构造领域文本集合,提取文本集合特征,对用户提出的问题,与领域文本集合中的文档计算相似度,得到相似度初步排序结果,检索结果重排序模块选择相似度高几个文档与问题再计算相关性,并将相关性最高的文档传导至机器阅读理解模块,机器阅读理解模块根据问题从最相关的文档中抽取出问题对应的答案。本发明中提到的“文本”“文档”和“文章”三个术语,这是三个不同的概念,文本是一个抽象概念,是对互联网上的文字集合的一种抽象(抽象说法),文档表示一个文本实体,比如说一个网页文本中的文字组成了一个文档,而文章(英文对应为passage)是指文档里面文字表述的一个段落。
所述文本初步检索模块事先构造领域文本集合,提取文本集合特征,包括:
根据基于检索的机器阅读理解系统所要对应的领域构建领域文本集合,对搜集的文档进行分词,使用基于bigram的TFIDF方法提取文档的词频特征,提取文档的词频特征具体方法为:
TFIDFuni_bi=log(tf+1)×log((N-Nt+0.5)/(Nt+0.5))
其中tf表示unigram,bigram的token对应的频率,Nt表示unigram,bigram的token所出现的文档数目,N表示总的文档数目,加0.5是为了防止算术异常的情况;将每个文档表示成unigram,bigram的token的向量形式,即TFIDFuni_bi值组成的矩阵,对于用户提出的问题也表示成相应的向量形式,将问题向量与文档集合对应的矩阵进行点积,对文档按照点积值进行降序排列,返回点积值最大的前x篇文档。
检索结果重排序模块对初步排序结果进行重排序,具体如下:
将用户提出的问题与初步检索得到的x篇文档分别计算score值,计算方式如下:
其中queryn-gram表示用户提出问题的n-gram集合,contentn-gram表示文档的n-gram集合,com表示两个集合交集的元素数目,count(queryn-gram)表示queryn-gram集合元素数目,这里M取4,最后取score最大的文档和用户提出的问题传导至机器阅读理解模块。
机器阅读理解模块包括四层结构,第一层是词的预训练表示层,根据文本语料通过无监督学习的方法ELMo训练得到关于词的向量表示;第二层是上下文表示层,用于将上一层得到的词向量的表示经过两层的双向GRU层;第三层是双向注意力层,实现文章到问题的注意力机制和问题到文章的注意力机制,以获得文章关于问题的表示和问题关于文章的表示;第四层是答案指针层,计算注意力分布,将注意力分布作为一个软性的指针来输出答案的开始位置和结束位置,抽取出问题对应的答案。
机器阅读理解模块基于神经网络模型实现,下面介绍优选实现方式。
所述双向注意力层,用于获得文章到问题的注意力和问题到文章的注意力,具体如下:
令H∈R2d×T,U∈R2d×J分别表示文章和问题的上下文表示向量,T,J分别表示文章中词数和问题中词数,R表示实数集合,d表示维度,首先计算文章和问题的相似度矩阵Stj,计算方式如下:
Stj=σ(H:t,U:j)∈R
σ(h,u)=Vs Ttanh(Ws[h;u])
t、j分别表示T、J的变量,H:t、U:j分别是H和U的第t、j列向量,[h;u]表示h,u拼接形成的向量,Ws[h;u]表示矩阵乘法,Vs、Ws为相似度计算参数;
文章到问题的注意力通过以下式子得到:
问题到文章的注意力通过以下式子得到:
softmaxrow(S)、softmaxcol(S)分别表示对矩阵S的行运算和列运算,矩阵S的元素即为Stj;最后上下文表示向量和注意力向量合并起来产生问题感知的文章表示向量G,具体如下:
所述的答案指针层和计算注意力分布具体如下:
先构建答案循环网络的初始状态向量:
sj=VTtanh(WuUj+WvVr)
Wu∈R2d×2d,V∈R2d,Wv∈R2d×2d,Vr∈R2d为循环网络参数,Uj∈R2d为问题中第j个词的向量表示;
然后利用答案指针获得开始位置的概率分布start,并得到预测答案开始位置pstart:
开始位置Lstartz=VTtanh(WGG:z+Wrr)
开始位置概率
pstart=argmax(start1,start2,…,startT)。
将注意力分布作为一个软性的指针来输出答案的结束位置,利用开始位置的概率分布和答案指针网络来计算结束位置的概率分布endi,并得到预测答案结束位置pend,具体如下:
he=RNN(he-1,c)
结束位置Lendz=VTtanh(WGG:z+Whhe)
结束位置概率
pend=argmax(end1,end2,…,endT)
he和he-1表示RNN网络中的隐状态。
上述计算中,利用交叉熵计算损失,使用梯度下降法和误差反向传播来求解循环神经网络模型的参数,具体如下:
θ←θ-∈Δθ
L(θ)表示交叉熵损失,表示求偏导,∈为学习率,K表示start和end的向量长度,表示标注的真实的开始和结束位置的分布。start和end都是向量,/>是标注的真实的开始结束位置,来自于用户标注的数据,/>是指取start的第/>项,比如那/>就表示start的第三项。利用交叉熵计算损失,以及使用梯度下降法和误差反向传播来求解循环神经网络模型的参数,为现有神经网络的常用计算手段,不再详述。
本发明还提供基于检索的机器阅读理解系统的实现装置,所述装置具有数据处理器和存储器,在所述装置中配置有计算机程序,所述计算机程序被执行时实现上述的基于问题检索进行机器阅读理解得到答案的方法。
下面结合附图,以一个实施例对本发明做进一步的详细说明,以令本领域技术人员参照说明书文字能够据以实施。应当理解,表述中所使用的诸如“具有”、“包含”以及“包括”术语并不排除一个或多个其它元件或其组合的存在或添加。
步骤101:文本初步检索模块采用Les_MMRC数据集来构建领域文本,使用python分词工具包对数据集中的文章集合和问题进行分词,得到文章和问题中unigram和bigram集合,n-gram是计算机语言学和概率论范畴内的概念,是指给定的一段文本或语音中n个项目(item)的序列,n=1时称为unigram,n=2称为bigram,本发明中以词为一个项目,unigram表示单个词,比如“阅读”“理解”,bigram表示连续的两个词,比如“阅读理解”,token表示一个词块的统称,比如上述的“阅读”“理解”“阅读理解”都是一个token,使用murmur3 hash将unigram和bigram token哈希到词的id,hashsize设置为223,基于文档集建立基于bigram的TFIDF矩阵,行代表id,列代表文档号docid,对于问题也计算对应的TFIDF向量,将问题向量与文档集矩阵相乘,取值最高的前10篇文档,这里使用scipy包里的sparse进行稀疏矩阵存储和运算。
步骤102:检索结果重排序模块对前一模块的10篇文章和问题。
计算字符级别的n-gram的匹配度,这里将分词后的问题和文章分别重新拼接成完整的句子再进行计算,并选择匹配度最高的文章作为重排序模块的结果。
步骤103:机器阅读理解模块,根据检索结果重排序模块得到的文章和问题得到相应的预训练特征向量X∈R2d×T、Q∈R2d×J,将文章和问题的特征表示输入上下文表示层得到文章和问题的上下文表示H∈R2d×T、U∈R2d×J,紧接着输入双向注意力层得到双向注意力表示G∈R8d×T,最后输入到答案指针层获得答案的开始位置和结束位置pstart、pend,最终根据开始结束位置从文章中抽取出问题对应答案,本模块使用TensorFlow进行实现,batchsize设置为128,学习率设置为0.001,dropout设置为0.2,训练的优化器选择Adam,训练10个epochs,每个epoch结束之后在验证集上进行模型的评价。文章最大词数设置为400,问题最大词数设置为80,答案最大词数设置为40。
步骤103所述得到预训练特征向量,其过程为将Les_MMRC数据集中的训练集和验证集中的文章和问题使用中文标点符号[。?!]等分成句子集合,使用ELMo源码(https://github.com/allenai/bilm-tf)预训练特征向量,其中projection_dim设置为150,其余参数和源码一样,最终训练得到的向量维度为300,即d=150。
作为优选,步骤103所述上下文表示层由两层的双向GRU组成,num_units设置为150。
步骤103所述双向注意力层中的σ(h,u)=Vs Ttanh(Ws[h;u]),其中Ws∈R2d×4d,Vs∈R2d为参数,为对S中行使用softmax进行归一化操作,/>为对S中列使用softmax进行归一化操作。
步骤103中,答案指针层的神经网络模型为sj=VTtanh(WuUj+WvVr),其中Wu∈R2d×2d,V∈R2d,Wu∈R2d×2d,Vr∈R2d为参数,Uj∈R2d为问题中第j个词的向量表示,注意力分布的公式Lstartz=VTtanh(WGG:z+Wrr)中,WG∈R2d×2d,V∈R2d,Wr∈R2d×2d为参数,G:z∈R2d为双向注意力表示的第j项,he=RNN(he-1,c)为c经过一次RNN之后的结果。
步骤103所述的从文章中抽取出问题对应答案为从文章中取出pstart到pend之间的词组成答案,具体为content[pstart:pstart+1],其中content为文章分词之后的结果。
步骤103所述的在验证集上进行模型的评价,评价指标使用的自然语言处理领域常见指标Bleu-4和Rouge-L,每一个epoch结束之后在验证集上对当前训练的模型进行评价,得到当前epoch两个指标的得分BleuScore,RougeScore,与当前最大的Rouge-L的得分maxRougeScore比较,若当前epoch的RougeScore大于maxRougeScore,则保存训练的模型并将maxRougeScore更新为RougeScore,否则不变,初始maxRougeScore等于0。
Claims (6)
1.基于检索的机器阅读理解系统的实现方法,其特征是包括文本初步检索模块、检索结果重排序模块和机器阅读理解模块,文本初步检索模块被配置为事先构造领域文本集合,提取文本集合特征,对用户提出的问题,与领域文本集合中的文档计算相似度,得到相似度最高的前x个文档作为初步排序结果,将初步排序结果返回给检索结果重排序模块,检索结果重排序模块根据所述x个文档与问题重新计算相关性,并将相关性最高的文档传导至机器阅读理解模块,机器阅读理解模块根据问题从最相关的文档中抽取出问题对应的答案;
所述检索结果重排序模块对初步排序结果进行重排序,具体如下:
将用户提出的问题与初步检索得到的x篇文档分别计算score值,计算方式如下:
其中queryn-gram表示用户提出问题的n-gram集合,contentn-gram表示文档的n-gram集合,com表示两个集合交集的元素数目,count(queryn-gram)表示queryn-gram集合元素数目,这里M取4,最后取score最大的文档和用户提出的问题传导至机器阅读理解模块;
所述机器阅读理解模块包括四层结构,第一层是词的预训练表示层,根据文本语料通过无监督学习的方法ELMo训练得到关于词的向量表示;第二层是上下文表示层,用于将上一层得到的词向量的表示经过两层的双向GRU层;第三层是双向注意力层,实现文章到问题的注意力机制和问题到文章的注意力机制,以获得文章关于问题的表示和问题关于文章的表示;第四层是答案指针层,计算注意力分布,将注意力分布作为一个软性的指针来输出答案的开始位置和结束位置,抽取出问题对应的答案;
所述双向注意力层,被设计成获得文章到问题的注意力和问题到文章的注意力,具体如下:
令H∈R2d×T,U∈R2d×J分别表示文章和问题的上下文表示向量,T,J分别表示文章中词数和问题中词数,R表示实数集合,d表示维度,首先计算文章和问题的相似度矩阵Stj,计算方式如下:
Stj=σ(H:t,U:j)∈R
t、j分别表示T、J的变量,H:t、U:j分别是H和U的第t、j列向量,[h;u]表示h,u拼接形成的向量,Ws[h;u]表示矩阵乘法,Vs、Ws为相似度计算参数;
文章到问题的注意力通过以下式子得到:
问题到文章的注意力通过以下式子得到:
softmaxrow(S)、softmaxcol(S)分别表示对矩阵S的行运算和列运算,矩阵S的元素即为Stj;最后上下文表示向量和注意力向量合并起来产生问题感知的文章表示向量G,具体如下:
2.根据权利要求1所述的基于检索的机器阅读理解系统的实现方法,其特征是所述文本初步检索模块事先构造领域文本集合,提取文本集合特征,包括:
根据基于检索的机器阅读理解系统所要对应的领域构建领域文本集合,对搜集的文档进行分词,使用基于bigram的TFIDF方法提取文档的词频特征,提取文档的词频特征具体方法为:
TFIDFuni_bi=log(tf+1)×log((N-Nt+0.5)/(Nt+0.5))
其中tf表示unigram,bigram的token对应的频率,Nt表示unigram,bigram的token所出现的文档数目,N表示总的文档数目;将每个文档表示成unigram,bigram的token的向量形式,即TFIDFuni_bi值组成的矩阵,对于用户提出的问题也表示成相应的向量形式,将问题向量与文档集合对应的矩阵进行点积,对文档按照点积值进行降序排列,返回点积值最大的前x篇文档。
3.根据权利要求1所述的基于检索的机器阅读理解系统的实现方法,其特征是所述的答案指针层和计算注意力分布基于循环神经网络RNN实现,具体如下:
先构建答案循环网络的初始状态向量:
sj=VTtanh(WuUj+WvVr)
Wu,V,Wv,Vr为循环网络参数,Uj为问题中第j个词的向量表示;
然后利用答案指针获得开始位置的概率分布start,并得到预测答案开始位置pstart:
开始位置Lstartz=VTtanh(WGG:z+Wrr)
开始位置概率分布
pstart=argmax(start1,start2,...,startT)。
4.根据权利要求3所述的基于检索的机器阅读理解系统的实现方法,其特征是所述的将注意力分布作为一个软性的指针来输出答案的结束位置具体为:利用开始位置的概率分布和答案指针网络来计算结束位置的概率分布end,并得到预测答案结束位置pend,具体如下:
he=RNN(he-1,c)
结束位置Lendz=VTtanh(WGGj+Whhe)
结束位置概率分布
pend=argmax(end1,end2,...,endT)
he和he-1表示RNN网络中的隐状态。
5.根据权利要求1或3或4所述的基于检索的机器阅读理解系统的实现方法,其特征是利用交叉熵计算损失,使用梯度下降法和误差反向传播来求解循环神经网络模型的参数,具体如下:
θ←θ-∈Δθ
L(θ)表示交叉熵损失,表示求偏导,∈为学习率,K表示start和end的向量长度,表示标注的真实的开始和结束位置的分布。
6.基于检索的机器阅读理解系统的实现装置,其特征是所述装置具有数据处理器和存储器,在所述装置中配置有计算机程序,所述计算机程序被执行时实现权利要求1-5任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910808954.8A CN112445887B (zh) | 2019-08-29 | 2019-08-29 | 基于检索的机器阅读理解系统的实现方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910808954.8A CN112445887B (zh) | 2019-08-29 | 2019-08-29 | 基于检索的机器阅读理解系统的实现方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112445887A CN112445887A (zh) | 2021-03-05 |
CN112445887B true CN112445887B (zh) | 2024-05-03 |
Family
ID=74741250
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910808954.8A Active CN112445887B (zh) | 2019-08-29 | 2019-08-29 | 基于检索的机器阅读理解系统的实现方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112445887B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113239148B (zh) * | 2021-05-14 | 2022-04-05 | 电子科技大学 | 基于机器阅读理解的科技资源检索方法 |
CN114020862B (zh) * | 2021-11-04 | 2024-06-11 | 中国矿业大学 | 一种面向煤矿安全规程的检索式智能问答系统及方法 |
CN114416962B (zh) * | 2022-01-11 | 2024-10-18 | 平安科技(深圳)有限公司 | 问题答案的预测方法、预测装置、电子设备、存储介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2017210634A1 (en) * | 2016-06-03 | 2017-12-07 | Maluuba Inc. | Iterative alternating neural attention for machine reading |
CN109086303A (zh) * | 2018-06-21 | 2018-12-25 | 深圳壹账通智能科技有限公司 | 基于机器阅读理解的智能对话方法、装置、终端 |
CN109492227A (zh) * | 2018-11-16 | 2019-03-19 | 大连理工大学 | 一种基于多头注意力机制和动态迭代的机器阅读理解方法 |
CN109635947A (zh) * | 2018-12-14 | 2019-04-16 | 安徽省泰岳祥升软件有限公司 | 基于答案采样的机器阅读理解模型训练方法及装置 |
CN109657226A (zh) * | 2018-09-20 | 2019-04-19 | 北京信息科技大学 | 多联结注意力的阅读理解模型、系统及方法 |
CN109753661A (zh) * | 2019-01-11 | 2019-05-14 | 国信优易数据有限公司 | 一种机器阅读理解方法、装置、设备及存储介质 |
-
2019
- 2019-08-29 CN CN201910808954.8A patent/CN112445887B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2017210634A1 (en) * | 2016-06-03 | 2017-12-07 | Maluuba Inc. | Iterative alternating neural attention for machine reading |
CN109086303A (zh) * | 2018-06-21 | 2018-12-25 | 深圳壹账通智能科技有限公司 | 基于机器阅读理解的智能对话方法、装置、终端 |
CN109657226A (zh) * | 2018-09-20 | 2019-04-19 | 北京信息科技大学 | 多联结注意力的阅读理解模型、系统及方法 |
CN109492227A (zh) * | 2018-11-16 | 2019-03-19 | 大连理工大学 | 一种基于多头注意力机制和动态迭代的机器阅读理解方法 |
CN109635947A (zh) * | 2018-12-14 | 2019-04-16 | 安徽省泰岳祥升软件有限公司 | 基于答案采样的机器阅读理解模型训练方法及装置 |
CN109753661A (zh) * | 2019-01-11 | 2019-05-14 | 国信优易数据有限公司 | 一种机器阅读理解方法、装置、设备及存储介质 |
Non-Patent Citations (4)
Title |
---|
acontext-aware attention network for interactive question answering;huayu Li等;proceedings of the 23rd ACM SIGKDD international conference on knowledge discovery and data mining;927-935 * |
一种基于数据重构和富特征的神经网络机器阅读理解模型;尹伊淳;张铭;;中文信息学报;第32卷(第11期);112-116 * |
基于双线性函数注意力Bi-LSTM模型的机器阅读理解;刘飞龙;郝文宁;陈刚;靳大尉;宋佳星;;计算机科学;第44卷(第S1期);92-96+122 * |
基于检索和机器阅读理解的自动问答方法;严德美;中国优秀硕士学位论文全文数据库信息科技辑(第2期);I138-2915 * |
Also Published As
Publication number | Publication date |
---|---|
CN112445887A (zh) | 2021-03-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Li et al. | Context-aware emotion cause analysis with multi-attention-based neural network | |
Gupta et al. | MMQA: A multi-domain multi-lingual question-answering framework for English and Hindi | |
Xie et al. | Topic enhanced deep structured semantic models for knowledge base question answering | |
CN112445887B (zh) | 基于检索的机器阅读理解系统的实现方法及装置 | |
CN109543017A (zh) | 法律问题关键词生成方法及其系统 | |
CN108509409A (zh) | 一种自动生成语义相近句子样本的方法 | |
CN111581364B (zh) | 一种面向医疗领域的中文智能问答短文本相似度计算方法 | |
Zhang et al. | Effective subword segmentation for text comprehension | |
CN110222344B (zh) | 一种针对小学生作文辅导的作文要素分析算法 | |
CN113486645A (zh) | 一种基于深度学习的文本相似度检测方法 | |
CN110851593A (zh) | 一种基于位置与语义的复值词向量构建方法 | |
CN114265936A (zh) | 一种科技项目文本挖掘的实现方法 | |
CN114064901B (zh) | 一种基于知识图谱词义消歧的书评文本分类方法 | |
Alshammari et al. | TAQS: an Arabic question similarity system using transfer learning of BERT with BILSTM | |
Khan et al. | Towards achieving machine comprehension using deep learning on non-GPU machines | |
CN111666374A (zh) | 一种在深度语言模型中融入额外知识信息的方法 | |
CN115269834A (zh) | 一种基于bert的高精度文本分类方法及装置 | |
CN114841353A (zh) | 一种融合句法信息的量子语言模型建模系统及其应用 | |
CN110929518A (zh) | 一种使用重叠拆分规则的文本序列标注算法 | |
Khan et al. | A clustering framework for lexical normalization of Roman Urdu | |
Uddin et al. | Extracting severe negative sentence pattern from bangla data via long short-term memory neural network | |
Behere et al. | Text summarization and classification of conversation data between service chatbot and customer | |
Du et al. | Sentiment analysis method based on piecewise convolutional neural network and generative adversarial network | |
Basri et al. | A deep learning based sentiment analysis on bang-lish disclosure | |
Mi et al. | A neural network based model for loanword identification in Uyghur |
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 |