论文部分内容阅读
自动问答系统目前已经成为一个研究热点。常见的自动问答系统一般包括问题理解、信息检索、答案抽取,有些基于常问问题库的自动问答系统还包括FAQ模块。本文主要研究了自动问答系统中两个相关的算法,句子相似度算法和答案抽取算法,同时设计并实现了一个金融领域的自动问答系统。句子相似度算法是自动问答系统中的一个关键算法,不仅可以用于自动问答系统中的FAQ模块,还可以应用在答案抽取模块。本文首先介绍了现有的句子相似度算法,并对其优缺点进行了分析,进而提出改进的VSM算法,用于计算用户问题和候选问题之间的句子相似度。对VSM算法的改进是在传统的向量空间模型中添加了语义信息和一定句法信息。改进的VSM算法无需对句子的各项特征设置权重,降低了权值设置造成的计算误差,提高了句子相似度计算的准确性。在答案抽取中,本文对已有的答案抽取算法进行了分析和研究,并提出基于窗口模型的答案抽取算法。该算法通过两层过滤,将句子的词特征信息,语义特征信息以及句法特征信息添加到答案抽取中,利用窗口模型解决了由于分词系统无法识别词组所引起的问题。最后本文设计并实现了一个金融领域的自动问答系统。该系统包含四个模块,问题理解模块、信息检索模块、答案抽取模块以及FAQ模块。当用户提交问题之后,系统首先通过改进的VSM算法计算问题与常问问题库中问题的句子相似度,若相似度大于某个阂值,则直接返回对应问题的答案给用户。反之,则对用户问题进行问题理解、信息检索、答案抽取等操作,从本地文档中抽取出与用户问题相关的答案句子返回给用户。问题理解主要采用现有基于规则和句法分析相结合的方法来进行问题分析;信息检索模块使用开源工具lucene提供检索服务。系统同时使用两种方式获取用户答案,提高了系统的效率,同时还可以自动更新常问问题库,提高了系统的准确性。