动机
作者思考,如果一个人懂多个语言,那么只要他知道某一语言的某个事实,就能以它作为另一语言问题的答案,同时希望证明计算机是否也能做到这一点,并完成混合语言的简单问题知识问答任务(Code-Mix Simple Questions KBQA)。所谓Code-Mix即是指QA中的问题不是由单一语言构成,以中英双语举例:
“我怎么知道本文提出的model是否work呢?”
方法
作者将提出的CMQA模型分为两个步骤:1.候选生成 2.候选重排序
候选生成
这里的候选指的是KB中与问题相关的三元组,作者提出的思路是利用检索模式,缩小候选三元组的搜索空间。通过使用 Solr(一个开源的倒排索引查询系统),将 Freebase 中所有三元组编入索引,而后将 Question 作为检索的 Query 得到 top-k 个候选三元组,检索的排序打分参考 BM25。(注意:在这里检索仅支持英文,故混合语言问题中其他非英语成分对检索没有贡献,那么如果问题的entity是非英语的话,是否可能引入大量与问题无关的三元组呢)
候选重排序
本文的主要工作就是设计了一个重排序模型 Triplet-Siamese-Hybrid CNN(TSHCNN),采用 CNN(卷积网络)学习输入文本的语义表示,考虑到不同语言的词序差异性,作者认为 CNN 可以学习到输入文本中的词汇顺序特征以及短语顺序特征。
对于排序过程,文章将其抽象为一个多分类问题,即每个答案都是一个潜在类别,且对应的问题数量可能很小甚至为0,这里主要通过匹配目标实体和谓词来做答案筛选。直观思路是通过构建一个问题-答案间的相似度打分作为参照指标用于排序,作者在这里引入Siamese networks方法完成上述目的。
整体的模型框架如图
模型由两个通道组成,分别用于学习正例与负例,每一通道有三个输入:
1.问题
2.正(负)例样本
3.由正(负)例样本与问题联合构成的附加输入
网络结构由卷积层->池化层->向量关联->全连接层 构成,两个通道中对应位置的网络共享权重参数
语言转换
处理多语言问题还是绕不开语义鸿沟,为了将两种语言关联起来,作者采用了双语词嵌入+K近邻组合的策略,构建通用跨语言词嵌入空间,将双语词汇投影到该空间中,再引入K近邻方法构建双语词汇关联。
实验
数据:SimpleQuestions (Bordes et al., 2015)dataset
75.9k/10.8k/21.7k training/validation/test
词嵌入预训练:English,Hindi Fasttext(Bojanowski et al., 2016)
English-Hindi bilingual Smith et al.(2017) to obtain
自建数据集:Hindi-English混合语言问句 规模:250,简单问题,每句对应一个Freebase三元组
神经网络的超参数设定如图:
简单知识问答实验结果
候选三元组生成实验结果
双语端到端问答实验结果
部分问答效果示例
总结
作者认为本文的贡献包括:
成功的回答混合语言问题,在基于“英语语料,有噪声的海地语监督,和不完美的双语词嵌入”情况下
提出TSHCNN模型用于联合学习候选重排序
构建了一组250规模的海地语-英语混合语言问题数据集,并且这个数据集的答案来源于SimpleQuestion数据集,且可以映射到Freebase知识库上
本方法是作者所知目前第一个端到端的混合语言知识问答方法
论文笔记整理:谭亦鸣,东南大学博士,研究方向为知识库问答、自然语言处理。
OpenKG.CN
中文开放知识图谱(简称OpenKG.CN)旨在促进中文知识图谱数据的开放与互联,促进知识图谱和语义技术的普及和广泛应用。
转载须知:转载需注明来源“OpenKG.CN”、作者及原文链接。如需修改标题,请注明原标题。
点击阅读原文,进入 OpenKG 博客。