问答系统的框架可以分为四个模块,它们分别是:问题分析模块,文档处理模块,段落提取模块以及答案提取模块。
[图片来源:Pundge, A. M., Khillare, S. A., & Mahender, C. N. (2016). Question answering system, approaches and techniques: A review. International Journal of Computer Applications, 141(3);URL:https://pdfs.semanticscholar.org/c9fa/0d16384ef537077185b659b0e0e7adee61fb.pdf]
对于用户提交的问题,首先要对问题进行分析,要理解用户的要问的是什么。比如,“华山在哪里?”问题分析模块通过对这个问题的分析,就可以知道用户是在问华山的地理位置。问题的分析一般包括问题的分类、关键词的提取和关键词扩展。如果是中文,还需要进行分词处理。通过问题分析而得到的关键词集需要提交给信息检索模块来查找相关的文档。检索系统的任务就是在已有的文档 库中搜索和关键词集相关的文档。为了保证对任何问题都能找到相关的文档,文档库必须足够大。文档库中可以从互联网上下载,也可以把百科全书加到文档库中。 信息检索模块返回的是一堆相关的网页。然后答案抽取模块从这些相关的网页中找出相关的答案(一句话,或者是一段)提交给用户。答案抽取是问答系统的最后一部分,也是难度最大的一部分。如果答案抽取模块不能准确地把正确答案抽取出来, 将严重影响整个问答系统 的准确性 。
[图片来源:郑实福,刘挺,秦兵,李生.自动问答综述.中文信息学报,2002,16(6):46~52;URL:http://jcip.cipsc.org.cn/UserFiles/File/307%E8%87%AA%E5%8A%A8%E9%97%AE%E7%AD%94%E7%BB%BC%E8%BF%B0_%E9%83%91%E5%AE%9E%E7%A6%8F.pdf]
答案提取是问答系统(QAS)实现的最后一步。它首先接收上一个模块中得到的段落信息,对其进行短语提取,生成备选答案集,然后根据一定的算法从备选答案集中提取出最佳答案。
[描述来源:UTOMO, F. S., SURYANA, N., & AZMI, M. S. (2017). QUESTION ANSWERING SYSTEM: A REVIEW ON QUESTION ANALYSIS, DOCUMENT PROCESSING, AND ANSWER EXTRACTION TECHNIQUES. Journal of Theoretical & Applied Information Technology, 95(14);URL:http://www.jatit.org/volumes/Vol95No14/2Vol95No14.pdf]
[描述来源:斯坦福大学CS224课件;URL:
https://pdfs.semanticscholar.org/5268/a68df615b2db37861913b968f8cae830a87a.pdf]
[描述来源:Sun, H., Duan, N., Duan, Y., & Zhou, M. (2013, August). Answer Extraction from Passage Graph for Question Answering. In IJCAI (pp. 2169-2175).;
URL:https://www.ijcai.org/Proceedings/13/Papers/320.pdf]
答案提取主要包括四块内容:
实体提取:从段落中提取可能答案作为备选答案集。
实体分类:对备选答案集中的实体进行分类,包括:人名,地名,组织名,数量词,日期,长度等。对于某些类别(如日期,数量词,长度),实体分类仅仅是实体提取的副产物,但是对于其他类别,在实体提取后需要一个独立的分类步骤。
问题分类:判断问题所指向的实体类别。比如问:“这本书的作者是谁?”,那么答案所属的实体类别应该为人。
实体排序:计算各个实体的权重,表示出实体作为正确答案的可能性进行排序,选择排在前面(权重大)的答案。
[描述来源:Abney, S., Collins, M., & Singhal, A. (2000, April). Answer extraction. In Proceedings of the sixth conference on Applied natural language processing (pp. 296-301). Association for Computational Linguistics; URL:
https://dl.acm.org/citation.cfm?id=974188]
发展历史
互联网的普及带动搜索引擎技术的发展,但传统搜索存在定位不准确,检索效果差等问题。随着60年代人工智能研究兴起,提出了让计算机用自然语言回答问题,即自动问答系统,在满足检索需求的同时,还可以更快找出所需要的答案。其中,答案提取作为问答系统的最后一部分,不仅难度大,而且对整个问答系统的准确性影响大。答案提取技术早期常采用的方法有命名主体识别和模式匹配等。后来也采用基于机器学习的方法。
主要事件
年份 | 事件 | 相关论文 |
2000 | Prager等采用命名实体识别进行答案提取 | Prager, J., Chu-Carroll, J., Brown, E. W., & Czuba, K. (2008). Question answering by predictive annotation. In Advances in Open Domain Question Answering (pp. 307-347). Springer Netherlands. |
2001 | Brill, E.等提出采用n元语法进行答案提取 | Brill, E., Lin, J. J., Banko, M., Dumais, S. T., & Ng, A. Y. (2001, November). Data-Intensive Question Answering. In TREC (Vol. 56, p. 90). |
2001 | 利用人工模式匹配来提取备选答案 | Soubbotin, M. M., & Soubbotin, S. M. (2001, November). Patterns of Potential Answer Expressions as Clues to the Right Answers. In TREC. |
2002 | 提出基于表面文本模式匹配的答案提取算法 | Ravichandran, D., & Hovy, E. (2002, July). Learning surface text patterns for a question answering system. In Proceedings of the 40th annual meeting on association for computational linguistics (pp. 41-47). Association for Computational Linguistics. |
2002 | 将外部知识库WordNet作为文本单元作语义分析 | Na, S. H., Kang, I. S., Lee, S. Y., & Lee, J. H. (2002). Question Answering Approach Using a WordNet-based Answer Type Taxonomy. In TREC. |
2003 | 在之前基于模式的方法基础上加入对问题的语义类型的分析 | Ravichandran, D., Ittycheriah, A., & Roukos, S. (2003, May). Automatic derivation of surface text patterns for a maximum entropy based question answering system. In Proceedings of the 2003 Conference of the North American Chapter of the Association for Computational Linguistics on Human Language Technology: companion volume of the Proceedings of HLT-NAACL 2003—short papers-Volume 2 (pp. 85-87). Association for Computational Linguistics. |
2005 | 采用依存树计算相似度 | Sun, R., Cui, H., Li, K., Kan, M. Y., & Chua, T. S. (2005, August). Dependency relation matching for answer selection. In Proceedings of the 28th annual international ACM SIGIR conference on Research and development in information retrieval (pp. 651-652). ACM. |
2005 | 采用tree kernel函数计算相似度 | Shen, D., Kruijff, G. J., & Klakow, D. (2005). Exploring syntactic relation patterns for question answering. Natural Language Processing–IJCNLP 2005, 507-518. |
2005 | 采用问题-偏差项提取方法,减小问题类型的限制。 | Sasaki, Y. (2005, June). Question answering as question-biased term extraction: a new approach toward multilingual QA. In Proceedings of the 43rd Annual Meeting on Association for Computational Linguistics (pp. 215-222). Association for Computational Linguistics. |
2010 | 基于句法依存分析的路径相似度计算 | Chrupała, G., Dinu, G., & Roth, B. (2010). Enriched syntax-based meaning representation for answer extraction. |
2011 | 将外部知识库维基百科作为文本单元寻找最佳答案 | Chu-Carroll, J., & Fan, J. (2011, August). Leveraging Wikipedia Characteristics for Search and Candidate Generation in Question Answering. In AAAI. |
发展分析
瓶颈
1.语言方面:不同语言有不同的书写,语法,词汇和句法。
2.问题识别:采用何种技术可以在一个包含众多问题类别的小数据集中获得高识别度。
3.评分算法:进行识别时如何提高评分算法的效率。
未来发展方向
可应用于文档信息提取,语言学习,线上测试系统,人机交互,文档管理及分类等。
Contributor: Yueqin Li