我们相信:世界是美好的,你是我也是。平行空间的世界里面,不同版本的生活也在继续...

前面的文章里面,苏南大叔说了使用jieba分词,提取文章关键词的方式。本文的文字里面,就说一下使用snownlp如何提取文章关键词。同时,这个snownlp框架,还提供了提取文章中心句的功能。不知道效果如何呢?

苏南大叔:snownlp情感分析,如何提取关键词和文章摘要? - snownlp文章摘要
snownlp情感分析,如何提取关键词和文章摘要?(图2-1)

大家好,这里是苏南大叔的程序如此灵动博客,这里记录苏南大叔和计算机代码的故事。本文描述snownlp的提取文章关键词和文章中心语句的功能。测试环境:win10python@3.6.8snownlp@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)

输出内容:

['大叔', '博客', '编程语言', '远大理想', '代码']

效果不错,和苏南大叔想的差不多。对于相关函数的说明文章,请参考:

苏南大叔:snownlp情感分析,如何提取关键词和文章摘要? - 测试代码摘要提取
snownlp情感分析,如何提取关键词和文章摘要?(图2-2)

snownlp【效果不是很好】

这里使用snownlp来完成对照组实验对照:

from snownlp import SnowNLP
s = SnowNLP(text)

提取文章关键词[TextRank]

s.keywords(5)

输出五个关键词:

['主题', '堆', '大叔', '二', '苏南']
惨不忍睹

提取文本摘要[TextRank]【推荐】

s.summary(1)

输出一句话描述:

最明确的主题是:苏南大叔和一堆二进制代码的事情~
效果还行~

分割成句子[Tokenization]

s.sentences

输出一系列句子:

['您好', '我是苏南大叔', '一名有着远大理想的互联网从业者', '我喜欢各种人类语言和编程语言', '都是爱好者水平', '博客文章的主题', '没有那么明确', '小惭 愧', '最明确的主题是:苏南大叔和一堆二进制代码的事情~', '一路上走走停停', '走到哪里', '看到哪里', '写到哪里', '心在哪里', '哪里就是别样的风景~']
鸡肋鸡肋...

相关链接

总结

苏南大叔个人认为,jieba的输出文章关键字的功能效果不错,比snownlp效果好。snownlp的输出中心语句的功能,效果不错,弥补了jieba相关功能的缺失。最后,snownlpTokenization功能,不知道干啥的,貌似没有啥用。总结完毕!

snownlp的相关文章,请参考:

如果本文对您有帮助,或者节约了您的时间,欢迎打赏瓶饮料,建立下友谊关系。
本博客不欢迎:各种镜像采集行为。请尊重原创文章内容,转载请保留作者链接。

 【福利】 腾讯云最新爆款活动!1核2G云服务器首年50元!

 【源码】本文代码片段及相关软件,请点此获取更多信息

 【绝密】秘籍文章入口,仅传授于有缘之人   python    nlp