什么是知识问答

基于知识的问答是以知识库为认知源,在知识库的基础上回答自然语言问题。

知识库(KB)是一个结构化数据库,其中包含形式<主题,关系,对象>的事实集合,每个事实都可以随附所谓的属性。

例如,“Barack Obama got married to Michelle Obama on 3 October 1992 at Trinity United Church”,会被解析为以下的集合

一般常用的的知识库有DBpedia和WikiData。

简单问题vs复杂问题

KBQA的早期工作专注于简单的问题回答,其中只涉及一个事实。例如,“JK罗琳在哪里出生?”这是一个简单的问题,可以用《J.K.罗琳》这个事实来回答罗琳,出生地,英国>。

最近人们的注意力转向了回答复杂的问题。所谓的复杂的问题就是涉及到在KB上的多跳推理、约束关系、数值操作或上述的某种组合。

让我们来看一个复杂的KBQA问题:“Who is the first wife of the TV producer that was nominated for The Jeff Probst Show?

这个问题需要找到以下的组合:

约束关系:我们正在寻找The Jeff Probst Show提名的电视制片人,因此需要找到一个与The Jeff Probst Show提名链接的实体,并且是一个 TV producer。

多跳推理:一旦我们找到电视制作人,我们需要找到他的妻子(wife)。

数值运算:一旦我们找到电视制作人的妻子,我们就会寻找第一任(first )妻子,因此需要比较数字并生成一个排名。

KBQA方法

对于复杂的KBQA,有两种主流方法。这两种方法都是从识别问题中的主题开始,并将其链接到知识库中的实体(称为主题实体)。然后,他们在主题实体的知识库附近获得答案:

通过执行解析后逻辑结构,典型的基于语义解析的方法(基于SP的方法)。会分析执行范式并通过在从KB中提取的特定于问题的图中进行推理,根据其与问题的相关性对提取图中的所有实体进行排名,这是典型的基于信息检索的方法(基于IR的方法)。

基于语义解析的方法

该方法通常将自然语言转化为中间的语义表示,然后将其转化为可以在 KG 中执行的描述性语言。具体有4种方法:1)语义解析(Semantic Parser)过程转化为query map 生成问题的各类方法;2)仅在领域数据集适用的Encoder-Decoder模型化解析方法;3)基于 Transition-Based 的状态迁移可学习的解析方法;4)利用 KV-MemoryNN 进行解释性更强的深度 KBQA 模型。

基于信息检索的方法

该方法首先会确定用户 Query 中的Entity Mention,然后链接到 KG 中的主题实体(Topic Entity),并将与 Topic Entity 相关的子图(Subgraph)提取出来作为候选答案集合,然后分别从 Query 和候选答案中抽取特征。最后利用排序模型对 Query 和候选答案进行建模并预测。

两种方法的优缺点

基于语义解析的方法由于逻辑形式而产生了更可解释的推理过程但是它们严重依赖于中间的语义表示的解析设计,这通常是性能改进的瓶颈。

基于信息检索的方法适合流行的端到端训练,但是推理模型的黑盒式使得中间推理的可解释性降低。

结论

在本文中,我们了解了什么是基于知识的问答(KBQA),以及解决复杂问题的两种主要方法。

如果你对KBQA比较感兴趣,可以从下面两个主要的数据集开始。

DBpedia https://www.dbpedia.org/ :

WikiData https://www.wikidata.org/wiki/Wikidata:Main_Page

https://avoid.overfit.cn/post/ba9af18863ca42d38cac4401606f0070

作者:Fabio Chiusano

