基于全局覆盖机制与表示学习的生成式知识问答技术

刘琼昕, 王亚男, 龙航, 王佳升, 卢士帅. 基于全局覆盖机制与表示学习的生成式知识问答技术. 自动化学报, 2022, 48(10): 2392−2405 doi: 10.16383/j.aas.c190785
Liu Qiong-Xin, Wang Ya-Nan, Long Hang, Wang Jia-Sheng, Lu Shi-Shuai. Generative knowledge question answering technology based on global coverage mechanism and representation learning. Acta Automatica Sinica, 2022, 48(10): 2392−2405 doi: 10.16383/j.aas.c190785
http://www.aas.net.cn/cn/article/doi/10.16383/j.aas.c190785
关键词
生成式知识问答,覆盖机制,知识表示学习,自然语言处理,深度学习
摘要
针对现有生成式问答模型中陌生词汇导致答案准确率低下的问题和模式混乱导致的词汇重复问题, 本文提出引入知识表示学习结果的方法提高模型识别陌生词汇的能力, 提高模型准确率. 同时本文提出使用全局覆盖机制以平衡不同模式答案生成的概率, 减少由预测模式混乱导致的重复输出问题, 提高答案的质量. 本文在知识问答模型基础上结合知识表示学习的推理结果, 使模型具备模糊回答的能力. 在合成数据集和现实世界数据集上的实验证明了本模型能够有效地提高生成答案的质量, 能对推理知识进行模糊回答.
文章导读
对于用户用自然语言提出的问题, 知识问答系统(Knowledge base question answering, KBQA)通常提供短语和实体形式的精确答案[1]. 在现实环境中, 人们希望答案能够使用自然语言回答提出的问题, 这需要答案用完整/部分自然语言句子而不是单个实体/短语表达, 系统不仅需要解析问题, 还要从KB (Knowledge base)[2]检索相关事实, 生成一个适当的回复.
生成式知识问答任务使用Seq2Seq[3]框架来实现使用自然语言回答提出的问题, 不同于其他问答模型, 生成式知识问答模型无需其他自然语言处理工具, 可以在端到端的框架中同时实现分析问题, 从知识库检索事实, 并且生成正确、连贯以及自然的答案.
实现生成一句连贯的自然语言答案会面临很多的挑战, 比如词典外词汇(Out of vocabulary, OOV)问题: 由于模型词典大小有限, 在构建词典时, 会忽略掉一些词频较低的词汇, 当编码器端输入OOV词时会用“UNK (Unknown)”来代替, 但这样做很有可能导致输出端也输出“UNK”, 损失了原有的词义信息.
文献[4]提出CopyNet复制网络, 文献[5]提出指针网络来缓解OOV问题, 二者思路类似, 即构建一个由源端OOV词构成的词汇表, 当预测目标端的词时, 会输出源端词表和现有词表中的词汇, 减小“UNK”词出现的概率. 文献[6]结合了之前的生成式问答模型和CopyNet网络, 提出的CoreQA模型在知识库问答任务上能够以自然的方式回答复杂问题.
尽管上述工作在生成式问答任务上有了很大进展, 但是仍存在以下不足:
1)生成式问答模型的模式混乱问题. 模型可能会生成答案如Q: “鲁迅的原名是什么”, A: “原名周树人周树人周树人”的情况, 词汇重复降低了答案质量. 导致此类问题的原因是从问题端或知识库复制词汇到答案的过程中, 注意力机制引发了各个模式的混乱, 模型往往会陷入某种模式中无法跳出, 导致答案的可读性下降.
2)陌生词汇问题. 尽管引入CopyNet能够缓解从问题引入OOV词汇的问题, 但是知识问答任务还需要引入外部的知识库, 模型通过问题识别出关系, 拷贝知识库对应事实的尾实体填补到答案中. 陌生关系被识别为OOV词, 导致无法寻找到正确知识.
另外查询到的知识还要指导基础词典中词汇的生成.
举例如Q:“小明在哪个城市生活”, A: “他在北京生活”. 知识库中存在事实三元组(小明, 性别, 男),
如果基础词典中没有描述性别的词汇, 对于模型来说“男”和“女”会被识别为unk
3)当用户的问题在图谱中没有相关的知识作为支撑时, QA (Question answering)系统通常会答非所问, 或者回答错误的答案.
针对模式混乱问题, 本文通过全局覆盖机制来控制3个模式的切换, 当某个模式关注度足够高的时候, 提高其他模式的受关注的概率, 控制模式间的切换.
针对生成式问答模型中的陌生词汇问题, 本文利用知识表示学习方法生成的实体、关系向量代替基础词典中相应词汇的词向量, 让所有陌生词汇有唯一的向量表征, 提升模型匹配知识的能力.
本文运用知识推理补全知识库中缺失的知识, 模型可以提供给用户推理出的答案, 在构建的生成式知识问答系统基础上通过数据共享的方式, 对推理得到的知识进行模糊问答.
知识表示学习[7-8]是在知识图谱的构建和利用过程中,
进一步挖掘知识图谱结构信息的方法, 处理的方式是将知识图谱中的实体信息和关系信息映射到低维向量空间,
每一个实体和关系都有其独一无二的向量表征.
类似于自然语言处理(Natural
综上, 本文提出一种基于表示学习与全局覆盖机制的生成式问答模型(Multi coverage mechanism over question answering model, MCQA), 能够利用知识图谱信息并使用自然语言回答用户提出的问题. 它具有以下贡献:
1)针对词汇重复降低答案质量的问题, 提出使用全局覆盖机制来减轻生成模型模式混乱;
2)提出通过引入知识表示学习结果的方法缓解OOV问题, 提高模型答案的准确率;
3)提出一种知识推理和知识问答的结合方式, 使模型具备模糊回答的能力;
4)本文在SimpleQuestion单关系知识问答数据集、生日问答限定领域数据集和社区问答开放领域数据集上进行实验, 实验结果表明, 与现有方法相比, 本文所提出的模型可以更有效准确地为知识查询问题生成正确、连贯和自然的答案. 结合知识推理方法, 模型已经初步具有分辨原始知识和推理知识的能力, 并能对推理知识进行模糊回答.

图1

图2

图3
本文提出了一种基于表示学习与全局覆盖机制的生成式知识问答模型, 针对现有的生成式问答任务中遇到的OOV问题, 本文提出引入知识表示学习方法生成的实体、关系向量代替基础词典中相应词汇的词向量, 提高模型识别陌生词汇的能力, 提高模型准确率. 针对模型在使用3种预测模式联合生成答案时模式混乱的问题, 本文提出了全局覆盖这一机制, 提高模型的语义连贯性, 减少由预测模式混乱导致的重复输出的问题. 另外本文还将知识表示学习结果应用到问答模型中, 使模型初步具有区分原始知识和推理知识的能力, 能对推理知识进行模糊回答. 模型在多个数据集上的实验都取得了很好的效果, 表明模型能够有效提高生成答案的准确率和答案的语义流畅度. 最后, 知识推理和问答模型的结合使模型对推理知识的模糊回答取得了一定的效果.
未来我们将继续研究将知识表示学习和生成式问答进一步深入结合, 在问答模型中嵌入知识推理模型, 进行多任务联合学习, 改善学习性能. 还会尝试在问答模型的训练过程中加入课程学习的思想, 先易后难的训练模型, 使得含有噪声的数据中所有有价值的信息都可以得到充分利用.