问答系统
一,问答系统概述
1,研究背景
问答系统是下一代搜索引擎的基本形态。
问答系统的定义:
- 输入:自然语言的问句,而非关键词的组合。
- 输出:直接答案,而非文档集合。
2,发展历程
- 图灵测试
- 基于知识推理的问答系统:答案或者从知识库中检索得到,或者在知识库上经过推理得到。
- 问答式检索系统:利用信息检索以及浅层自然语言处理技术从大规模文本库或者网页库中抽取出答案。
- 社区问答系统
- 基于知识库的问答系统
- 阅读理解系统
- 基于知识图谱的深度问答
二,问答式检索系统
1,问答式检索方法
-
信息检索+信息抽取
-
信息检索+模式匹配:答案模式
-
信息检索+自然语言处理技术:对问句和答案句进行浅层句法分析,获得句子的浅层句法、语法表示,作为对前两种方法的补充和改进。
涉及到的NLP技术有:
- 命名实体识别
- 句法分析技术
- 逻辑表示
- 复述关系
-
基于统计翻译模型的问答技术:把提问句看作答案句在同一语言内的一种翻译。
总结:
- 每种方法都有自身的优缺点,需要综合各种方法,可能是未来发展的方向。
- 随着自然语言处理技术的发展,自然语言处理技术将会在问答式检索系统中得到更加广泛的应用。
2,Watson
问答过程:
- 问题分析
- 问题分解
- 假设生成
- 内容获取
- 证据获取和检索
- 特殊问题处理
- 证据合并
涉及到的NLP技术:
- 句法分析
- 信息抽取
- 知识库的构建
- 知识推理
三,社区问答系统
社区问答系统:指用户之间通过提出和回答问题的方式共享和积累知识,从而提供知识交流与信息服 务的社会化系统。
主要任务
- 预处理
- 问题分类
- 作弊检测
- 与回答新提交问题相关的研究
- 相似问题检索
- 答案质量评估
- 专家用户推荐及最佳回答者推荐
- 问句的主客观判断
- 与用户体验相关的研究
- 用户满意度预测
- 潜在好友推荐
- 用户社区结构挖掘
- 热点话题检测
1,相似问题检索
核心:计算两个问题的相似度。
挑战:问题一般较短,包含的信息很少,词汇鸿沟问题很严重 。
主要方法有:
-
传统的信息检索模型:VSM、BM25等
-
语言模型:根据每个问答对的语言模型生成查询的概率来对问答对进行 排序,概率值越大,该问答对就越满足要求。
-
基于词的翻译模型:如果查询和候选问答对中的两个词不匹配,可以利用统计翻译模型找到一些在语义上相关的词。主要是为了解决词汇鸿沟问题。
核心:利用大量的问答对作为平行语料来训练问题和答案中的词的翻译模型,获得翻译概率。
-
基于短语的翻译模型:利用基于短 语的翻译模型来找到一些在语义上相关的短语,减少了基于词翻译因为没有考虑上下文信息带来的歧义错误。
基本思想:
- 短语切分:将历史问答对D分割成一系列的短语E。
- 短语翻译:将短语E逐个翻译得到一系列相关的短语F。
- 短语调序:对所有的短语F做调序生成最终的查询q。
在问题检索中,基于短语的翻译模型优于基于词的翻译模型。
2,答案质量评估
任务目标:通过对答案质量的自动分析,将全部候选答案按质量高低排序后展现给用户,可以节省用户的浏览时间,增强用户满意度 。
主要方法:统计机器学习方法(看成分类或回归问题),如最大熵分类器、GBDT分类器等等。
核心:如何选取特征?
- 文本特征
- 非文本特征:如点赞数、采纳数、推荐次数、页面点击次数、答案长度等等
3,专家用户发现及最佳回答者推荐
- 专家用户发现(回答的准确)
- 最佳回答者推荐(回答的既准确又及时)
专家用户不一定是最佳回答者,但最佳回答者一般是专家用户。
主要方法:
- 基于图结构的专家用户发现:HITS算法
- 基于启发式的专家用户发现
- 基于主题敏感的专家用户发现
- 其他
四,基于大规模知识库的问答系统
五,阅读理解式问答系统
六,对话系统
评估方法:
-
困惑度
-
BLEU
-
比较生成回复与参考回复在n-gram上的共现程度,如n元组共现的准确率和召回率。
-
在词向量的基础上,比较生成回复与参考回复词向量的相似程度
- 词向量贪心
- 词向量平均
- 词向量极值
-
基于语法评估