知识图谱实践知识图谱

知识图谱的问答(基于模板方法 )

2018-01-16  本文已影响472人  whspecial

一,什么是基于知识图谱的问答(KBQA)?

KBQA--knowledge base question answering,通过对问题进行语义理解及解析,通过知识库进行查询。

二,KBQA的基本要素:

输入:自然语言问句,例如“姚明的老婆是谁?”,“姚明的身高多少?”

输出:知识图谱里的实体或者关系,例如“叶莉”,“2米29”

评价标准:召回率,准确率,F1-Score

三,KBQA的最基础方法--基于模板方法:

步骤:

自然语言查询-->意图识别(Intention Recognition)-->实体链指(Entity Linking)+关系识别(Relation Detection) -->查询语句拼装(Query Construction)-->返回结果选择(Answering Selection)

下面简单介绍下各个步骤的内容:

意图识别(Intention Recognition):预先准备好意图模板,可以通过相似度来匹配,也可以通过机器学习里的分类问题来解决,这个是所有问答系统都要面临的问题。

实体链指(Entity Linking)+关系识别(Relation Detection):将查询语句中出现的实体和关系映射到知识图谱里,本质是一个NER问题,只是需要将NER结果进一步链接到图谱。

参考论文:

Entity Linking: Finding Extracted Entitiesin a Knowledge Base

Improved Neural Relation Detection forKnowledge Base Question Answering

查询语句拼装(Query Construction):需要根据底层知识图谱的查询语言,拼装成对应的query来查询(sparq等),最简单的方法就是预先定义好查询模板,根据之前解析出来的(意图,实体,关系)填进模板查询即可。

返回结果选择(Answering Selection):图谱查询之后的结果可能存在多个,需要选择一个最合适的答案,可以预先指定排序规则去选择答案。

基于模板的优点:

查询响应速度快

准确率高,可以回答复杂查询

基于模板的缺点:

要满足用户的各种问法,需要建立庞大的模板库,这个过程是很耗精力的

可以优化的点:

以上步骤最大的问题在于,需要人工事先准备模板,需要很大的工作量,是否可以自动生成模板?

参考论文:Automated Template Generation for Question Answering over KnowledgeGraphs

四,其他方法:

KBQA除了基于模板的方法之外,还有基于语义解析和基于深度学习等方法,后续再开新的文章进行介绍。

上一篇下一篇

猜你喜欢

热点阅读