问答系统

知识库上的问答系统:实体、文本及系统观点

编者:本文来自复旦大学博士崔万云在携程技术中心主办的深度学习Meetup上的主题演讲,分享了复旦大学研发的基于知识图谱的QA系统。关注携程技术中心微信公号ctriptech,可获知更多技术分享信息。文末可下载演讲PPT。

 QA系统用于回答人们以自然语言形式提出的问题,其在互联网、通信及医疗等领域获得显著的成功。其中,IBM研发的Watson系统就在与人类的答题比赛中获胜并首次获得100万美金奖励;苹果的Siri系统成功运行于iPhone之中,改变人与iPhone的交流方式;还有很多其它的公司也成功研发文字或语音的QA系统,比如谷歌的Google Now、亚马逊的Alexa和微软的Cortana;另外,在医学上面如Health Care,QA系统也帮助医生与患者得到及时的交互。

QA系统依据其回答语料可以分为两类,一类是常见的纯文本形式,如网络文档、问答社区内容、搜索引擎结果、百科数据等。另一类则是知识图谱,通常以RDF三元组的形式结构化表示。由于结构化的特点,QA系统相比纯文本语料,往往可以提供更加精确和简练的结果。另一方面,近些年涌现出了大批十亿甚至更大规模的知识图谱,包括WolframAlpha, Google Knowledge Graph, Freebase等。这些知识图谱的出现保证基于其的问答系统的覆盖率。所以当前,基于知识图谱的开放领域QA系统是可行的。

一、系统架构

QA系统分为三层架构模型,分别为实体、语言和应用层,如下图所示。

其中最下层为实体层,其为上层模型提供最基础的计算单元,包括了语义社区搜索、语义消歧义和同现网络模块;中间层为语言层,作为连接实体层和应用层的桥梁,其包含了具有一定语义信息的短文本;最上层则为集成的QA系统,包括了问题模板和深度学习模块。

1、实体层模型研究

1.1 语义社区搜索

如上图所示,节点即代表单词在语义社区网络中的语义,边则为单词与单词之间的关系,以此模型即可找到一个单词所在的社区,以及单词之间的相似度,如下图所示pot和bowl为同一语义社区,有很高的相似度;pot和plate为不同的语义社区,其中两个有两个单词交集,为中等相似度;pot和tube为不同的语义社区,其中只有一个单词交集,为低等相似度;

1.2 语义消歧义

2、语言层模型研究

2.1 动词语义模板

根据动词与名词之间的相关性,提出了动词语义模板的理论,其中包括概念化的动词模板比如verb $cconcept,和固定化的动词模板比如verb $iobject。动词语义模板主要是用来对语言实体做概念化的处理,所以需要保证其既具有通用性,又具有特殊性的特征。基于信息论的最小描述距离理论,我们提出了满足上述两个特征的动词语义模板,即

3、应用层模型研究

如上图所示,QA系统从问题中通过语言实体识别、语言模板提取、预知索引建立并最终查找到问题的答案。其中,重点为怎么从问题中提取出正确的实体属性?问题模板很好解决了该问题,其可以将问题中的实体转化为其所对应的概念,如下图Honolulu其概念为City的意义。

那么,问题模板又是怎么从实体找到对应的属性呢?我们提出了一个基于概率图的方法,使得问题的答案跟预测的答案最接近,如下图所示。首先通过问题的实体识别可以得到实体,然后进行问题的概念化得到问题的问题模板,然后根据模板找到对应的属性,最后根据属性查找值。

 

二、研究结果

基于上述三层架构模型,训练了27126355个问题模板,覆盖了2782个问题意图群,成功研发了QA系统,如下图1所示。在CGF举办的一个基于知识图谱问答的竞赛中,基于实体的问答成功率高达59%,如下图2所示。在QALD的测试中也获得了很高的准确率,如下图3所示。

三、基于深度学习的QA研究

首先,为什么深度学习适合做实体属性查找呢?因为,深度学习对于序列性的问题有着天然的优势,而一般我们的问题都是序列性的。

1、CNN

如下为最简单的CNN网络,最下层即为问题的实体提取层,首先将连续的问题序列化为单个的实体。然后,对各个实体进行卷积运算。最后获取概率最大的Inbinding,由此得到实体属性值。同时,提出了能更好理解问题上下文的双向LSTM模型。

2、KB Based QA + Deep Learning

为了增强上述CNN网络的特性,我们提出了以下的模型。其模型原理与CNN类似,包含3个CNN网络,每个CNN网络独立进行属性的预测,并最后获得最大的均方根值。与单个CNN网络相比,其除了具有Answer Path属性外,还增加了Answer Context和Answer Type的属性。其中,Answer Context表示候选答案周围的信息,Answer Type则表示候选答案的类型。

四、对QA系统的思考

对于QA系统,我们现在面临的问题有:

1、缺乏高质量的训练数据集,比如只有3778个网络问题的QA对,而对于QALD则只有100个QA对;

2、知识图谱本身的数据不完善;

同时,基于KB-based的QA具有的有限的联系且准确的答案的属性,而基于IR-based的QA具有无限的联系且模糊的答案的属性,那么如何将两个模型进行结合得到更广且更准确的问题答案呢?这是我们正在着力研究,且具有良好前景的问题。

(本文由携程技术中心何军整理)

演讲PPT下载:

知识库上的问答系统:实体、文本及系统观点-崔万云

说明:本文由携程技术中心原创,如需转载请邮件niuq#ctrip.com(#改为@)。

