CN111125333A - 一种基于表示学习与多层覆盖机制的生成式知识问答方法 - Google Patents

一种基于表示学习与多层覆盖机制的生成式知识问答方法 Download PDF

Info

Publication number
CN111125333A
CN111125333A CN201911335248.2A CN201911335248A CN111125333A CN 111125333 A CN111125333 A CN 111125333A CN 201911335248 A CN201911335248 A CN 201911335248A CN 111125333 A CN111125333 A CN 111125333A
Authority
CN
China
Prior art keywords
knowledge base
knowledge
model
question
answer
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.)
Granted
Application number
CN201911335248.2A
Other languages
English (en)
Other versions
CN111125333B (zh
Inventor
刘琼昕
王亚男
龙航
卢士帅
王佳升
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Institute of Technology BIT
Original Assignee
Beijing Institute of Technology BIT
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Beijing Institute of Technology BIT filed Critical Beijing Institute of Technology BIT
Publication of CN111125333A publication Critical patent/CN111125333A/zh
Application granted granted Critical
Publication of CN111125333B publication Critical patent/CN111125333B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/332Query formulation
    • G06F16/3329Natural language query formulation or dialogue systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/3331Query processing
    • G06F16/334Query execution
    • G06F16/3344Query execution using natural language analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/36Creation of semantic tools, e.g. ontology or thesauri
    • G06F16/367Ontology
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/084Backpropagation, e.g. using gradient descent

Abstract

本发明涉及一种基于表示学习与多层覆盖机制的生成式知识问答方法,属于人工智能和自然语言处理技术领域。针对知识问答系统的知识库中,事实不能被有效表示导致降低查找正确答案能力,生成式问答任务中模型会陷入某种模式中无法跳出,或在某个模式中重复生成已生成过的词汇,导致答案可读性下降的技术问题,首先建立生成式知识问答模型,使用Seq2Seq框架,结合注意力机制、CopyNet模型、GenQA模型和Coverage覆盖机制,通过编码器解析问题,并通过查询知识库中的信息,使用解码器生成答案。在给定场景下,能够生成完整的一句话,答案包含正确的知识,且生成的答案具有流畅性、一致性和正确性,在经典的知识问答数据集、限定领域和开放领域的问答数据集都取得很好效果。

Description

一种基于表示学习与多层覆盖机制的生成式知识问答方法
技术领域
本发明涉及一种生成式知识问答方法,具体涉及一种基于表示学习与多层覆盖机制的生成式知识问答方法,属于人工智能和自然语言处理领域技术领域。
背景技术
问答系统(Question Answering System,QA)是信息检索系统的一种高级形式,它能用准确、简洁的自然语言回答用户用自然语言提出的问题,其研究兴起的主要原因是人们对快速、准确地获取信息的需求。问答系统是目前人工智能和自然语言处理领域中一个倍受关注并具有广泛发展前景的研究方向。
知识问答系统的任务是,根据用户问题的语义,直接在知识库上查找、推理出相匹配的答案。这一任务也称之为面向知识库的问答系统或知识库问答(Question answeringoverknowledge base,KBQA)。
在深度学习出现之前,知识问答领域已经有了很多方法来完成这项任务。针对KBQA任务,传统方法对问题的语义理解主要有三种方式:语义分析建模、信息抽取建模、向量建模。这些传统KBQA方法存在很多缺陷,比如:需要很多的先验知识、模型复杂、模型不够灵活等。
随着深度学习技术的发展,基于深度学习的KBQA方法成为了目前研究的重点。例如,利用Multi-Column CNN对向量建模模型进行改进,使用多个CNN(卷积神经网络)提取问题与答案的特征,将三对特征向量进行点积操作并相加,得到问题和答案相似度并训练模型;使用双向RNN(循环神经网络)变种BiLSTM网络并结合注意力机制来对问句进行向量建模;适用于KBQA任务的新型网络模型记忆网络(Memory Networks),简称MMN,模型可以利用提前构建的知识库,并通过倒排索引的方式,通过问题的分布式表征得到查询命令的向量表征,计算问题向量和每一个键值的相似度得分,转化为每一个键值的权重,键值对应的数据值也就是问题的答案。
但是,上述KBQA方法反馈给用户生成的答案,都是简单实体词汇,不是“自然语言形式”的回答,无法像人类自然语言形式的表达。
生成式问答任务,使用深度学习中的Seq2Seq框架,可以生成自然语言形式的对话,赋予模型“说话的能力”。想要生成一句连贯的自然语言答案,会面临很多的挑战,例如词典外词汇(Out Of Vocabulary,OOV)问题,由于模型词典大小有限,所以当编码器端输入OOV词时会用“UNK”来代替,但这样做很有可能导致输出端也输出“UNK”。为了缓解OOV问题,提出了复制网络(Copy Net)和指针网络(Pointer Net),二者思路类似,即构建一个由源端OOV词构成的词汇表,当预测目标端的词时,会输出源端词表和现有词表中的词汇,减小“UNK”词出现的概率。但是,一般的生成式对话系统并没有知识库的支撑,模型是通过单纯的QA对语料训练得到的,这些对话系统不能直接应用于KBQA任务。
2016年提出了GenQA模型,首先在生成式KBQA任务上进行了尝试。将生成式问答模型与知识问答模型结合,模型可以在知识库的支撑下,生成自然语言形式的答案,但是该模型只能回答依赖单一事实的复杂问题,并且生成的答案不够流畅。2017年提出了CoreQA模型,进一步结合了GenQA和复制网络,并将每一个问答对所依赖的知识增加到多个,改善了模型生成的答案,但是在答案的准确率和生成答案中存在重复生成词汇的问题。
发明内容
本发明的目的是为了克服已有技术的缺陷,为了解决知识问答系统的知识库中,事实不能被有效表示导致降低查找正确答案能力,生成式问答任务中模型往往会陷入某种模式中无法跳出,或在某个模式中重复生成已经生成过的词汇,导致答案的可读性下降的技术问题,提出一种基于表示学习与多层覆盖机制的生成式知识问答方法。本方法中,建立的生成式知识问答模型使用Seq2Seq框架,结合注意力机制、CopyNet模型、GenQA模型和Coverage覆盖机制。通过编码器解析问题,并通过查询知识库中的信息,使用解码器生成答案。在给定场景下,能够生成完整的一句话,答案中包含正确的知识,并且生成的答案具有流畅性、一致性和正确性。
本发明采用的技术实现方案如下:
一种基于表示学习与多层覆盖机制的生成式知识问答方法,给定场景如下:
(1)单轮生成式知识问答任务,针对三元组尾实体进行问询。
(2)语料已经通过命名实体识别和主题词识别处理。
(3)给定知识库或与主题词相关的知识子图,以及知识库的表示学习结果。
包括以下步骤:
步骤1:抓取真实世界用户问题数据,从开放领域获取问答语料和知识库信息,生成开放领域数据集。
如果是中文数据集,使用分词工具分词处理;如果是英文数据集,进行命名实体和识别主题词识别。
步骤2:在对原问题的编码中,在词向量的基础上加入字向量,利用知识表示学习方法代替基础词典的词向量。
在各类语言中,字的数量远远小于词汇的数量。例如,中文常用字符在5000个左右,英文有26个字母,引入字典不会占用过多的硬件资源。字向量能够尽可能的补充词典外词汇(OOV)缺失的语义信息,并且在模型“理解”文本和知识库的时候,可以在字的层面上考虑字符的相似性,从而匹配可能性更高的知识。此外,字向量可以让所有陌生词汇有唯一的向量表征,赋予了模型“理解”陌生词汇的能力,例如,假设当“北京”、“上海”为OOV词汇时,若只用词向量表征,则模型会将它们都当做“UNK”处理。加入字符向量后,两个词有了唯一的向量表征。
本方法中,利用知识表示学习方法生成的实体、关系向量代替基础词典中相应词汇的词向量。利用整个知识库的特性,让模型中的关系和实体向量有更精确的语义表征,进一步提升模型匹配知识的能力。
步骤3:获取问题和知识库信息。
使用双向循环神经网络获取问题的隐藏状态,使用向量拼接方式获取知识库的记忆模块。
使用双向循环神经网络作为编码器,输入问题序列,编码器的输出为问题的记忆单元MQ储存编码器的所有隐藏状态。
利用主题词在知识库中抽取的知识子图作为问答的知识库,知识库中任意一条事实表示为其头、尾、关系的向量拼接,编码后得到知识库的记忆模块MKB
通过以上步骤模型获取问题和知识库的信息,读取MQ中的信息,能够决定复制哪部分问题到答案中。通过读取MKB,能够决定答案使用哪些事实作为知识依据。
步骤4:更新当前解码器的隐状态。
使用单向RNN作为解码器,使用t-1时刻问题和知识库的加权向量表征补充e(yt-1)缺失的信息,更新当前解码器的隐状态,输出答案序列。在RNN状态更新时,需要处理基础词典中缺少源端和知识库对应的词及其词向量e(yt-1),以及源端和知识库的情况。
方法如下:
首先,计算t-1时刻MQ所有位置与st-1的相似度得分,st-1指解码器在t-1时刻的隐藏状态,得到问题的选择读取:
Figure BDA0002330770330000041
其中,αt-1j表示问题的加权表征,hj表示问题序列的第j个值在编码器的隐藏状态输出,Lq表示问题序列的长度即hj的个数。
问题的加权表征αt-1j使用softmax函数计算,如下述公式:
Figure BDA0002330770330000042
其中,
Figure BDA0002330770330000043
表示hj和st-1的点积。
然后,计算t-1时刻MKB每一个事实与st-1的相似度得分,得到知识库的选择读取:
Figure BDA0002330770330000044
其中,LKB表示知识库中事实的个数,βt-1j表示知识库的加权表征。
问题的加权表征βt-1j使用softmax函数计算,如下述公式:
Figure BDA0002330770330000045
其中,
Figure BDA0002330770330000051
表示fi和st-1的点积,fi表示知识库中第i个事实的向量表示。
模型加入Selective Read后的输入为[e(yt-1),rqt-1,
Figure BDA0002330770330000053
]。
步骤5:计算模型目标端输出概率。
模型目标端输出概率,由生成模式p(yt,g|·)、复制模式p(yt,c|·)、KB查询模式p(yt,kb|·)三个部分共同决定,得分最高的yt是模型在t时刻的输出。三个模式通过局部覆盖机制和全局覆盖机制来得到最终的得分。
采用局部覆盖向量,能够让模型获取模型选择的历史信息,减小高关注度的部分受到的关注度,防止模型重复生成词。采用全局覆盖机制的目的是控制三个模式的切换。三个模式在答案的生成过程中,应当在总体上保持平衡。参考人类回答问题的过程,在简单的单轮知识对话中,为保证答案的简洁和有效,人类会拷贝问题中几个关键词语,会从知识储备中选取对应的知识,然后用简单的话串联所有信息反馈回提问者,即,很少出现答案序列一直在由某一种模式生成。当某个模式关注度足够高的时候,提高其他模式的受关注的概率。因此,本方法使用全局覆盖机制来记录三个模式的历史关注。
步骤5.1:预测模式。此模式是解码端的基本模式,用于生成基础词典中的词。
计算得到词典中每一个词的得分:
Figure BDA0002330770330000052
其中,Wgen是张量,vi是词的独热表示,通过点积获取词的得分。st表示t时刻解码器的隐藏状态,st后拼接了cqt和ckbt两个向量。通过此时的问题的加权表征和知识库的加权表征来指导生成模式的预测。
步骤5.2:复制模式。计算将问题部分词汇复制到答案序列的得分。
复制模式会构建一个新的词典,其中保存没有在基础词典中出现的词,模型会预测需要复制问题序列的第几个词。xj是问题序列第j个词,hj是xj的解码器输出。
histq是局部覆盖机制向量,每一维记录前t-1时刻问题序列中每一个位置历史关注度。histq视为t时刻的解码状态的一部分,st和histq被分别理解为t时刻模型的语义状态和复制模式的历史状态,所以将二者进行拼接:
sorcecop(yt=xj)=tanh([st,histq]T·Wc)hj (6)
其中,Wc是张量。
步骤5.3:查询知识库,将最匹配的事实填入答案中。
该模式会构建一个词典,其中保存知识库中出现的OOV词,模型会预测需要复制知识库中的第几个三元组的尾实体。fk代表知识库中第k三元组的尾实体。st代表语义状态,q为问题序列的整体表征。
histkb是局部覆盖机制,记录知识库中事实的历史关注度,第k条知识的总关注度为
Figure BDA0002330770330000061
βτk是τ时刻第k条知识的关注度:
sorcekb(yt=fk)=tanh([st,q,histkb]T·Wkb)fk (7)
其中,fk代表知识库中第k三元组的尾实体,st代表语义状态,q为问题序列的整体表征。
步骤5.4:三个模式在答案的生成过程中,需要一个变量来控制三个模式的切换。加入全局覆盖机制向量histg,向量的每一维依次代表:生成模式、复制模式和KB查询模式的平衡系数,用来平衡三个模式的得分。
δ=[δgencopkb]=softmax(Wg·[st,histg]+bg) (8)
其中,δ为平衡因子,δgen为生成模式平衡系数,δcop为复制模式平衡系数,δkb为KB查询模式平衡系数,bg表示偏置项。当某个模式关注度足够高的时候,提高其他模式的受关注的概率。
模型计算全局覆盖机制向量,利用t时刻的状态st和全局覆盖向量histg来生成平衡因子δ,拼接st和histg经过参数为Wg的单层全连接网络层。
步骤5.5:三个模式通过全局覆盖机制来平衡。使用softmax函数得到生成模式概率、复制模式、KB查询模式三个部分的条件概率pgen(yt,g|·)、pcop(yt,c|·)、pkb(yt,kb|·),在得分函数前乘上各自对应的平衡因子:
Figure BDA0002330770330000071
Figure BDA0002330770330000072
Figure BDA0002330770330000073
Figure BDA0002330770330000074
其中,Z是三个模式经过softmax函数计算的归一化项。三种模式相加,计算总得分。
步骤6:使用端到端的反向传播模式进行优化,使用梯度下降优化损失函数。迭代模型至收敛,得到最终模型:
Figure BDA0002330770330000075
其中,L是计算得出的损失值,
Figure BDA0002330770330000076
表示解码器第k个位置的预测值,X(k)表示问题集合,Z(k)表示知识集合。
步骤7:利用步骤6训练的模型,对真实用户数据生成的社区问答测试数据集,生成相匹配答案。
有益效果
本发明方法,将知识表示学习结果应用到问答模型中,提高了答案正确率。利用CopyNet模型和字词向量来缓解OOV问题,提升了模型拟合新数据的能力。使用多层覆盖机制来提高模型语义上的流畅度,减少了由预测模式混乱导致的重复输出的问题。本方法,在经典的知识问答数据集、限定领域和开放领域的问答数据集都取得了很好的效果。
附图说明
图1为本发明方法的流程图。
具体实施方式
下面结合附图和实施例对本发明做进一步说明和详细描述。
实施例
本实施例详细阐述了本方法以及在3个不同类型规模的数据集下具体实施时的方法和效果。如图1所示,步骤如下:
步骤1:获取知识问答数据集,抓取真实世界用户问题数据生成开放领域数据集。
获取SimpleQuestion单关系知识问答数据集。所述数据集按照7:1:2的比例划分为训练集、验证集和测试集。
获取中文限定领域的生成式KBQA数据集,数据集是使用模板生成得生日的问答语料。数据集的答案依赖多条事实。数据集按照9:1的比例划分为训练集和测试集。
抓取用户真实数据生成开放领域数据集,获取问答语料及知识库信息,问题、答案以及答案所依赖的多条事实,语料规模庞大且涉及领域广阔。构建开放领域知识图谱,数据集按照8:1:1的比例划分为训练集、验证集、测试集。
对中文数据集使用汉语分词工具处理,对英文数据集进行命名实体识别、主题词识别。
步骤2:利用知识表示学习方法生成的实体、关系向量代替基础词典中相应词汇的词向量。
步骤3:在对原问题的编码中,在词向量的基础上加入字向量。
步骤4:获取问题和知识库信息。
使用双向RNN构建编码器,输出问题的记忆单元。知识子图中每条事实的头、尾、关系向量的拼接作为知识库的记忆单元。
使用单向RNN作为解码器,状态更新时选择读取问题和知识库的信息,使用t-1时刻源端和知识库的加权向量表征补充yt-1缺失的信息,更新当前解码单元的隐状态。
步骤5:计算模型的目标端输出概率。
步骤5.1:预测模式。通过下式计算词典中每一个词的得分:
Figure BDA0002330770330000081
步骤5.2:复制模式,通过(2)计算将问题部分词汇复制到答案序列的得分。
sorcecop(yt=xj)=tanh([st,histq]T·Wc)hj (2)
步骤5.3:查询知识库,将最匹配的事实填入到答案中。通过公式(3)预测需要复制知识库中的第几个三元组的尾实体。
sorcekb(yt=fk)=tanh([st,q,histkb]T·Wkb)fk (3)
步骤5.4通过公式(4)来控制三个模式的切换。
δ=[δgencopkb]=softmax(Wg·[st,histg]+bg) (4)
步骤5.5使用全局覆盖机制来平衡。使用softmax函数得到生成模式概率、复制模式、KB查询模式三个部分的条件概率,使用全局覆盖机制平衡。每个模式的条件概率如下(Z为归一化项):
Figure BDA0002330770330000091
Figure BDA0002330770330000092
Figure BDA0002330770330000095
Figure BDA0002330770330000093
三种模式相加,计算总得分。
步骤6:使用端到端的反向传播模式进行优化,使用梯度下降优化损失函数。迭代模型至收敛,得到最终模型:
Figure BDA0002330770330000094
步骤7:利用步骤6训练的模型,对获取的知识问答数据集和真实用户问题数据集,生成相匹配答案。
对比验证
在SimpleQuestions数据集的表现如表1所示,对比模型如下:BiCNN模型作为baseline,AMPCNN是加入字符向量和注意力机制的CNN模型,HR-BiLSTM模型在句子和关系两个级别分析语义,CoreQA和本模型同为生成式问答模型。
MCQA(WE)是本方法只使用了词向量的模型,MCQA(WE,CE)是使用了字词向量的模型,进一步将词向量中的实体和关系向量替换为知识表示学习生成的向量MCQA(TE,CE)模型准确率提高到94.3%。CoreQA与MCQA模型同为生成式问答模型,可以看出,字词向量和知识表示学习结果的加入明显提升了MCQA模型在知识库中查找正确知识的能力。
表1
方法 准确率
BiCNN 90.0
AMPCNN 91.3
HR-BiLSTM 93.3
CoreQA 92.8
本方法(WE) 93.1
本方法(WE,CE) 93.8
本方法(TE,CE) 94.3
本方法在生日数据集上的如表2所示。通过正则表达式匹配方法,提取出测试答案的人称代词、年、月、日信息,准确率分别表示为Pg、Py、Pm、Pd。为评判生成答案的语言表述能力本文生成了18个语法正则模板,评判标准Pr是符合模板规律的测试样本数除以测试总样本数,Pr越高说明模型语言表述能力越强。
“-”代表该项没有数据或正确率<10%。前三组实验分别是基础Seq2Seq框架、神经翻译模型、复制网络模型根据问答对语料进行训练得到的结果,它们生成的答案的表述能力可以作为生成答案质量的baseline。
本方法提出的Pr达到了远高于baseline的效果。MCQA(WE,CE)加入了字词向量表示,增强了模型的“理解”能力,所以在性别预测一项的准确率有大幅度的提升。在年月日三项的预测中,加入了字词向量后的MCQA也有很大的提升,因为关系词汇中的“年”、“月”、“日”等字符表征能够匹配到问题序列中的相同字符,提高了模型的查询能力。
表2
Figure BDA0002330770330000101
Figure BDA0002330770330000111
在抓取真实用户数据生成的大规模社区问答数据集上,测试模型生成答案的质量和拟合大规模数据的能力,会产生更多的OOV词。由于开放领域的社区问答生成的答案没有统一的计算模型效果的方法,所以本实验结果采用人工检验的方式,每次随机选取100条来进行检验,共检验三次取平均值,从流畅性、一致性、正确性检验答案的质量.流畅性是指答案是否符合句法语法结构,一致性是指答案是否与问题的方向保持一致,正确性指是否答案中包含正确的知识。
实验中CopyNet模型是流畅性和一致性指标的baseline,GenQA模型是所有三个指标的baseline。由于实验使用开放领域的社区问答语料,OOV问题体现的更加明显,在对比实验生成的答案中出现了大量的<unk>词汇。与对比实验COREQA相比,加入了字词向量缓解了OOV带来的影响,提升了模型“理解”问题和知识库的能力,所以在一致性和正确率方面有明显提升,模型能明确问题的方向并找到正确答案,模型在加入知识表示学习结果后,在正确性上也有进一步的提升。由于MCQA的多层覆盖机制,能够平衡模型三个模式的生成策略,使得语言逻辑更加的清晰,语言流畅性更高,因此在流畅性指标上较对比实验有较大提升。
表3
Figure BDA0002330770330000112
Figure BDA0002330770330000121
表4列举了在抓取真实用户数据生成的大规模社区问答数据集上的生成的答案和网络中抓取的答案进行比对,表4中预测答案里普通字体的部分由生成模式产生,下划线部分由复制模式产生,加粗部分由KB查询模式产生,斜体部分是由KB知识指导生成模式产生的词汇。可以看出整体上答案的语义结构比较清晰,也能较好的与问题的方向保持一致,证实了本生成式问答方法能够针对问题生成流畅、正确、一致的回答。
表4
Figure BDA0002330770330000122

Claims (2)

1.一种基于表示学习与多层覆盖机制的生成式知识问答方法,其特征在于,包括以下步骤:
给定场景如下:
(1)单轮生成式知识问答任务,针对三元组尾实体进行问询;
(2)语料已经通过命名实体识别和主题词识别处理;
(3)给定知识库或与主题词相关的知识子图,以及知识库的表示学习结果;
步骤1:抓取真实世界用户问题数据,从开放领域获取问答语料和知识库信息,生成开放领域数据集;
步骤2:在对原问题的编码中,在词向量的基础上加入字向量,利用知识表示学习方法代替基础词典的词向量;
步骤3:获取问题和知识库信息;
使用双向循环神经网络获取问题的隐藏状态,使用向量拼接方式获取知识库的记忆模块;使用双向循环神经网络作为编码器,输入问题序列,编码器的输出为问题的记忆单元MQ储存编码器的所有隐藏状态;
利用主题词在知识库中抽取的知识子图作为问答的知识库,知识库中任意一条事实表示为其头、尾、关系的向量拼接,编码后得到知识库的记忆模块MKB
步骤4:更新当前解码器的隐状态;
使用单向RNN作为解码器,使用t-1时刻问题和知识库的加权向量表征补充e(yt-1)缺失的信息,更新当前解码器的隐状态,输出答案序列;在RNN状态更新时,要处理基础词典中缺少源端和知识库对应的词及其词向量e(yt-1),以及源端和知识库的情况;
步骤5:计算模型目标端输出概率;
模型目标端输出概率,由生成模式p(yt,g|·)、复制模式p(yt,c|·)、KB查询模式p(yt,kb|·)三个部分共同决定,得分最高的yt是模型在t时刻的输出,三个模式通过局部覆盖机制和全局覆盖机制来得到最终的得分;
三个模式在答案的生成过程中,应在总体上保持平衡,使用全局覆盖机制来记录三个模式的历史关注:
步骤5.1:预测模式;
此模式是解码端的基本模式,用于生成基础词典中的词;
计算得到词典中每一个词的得分:
Figure FDA0002330770320000021
其中,Wgen是张量,vi是词的独热表示,通过点积获取词的得分;st表示t时刻解码器的隐藏状态,st后拼接了cqt和ckbt两个向量;通过此时的问题的加权表征和知识库的加权表征来指导生成模式的预测;
步骤5.2:复制模式;
计算将问题部分词汇复制到答案序列的得分;复制模式会构建一个新的词典,其中保存没有在基础词典中出现的词,模型会预测需要复制问题序列的第几个词;xj是问题序列第j个词,hj是xj的解码器输出;
histq是局部覆盖机制向量,每一维记录前t-1时刻问题序列中每一个位置历史关注度;histq视为t时刻的解码状态的一部分,st和histq被分别理解为t时刻模型的语义状态和复制模式的历史状态,将二者进行拼接:
sorcecop(yt=xj)=tanh([st,histq]T·Wc)hj
其中,Wc是张量;
步骤5.3:查询知识库,将最匹配的事实填入答案中;
该模式构建一个词典,其中保存知识库中出现的OOV词,模型会预测需要复制知识库中的第几个三元组的尾实体;fk代表知识库中第k三元组的尾实体;st代表语义状态,q为问题序列的整体表征;
histkb是局部覆盖机制,记录知识库中事实的历史关注度,第k条知识的总关注度为
Figure FDA0002330770320000022
βτk是τ时刻第k条知识的关注度:
sorcekb(yt=fk)=tanh([st,q,histkb]T·Wkb)fk
其中,fk代表知识库中第k三元组的尾实体,st代表语义状态,q为问题序列的整体表征;
步骤5.4:三个模式在答案的生成过程中,需要一个变量来控制三个模式的切换;加入全局覆盖机制向量histg,向量的每一维依次代表:生成模式、复制模式和KB查询模式的平衡系数,用来平衡三个模式的得分:
δ=[δgencopkb]=softmax(Wg·[st,histg]+bg)
其中,δ为平衡因子,δgen为生成模式平衡系数,δcop为复制模式平衡系数,δkb为KB查询模式平衡系数,bg表示偏置项;当某个模式关注度足够高的时候,提高其他模式的受关注的概率;
模型计算全局覆盖机制向量,利用t时刻的状态st和全局覆盖向量histg来生成平衡因子δ,拼接st和histg经过参数为Wg的单层全连接网络层;
步骤5.5:三个模式通过全局覆盖机制来平衡;使用softmax函数得到生成模式概率、复制模式、KB查询模式三个部分的条件概率pgen(yt,g|·)、pcop(yt,c|·)、pkb(yt,kb|·),在得分函数前乘上各自对应的平衡因子:
Figure FDA0002330770320000031
Figure FDA0002330770320000032
Figure FDA0002330770320000033
Figure FDA0002330770320000034
其中,Z是三个模式经过softmax函数计算的归一化项;三种模式相加,计算总得分;
步骤6:使用端到端的反向传播模式进行优化,使用梯度下降优化损失函数,迭代模型至收敛,得到最终模型:
Figure FDA0002330770320000035
其中,L是计算得出的损失值,yt (k)表示解码器第k个位置的预测值,X(k)表示问题集合,Z(k)表示知识集合;
步骤7:利用步骤6训练的模型,对真实用户数据生成的社区问答测试数据集,生成相匹配答案。
2.如权利要求所述的一种基于表示学习与多层覆盖机制的生成式知识问答方法,其特征在于,步骤4中,处理基础词典中缺少问题和知识库对应的词及其词向量e(yt-1),以及问题和知识库的方法如下:
首先,计算t-1时刻MQ所有位置与st-1的相似度得分,st-1指解码器在t-1时刻的隐藏状态,得到问题的选择读取:
Figure FDA0002330770320000041
其中,αt-1j表示问题的加权表征,hj表示问题序列的第j个值在编码器的隐藏状态输出,Lq表示问题序列的长度即hj的个数;
问题的加权表征αt-1j使用softmax函数计算,如下述公式:
Figure FDA0002330770320000042
其中,
Figure FDA0002330770320000043
表示hj和st-1的点积;
然后,计算t-1时刻MKB每一个事实与st-1的相似度得分,得到知识库的选择读取:
Figure FDA0002330770320000044
其中,LKB表示知识库中事实的个数,βt-1j表示知识库的加权表征;
问题的加权表征βt-1j使用softmax函数计算,如下述公式:
Figure FDA0002330770320000045
其中,
Figure FDA0002330770320000046
表示fi和st-1的点积,fi表示知识库中第i个事实的向量表示;
模型加入Selective Read后的输入为
Figure FDA0002330770320000047
CN201911335248.2A 2019-06-06 2019-12-23 一种基于表示学习与多层覆盖机制的生成式知识问答方法 Active CN111125333B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201910490667 2019-06-06
CN2019104906677 2019-06-06

Publications (2)

Publication Number Publication Date
CN111125333A true CN111125333A (zh) 2020-05-08
CN111125333B CN111125333B (zh) 2022-05-27

Family

ID=70501643

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911335248.2A Active CN111125333B (zh) 2019-06-06 2019-12-23 一种基于表示学习与多层覆盖机制的生成式知识问答方法

Country Status (1)

Country Link
CN (1) CN111125333B (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111382257A (zh) * 2020-05-28 2020-07-07 支付宝(杭州)信息技术有限公司 一种生成对话下文的方法和系统
CN112035627A (zh) * 2020-07-27 2020-12-04 深圳技术大学 自动问答方法、装置、设备及存储介质
CN112199485A (zh) * 2020-10-14 2021-01-08 哈尔滨工程大学 一种基于个性化开放领域的对话生成方法
CN112818098A (zh) * 2021-01-29 2021-05-18 平安国际智慧城市科技股份有限公司 基于知识库的对话生成方法、装置、终端及存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170316775A1 (en) * 2016-04-27 2017-11-02 Conduent Business Services, Llc Dialog device with dialog support generated using a mixture of language models combined using a recurrent neural network
CN108763217A (zh) * 2018-06-01 2018-11-06 北京玄科技有限公司 基于多语义的集外词处理方法、智能问答方法及装置
CN108829670A (zh) * 2018-06-01 2018-11-16 北京玄科技有限公司 基于单语义的未登录词处理方法、智能问答方法及装置
CN109145105A (zh) * 2018-07-26 2019-01-04 福州大学 一种融合信息选择与语义关联的文本摘要模型生成算法
CN109271483A (zh) * 2018-09-06 2019-01-25 中山大学 基于递进式多判别器的问题生成方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170316775A1 (en) * 2016-04-27 2017-11-02 Conduent Business Services, Llc Dialog device with dialog support generated using a mixture of language models combined using a recurrent neural network
CN108763217A (zh) * 2018-06-01 2018-11-06 北京玄科技有限公司 基于多语义的集外词处理方法、智能问答方法及装置
CN108829670A (zh) * 2018-06-01 2018-11-16 北京玄科技有限公司 基于单语义的未登录词处理方法、智能问答方法及装置
CN109145105A (zh) * 2018-07-26 2019-01-04 福州大学 一种融合信息选择与语义关联的文本摘要模型生成算法
CN109271483A (zh) * 2018-09-06 2019-01-25 中山大学 基于递进式多判别器的问题生成方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
刘秉权等: "面向问答社区的答案摘要方法研究综述", 《中文信息学报》 *

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111382257A (zh) * 2020-05-28 2020-07-07 支付宝(杭州)信息技术有限公司 一种生成对话下文的方法和系统
CN112035627A (zh) * 2020-07-27 2020-12-04 深圳技术大学 自动问答方法、装置、设备及存储介质
CN112035627B (zh) * 2020-07-27 2023-11-17 深圳技术大学 自动问答方法、装置、设备及存储介质
CN112199485A (zh) * 2020-10-14 2021-01-08 哈尔滨工程大学 一种基于个性化开放领域的对话生成方法
CN112199485B (zh) * 2020-10-14 2022-10-14 哈尔滨工程大学 一种基于个性化开放领域的对话生成方法
CN112818098A (zh) * 2021-01-29 2021-05-18 平安国际智慧城市科技股份有限公司 基于知识库的对话生成方法、装置、终端及存储介质
CN112818098B (zh) * 2021-01-29 2023-11-24 深圳平安智慧医健科技有限公司 基于知识库的对话生成方法、装置、终端及存储介质

Also Published As

Publication number Publication date
CN111125333B (zh) 2022-05-27

Similar Documents

Publication Publication Date Title
CN111125333B (zh) 一种基于表示学习与多层覆盖机制的生成式知识问答方法
CN112115687B (zh) 一种结合知识库中的三元组和实体类型的生成问题方法
CN111966812B (zh) 一种基于动态词向量的自动问答方法和存储介质
CN113435211B (zh) 一种结合外部知识的文本隐式情感分析方法
CN115048447B (zh) 一种基于智能语义补全的数据库自然语言接口系统
CN115510814B (zh) 一种基于双重规划的篇章级复杂问题生成方法
CN114969304A (zh) 基于要素图注意力的案件舆情多文档生成式摘要方法
CN112818106A (zh) 一种生成式问答的评价方法
CN113536804A (zh) 一种基于关键词强化的GRU和Kronecker的自然语言特征提取方法
CN114254645A (zh) 一种人工智能辅助写作系统
Fang et al. A method of automatic text summarisation based on long short-term memory
CN113961706A (zh) 一种基于神经网络自注意力机制的精确文本表示方法
Zhao et al. Generating summary using sequence to sequence model
CN115204143B (zh) 一种基于prompt的文本相似度计算方法及系统
CN115965027A (zh) 一种基于语义匹配的文本摘要自动抽取方法
CN112464673B (zh) 融合义原信息的语言含义理解方法
CN115510230A (zh) 一种基于多维特征融合与比较增强学习机制的蒙古语情感分析方法
CN114972907A (zh) 基于强化学习和对比学习的图像语义理解及文本生成
Shuang et al. Combining word order and cnn-lstm for sentence sentiment classification
CN113743095A (zh) 基于词格和相对位置嵌入的中文问题生成统一预训练方法
CN112733526A (zh) 一种自动识别财税文件中征税对象的抽取方法
Cui et al. Aspect level sentiment classification based on double attention mechanism
Huang et al. Flexible entity marks and a fine-grained style control for knowledge based natural answer generation
Alissa et al. Text simplification using transformer and BERT
Schmidt et al. Generative text style transfer for improved language sophistication

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