背景
筆者由于最近做一個(gè)監(jiān)控應(yīng)用評(píng)論內(nèi)容的項(xiàng)目,為滿足需求,需要對(duì)抓取下來(lái)的應(yīng)用評(píng)論做中文語(yǔ)義識(shí)別叠穆,結(jié)果搜出來(lái)的大部分都是僅限英文語(yǔ)義識(shí)別的庫(kù),搜好久才找到這個(gè)國(guó)人開發(fā)的中文文本處理庫(kù)(包含語(yǔ)義識(shí)別功能)臼膏,特此介紹給大家硼被。
開源項(xiàng)目Github地址SnowNLP
安裝
跟其他python類庫(kù)一樣,使用pip安裝就行了
pip install snownlp
語(yǔ)義分析使用DEMO
# -*- coding: utf-8 -*-
#返回一段文本是積極的還是消極的
#@params: text
#@author: pyj 2017.03.24
#@return: 0~1 (語(yǔ)義積極的概率讶请,越接近1情感表現(xiàn)越積極)
from snownlp import SnowNLP
import sys
if (len(sys.argv) != 2):
print u"請(qǐng)確認(rèn)輸入?yún)?shù)!"
else:
text = sys.argv[1].decode('utf-8')
s = SnowNLP(text)
print round(s.sentiments,2)
測(cè)試一哈
python test.py '真的很贊贊贊'
1.0
python test.py '我不知道說什么,太難用了,我給差評(píng)'
0.1
語(yǔ)義分析再訓(xùn)練
用的時(shí)候祷嘶,有時(shí)候可能會(huì)覺得有些語(yǔ)句分析出來(lái)的結(jié)果會(huì)不太準(zhǔn)確,這時(shí)候你就需要更新語(yǔ)料庫(kù)夺溢,再進(jìn)行訓(xùn)練论巍,這樣下次分析出來(lái)的結(jié)果就更加準(zhǔn)確了。下面介紹一下如何進(jìn)行訓(xùn)練
首先準(zhǔn)備兩份語(yǔ)料文本,neg.txt(負(fù)面語(yǔ)料文本) pos.txt(積極語(yǔ)料文本)
# -*- coding: utf-8 -*-
from snownlp import sentiment
sentiment.train('neg.txt', 'pos.txt')
sentiment.save('sentiment.marshal')
再次把生成好的sentiment.marshal放入類庫(kù)的/sentiment 就可以了
試用效果如下风响,分析各渠道應(yīng)用市場(chǎng)評(píng)論內(nèi)容的情感:
image.png
目前筆者也僅僅試用了情感分析的功能而已嘉汰,其他功能歡迎讀者自行試用,總之就是相當(dāng)強(qiáng)大