SnowNLP文本情感分析

文本情感分析,可以自定义词典、训练模型来进行,但花费时间长。如果采用现有的模型,直接用几行代码就可以得出文本的情感倾向,现有的模型主要有SnowNLP和Cemotion。

SnowNLP用的是经典机器学习的贝叶斯算法;

Cemotion使用的是深度学习RNN模型,目前Cemotion使用的模型为rnn_emotion_x86_1.0.h5。

完整代码(SnowNLP,需要pip 安装):

from snownlp import SnowNLP
import pandas as pd

def get_reviews(file_path):
    predict = []
    data = pd.read_csv(file_path,sep="\t")
    review = data.iloc[:,1]
    emotion = [SnowNLP(str(a)) for a in list(review)]
    return emotion


file_path = 'd:/datasets/reviews.txt'
emotions = get_reviews(file_path)
for emotion in emotions:
  print('"', ",".join(emotion.sentences) , '"\n' , '情感倾向:{:6f}'.format(emotion.sentiments) , '\n')
" 看到朋友的姐姐用这个说效果很好,我也买来给姐姐和妈妈用,都说效果不错,皮肤好多了,又白又嫩~点个赞 "
 情感倾向:0.999875 

" 质量很好,绝对的正品,包装也很好,没有任何损坏,非常满意 "
 情感倾向:0.951805 

" 口罩收到了质量很好,包装严实,透气性很好 "
 情感倾向:0.862890 

" 质量很好疫情期间必不可少的便宜有活动多囤点 "
 情感倾向:0.918779 

" 是正品,干净卫生,做过好独立包装,赞 "
 情感倾向:0.994066 

" 太差了,用了一次就坏了 "
 情感倾向:0.004719 

" 不好用,下次不会买了 "
 情感倾向:0.396294 

" 不会回购了 "
 情感倾向:0.370883 

测试集reviews.txt(注:id与review之间tab键分隔)

id    review
1    看到朋友的姐姐用这个说效果很好,我也买来给姐姐和妈妈用,都说效果不错,皮肤好多了,又白又嫩~点个赞!
2    质量很好,绝对的正品,包装也很好,没有任何损坏,非常满意。
3    口罩收到了质量很好,包装严实,透气性很好
4    质量很好疫情期间必不可少的便宜有活动多囤点
5    是正品,干净卫生,做过好独立包装,赞
6    太差了,用了一次就坏了
7    不好用,下次不会买了
8    不会回购了

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

ITLiu_JH

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值