自然语言处理nlp:文本处理库SnowNLP
阿里云国内75折 回扣 微信号:monov8 |
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6 |
SnowNLP简介
SnowNLP是一个python写的类库可以方便的处理中文文本内容是受到了TextBlob的启发而写的由于现在大部分的自然语言处理库基本都是针对英文的于是写了一个方便处理中文的类库并且和TextBlob不同的是这里没有用NLTK所有的算法都是自己实现的并且自带了一些训练好的字典。注意本程序都是处理的unicode编码所以使用时请自行decode成unicode。
简而言之就是:SnowNLP是一个Python写的类库而且是针对中文的自然语言处理库。
注意SnowNLP的情感分析文本只处理unicode编码。在下面的代码中我们在字符串前加了一个u代表unicode字符串。
SnowNLP主要函数
from snownlp import SnowNLP
# 文本
text = u"""自然语言处理是计算机科学领域与人工智能领域中的一个重要方向。
它研究能实现人与计算机之间用自然语言进行有效通信的各种理论和方法。
自然语言处理是一门融语言学、计算机科学、数学于一体的科学。"""
# 分析
s = SnowNLP(text)
#输出文字内容
print(s.doc)
自然语言处理是计算机科学领域与人工智能领域中的一个重要方向。
它研究能实现人与计算机之间用自然语言进行有效通信的各种理论和方法。
自然语言处理是一门融语言学、计算机科学、数学于一体的科学。
#输出文本拼音
print(s.pinyin)
['Zi', 'ran', 'yu', 'yan', 'chu', 'li', 'shi', 'ji', 'suan', 'ji', 'ke', 'xue', 'ling', 'yu', '与', 'ren', 'gong', 'zhi', 'neng', 'ling', 'yu', 'zhong', 'de', 'yi', 'ge', 'zhong', 'yao', 'fang', 'xiang', '。', 'ta', 'yan', 'jiu', 'neng', 'shi', 'xian', 'ren', '与', 'ji', 'suan'o', 'fang', 'fa', '。', 'Zi', 'ran', 'yu', 'yan', 'chu', 'li', 'shi', 'yi', 'men', 'rong', 'yu', 'yan', 'xue', '、', 'ji', 'suan', 'ji', 'ke', 'xue', '、', 'shu', 'xue', '于', 'yi', 'ti', 'de', 'ke', 'xue', '。']
#将文本用标点符号分解存入列表
print(s.sentences)
['自然语言处理是计算机科学领域与人工智能领域中的一个重要方向', '它研究能实现人与计算机之间用自然语言进行有效通信的各种理论和方法', '自然语
言处理是一门融语言学、计算机科学、数学于一体的科学']
#中文分词
print(s.words)
['自然', '语言', '处理', '是', '计算机', '科学', '领域', '与', '人工', '智能', '领域', '中', '的', '一个', '重要', '方向', '。', '它', '研
究', '能', '实现', '人', '与', '计算机', '之间', '用', '自然', '语言', '进行', '有效', '通信', '的', '各种', '理论', '和', '方法', '。', '
自然', '语言', '处理', '是', '一', '门融', '语言', '学', '、', '计算机', '科学', '、', '数学', '于', '一体', '的', '科学', '。']
#关键词挖掘括号内为关键词个数
print(s.keywords(3))
['计算机', '语言', '自然']
#输出情绪为积极的概率
print(s.sentiments)
0.9999999999994513