论文部分内容阅读
在某省图书馆的日常工作中经常有读者向图书馆工作人员咨询图书馆相关事宜,由于这类业务量比较大,使得图书馆工作人员和读者都浪费了大量时间。而在目前计算机技术和人工智能不断发展的情况下,该图书馆希望能够实现一个图书馆人机对话系统。该系统能够将对话这一种人与人之间最为常见的交流方式引入到机器与人类的交互中,代替图书馆工作人员回答读者提出的咨询问题,减轻图书馆工作人员的负担并为读者提供更加良好的阅读体验。本论文根据该图书馆的需求设计并实现了一个人机对话系统,最终将其部署到了图书馆的服务器上为图书馆读者提供服务。本系统根据功能点的不同将系统划分为四个模块来实现,其中最为重要部分就是用于处理对话逻辑的对话逻辑处理模块,该模块又分为问答系统子模块和聊天机器人子模块。其中的问答系统子模块是为满足读者的咨询需求,为实现这一功能定义了从预处理,关键词扩展,问题分类到相似度计算和答案抽取的一整套流程。在关键词的扩展中采用word2vec来获取与目标词含义最接近的若干词作为其同义词,在问题分类中比较了多种机器学习算法并采用文本扩充的方式提高了朴素贝叶斯算法在短文本分类上的效果,在相似度计算和答案抽取上融合了多种算法模型来提高问题匹配的质量和加快查询效率。在聊天机器人子模块的实现上融合了基于端到端的生成式对话模型和基于模版匹配的对话模型。生成式对话模型采用的是Seq2seq模型,设计了多个对照实验,分析了循环神经网络神经元类型,注意力机制和集束搜索算法对生成效果的影响,并基于分析结果确定了生成式对话模型。还使用基于模版匹配的对话模型来提高聊天机器人在特定问题上的表现,提升了读者用户的实际使用体验。另外还实现了与对话逻辑处理模块相配套的前台模块,管理模块和数据库模块,通过这些模块之间的相互配合使得图书馆的读者可以采用web的方式来访问系统的服务。虽然该系统是从图书馆业务场景出发,但实现的系统具有良好的普适性,只需对系统的元数据做出较少改动就可运用到其他场景中,该系统具有一定的实用价值和商业价值。