《基于 Web 的问答系统综述》阅读笔记

原文链接:基于 Web 的问答系统综述

作者:李舟军,李水华

简介:详细介绍了基于 Web 的问答系统的研究背景、架构及其问题分析、信息检索、答案抽取这三大关键技术的研究进展,并分析了基于 Web 的问答系统所面临的问题。

选读原因:选了一篇中文的基于 Web 的问答系统综述,和手头上工作比较贴近,来对接下来的研究方向有个大致的了解和思考,因此记录也比较详细。

概述

问答系统(Question Answering, QA)以自然语言为输入与输出,理解用户的查询意图后,通过一系列的检索、分析与处理,返回精确、简练的答案。

根据问答系统知识来源的不同,该文将问答系统分为 3 类:

  1. 基于知识库的问答系统(Qustion Answering over Knowledge Bases, KBQA):主要以知识库作为问答系统的知识来源;
  2. 基于社区的问答系统(Community-based Question Answering, CQA):主要以问答社区(如知乎、百度知道等)作为问答系统的知识来源;
  3. 基于 Web 的问答系统(Web-based Question Answering, WQA):以开放的互联网上的 Web 文档作为问答系统的知识来源,从搜索引擎上返回的相关网页片段中抽取出用户所提问题的答案。

其中,WQA 系统同时具有搜索引擎和问答系统的优点,与时俱进,不断更新。

WQA 系统

Architecture-of-question-answering-system

经典的 WQA 系统通常由以下 3 个模块构成(其他 QA 系统各模块大体一致,功能有所不同。上图来源[1]):

  1. 问题分析模块:根据用户的查询意图生成相应的查询语句,可能包含对问题的分类、提取问题的关键词或者生成一些其他描述用户查询意图的中间数据;
  2. 信息检索模块:将问题分析模块得到的查询语句或关键词提交给搜索引擎,并整理返回的搜索结果来得到可能包含正确答案的网页片段(性能瓶颈);
  3. 答案抽取模块:利用信息抽取技术,从网页片段中抽取答案,可能需要用到问题分析模块得到的问题类别、关键词等数据。

问题分析模块

流程:

  1. 分词
  2. 问题分类:问题的类别是反应用户提问意图的重要信息
  3. 问题重写:便于搜索引擎理解问题语义
问题分类

问题分类的作用体现在:

  • 能够有效减少候选答案空间,提高系统返回答案的准确性。例如,一个问句被分类为时间类,则在答案抽取阶段,系统把不含时间的候选句子过滤掉;
  • 决定答案喧杂策略,根据不同的问句类型调节对不同问题的答案选择策略。例如,对于“安徽省的简称是什么”,分析出其询问地点类别,抽取文档库中地点类的文档作为候选答案。

问题分类体系

表一为国际权威的 UIUC 问句分类体系,针对英文分类。表二是哈工大定义的中文问句分类体系。

很多 WQA 系统采用规则分类器对问题进行分类。最简单的规则可以是通过问题是否包含某个词来分类,而比较复杂的规则包括基于语义模式匹配的问题分类[2]。如果没有一条规则能够与问题匹配成功,则借助一些统计机器学习的方法分类,例如 SVM、RNN 等。

关键词提取和扩展

关键词既可作为搜索引擎的输入,也可辅助答案的抽取过程。WQA 系统通常在分词、取出停用词之后进行关键词的提取,并将名词、动词、形容词等作为关键词。因此可以用一些简单规则提取,例如“所有带形容词的名词都是关键词”等。也可以分析问题的语法结构,抽取主语、宾语作为关键词[3]。

关键词的扩展主要用于解决关键词的同义词的匹配问题,通常需要一些同义词词库进行辅助。

问题重写

当问题本身(而非关键词)作为搜索引擎的输入时,可能较难领会语义,此时需要对问题进行重写。一些启发式的方法依靠简单的字符串操作(替换、拼接、删除)来实现问题重写,也有较为复杂的优化方法,例如定义一个针对问题的操作集合,然后利用概率模型选择最合适的操作来重写问题[4]。

信息检索模块

信息检索模块的实现可以调用搜索引擎提供的接口,也可以利用爬虫技术。搜索引擎所具有的高质量摘要技术能过滤原始网页的噪音数据,因此无需抓取解析原始网页。

答案抽取模块

答案抽取模块是 WQA 系统中的重点和难点,通常包括两个步骤:

  1. 候选答案抽取:从网页片段中抽取出候选答案;
  2. 候选答案排序:对候选答案进行排序,得到最佳答案。
候选答案抽取

抽取候选答案的几种典型方法:

  1. 手工编辑或自动生成名词词典,将词典中的所有名词都作为候选答案。这种做法的候选答案集非常大,因此候选答案排序以及维护难度很大,难以更新以应对新的领域和新的概念;
  2. 利用命名实体识别(Named Entity Recognition, NER)工具,抽取命名实体作为候选答案。具体效果受问题分类算法和命名实体识别算法效果的影响;
  3. 根据手工编辑或自动生成的文本模式抽取候选答案。准确率较高,但匹配较为死板,无法适应新的数据。
候选答案排序

候选答案排序及最佳答案选择的几种典型方法:

  1. 采用向量空间模型(Vector Space Model, VSM)计算候选答案与问题的相似度,并以此进行排序[5];
  2. 根据语法结构判断候选答案与问题的匹配度,并以此进行排序;
  3. 根据词汇特征、相似度特征、统计特征等多种特征进行综合排序。

WQA 面临的主要问题

  1. 问题分类有待改善:问题分类的本质是短文本分类,受限于特征稀缺,分类器效果有待提升;
  2. 同义句子的理解需要解决:同义词的使用和句法结构的变化使得 WQA 系统难以准确抽取答案;
  3. 高质量的 QA 对难以获取:缺少相关数据;
  4. 利用跨语言语料能力较差:网页片段可能存在多种语言,WQA 系统难以利用多种语言的文本数据来回答某一种特定语言的问题;
  5. 通用型不足:回答通用领域问题的能力尚有待进一步增强;
  6. 处理复杂问题的能力不足:对于定义型、原因型、关系型、比较型、方法型等问题难以给出满意的回答。

WQA 的发展趋势

  1. 与其他问答系统的融合;
  2. 通过答案摘要生成答案;
  3. 自动生成高质量问答对数据;
  4. 提升 WQA 系统处理复杂问题的能力;
  5. 跨语言能力、跨领域能力的进一步增强;
  6. 与语音识别、语音生成等工具的进一步结合;
  7. 辅助机器人。

文献

[1] 镇丽华, 王小林, 杨思春. 自动问答系统中问句分类研究综述[J]. 安徽工业大学学报(自科版), 2015, 32(1):48-54.

[2] LI X, HU D, LI H, et al. Automatic question answering from Web documents[J]. Wuhan University Journal of Natural Sciences, 2007, 12(5):875 880.

[3] LIU Z J, WANG X L, CHEN Q C, et al. A Chinese question answering system based on Web search [C]. International Conference on Machine Learning and Cybernetics, Lanzhou: IEEE, 2014:816-820.

[4] CHALI Y, HASAN S A, MOJAHID M. A reinforcement learning formulation to the complex question answering problem
[J]. Information Processing & Management, 2015, 51(3):252 272.

[5] 余正涛,樊孝忠,郭剑毅,等. 基于潜在语义分析的汉语问答系统答案提取[J]. 计算机学报,2006,29(10):1889—1893.