首页 / 专利库 / 专利权 / 专利合作条约 / 第I章 / 一种基于多层Transformer聚合编码器的答案生成方法

一种基于多层Transformer聚合编码器的答案生成方法

阅读:1041发布:2020-08-20

专利汇可以提供一种基于多层Transformer聚合编码器的答案生成方法专利检索,专利查询,专利分析的服务。并且本 发明 公开了一种基于多层Transformer聚合 编码器 的答案生成方法,包括:接收输入信息,其中,输入信息包括段落文章信息和问题信息;对输入信息通过字符嵌入层和词嵌入层转换,获得对应的字符向量和词向量;将字符向量和词向量进行拼接,获得拼接词向量;对拼接词向量与 位置 编码向量进行加法拼接,获得输入顺序序列;将输入顺序序列输入至多层Transformer聚合编码器,获得更高层次语义信息;将更高层次语义信息输入至上下文-问题注意 力 层,对问答信息进行学习;将学习的结果输入至包括三个多层Transformer聚合编码器的编码层,通过softmax函数获得起始位置和结束位置;将起始位置和结束位置所确定的内容作为目标答案。应用本发明 实施例 ,解决了现有信息丢失及性能不足的问题。,下面是一种基于多层Transformer聚合编码器的答案生成方法专利的具体信息内容。

1.一种基于多层Transformer聚合编码器的答案生成方法,其特征在于,所述方法包括:
接收输入信息,其中,所述输入信息包括段落文章信息和问题信息;
对所述输入信息通过字符嵌入层和词嵌入层转换,获得对应的字符向量和词向量;
将所获得的字符向量和词向量进行拼接,获得拼接词向量;
对拼接词向量与位置编码向量进行加法拼接,获得输入顺序序列;
将输入顺序序列输入至多层Transformer聚合编码器,获得更高层次语义信息;
将更高层次语义信息输入至上下文-问题注意层,对问答信息进行学习;
将学习到的结果输入至包括三个多层Transformer聚合编码器的编码层,通过softmax函数获得起始索引位置和结束索引位置;
将所述起始索引位置和所述结束索引位置所确定的内容作为目标答案。
2.根据权利要求1所述的一种基于多层Transformer聚合编码器的答案生成方法,其特征在于,所述对所述输入信息通过字符嵌入层和词嵌入层转换,获得对应的字符向量和词向量的步骤,包括:
对所述段落文章信息和所述问题信息的任意一单词,在词嵌入层使用Glove词向量,获得单词对应的词向量、每个字符的向量;
将每个字符的向量随机的初始化随模型一起训练。
3.根据权利要求1或2所述的一种基于多层Transformer聚合编码器的答案生成方法,其特征在于,所述将拼接词向量与位置编码向量进行加法拼接,获得输入顺序序列的步骤,包括:
将输入信息中的每个单词位置进行编号,使得每个编号对应一个词向量;
通过每个单词位置编号产生的位置向量与词向量,获得位置编码向量;
对位置编码向量与拼接的词向量进行加法拼接,获得输入顺序序列。
4.根据权利要求3所述的一种基于多层Transformer聚合编码器的答案生成方法,其特征在于,所述位置编码向量计算公式为,
PE(pos,2i)=sin(pos/100002i/d)
PE(pos,2i+1)=cos(pos/100002i/d)
其中,PE表示位置编码向量,pos表示词的位置,i表示第i个词的维度,d表示词向量的维度。
5.根据权利要求3所述的一种基于多层Transformer聚合编码器的答案生成方法,其特征在于,所述将输入顺序序列传入至多层Transformer聚合编码器,学习序列的更高层次语义信息的步骤,包括:
通过多层Transformer聚合编码器单元结构,构建多层自注意力机制的网络,对每一层进行全连接;
将所述输入顺序序列输入至构建好的多层自注意力机制的网络中,通过注意力函数计算结果,并通过聚合函数将所计算的结果进行聚合;
通过sigmoid激活函数的前馈神经网络,对聚合后的结果进行累加,学习序列的更高层次语义信息。
6.根据权利要求5所述的一种基于多层Transformer聚合编码器的答案生成方法,其特征在于,所述通过聚合函数将所计算的结果进行聚合的方法,包括:
将多层注意力Transformer单元的相邻两个节点聚合为一个节点,将结果传回线性主干网络;
将传回的结果输入至下一层,且与线性主干网络的后两个节点进行聚合操作;
将每个多层注意力Transformer单元学习的语义信息通过加法后合并,将合并结果作为更高层次语义信息。
7.根据权利要求6所述的一种基于多层Transformer聚合编码器的答案生成方法,其特征在于,所述将更高层次语义信息输入至上下文-问题注意力层,对问答信息进行学习的步骤,包括:
计算每个上下文编码和问题编码的相似性获得相似矩阵S;
利用softmax对相似矩阵S的每行进行标准化后获得 与问题编码做乘积运算得到context和query的关系;
利用softmax函数再对相似矩阵S的每列进行标准化后获得 将 与 和上下文编码做乘积运算,获得Query和Context中的关键词语。
8.根据权利要求1所述的一种基于多层Transformer聚合编码器的答案生成方法,其特征在于,所述将学习到的结果输入至包括三个多层Transformer聚合编码器的编码层,通过softmax函数获得起始索引位置和结束索引位置的步骤,包括:
将学习到的结果输入至一个多层Transformer聚合编码器,获得输出结果,并记为M0;
将M0输入至下一层多层Transformer聚合编码器中进行学习,获得输出结果,并记为M1;
将M1输入至下一层多层Transformer聚合编码器中进行学习,获得输出结果,并记为M2;
将M0、M1、M2进行组合,获得[M0;M1],[M0;M2];通过softmax函数获得起始索引位置和结束索引位置。

