赞
踩
美图欣赏:
一.SnowNLP简介
SnowNLP是一个python写的类库,可以方便的处理中文文本内容,是受到了TextBlob的启发而写的,由于现在大部分的自然语言处理库基本都是针对英文的,于是写了一个方便处理中文的类库,并且和TextBlob不同的是,这里没有用NLTK,所有的算法都是自己实现的,并且自带了一些训练好的字典。注意本程序都是处理的unicode编码,所以使用时请自行decode成unicode。
Features:
中文分词(Character-Based Generative Model)
词性标注(TnT 3-gram 隐马)
情感分析(现在训练数据主要是买卖东西时的评价,所以对其他的一些> 可能效果不是很好,待解决)
文本分类(Naive Bayes)
转换成拼音(Trie树实现的最大匹配)
繁体转简体(Trie树实现的最大匹配)
提取文本关键词(TextRank算法)
提取文本摘要(TextRank算法)
tf,idf
Tokenization(分割成句子)
文本相似(BM25)
支持python3(感谢erning)
SnowNLP的github地址:
https://github.com/isnowfy/snownlp
二.安装SnowNLP的包
命令:
$ pip install snownlp
三.代码实现
#表示部分,只用SnowNLP from snownlp import SnowNLP #表示导入snownlp包全部 import snownlp text = "今天抽中一个大奖,十分的开心快乐" # SnowNLP(text)相当于建立一个模型 snownlp_CJ= SnowNLP(text) #1.分句 fenju = snownlp_CJ.sentences print("1.分句: ",fenju) #2.分词 word_list = [] for sentence in fenju: #SnowNLP(sentence),SnowNLP表示对每一句话建立一个模型,然后words分词 word_list.append(SnowNLP(sentence).words) print("2.分词: ",word_list) #3.词性标注 tags_list = [] for sentence in fenju: #.SnowNLP(sentence).tags)返回的是zip,因此要转成List,放到tags_list中 tags_list.append(list(SnowNLP(sentence).tags)) print("3.词性标注结果: ",tags_list) #4.转换为拼音(直接用模型) print("4.拼音: ",snownlp_CJ.pinyin) #5.繁体字与简体字之间的转换 text_fanti = "慶祝,中國越來越强" snownlp_fan = SnowNLP(text_fanti) print("5.繁体字转换为简体字: ",snownlp_fan.han) #6.关键词摘要抽取 #中文字符前面一般带个u字母 duanluo = u"原来工作忙,很少回家乡;现在退休了,却又忙起天伦之乐。" \ "家乡的老哥们一句话:“山猴子,你真的把家乡忘了吗?" \ "该来看看我们这些快要入土的老哥们了呃!见一眼就少一面哦!”" \ "这喊着小名,带着情绪和埋怨想念地对我说。于是,我决定独自回家乡一趟。坐在驶向“南山背”的班车上," \ "透过车窗的山山岭岭,似乎一见如故。我轻轻叩问自己," \ "家乡是什么?这口头禅的叫词,突然在我大脑尽是一片空白。家乡,多少年的时光,多少有趣的记忆," \ "仿佛被城市的脚步甩得太远太远。" snownlp_pgh = SnowNLP(duanluo) print("6.关键词: ",snownlp_pgh.keywords()) #有些不用文本里面的原话,自己自动生成的摘要 print("7.摘要提取",snownlp_pgh.summary(5))
运行结果:
1.分句: ['今天抽中一个大奖', '十分的开心快乐']
2.分词: [['今天', '抽', '中', '一个', '大奖'], ['十分', '的', '开心', '快乐']]
3.词性标注结果: [[('今天', 't'), ('抽', 'v'), ('中', 'f'), ('一个', 'm'), ('大奖', 'n')], [('十分', 'm'), ('的', 'u'), ('开心', 'a'), ('快乐', 'an')]]
4.拼音: ['jin', 'tian', 'chou', 'zhong', 'yi', 'ge', 'da', 'jiang', ',', 'shi', 'fen', 'de', 'kai', 'xin', 'kuai', 'le']
5.繁体字转换为简体字: 庆祝,中国越来越强
6.关键词: ['家乡', '忙', '话', '句', '少']
7.摘要提取 ['很少回家乡', '家乡是什么', '家乡', '我决定独自回家乡一趟', '却又忙起天伦之乐']
Process finished with exit code 0
————保持学习,保持饥饿
Jackson_MVP
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。