snownlp情感分析,如何提取关键词和文章摘要?
发布于 作者:苏南大叔 来源:程序如此灵动~ 我们相信:世界是美好的,你是我也是。平行空间的世界里面,不同版本的生活也在继续...
前面的文章里面,苏南大叔说了使用jieba
分词,提取文章关键词的方式。本文的文字里面,就说一下使用snownlp
如何提取文章关键词。同时,这个snownlp
框架,还提供了提取文章中心句的功能。不知道效果如何呢?
大家好,这里是苏南大叔的程序如此灵动博客,这里记录苏南大叔和计算机代码的故事。本文描述snownlp
的提取文章关键词和文章中心语句的功能。测试环境:win10
,python@3.6.8
,snownlp@0.12.3
。
测试内容
测试内容来自苏南大叔的自述内容:
text = '''
您好,我是苏南大叔。一名有着远大理想的互联网从业者。我喜欢各种人类语言和编程语言,都是爱好者水平。
博客文章的主题,没有那么明确,小惭愧。最明确的主题是:苏南大叔和一堆二进制代码的事情~
一路上走走停停,走到哪里,看到哪里,写到哪里。心在哪里,哪里就是别样的风景~
'''
print(text)
对比组jieba
提取关键词 【推荐】
作为对比测试,这里先使用已知的jieba
来实现提取文章关键词的目的。(jieba
只有提取关键词功能,没有提取中心句功能)
import jieba.posseg
import jieba.analyse
keywords = jieba.analyse.textrank(text, topK=5, allowPOS=("n","nr"))
print(keywords)
输出内容:
['大叔', '博客', '编程语言', '远大理想', '代码']
效果不错,和苏南大叔想的差不多。对于相关函数的说明文章,请参考:
- https://newsn.net/say/jieba-analyse-textrank.html
- https://newsn.net/say/jieba-analyse-extract_tags.html
snownlp
【效果不是很好】
这里使用snownlp
来完成对照组实验对照:
from snownlp import SnowNLP
s = SnowNLP(text)
提取文章关键词[TextRank]
s.keywords(5)
输出五个关键词:
['主题', '堆', '大叔', '二', '苏南']
惨不忍睹
提取文本摘要[TextRank]【推荐】
s.summary(1)
输出一句话描述:
最明确的主题是:苏南大叔和一堆二进制代码的事情~
效果还行~
分割成句子[Tokenization]
s.sentences
输出一系列句子:
['您好', '我是苏南大叔', '一名有着远大理想的互联网从业者', '我喜欢各种人类语言和编程语言', '都是爱好者水平', '博客文章的主题', '没有那么明确', '小惭 愧', '最明确的主题是:苏南大叔和一堆二进制代码的事情~', '一路上走走停停', '走到哪里', '看到哪里', '写到哪里', '心在哪里', '哪里就是别样的风景~']
鸡肋鸡肋...
相关链接
- https://github.com/isnowfy/snownlp
- https://newsn.net/say/nlp-code.html
- https://newsn.net/say/python-zip.html
- https://newsn.net/say/jieba.html
- https://newsn.net/say/jieba-cut.html
- https://newsn.net/say/jieba-lcut.html
总结
苏南大叔个人认为,jieba
的输出文章关键字的功能效果不错,比snownlp
效果好。snownlp
的输出中心语句的功能,效果不错,弥补了jieba
相关功能的缺失。最后,snownlp
的Tokenization
功能,不知道干啥的,貌似没有啥用。总结完毕!
snownlp
的相关文章,请参考:
如果本文对您有帮助,或者节约了您的时间,欢迎打赏瓶饮料,建立下友谊关系。
本博客不欢迎:各种镜像采集行为。请尊重原创文章内容,转载请保留作者链接。
本博客不欢迎:各种镜像采集行为。请尊重原创文章内容,转载请保留作者链接。