问答系统

问答系统（Question Answering System，QA System），是应用自然语言处理与资讯检索技术回答自然语言提问的电脑系统。问答系统外部的行为上来看，其与目前主流资讯检索技术有两点不同：首先是查询方式为完整而口语化的问句，再来则是其回传的为高精准度网页结果或明确的答案字串。以Ask Jeeves为例，使用者不需要思考该使用什么样的问法才能够得到理想的答案，只需要用口语化的方式直接提问如“请问谁是美国总统？”即可。而系统在了解使用者问句后，会非常清楚地回答“特朗普是美国总统”。面对这种系统，使用者不需要费心去一一检视搜索引擎回传的网页，对于资讯检索的效率与资讯的普及都有很大帮助。从系统内部来看，问答系统使用了大量有别于传统资讯检索系统自然语言处理技术，如自然语言剖析（Natural Language Parsing）、问题分类（Question Classification）、专名辨识（Named Entity Recognition）等等。少数系统甚至会使用复杂的逻辑推理机制，来区隔出需要推理机制才能够区隔出来的答案。在系统所使用的资料上，除了传统资讯检索会使用到的资料外（如字典），问答系统还会使用本体论等语义资料，或者利用网页来增加资料的丰富性。

IBM的沃森系统是问答系统的一个著名范例。该系统在2011年于Jeopardy节目中，与人类同场较劲，并获得最后的胜利。近几年快速发展的大型语言模型因具备理解与使用自然语言的能力，因此经常用于现代问答系统中。

## 前言

早在1961年，Green 就发展了第一个问答系统，用来回答单季美国职棒大联盟相关比赛问题。该系统执行于IBM 7090平台，以今日的观点来看，其硬件资源相当贫乏，但由于问答的范围狭小，系统正确率尚能达到令人满意的地步。近年来，互联网成长快速，在资讯、流量、使用人数、以及应用领域上都有惊人的发展。截至2004年为止，Google已经索引了超过八十亿个网页资料；MSN BETA、Yahoo也分别有四十亿与二十亿个网页资料。整个互联网总索引量则高达一百一十五亿个网页。此趋势带动了问答系统的研究风潮。报导指出，从2000年到2005年，网络人口成长了1.7倍，在前十名的语言中，中文人口成长率为284.8%，高达一亿两千万，远远超过英文人口的成长率。

## 问答系统的分类

从知识领域来看，问答系统可大致分为两类：

- 封闭领域问答（Closed-domain question answering）：用于回答特定领域的问题，如医药或特定公司等。由于问题领域受限，系统有比较大的发挥空间，可以导入如专属本体论等知识，或将答案来源全部转换成结构性资料，来有效提升系统的表现。
- 开放领域问答（Open-domain question answering）：用回答不限范围的问题。由于问题领域极广，系统中所有知识与元件都必须尽量做到与领域不相关。

问答系统有许多可能的答案来源，包括但不限于：

- 数据库：数据库是最常见的结构化资料储存媒介。虽然透过操控SQL语言便能够有效率地存取资料，但有些系统试图提供更直觉的自然语言查询界面，希望能进一步降低学习门槛。1970年代的LUNAR系统算是早期成功的案例，其正确答题率可以达到百分之七十，可回答月球陨石相关资料。微软的English Query则是近期的一个商业产品。English Query在剖析完英文问句后，会根据底层数据库结构，自动产生出相对应的SQL查询。
- 常问问题（Frequently Asked Questions, FAQs）：常问问题是公司或者长期经营领域中常见的重要资源。一份FAQ资料包含了一个问句以及相对应的答案描述。FAQ问答系统的主要责任在比对使用者问句与现有FAQ问句的相似度，此与其他问答系统着重在答案语料中撷取答案的作法不同。
- 新闻：今日新闻媒体都已经数字化了，每日累积所产生的新闻资讯量是相当可观的，加上新闻的内容广泛丰富，因此适合用于开放领域问答系统的答案来源。
- 网页：利用搜索引擎回传的结果网页，从中撷取答案。主要挑战在于如何处理网络多异质性的资料，以及高噪声网页过滤等问题。
- 知识图谱：知识图谱是将知识以“实体-关系-实体”三元组为基础进行表达与储存的知识储存方式。许多搜索引擎会使用知识图谱改善搜寻结果，如Google的Google知识图谱。
- 非文本资料：近年由于多模态大语言模型的发展，问答系统的知识来源不再限于纯文本，也可以使用表格、图片等资料进行回答。

按照技术来分类，可以大致分为：

- 规则式系统（Rule-based systems）
- 机器学习模型（Machine learning models）
- 深度学习模型（Deep learning models）

近年来，基于大型语言模型的问答系统取得了极大的成功。一种与之相关的问答系统技术是检索增强生成（Retrieval-augmented generation, RAG)。检索增强生成技术利用“先检索，后生成”的流程，可以改善大型语言模型回应的品质，减少幻觉的产生。

