NLP文本计算与分析项目实践:诗人足迹可视化生成与事件监测分析开放组件总结

AI 1年前 (2022) admin
485 0 0


​​

在之前的文章中,我们介绍了文本可读性计算的几种方法以及情感词的计算的几种方式,这是属于文本计算的范畴。

实际上,特定事件分析以及基于古典文本进行价值挖掘是当前舆情监控和计算历史学/文学的重要实现手段。

例如,我们可以通过针对某个作家的作品进行地点的计算,得到其足迹;可以通过对某个作家文本中的颜色词、情感词、名词、特定意象的搭配来发现其作品特点。

因此,为了对上述目标进行实践,本文主要围绕开源事件监控工具集和诗人足迹自动生成项目这一主题,对现有的开源项目进行介绍,供大家参考与思考。

一、特定事件监测与分析工具项目集

面向特定事件的监测与分析是当前舆情分析的一个重要方向,而如何针对这种场景提供一个具有工具性的项目索引有较大的价值。

下面展示了一个既定事件监测与分析的技术流程图,包括事件新闻采集、热度指数获取,事件话题聚类与要素抽取、事件情感分析等组件。
NLP文本计算与分析项目实践:诗人足迹可视化生成与事件监测分析开放组件总结

下面就开源项目中在这个方向的一些工具项目集合进行总结,供大家参考:

1、基于话题关键词的话题历时语料库采集

地址:

https://github.com/liuhuanyong/EventMonitor

执进入EventMonitor目录下,进入cmd窗口,执行”scrapy crawl eventspider -a keyword=话题关键词”,或者直接python crawl.py, 等待数秒后,既可以在news文件夹中存储相应的新闻文件,可以得到相应事件的话题集,话题历史文本。

2、关于热点事件的情感分析

对于1)得到的历史语料,可以使用基于依存语义和情感词库的篇章级情感分析算法进行情感分析 。

地址:

https://github.com/liuhuanyong/DocSentimentAnalysis

3、关于热点事件的搜索趋势

对于1)得到的历史语料,可以使用百度指数,新浪微博指数进行采集。

百度指数采集项目地址:https://github.com/liuhuanyong/BaiduIndexSpyder 

微博指数采集项目地址:

https://github.com/liuhuanyong/WeiboIndexSpyder

4、关于热点事件的话题分析

对于1)得到的历史语料,可以使用LDA,Kmeans模型进行话题分析。

话题分析项目地址:https://github.com/liuhuanyong/TopicCluster

5、关于热点事件的代表性文本分析

对于1)得到的历史语料,可以使用跨篇章的textrank算法,对文本集的重要性进行计算和排序

文本重要性分析项目地址:

https://github.com/liuhuanyong/ImportantEventExtractor

6、关于热点事件新闻文本的图谱化展示

对于得到每个历史新闻事件文本,可以使用关键词,实体识别等关系抽取方法对文本进行可视化展示。

文本内容可视化项目地址:

https://github.com/liuhuanyong/TextGrapher

二、基于中国古代诗词文本的诗人足迹生成

接下来,我们介绍第二个项目,对于文化分析作用很大。

中国古代诗词文化无疑是文化瑰宝,如何运用计量语言学方法对古代诗词进行挖掘,将有重要意义,而基于诗词集合进行诗人地点足迹识别,并配合实际的中国地图进行展示,具有十分大的意义。

因此,本项目就上述问题进行实践,形成项目:

地址:https://github.com/liuhuanyong/PoemMining

1、具体实现

其中,项目主要包括两个任务,首先进行古代诗词语料库的构建,然后基于古代诗词语料库的挖掘。在具体实现脚本构成上,实现的功能包括:

1)poem_spider.py: 主要完成古代诗词语料库的构建,选取的是古诗文网 (https://so.gushiwen.org),结果已经保存至corpus_poem.zip文件当中,一共采集到92127首古代诗词;
2)poem_process.py: 主要基于构建起来的古诗词语料库,进行基础的文本分析,根据网站上的用户交互信息,得到古诗词文本本身的外部信息;
3)atm_model.py: 利用作者-主题模型,对古诗词进行主题分析,最终目的是实现作者主题分布与风格聚类;
4)location_mining.py: 基于诗人百科生平记事的地点挖掘与可视化,最终最终实现对诗人关联地点的一键生成。

2、诗人足迹一键生成

诗人足迹一键生成,使用方式如下,结果会直接生成以搜索诗人名字命名的html文件:

from location_mining import *
name = '李白'
handler = PoetWalk()
handler.mining_main(name)

以下是测试结果:

1)李白足迹

从下面的图中我们可以看到,李白的足迹主要分布在我国中部地区。

NLP文本计算与分析项目实践:诗人足迹可视化生成与事件监测分析开放组件总结

2)李清照足迹

著名词人李清照,起初实在山东长大,在人生的后半期中经历过颠沛流离的生活,赵明诚因母亲死于江宁(今南京市),南下奔丧,并在后续陆续达到浙江省,绍兴、杭州等地。通过对其作品地点的挖掘,我们可以发现,结果是吻合的。

NLP文本计算与分析项目实践:诗人足迹可视化生成与事件监测分析开放组件总结

3)苏轼足迹

苏轼在凤翔、杭州、密州、徐州、湖州等地任职。从中也能得到佐证。

NLP文本计算与分析项目实践:诗人足迹可视化生成与事件监测分析开放组件总结

4)文天祥足迹

文天祥是江西初名云孙,字宋瑞,又字履善,是江南西路吉州庐陵县(今江西省吉安市青原区富田镇)人,从下面的图我们可以看到,他的活动范围基本上集中在江西及周边省份。

NLP文本计算与分析项目实践:诗人足迹可视化生成与事件监测分析开放组件总结

关于我们

老刘,刘焕勇,NLP开源爱好者与践行者,主页:https://liuhuanyong.github.io。

就职于360人工智能研究院、曾就职于中国科学院软件研究所。

老刘说NLP,将定期发布语言资源、工程实践、技术总结等内容,欢迎关注。

对于想加入更优质的知识图谱与事件图谱实践相关分享的,可关注公众号,在后台菜单栏中点击会员社区->会员入群加入。



原文始发于微信公众号(老刘说NLP):NLP文本计算与分析项目实践:诗人足迹可视化生成与事件监测分析开放组件总结

相关文章

暂无评论

您必须登录才能参与评论!
立即登录
暂无评论...