说明书全文

一种基于多层Transformer聚合编码器的答案生成方法

技术领域

[0001] 本发明涉及自然语言处理技术领域,尤其涉及一种基于多层Transformer聚合编码器的答案生成方法。

背景技术

[0002] 问答系统是当前学术界自然语言处理领域中的热研究话题,也是在工业界内最为广泛使用的人工智能应用之一。随着时代的进步,互联网大数据时代的兴起,人们需要搜索的资料和知识信息也越来越多,而大数据的背景下,人们单单通过搜索引擎获取准确的结果信息越发困难。因此研究一些方法对于问答系统中的答案生成已经成为了目前的一个迫切的需求。
[0003] 问答系统是将无序语料信息进行有序和科学整理的用于知识分类的系统模型,尽管目前搜索引擎已被广泛用于搜索信息和查阅资料,但是此类系统大多基于关键词检索,并非语义层面理解用户的意图,此外搜索引擎返回的搜索结果信息太过冗余增加了用户判断并筛选信息数据的成本。因此基于自然语言理解、语义分析建立的问答系统,通过检索已有知识库,从中提取并声称符合人类想获得的知识答案,使得人们搜索问题获取知识的途径更加直接、高效、准确。
[0004] 对目标答案的材料段落以及用户提出的问题进行分析是NLP领域中答案生成模的重要组成部分,也是难点所在。目前答案生成模块主要采用以下几种模型方法:1.基于LSTM的神经网络的问答模型,通过递归神经网络(RNN)的结构来对文本序列进行建模;2.基于卷积神经网络(CNN)的模型,将CNN代替LSTM对文本序列进行编码;因此现有的研究工作,大多基于传统机器学习算法或是经典神经网络结构来处理答案生成任务。而上述的网络结构在利用信息时,只利用了网络最后一层的输出信息,从而导致了在信息传输过程中存在着信息的大量丢失,利用不完全,也导致了本身存在性能表现不足,从而使模型在生成答案时不准确。
[0005] 针对问答生成中信息丢失以及性能表现不足的问题,一些比较经典的神经网络结构并不能很好的解决这个问题。而在这些网络的每一层都存在这大量可利用的信息序列特征,因此将每层的信息充分利用是解决问题的关键所在,所以我们设计了具有多层注意机制的Transformer以及含有多层Transformer的聚合编码器,通过将多层注意力层通过全连接方式连接,从而使模型充分的考虑到了每层信息的特征,再通过全新设计的多层Transformer聚合编码器将每两层网络聚合在一起,同时输入到下一层网络中,同时使模型能充分考虑到句子的不同层次的信息,提高答案生成的准确率,有效的解决性能不足以及信息丢失的问题。

