论文部分内容阅读
问答系统是目前自然语言处理领域中的研究热点,它既能让用户通过自然语言直接发问,又能直接向用户返回精确、简洁的答案,而不是一系列相关网页。近年来,深度学习技术为问答系统领域带来诸多突破,基于深度学习技术的问答算法研究成为了自然语言处理最热门的研究方向,诞生了大量优秀的文章与开发框架,如Google在2016年推出的SyntaxNet,大大降低了高性能问答系统的开发成本。本文应用了深度学习技术进行问答系统的构造,开展的工作如下:1.利用词向量与卷积神经网络搭建了一套高准确率的面向具体任务问答系统,改进了已有的卷积神经网络问句分类算法,探索了模型初始化参数与模型性能的关系。2.基于双向长短时记忆模型与注意力机制搭建了一套端到端开放领域问答系统,改进了前人基于单向长短时记忆模型的端到端问答算法在问句语义表征上的缺点。3.在Facebook bAbI、Ubuntu Dialogue Corpus等常用数据集上进行了实验对比,通过实验结果对比突出了本文设计的问答算法的有效性与合理性,并对实验结果做了较为详细的分析。4.利用TensorFlow、Docker构建了一套维护成本低、部署方便的问答系统微服务,解决了 TensorFlow框架线上服务部署困难的问题。本文的主要贡献如下:1.创造性地发现了基于词向量和卷积神经网络的问句语义相似度算法性能与词向量维数之间的关系,并通过实验加以验证。2.尝试了通过复制插值的方式扩展基于词向量和卷积神经网络的问句语义相似度算法中词向量输入部分的维数,解决了问句类别数上升时模型性能下降的问题。3.使用双向长短时记忆模型与注意力机制改进了现有基于循环神经网络的端到端问答算法模型,提高了平均问答长度等性能指标。4.基于TensorFlow与Docker实现了一整套问答系统微服务,创新性地使用Spring Boot包装算法脚本,解决了TensorFlow Serving的兼容性问题,实现了弹性部署与扩容,维护成本低。