深度学习Meetup系列:

深度学习在携程攻略社区的应用

深度学习在搜狗无线搜索广告中的应用

知识库上的问答系统:实体、文本及系统观点

用户在线广告点击行为预测的深度学习模型

知识图谱中的推理技术及其在高考机器人中的应用

标签: 深度学习携程技术中心

时间: 2024-12-03 08:51:57

问答系统的相关文章

TP3.23开发的分答微信版语音问答系统源码

演示地址:http://yd.168282.com (请在微信中打开演示) 公众号演示:(请直接扫码演示) 9月最新功能如下:1.易答:付费你(我)问,我(你)答,有人付费听,你我分钱.2.录音时自动转MP3格式,支持所有移动端设备3.每晚程序自动结算4.收入.支出 账目明细5.赞赏:如果你觉得答主答得漂亮,可以直接为他点赞6.问题搜索:搜人不够,还想搜问题,我们已经实现了这功能7.拒绝回答:不想回答的问题直接拒绝8.多级分类9.增强答主审核机制10.图文回答,图文提问,可后台开启11.追问功能

使用深度双向LSTM模型构造社区问答系统

/* 版权声明:可以任意转载,转载时请标明文章原始出处和作者信息 .*/ author: 张俊林 关于社区问答系统的问题背景,我们在之前的"利用卷积神经网络构造社区问答系统"一文里已经说明得很清楚,本文就不再赘述,不清楚背景的读者可自行参照上文,我们这些相关的研发工作主要是为了开发畅捷通"会计家园"交流社区的相关功能.为了保持行文完整,简明叙述形式化描述的问题如下: 假设我们已知问答库如下: 其中,Qi是问答社区中的历史问题,Ai是Qi问题的精华答案: 现有社区用户

川哥作品,国内唯一开源的智能人机问答系统,同学们请投上您宝贵的一票,多谢支持!

川哥作品,国内唯一开源的智能人机问答系统,同学们请投上您宝贵的一票,多谢支持!投票地址:http://i.100offer.com/projects/74

测试人机问答系统智能性的3760个问题

本文给出了3760个问题,这些问题来自于广大网友对QuestionAnsweringSystem的测试. 在面对这些问题的时候,我们人类是怎么思考回答的呢? 对我们来说,回答这些问题是一个很自然甚至很简单的思考过程,可是我们却很难把我们的思考过程严格地描述清楚.我们从小到大,积累了很多的经验和知识,这些经验和知识来自我们的社会实践和学校学习. 我们所处的世界不是完美的,我们本身也不是完美的,人与人的相互交流也不是完美的,我们经常需要反复地沟通,尽管这样,有时候我们还是不能完全理解对方的意思,有可

问答系统的前世今生

一. 前世 传统的问答系统是人工智能(AI: Artificial Intelligence)领域的一个应用,通常局限于一个非常狭窄专门的领域,基本上是由人工编制的知识库加上一个自然语言接口而成.由于领域狭窄,词汇总量很有限,其语言和语用的歧义问题可以得到有效的控制.问题是可以预测的,甚至是封闭的集合,合成相应的答案自然有律可循.著名的项目有上个世纪60年代研制的LUNAR系统,专事回答有关阿波罗登月返回的月球岩石样本的地质分析问题.SHRDLE 是另一个基于人工智能的专家系统,模拟的是机器人在

仿StackOverflow开发在线问答系统

仿StackOverflow开发在线问答系统 [第二期11月9日开课]使用Python Flask Web开发框架实现一套类似StackOverflow的在线问答平台LouQA,具备提问,回答,评论点赞等功能.学习数据库设计,Python Web开发及bootstrap相关知识.第二期开放报名中,名额有限,开课后将赠送一个月的VIP会员服务(价值49元). 课程购买有疑问? (0/4) 1 门课程,4 个实验 专属环境,无限延时 课程难题,有问必答 未开放购买 课程详情 实验列表 课程评论(27

人机问答系统的类别

"问答系统"(question answering,简称QA)讨论如何从大规模真实的联机文本中对于指定的提问找出正确回答的方法和技术,这是自然语言理解的一个新的发展趋向. 在20世纪初年,计算机还没有出现的时候,图灵(A. Turing)就天才地预见到,检验计算机智能高低的最好办法是让计算机来讲英语和理解英语,他提出了著名的"图灵实验"来检验计算机智能的高低.近年来迅速发展着的自动问答系统研究是图灵实验的生动实践,反映了自然语言处理技术的长足进步. 在自动问答系统中

知识库上的问答系统:实体、文本及系统观点

编者:本文来自复旦大学博士崔万云在携程技术中心主办的深度学习Meetup上的主题演讲,分享了复旦大学研发的基于知识图谱的QA系统.关注携程技术中心微信公号ctriptech,可获知更多技术分享信息.文末可下载演讲PPT.  QA系统用于回答人们以自然语言形式提出的问题,其在互联网.通信及医疗等领域获得显著的成功.其中,IBM研发的Watson系统就在与人类的答题比赛中获胜并首次获得100万美金奖励:苹果的Siri系统成功运行于iPhone之中,改变人与iPhone的交流方式:还有很多其它的公司也

做问答系统是对题目修改的bug

没有有BUG的代码 else if('add' == $key){ //获取问卷名字 $id = $this->get('wjid'); $wjname = $this->getWants('Spectab','id',$id,'specname'); $this->assign('wjname',$wjname); }else if('edit' == $key){ $id = $this->get('wjid'); $wjname = $this->getWants('S