发明内容

[0006] 本发明的目的在于提供一种基于多层Transformer聚合编码器的答案生成方法,旨在解决现有信息丢失及性能表现不足的问题。
[0007] 为了实现上述目的,本发明提供一种基于多层Transformer聚合编码器的答案生成方法,包括:
[0008] 接收输入信息,其中,所述输入信息包括段落文章信息和问题信息;
[0009] 对所述输入信息通过字符嵌入层和词嵌入层转换,获得对应的字符向量和词向量;
[0010] 将所获得的字符向量和词向量进行拼接,获得拼接词向量;
[0011] 对拼接词向量与位置编码向量进行加法拼接,获得输入顺序序列;
[0012] 将输入顺序序列输入至多层Transformer聚合编码器,获得更高层次语义信息;
[0013] 将更高层次语义信息输入至上下文-问题注意力层,对问答信息进行学习;
[0014] 将学习到的结果输入至包括三个多层Transformer聚合编码器的编码层,通过softmax函数获得起始索引位置和结束索引位置;
[0015] 将所述起始索引位置和所述结束索引位置所确定的内容作为目标答案。
[0016] 一种实现方式中,对所述输入信息通过字符嵌入层和词嵌入层转换,获得对应的字符向量和词向量的步骤,包括:
[0017] 对所述段落文章信息和所述问题信息的任意一单词,在词嵌入层使用Glove词向量,获得单词对应的词向量、每个字符的向量;
[0018] 将每个字符的向量随机的初始化随模型一起训练。
[0019] 一种实现方式中,所述将拼接词向量与位置编码向量进行加法拼接,获得输入顺序序列的步骤,包括:
[0020] 将输入信息中的每个单词位置进行编号,使得每个编号对应一个词向量;
[0021] 通过每个单词位置编号产生的位置向量与词向量,获得位置编码向量;
[0022] 对位置编码向量与拼接的词向量进行加法拼接,获得输入顺序序列。
[0023] 优选的,所述位置编码向量计算公式为,
[0024] PE(pos,2i)=sin(pos/100002i/d)
[0025] PE(pos,2i+1)=cos(pos/100002i/d)
[0026] 其中,PE表示位置编码向量,pos表示词的位置,i表示第i个词的维度,d表示词向量的维度。
[0027] 一种实现方式中,所述将输入顺序序列传入至多层Transformer聚合编码器,获得更高层次语义信息的步骤,包括:
[0028] 通过多层Transformer聚合编码器单元结构,构建多层自注意力机制的网络,对每一层进行全连接;
[0029] 将所述输入顺序序列输入至构建好的多层自注意力机制的网络中,通过注意力函数计算结果,并通过聚合函数将所计算的结果进行聚合;
[0030] 通过sigmoid激活函数的前馈神经网络,对聚合后的结果进行累加,获得更高层次语义信息。
[0031] 一种实现方式中,所述通过聚合函数将所计算的结果进行聚合的方法,包括:
[0032] 将多层注意力Transformer单元的相邻两个节点聚合为一个节点,将结果传回线性主干网络;
[0033] 将传回的结果输入至下一层,且与线性主干网络的后两个节点进行聚合操作;
[0034] 将每个多层注意力Transformer单元学习的语义信息通过加法后合并,将合并结果作为更高层次语义信息。
[0035] 一种实现方式中,所述将更高层次语义信息输入至上下文-问题注意力层,对问答信息进行学习的步骤,包括:
[0036] 计算每个上下文编码和问题编码的相似性获得相似矩阵S;
[0037] 利用softmax对相似矩阵S的每行进行标准化后获得 与问题编码做乘积运算得到context和query的关系;
[0038] 利用softmax函数再对相似矩阵S的每列进行标准化后获得 将 与 和上下文编码做乘积运算,获得Query和Context中的关键词语。
[0039] 一种实现方式中,所述将学习到的结果输入至包括三个多层Transformer聚合编码器的编码层,通过softmax函数获得起始索引位置和结束索引位置的步骤,包括:
[0040] 将学习到的结果输入至一个多层Transformer聚合编码器,获得输出结果,并记为M0;
[0041] 将M0输入至下一层多层Transformer聚合编码器中进行学习,获得输出结果,并记为M1;
[0042] 将M1输入至下一层多层Transformer聚合编码器中进行学习,获得输出结果,并记为M2;
[0043] 将M0、M1、M2进行组合,获得[M0;M1],[M0;M2];通过softmax函数获得起始索引位置和结束索引位置。
[0044] 应用本发明实施例提供的一种基于多层Transformer聚合编码器的答案生成方法,将多层注意力层通过全连接方式连接,充分的考虑到了每层信息的特征,再通过全新设计的多层Transformer聚合编码器将每两层网络聚合在一起,同时输入到下一层网络中,使模型能充分考虑到句子的不同层次的信息,提高答案生成的准确率,有效的解决了信息丢失及性能表现不足的问题,适用范围广、鲁棒性强。附图说明
[0045] 图1是本发明实施例一种流程示意图。
[0046] 图2是本发明实施例一种结构示意图。
[0047] 图3是本发明实施例另一种结构示意图。
[0048] 图4是本发明实施例又一种流程示意图。

