基于知识图谱的诗人行走足迹图

2020-12-23 07:16牛文钰许若柯李扬阳缪学聪高晨田英爱
科学导报·学术 2020年48期
关键词:知识图谱数据挖掘诗词

牛文钰 许若柯 李扬阳 缪学聪 高晨 田英爱

摘  要:历史上某位诗人所处的位置可能随着时间因素,因其经历而发生变化,因此从诗人对应的经历数据中,抽取任务、地点、时间和事件等属性类,将其轨迹动态映射到地图上。

关键词:诗词;知识图谱;数据挖掘;足迹图

第一章 概述

1.1研究背景:

诗词作为中华民族文化的瑰宝,在历史长河中闪烁着熠熠光辉。然而,现代对中华诗词精通的人却特别少,学习中华古典文化需要付出相当大的精力,这在时间方面不利于我们学习与传承中华文化历史。

1.2 项目意义:

本课题希望通过对中华诗词的分析,按照时间、地点等脉络以及人物关系,结合历史背景,提取出诗词间的关联关系,并通过可视化的技术展现出来,辅助我们学习诗词,同时也为中华文化的传承做出努力。

1.3 项目方案:

课题主要工作包括:中华诗词的文本数据采集、标注技术研究、作者和诗词内容关联分析等主要工作,同时基于此研究,将其应用于生成诗人的行走足迹图。

本项目从“古诗文网”上抓取作者及诗词信息,并采集网页上已有的中国历史上所有诗词曲的基本信息。之后,将采集到的信息进行处理,并通过neo4j以图数据库的形式存储数据,之后借由图数据库达到生成诗词相关信息——诗人的行走足迹图的目的。

第二章 数据技术相关介绍

2.1数据收集

从“古诗文网”上抓取作者及诗词信息,并采集网页上已有的中国历史上所有诗词曲的基本信息。

在本次项目中使用的是基于python语言的CrawlSpider爬虫框架,通过分析网页的页面编排模式,获取所需诗歌的内容。

属性确定:本次项目所需的数据包括诗歌的标题、诗人、朝代、内容、注释、赏析。

2.2数据清洗

初步获取到的数据大致存在以下问题:

2.2.1对应属性值为空

某些詩歌可能存在诗人不明,朝代空缺,没有注释与赏析的情况。

处理方案:将原本网页中缺失的数据自动补齐,向其中填写“无”。

2.2.2杂项数据

从html上获取的文本信息,可能含有大量无意义的换行符,以及混在正常数据中的UI界面文本。

处理方案:分析杂项数据的内容,对其进行替换。

2.2.3指代消解问题

数据中包含一些指代相同的词语,如“唐朝”和“唐代”,两个词本身意义相同,为了消除指代消解问题,这里统一将“代”改为“朝”。

2.2.4作者不详,年代不详的诗歌处理

数据中具有作者为佚名、年代不详的诗歌,将其单独清洗成一个json文件。

2.3数据挖掘(分词+建立三元组)

首先,我们对对每首诗中的赏析部分进行分词,文本后的符号代表该词的词性。

之后我们建立不同的三元组——诗与诗人、诗与地点、诗与诗、诗与诗人、诗与年代,以及对文本内容补充抽取关系,从而便于知识图谱的建立。

2.4数据可视化(建立知识图谱)

将所有三元关系集合起来存放到一个表中,建立知识图谱可视化。

2.5环境搭建

在虚拟机/本机上装好Windows系统,在Windows上安装必要的python环境,配置好Neo4j。

第三章 分析方法总结及结果展示

3.1 诗歌数据处理

为了实现诗人行走足迹图的生成,对爬虫方式收集的数据进行清洗,将清洗后的数据按每个诗人名作的相关数据从原本的诗词数据库中提取出来,并且按照其创作时间排序。

3.2基于诗歌数据知识图谱生成诗人行走足迹图

得到数据之后,利用python的画图工具,如pyecharts来实现足迹图的生成。

将表格中的数据格式化后,按照时间创建时间轴对象后,按照每条数据的元组数据生成足迹图。

图例中图标信息:

白色点:诗人去过的地方

红色点:当前时间点诗人所在地

箭头:诗人从某地移动到目的地

附地图生成代码数据读取和足迹图生成部分:

poet_name = "杜甫"

dataset = pd.read_csv('dataset_'+ poet_name +'.csv')

data=np.array(dataset).tolist(  )

timeline.render('active_map_'+ poet_name + '.html')

依照该部分代码,将表格数据文件以dataset_诗人名.csv的格式读取时,可以实现生成每个诗人的行走足迹图。

第四章 总结概括

4.1项目总结

系统的分析方法可以有效地挖掘出诗词数据背后所蕴含的价值,提取出诗词间的关联关系,并通过可视化的技术展现出来,辅助我们学习诗词,同时也为中华文化的传承做出努力,为社会提供更多的价值。

4.2结束语

本文论述了知识图谱技术在诗词数据的部分前景,历史上某位诗人所处的位置可能随着时间因素,因其不同的经历而发生变化,因此从诗人对应的经历数据中,抽取地点、时间等属性类,将其轨迹动态映射到地图上。在分析数据的同时挖掘出隐藏在数据背后的价值,以便大家更好地学习诗词。

参考文献

[1]  王红 张青青 蔡伟伟 姜洋.基于Neo4j的领域本体存储方法研究[J].计算机应用研究.2017,34(08):2404-2407.

[2]  周莉娜 洪亮 高子阳.唐诗知识图谱的构建及其智能知识服务设计[J].图书情报工作.2019,63(02):24-33.

[3]  刘峤 李杨 段宏 刘瑶 秦志光.知识图谱构建技术综述[J].计算机研究与发展.2016,53(03):582-600.

基金项目:由北京信息科技大学2020年大学生创新创业训练计划项目资助(5102010805)。

This work is supported by 2020 College Student Innovation and Entrepreneurship Training Program of BISTU(5102010805)

猜你喜欢
知识图谱数据挖掘诗词
诗词书法作品
【诗词篇】
背诗词的烦恼(下)
背诗词的烦恼(上)
数据挖掘综述
软件工程领域中的异常数据挖掘算法
基于知识图谱的产业集群创新绩效可视化分析
基于知识图谱的产业集群创新绩效可视化分析
基于知识图谱的智慧教育研究热点与趋势分析
从《ET&S》与《电化教育研究》对比分析中管窥教育技术发展