• Cemotion情感分析


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

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

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

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

    1. #导包
    2. import pandas as pd
    3. from cemotion import Cemotion
    4. def get_reviews(file_path):
    5. predict = []
    6. data = pd.read_csv(file_path,sep="\t")
    7. review = data.iloc[:,1]
    8. review = [str(a) for a in list(review)]
    9. c = Cemotion()
    10. predict = c.predict(review)
    11. return predict
    12. file_path = 'd:/datasets/reviews.txt'
    13. emotions = get_reviews(file_path)
    14. for emotion in emotions:
    15. print('"', emotion[0] , '"\n' , '情感倾向:{:6f}'.format(emotion[1]) , '\n')
    输出结果:
    1/1 [==============================] - 0s 477ms/step
    " 看到朋友的姐姐用这个说效果很好,我也买来给姐姐和妈妈用,都说效果不错,皮肤好多了,又白又嫩~点个赞! "
     情感倾向:1.000000 
    
    " 质量很好,绝对的正品,包装也很好,没有任何损坏,非常满意。 "
     情感倾向:0.999834 
    
    " 口罩收到了质量很好,包装严实,透气性很好 "
     情感倾向:0.998665 
    
    " 质量很好疫情期间必不可少的便宜有活动多囤点 "
     情感倾向:0.999965 
    
    " 是正品,干净卫生,做过好独立包装,赞 "
     情感倾向:1.000000 
    
    " 太差了,用了一次就坏了 "
     情感倾向:0.000001 
    
    " 不好用,下次不会买了 "
     情感倾向:0.000385 
    
    " 不会回购了 "
     情感倾向:0.031789 

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

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

  • 相关阅读:
    CVE-2023-1454:Jeecg-Boot SQL注入漏洞复现
    HarmonyOS之ArkUI布局设计常见细节
    mysql undolog
    三个月能学到多少网络安全知识?
    Matlab之绘制地球
    python多进程中常用方法用法详解
    Matlab随机波动率SV、GARCH用MCMC马尔可夫链蒙特卡罗方法分析汇率时间序列
    第九章 字符串处理函数
    1年管理,涨薪70%,只因做好了这件常被忽略的事
    Moment.js 处理日期库
  • 原文地址:https://blog.csdn.net/it_liujh/article/details/128061673