## 问题类型

问答系统接受的是自然语言问句，为了有效控制研究变因，多会订定可接受的问题类型来限制研究范围。最基本的类型为“仿真陈述问答”（Factoid Question Answering），此类系统根据答案语料所述资讯，取出一小段字串作为答案。由于答案的正确与否是根据答案语料的内容来决定，在现实生活中不一定为真，故称为仿真陈述问答。有些系统把问答范围进一步缩小，限定在人、地、组织等明确的专有名词上。若此类系统有能力回答如“请列举美国历届总统”这种清单型的问句，则称为“清单问答”（List Question Answering）；若能回答定义问题，则称为“定义问答”（Definition Question Answering）；以此类推还能定义出其他类型的问题。除了这些与问句资讯内容有关的类型外，最近评鉴会议引进如“时间限制问题”（Temporally Restricted Questions）与“序列问题”（Series of Questions）等复杂的问题类型。时间限制型的问题会在问句中明确指出答案的时间范围限制，比如说以“民国九十年时的国民党主席是谁”这问句来说，系统必须有根据答案语料结构化资料，或上下文来推论正确答案的能力。序列问题则把问答系统未来的应用定位在互动式的系统上。经过来回多次问答的方式来满足使用者的资讯需求。了解这些问题类型分类，有助于研究范围界定，同时在分析比较上也比较有依据。

## 国际性评估会议

截至目前为止，世界主要语言都有问答系统发表在文献上，甚至还有少数跨语言的案例。在过去问答系统的研究中，所有研究都是在各自的假设下进行，加上系统复杂度高，不同单位的研究成果很难拿来做客观的评估与比较。除此之外，这类系统的评估是非常消耗人力的，事前的准备包含要产生足够多且合适的问题题目，同时每一题可能出现的答案都必须以人工方式从比赛语料中挑选出来。以上所述对问答系统的研究发展非常不利。有鉴于此，由单一组织举办、多个研究单位共同参与的问答系统比赛应运而生。

英文问答系统早在1999年就开始由TREC (Text REtreival Conference)会议主办进行这类型的比赛；日文的比赛于2003年由日本国立情报学研究所NII的NTCIR会议（NTCIR Workshop）所主办；欧洲同样于2003年由CLEF (Cross Language Evaluation Forum)会议主办欧洲语言的比赛。根据2004年的报告，目前最佳英文问答系统的水准已经可以达到70%左右的正确率。也就是说，一百个自然语言问句中，有七十题可以直接回答精准而正确的答案。此最佳英文系统由Language Computer Corporation所发展，逻辑推理能力为其致胜关键。在日文系统方面，正确率稍微低了些，但也有51%。日本电信电话公司（NTT）是目前成绩最好的团队。欧洲方面，QA@CLEF在规模上相当大，参与比赛的语言高达九种，加上跨语言问答的项目，比赛内容最为丰富。其中法文、葡萄牙文等语言系统于2005年都已经可以达到六成多的正确率。相较于其他语言，中文虽然是世界上第二大语言，但中文问答系统比赛直到2005年才开始由日本NICIR会议所主办，目前最佳的正确率为中研院的55%。

阅读这些评鉴会议数据时必须注意评鉴方式间的差异。TREC会议主要的评鉴项目有“仿真陈述”、“列举”、以及“定义”问题，各类型又有其特定的评鉴标准。而CLEF看似与TREC的“仿真陈述”类型相同，但最近特别强调“时间限制问题”，使得问题更有挑战性。而NTCIR的2005年的日文题目则全为“序列问题”。就算题目类型相同，评鉴方式仍可能不同。TREC使用三位评鉴者来评估每一结果，而CLEF依照语言的不同，使用一或两位来评鉴每一题。2005新引进的NTCIR中文问答则使用了两位评鉴者。评鉴标准最大的差异在于是否有考虑“文章支持度”的问题，TREC、CLEF以及NTCIR的中文问答都会考虑答案所在的文章是否“支持”该答案为真，若证据不明确，就算答案字串正确，该题仍会被视为是错误的。早期NTCIR日文问答则没有考虑文章支持度的问题。根据TREC的评鉴结果，有考虑跟没考虑文章支持度的评鉴结果差距可达十几的百分比之多。以上说明显示了问答系统在评鉴与解读上到处充满陷阱。

## 线上问答系统

- 智能中文问答系统 (中研院)
- askEd! - a multilingual question answering system（English, Japanese, Chinese, and）
- Ask Jeeves

- Automatic question answering engine
- START Web-based Question Answering system at MIT
- University of Edinburgh QA system - Search Wikipedia
- OpenEphyra open source question answering system
- AnswerBus
- DFKI Experimental Open Domain Web QA system
- ASU-QA prototype Web-based QA system
- TellMe QA: A prototype QA system
- QUADRA: Question Answering Digital Research Assistant