具体实施方式

[0049] 以下通过特定的具体实例说明本发明的实施方式,本领域技术人员可由本说明书所揭露的内容轻易地了解本发明的其他优点与功效。本发明还可以通过另外不同的具体实施方式加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离本发明的精神下进行各种修饰或改变。
[0050] 请参阅图1。需要说明的是,本实施例中所提供的图示仅以示意方式说明本发明的基本构想,遂图式中仅显示与本发明中有关的组件而非按照实际实施时的组件数目、形状及尺寸绘制,其实际实施时各组件的型态、数量及比例可为一种随意的改变,且其组件布局型态也可能更为复杂。
[0051] 长短期记忆(LSTM,Long short-term memory)是RNN(Recurrent Neural Network)特殊的类型,可以学习长期依赖信息。该算法由Hochreiter和Schmidhuber在1997年开发,LSTM主要通过保存好之前的信息,来防止较早期的信号在处理过程中逐渐消失的情况。
[0052] 注意力机制(Attention)能使训练重点集中在与输入数据相关的部分,解决了Encoder-Decoder模型结构中处理长句的时不足以表征整个输入序列的困难。
[0053] Transformer是谷歌在2017年发布的用来代替RNN(Recurrent Neural Network)和CNN(Convolutional Neural Network)的新网络结构,Transformer其本质上就是一个Self-Attention结构,Transformer模型除了使用自注意力机制对序列进行编码,还设计了多头机制,多次并行地使用点积注意力,以达到能够使得模型共同关注来自不同位置的不同表示子空间的信息。
[0054] 如图1本发明提供一种基于多层Transformer聚合编码器的答案生成方法,所述方法包括:
[0055] S110,接收输入信息,其中,所述输入信息包括段落文章信息和问题信息。
[0056] S120,对所述输入信息通过字符嵌入层和词嵌入层转换,获得对应的字符向量和词向量。
[0057] 需要说明的是,对输入的段落文章信息和问题信息中的任一单词w的词嵌入层使用预训练好的Glove词向量,并将w对应的词向量设置为xw,每个字符的向量记为xc,同时将xc随机的初始化随模型一起训练;
[0058] 进一步的,首先词嵌入在训练中是固定好的,词嵌入层使用维度为p1=300维预训练好的Glove单词向量来初始化,且标记为xw,且不在词典中的单词都被标记为一个标记,将带有标记的词嵌入随机初始化后加入网络训练。且每个字符可以被表示成一个p2=200维的可训练向量,标记为xc。这样每个单词就可看作是它每个字符嵌入向量的连接。我们将每个词的长度统一到固定的长度k,则每个单词w就可以表示为p2*k的矩阵,我们从这个矩阵的每行中选取一个最大值来获得单词w的向量表示。
[0059] S130,将所获得的字符向量和词向量进行拼接,获得拼接词向量。
[0060] 可以理解的是,将获得词向量xw和每个字符的向量xc进行拼接,得到单词w的词向量
[0061] S140,对拼接词向量与位置编码向量进行加法拼接,获得输入顺序序列。
[0062] 可以理解的是,对输入的段落文章信息和问题信息中的每个单词位置进行编号,使得每个编号对应一个单词的向量。
[0063] 通过结合每个单词位置编号产生的位置向量与词向量,产生的位置信息能使得上下文-问题注意力层(Context-Query Attention)分辨出不同位置的单词;
[0064] 将产生的位置编码(Positional Encoding)向量与拼接的词向量通过数组合并的加法操作将位置编码向量与词向量拼接在一起,获得输入顺序序列。
[0065] 需要说明的是,纯Attention机制在对序列进行编码是并不会考虑序列的位置顺序关系,例如纯Attention对于“小明把桌上的花瓶打碎了”和“花瓶把桌上的小明打碎了”这两句话的编码结果可能相差不大,但其语义信息完全不同。因此位置编码(PositionalEncoding)向量的引入,可以使得Attention机制可以分辨出不同位置的单词,加强对句子语义信息的理解。位置编码(Positional Encoding)即对每个单词位置进行编号,并且每个编号对应一个向量。这样就可以将位置向量和词向量结合起来,为每个单词引入位置信息。位置编码的计算公式如下:
[0066] PE(pos,2i)=sin(pos/100002i/d)  (1)
[0067] PE(pos,2i+1)=cos(pos/100002i/d)  (2)
[0068] 其中,PE表示位置编码向量,pos表示词的位置,i表示第i个词的维度,d表示词向量的维度。位置编码本身表达的是序列的绝对位置信息,但是该公式还有一个重要的作用在于它也能够表示相对位置关系,原因如下:
[0069] sin(α+β)=sinαcosβ+cosαsinβ  (3)
[0070] cos(α+β)=cosαcosβ-sinαsinβ  (4)
[0071] 上述公式表明了位置p+k的向量也可以表示成位置p的向量的线性变化,从而表达了相对位置信息。
[0072] 在公式(1)(2)中,将id为pos的位置可以映射为d维的一个位置向量,这个位置向量的第i个元素的数值即为PE(pos,i)。而映射的关系可以通过正弦函数sin以及余弦函数cos来计算。
[0073] 其中(3)(4)公式可以解释为,假设有一位置向量p以及另外一个位置向量q,其中p到q的距离记为k,即为q=p+k。通过公式(3)(4)所描述的线性关系,即可表达了位置向量q相对于位置向量p的线性变化,从而表达了P,q的相对位置信息。P的线性变换公式可表达为:
[0074] sin(q)=sin(p+k)=sinpcosk+cospsink
[0075] cos(q)=cos(p+k)=cospcosk-sinpsink
[0076] S150,将输入顺序序列输入至多层Transformer聚合编码器,获得更高层次语义信息。
[0077] 可以理解的是,以Transformer单元结构为基础,构建多层自注意力机制的网络,对所有的层进行全连接;
[0078] 将获取的词向量、字符向量以及位置向量等序列信息,传入构建好的多层自注意力机制的网络中,通过注意力函数(Attention())计算结果,再通过聚合函数(Aggregation())将各层结果统一聚合;
[0079] 通过sigmoid为激活函数的前馈神经网络,对所有的输入结果进行累加,最后用传入层标准化函数(LayerNorm())得到结果;
[0080] 通过聚合函数(Aggregation())将各层结果统一聚合方法,包括:
[0081] 首先将多层注意力Transformer单元的节点两两聚合为一个节点,将结果传回线性主干网络;
[0082] 线性主干网络将传回的结果作为下一层的输入并于线性主干网络的后两个节点进行聚合操作;
[0083] 将所有的节点进行聚合操作,直至所有节点聚合完成,得到最终更高层次的语义信息;
[0084] 需要说明的是,构建多层Transformer聚合编码器的方法,我们以Transformer结构模型为基础,对其使用层聚合技术来更好地融合各个层地信息,提出了一种基于多层Transformer单元聚合的编码器模型MTA(Multiple Transformer Aggregation)Encoder,其具体结构如图2、3所示;图2为多层注意力Transformer单元结构,其中,多头注意力机制Multi-head Attention,层标准化函数Add&NormLayer,前馈网络层FeedForward,网络通过保留前一层学习的序列信息加强网络对全局信息的把握与理解。其具体的构建方法描述如下所示:我们将Transformer单元结构一组自注意力机制和前馈网络改进为对其使用多层自注意力机制网络,并对所有层进行全连接:
[0085]
[0086]
[0087] ……
[0088]
[0089]
[0090] 其中, 是第l-k层Attention函数计算得出的结果,Aggregation()是将各层结果统一的聚合函数,其计算方式如下:
[0091]
[0092] 我们首先将x1,x2,…,xk拼接起来然后传入以sigmoid为激活函数的前馈神经网络,并对所有输入进行累加,最后用传入层标准化函数得到结果。其中,LayerNorm()是层标准化函数,Attention()是自注意力计算函数,FFN()是以ReLU函数为激活函数的前馈神经网络。此外,Ql-1,Kl-1,Vl-1量是由上一层Tl-1转化而来的query,key,value向量,它们也是注意力机制中的基础输入参数。如图2中所示,其多头注意力能够允许模型共同关注来自不同位置的不同子空间的表示信息,其具体计算方式如下:
[0093] MultiHead(Q,K,V)=Concat(kead1,…,headh)WO  (7)
[0094]
[0095]
[0096] 其中的 WO均为模型中的训练参数。
[0097] 然后,我们将上述设计好的单元结构进行分层聚合:
[0098]
[0099] 其中的聚合函数Aggregation()与公式6相同。其中图3中多头注意力层单元为我们所设计的多头注意力Transformer单元结构,聚合函数Aggregation node,通过聚合函数我们将相同层的节点两两聚合为一个节点,然后将结果传回线性主干网络作为下一层的输入并与线性主干网络的后两个节点进行聚合操作。其聚合的步骤都采用加法操作,减少计算复杂度的同时保持状态层的尺寸不变。对多层注意力层采用全连接方式是为了:将损失更直接向前传播到以方便训练;每一层地编码信息都是前面所有层的一种聚合,在整个网络中都保留了低复杂程度的信息表示;最终的编码结果来自于所有层的表示,所以这样的结果既用了复杂特征也用到了简单的特征。
[0100] S160,将更高层次语义信息输入至上下文-问题注意力层,对问答信息进行学习。
[0101] 需要说明的是,首先计算每个上下文编码(Context)和问题编码(Query)的相似性得到相似矩阵S;
[0102] 使用softmax对相似矩阵S的每行进行标准化(normalize)后得到 再与问题编码(Query)做乘积运算得到context和query的关系(context-to-query attention);
[0103] 使用softmax函数再对相似矩阵S的每列进行标准化(normalize)后得到 再将与 和上下文编码(Context)做乘积运算解析出Query和Context中的关键词语(query-to-context attention);
[0104] 可以理解的是,将多层Transformer单元聚合的编码器模型MTA层得到的问题编码Q(Query)和C(Context)的结果,传入Context-QueryAttention层用于对问答信息进行学习,其中context-queryattention构造如下所示:我们首先计算每一个上下文和查询词的相似度,并通过相似度矩阵S∈Rn×m,n为Context的长度,m为Query的长度,再利用softmax函数对矩阵S的每一行进行归一化,得到矩阵 所以context-queryattention的结果A可以表示为 其中d表示Q的转置矩阵的维度。同时还利用softmax函数对S的每一列进行归一化,得到矩阵 所以query-contextattention的结果B可以表示为在这里使用的相似度函数为三线性函数(trilinear function):
[0105] f(q,c)=W0[q,c,q⊙c]  (11)
[0106] 其中,⊙表示元素算法(element-wise multiplication),W0是可训练的变量。
[0107] 该模块所介绍的A和B两种计算可以如下表示:
[0108] A=softmax(S,axis=row)·QT  (12)
[0109] B=A·softmax(S,axis=column)T·CT  (13)
[0110] S170,将学习到的结果输入至包括三个多层Transformer聚合编码器的编码层,通过softmax函数获得起始索引位置和结束索引位置;
[0111] 需要说明的是,将上下文-注意力层(Cntext-Query Attention)学习到的结果传入一个多层Transformer聚合编码器,并将输出结果记为M0;
[0112] 将M0输入至下一层多层Transformer聚合编码器中进行学习,获得输出结果,并记为M1;,
[0113] 将M1输入至下一层多层Transformer聚合编码器中进行学习,获得输出结果,并记为M2;
[0114] 将三层多层Transformer聚合编码器得到的M0、M1、M2组合成[M0;M1],[M0;M2]两种形式,通过softmax函数得出开始索引位置和结束索引位置;
[0115] 通过softmax函数得到目标答案在文章段落中的起始索引位置:
[0116] posstart=softmax(Wstart[M0;M1])  (14)
[0117] 将多层Transformer单元聚合的编码器模型MTA输出的M0,M2合并得到[M0;M2],通过softmax函数得到目标答案在文章段落中的结束索引位置:
[0118] posend=softmax(Wend[M0;M2])  (15)
[0119] S180,将所述起始索引位置和所述结束索引位置所确定的内容作为目标答案。
[0120] 如公式(14)(15),其中,Wstart,Wend分别为模型所训练的参数,用来加强输出位置的准确性。Softmax是归一化指数函数,通过计算[M0;M1]以及[M0;M2]序列输出每个答案的概率值,分别选取概率最大的值就得到了答案在文章里的起始位置posstart以及结束位置posend。
[0121] 通过设定好的Loss函数不断修正模型输出起始索引位置和结束索引位置的准确度,以求模型达到最好的输出效果,其Loss函数可以表示为:
[0122]
[0123] 其中 分别表示Context中真实的答案所处的起始和结束位置。
[0124] 本发明的一个具体的实施例中,通过将文章信息以及问题信息传入答案生成网络中学习要经过以下步骤:首先将段落文章信息以及问题信息分别经过字符嵌入层和词嵌入层,得到对应的关系矩阵。再通过对段落中每个单词引入位置编码向量,将字符嵌入层、词嵌入层和位置编码向量一同传入到我们所设计的多层Transformer聚合编码器中。
[0125] 将最终的词向量传入多层Transformer聚合编码器进行学习的过程包含如下几个步骤:
[0126] 将词向量传入由多头注意力层(Multi-head Attention)、前向反馈层(Feed Forward)、标准化层(Norm Layer)组成的多头注意力Transformer单元中,该单元的每一层都是前面所有层的累加信息,具体组合结构如图2所示。再将每个多头注意力Transformer单元之间进行连接,并将每两个单元之间通过聚合函数(Aggregation)进行两两聚合,同时将聚合的结果一并传输到下一个单元中,得到段落文章和问句的高层次语义信息。具体结构如图3所示。
[0127] 将学习到的语义信息传入Context-Query Attention层中,再传入由三个多层Transformer聚合编码器中从全局来描述上下文和问题的关系。通过softmax函数输出问题答案在文章段落中的起始位置信息和结束位置信息,如图4。
[0128] 上述实施例仅例示性说明本发明的原理及其功效,而非用于限制本发明。任何熟悉此技术的人士皆可在不违背本发明的精神及范畴下,对上述实施例进行修饰或改变。因此,举凡所属技术领域中具有通常知识者在未脱离本发明所揭示的精神与技术思想下所完成的一切等效修饰或改变,仍应由本发明的权利要求所涵盖。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