知识问答(KBQA)两种主流方法:基于语义解析和基于信息检索的方法介绍相关推荐

  1. 5分钟NLP-知识问答(KBQA)两种主流方法:基于语义解析和基于信息检索的方法介绍...

    来源:DeepHub IMBA 本文约1200字,建议阅读5分钟本文介绍了知识问答的两种主流方法. 什么是知识问答 基于知识的问答是以知识库为认知源,在知识库的基础上回答自然语言问题. 知识库(KB) ...

  2. 小结两种在Python中导入C语言扩展库的方法

    小结两种在Python中导入C语言扩展库的方法 分类: Pythoner2009-08-18 20:44 2563人阅读 评论(1) 收藏 举报 python扩展c语言importstring 一种是 ...

  3. java定义一个长方形类,该类中具有长方形长宽两种属性,并具有相应的构造方法属性访问方法,计算长方形的周长和面积的方法,要求输出长是5,宽是4的长方形

    定义一个长方形类,该类中具有长方形长宽两种属性,并具有相应的构造方法 属性访问方法,计算长方形的周长和面积的方法,要求输出长是5,宽是4的长方形 public class test3 {public ...

  4. JS,两种在页面加载完成后自动执行的方法(ready,onload)

    JS,两种在页面加载完成后自动执行的方法 1.jQuery的ready事件,需要引入jQuery的包才能使用,表示文档结构已经加载完成(不包含图片等非文字媒体文件): ready可以多次调用,可以绑定 ...

  5. 程序设计方法主要有两种 其中C 语言程序,程序设计方法主要有两种,其中C++语言程序设计所采用的设计方法是( ) 程序设计。...

    程序设计方法主要有两种,其中C++语言程序设计所采用的设计方法是( ) 程序设计. 更多相关问题 如图,向量A.B.C在一条直线上,且,则()A. B. C. D. 下列各项中,()是行政处罚的形式. ...

  6. 变速恒频风电机组的优缺点_两种主流变速恒频风电机组技术发展综述

    两种主流变速恒频风电机组技术发展综述 [摘 要]通过对目前大型风电机组技术研究,分别对双馈异步.永磁同步 直驱两种主流变速恒频机组从典型接线方式, 各种控制技术研究热点等多方面进 行分析比较, 认为新 ...

  7. 两种在QGIS中制作高德铁路线型符号的方法

    1. 概述 恰当的地图符号除了可以直观地表达地图上的要素之外,还可以让地图看起来更加美观和更具有耐看性. 高德地图作为常用的地图之一,其许多的配色和样式方案值得我们在制图的时候参考,所以这里以铁路线型 ...

  8. 分享两种主流的win10系统重装方法,手把手教你重装win10系统

    当我们在打算要给电脑重装系统的时候,那就说明自己的电脑已经出现异常情况了,例如垃圾软件太多,电脑卡顿,蓝屏黑屏,无故卡机等等.当然,这些原因都不重要,重要的是,下面这篇文章小编将会教你怎么给电脑重装系 ...

  9. 知识问答KBQA简介

    目前基于深度学习的方法无须像模板方法那样人工编写大量模板,也无须像语义分析方法中人工编写大量规则,整个过程都是自动进行.但缺点也很明显,它目前只能处理简单问题和单边关系,对于复杂问题不如两种传统方法效 ...

最新文章

  1. 新浪微博推广网站的一些实践体会
  2. Numpy与Pandas基础
  3. css过渡transition
  4. DLA SQL技巧:行、列转换和JSON数据列展开
  5. 微信小程序自定义状态栏navigationBar样式组件,适配所有机型
  6. npm的一些常用命令
  7. PwnLnX:针对Linux系统的渗透测试工具
  8. Atlantis poj1151 线段树扫描线
  9. 通达信主力强势上涨预警副图指标公式(源码)
  10. 如何安装PyAudio
  11. typora+gitee图床
  12. 企业邮箱是什么?企业邮箱有什么好处?企业邮箱域名怎么设置?
  13. 干货 | 节省55%测试时间,携程酒店比对平台介绍
  14. kafka reassign 限速_为什么德国的高速就能不限速?
  15. 安卓打包:jks Invalid keystore format 报错解决
  16. 室内陈设设计有必要吗,室内陈设设计要注意什么
  17. vue3 动态传值给子组件
  18. arduinopn532模块_NFC开发板/nfc芯片标签/PN532开发板/RFID读卡器/NFC模块/Arduino
  19. centos7配置 console口_7.5. Configuring the Linux Console
  20. 分享:如何使DFC实现跨平台

热门文章

  1. 用python进行进制转换(二十六进制)
  2. 这5个“计算机专业”就业很吃香,毕业生需求量大,还不会过时
  3. 快递管理系统JavaI(连接数据库)
  4. (java)求税后工资问题
  5. DB2数据库配置db cfg
  6. PM小课堂 项目管理中的甘特图妙用
  7. 仿微信清理内存图表动画(解决surfaceView闪烁问题)
  8. Win10启动文件夹在哪里,Win10怎么添加开机启动项?
  9. CentOS中安装lsb_release及使用
  10. 2021-2025年中国军用浮桥行业市场供需与战略研究报告