论文部分内容阅读
随着我国经济的不断发展,人们对精神文化的需求推动了电影行业的快速发展,2019年中国内地电影票房已破600亿,年观影人次达17.3亿人。在过去,人们获取电影信息的途径主要通过电影海报、媒体新闻、搜索引擎等。通过这样的方式,人们得到的电影信息十分有限,无法准确查询搜集到自己感兴趣的电影信息。基于知识图谱的问答系统是把问题答案存储在知识图谱中的问答系统。基于知识图谱的电影知识问答系统,通过建立基于电影领域的知识图谱库,以问答系统的形式,为人们提供更准确、更全面的电影信息,推动电影产业更好的发展。本文研究并开发了基于知识图谱的电影知识问答系统,使用网络爬虫从电影网站获取专业电影数据,利用网页解析工具Xpath和beautifulsoup对下载的原网页进行提取解析,根据爬取的电影数据构建电影节点信息,制定不同节点之间的关系,形成一个较为完整的电影领域的知识图谱。通过查阅知识图谱相关论文、实际体验其他平台的问答系统,从技术可行性、社会可行性和经济可行性的角度出发,确定了该系统的需求,在完成对系统的需求分析之后,对系统进行概要设计,采用层次体系架构的方式,降低了层与层之间的依赖,明确了系统的功能模块。在概要设计的基础上,依照软件工程的开发流程,对功能模块进行了详细的设计编码开发,系统核心功能模块主要包括:数据采集模块、实体数据存储模块、问题预处理模块、问题查询引擎模块和后台管理模块。最后对整个系统进行系统测试,根据测试结果不断对系统进行改进。本文研究的主要内容有:1.利用Scrapy爬虫框架对豆瓣电影网站进行大规模爬取,并对数据进行结构化处理,分析电影知识领域的问答实体属性和实体间关系,构建面向电影领域的知识图谱。2.对问题进行解析,包括分词、词性标注、去掉无效字符等预处理操作,jieba加载已经爬取的电影名和电影演员名,完成电影命名实体识别。按照问题主题对问题类型分类,设计问题主题抽象模板,覆盖更多的电影问题。通过朴素贝叶斯分类算法,完成用户意图识别,查询图形数据库Neo4j,得到问题回答结果。3.基于知识图谱的电影知识问答系统,根据系统不同功能模块的划分,该系统分为服务器端和用户前端。利用Python Tornado框架实现后台服务器的功能模块,前端开发技术采用Vue.js框架,结合Element的UI组件完成前端界面构建。