问答系统总结

最近在研究问答系统,但是在查找资料的过程中一直处于懵逼状态,因为问答系统分类比较多,根据不同的依据可以分为不同种类,总是搞混,也没有找到资料详细全面的介绍,所以在一边学习查找资料的同时,自己也整理出一份总结,用于以后学习过程不至于思路混乱,如有错误请帮忙指出.

19世纪60年代最早:基于模板和规则

19世纪90年代:基于检索(IR)匹配-从问题中提取关键词,根据关键词在文本库中搜索相关文档,并进行降序排序,然后从文档中提取答案.
        主要模型有:
            单轮:DSSM,CLSM
            多轮:Multi-Viem,DAM(state-of-art),Memory-Network

2010年,知识图谱(结构化文本),基于知识库(KB-QA)-对问题进行解析,根据解析内容从知识库中推理出答案.
         基于知识库的三大传统方法:语义解析,信息提取,向量建模.
        1. 语义解析:
        2. 信息提取:用实体命名技术获取到问题中的实体,然后在知识库中进行查询,得到关于问题实体的中心子图,子图的边和结点就是候选答案的集合.进一步,可以通过分析,规则模板提取除特征,将问题和答案的特征结合送入二分类器中,将答案分为正确答案和错误答案进行建模.
        3. 向量建模:获取问题和答案的表示向量,然后做点乘求得分.
        其他:Memory-Network也可用于KB-QA

基于阅读理解的问答(MRC机器阅读理解):适用数据类型为-(给定一个问题 Q 和一个与 Q 相关的文档 D,自动得到 Q 对应的答案 A)非结构化文本,主要的方法有匹配式,抽取式和生成式
        1.匹配式:给出文章,问题和答案集,从答案集中选出最高得分的答案,像选择题.
            1)LSTM-reader(最简单的方法):把文档d和问题q合并建模后,喂到双向LSTM中,得到向量g
            2)Attentive-reader:先使用LSTM对问题建模得到向量q,再对文档建模,然后用q对文档使用attention匹配得到向量r,结合q和r,相当于带着问题读文档.
            3)Impatient-reader:同上,只不过是对每个token去计算attention,相当于先读每个字或者词,然后带着字或者词去读文档.
            4)Gated-Attention Reader:相当于带着一个问题,反复读文档,读k遍。
        2.抽取式:顾名思义就是从文档中抽取出答案,前提是文档中包括问题答案.
           这样的数据集有:斯坦福的SQuAD数据集,难度比较高的 TriviaQA数据集.
           抽取式的一般框架是,Embedder+Encoder+Interaction-layer+Answer
                Embedder:将输入embedding
                Encoder:分别对问题和文档用LSTM建模(也可以用其他方法)
                Interaction-layer:使用attention将问题和文档结合起来,对问题和文档进行交互,得到query-aware的文章表示.(个模型只要差别所在)
                Answer:对上面得到的query-aware文章表示进行抽取答案,通常有两种方法:一是使用两个模型分别预测出答案的起始和终止位置.二是把当然当成label序列(序列标注),预测出label.
            抽取式主要模型有:
                1).Match-LSTM:比较基础的模型,结构如下图(没看懂@[email protected]),Machine Comprehension Using Match-LSTM and Answer Pointer
                    模型结构:
                    原理:
                2).BiDAF:比较出名的模型,论文地址:Bidirectional Attention Flow for Machine Comprehension
                    模型结构:
                    原理:
                3).R-Net:近似state-of-art的模型,论文地址:没找到--.
                4).FastQAExt(轻量级),FastQA: A Simple and Efficient Neural Architecture for Question Answering
                5).GA-Reader,论文地址:Gated-Attention Readers for Text Comprehension
                6).QA-Net(使用CNN),论文地址:QANET: COMBINING LOCAL CONVOLUTION WITH GLOBAL SELF-ATTENTION FOR READING COMPREHENSION
        3.生成式:目前只有MSRA的MS MARCO数据集,答案形式是这样的:1)答案完全在某篇原文.2)答案分别出现在多篇文章中.3答案一部分出现在原文,一部分出现在问题中.4)答案的一部分出现在原文,另一部分是生成的新词.5)答案完全不在原文出现(Yes / No 类型)
            常见模型:
                1).改进R-Net
                2).S-Net,论文地址:S-NET: FROM ANSWER EXTRACTION TO ANSWER GENERATION FOR MACHINE READING COMPREHENSION
                3).R3-Net:集文档检索与答案生成于一身的模型,论文地址:R 3 : Reinforced Ranker-Reader for Open-Domain Question Answering

其他知识:
        1.transE模型:知识表示模型,最后训练出来的向量e符合如下规则:e(object)=e(subject)+e(relation),损失函数是最小正例距离最大负样本距离
        2.IRGAN模型:检索
        3.OpenIE:关系抽取工具
        4.实体/关系链接:将OpenIE抽取的关系链接到知识库
        5.检查关系是否正确,使用transE模型的思想e(object)和e(relation)+e(subject)的余弦距离小于阀值
        6.pointer network

参考文章:

https://www.zhihu.com/people/susht/posts    一份问答系统的小结

https://zhuanlan.zhihu.com/p/41217854    基于深度神经网络的自动问答系统概述

https://github.com/dapurv5/awesome-question-answering     领域经典论文,项目及数据集

原文地址:https://www.cnblogs.com/hiyoung/p/10000415.html

时间: 2024-11-08 22:33:00

问答系统总结的相关文章

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

问答系统

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

问答系统的前世今生

一. 前世 传统的问答系统是人工智能(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