百度情感分析senta模型

模型搭建

参考的链接

开始使用_飞桨-源于产业实践的开源深度学习平台 (paddlepaddle.org.cn)

PaddleHub/windows_quickstart.md at release/v2.1 · PaddlePaddle/PaddleHub · GitHub

  • 情感倾向分析(Sentiment Classification,简称Senta)针对带有主观描述的中文文本,可自动判断该文本的情感极性类别并给出相应的置信度,能够帮助企业理解用户消费习惯、分析热点话题和危机舆情监控,为企业提供有利的决策支持。该模型基于一个双向LSTM结构,情感类型分为积极、消极。

一、安装

执行安装python -m pip install paddlepaddle==2.4.2 -i https://pypi.tuna.tsinghua.edu.cn/simple

pip install paddlehub==1.6.2 -i https://pypi.tuna.tsinghua.edu.cn/simple

senta_bilstm 直接在pytorch中下载,下载的为1.1.0版本,(就是运行代码直接在控制台下载了)

with open("test.txt", 'r') as f: 这个里面加上编码的设置 ,encoding=utf-8

二、遇到的问题

1.TypeError: The input data is inconsistent with expectations.

UnicodeDecodeError: ‘gbk‘ codec can‘t decode bytein position

字符编码问题,with open("test.txt", 'r') as f: 这个里面加上编码的设置 ,encoding=utf-8

2.ModuleNotFoundError: No module named 'scipy'

缺少scipy包,直接在cmd里面pip install scipy

3.Could not build wheels for opencv-python

先pip install cmake

pip install opencv-python

可以在后面加上清华源,opencv-python如果下载错的话,会下载很慢

4.ImportError: cannot import name 'get_installed_distributions' from 'pip._internal.utils

是安装paddlepaddle,paddlehub这个的问题,估计是版本安装的不匹配

最后安装的是paddlepaddle最新的,pip install paddlepaddle==2.4.2,pip install paddlehub==1.6.2

最后的结果,我就是小白一个,python学的稀烂,欢迎大佬指正~

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
Senta是一款百度开源的情感分析系统。 情感分析旨在自动识别和提取文本中的倾向、立场、评价、观点等主观信息。它包含各式各样的任务,比如句子级情感分类、评价对象级情感分类、观点抽取、情绪分类等。情感分析是人工智能的重要研究方向,具有很高的学术价值。同时,情感分析在消费决策、舆情分析、个性化推荐等领域均有重要的应用,具有很高的商业价值。 近日,百度正式发布情感预训练模型SKEP(Sentiment Knowledge Enhanced Pre-training for Sentiment Analysis)。SKEP利用情感知识增强预训练模型, 在14项中英情感分析典型任务上全面超越SOTA,此工作已经被ACL 2020录用。 为了方便研发人员和商业合作伙伴共享效果领先的情感分析技术,本次百度Senta中开源了基于SKEP的情感预训练代码和中英情感预训练模型。而且,为了进一步降低用户的使用门槛,百度在SKEP开源项目中集成了面向产业化的一键式情感分析预测工具。用户只需要几行代码即可实现基于SKEP的情感预训练以及模型预测功能。 SKEP SKEP是百度研究团队提出的基于情感知识增强的情感预训练算法,此算法采用无监督方法自动挖掘情感知识,然后利用情感知识构建预训练目标,从而让机器学会理解情感语义。SKEP为各类情感分析任务提供统一且强大的情感语义表示。 百度研究团队在三个典型情感分析任务,句子级情感分类(Sentence-level Sentiment Classification),评价对象级情感分类(Aspect-level Sentiment Classification)、观点抽取(Opinion Role Labeling),共计14个中英文数据上进一步验证了情感预训练模型SKEP的效果。实验表明,以通用预训练模型ERNIE(内部版本)作为初始化,SKEP相比ERNIE平均提升约1.2%,并且较原SOTA平均提升约2%。
Senta是一个中文情感分析模型,可以用于对中文文本进行积极、消极、中性情感的分类。在Spark Scala中使用Senta模型,可以按照以下步骤进行: 1. 下载Senta模型文件,可以从PaddlePaddle官网下载,也可以使用PaddleHub工具下载。 2. 将Senta模型文件加载到Spark中。可以使用Spark的本地文件或HDFS上的文件进行加载,例如: ```scala import org.apache.spark.ml.feature.ChineseTokenizer import org.apache.spark.ml.feature.StopWordsRemover import org.apache.spark.ml.feature.Word2Vec import org.apache.spark.ml.linalg.Vector import org.apache.spark.ml.classification.LogisticRegression import org.apache.spark.ml.Pipeline import org.apache.spark.ml.PipelineModel import org.apache.spark.ml.feature.{HashingTF, IDF, Tokenizer} val sentaModelPath = "/path/to/senta_model" val sentaModel = PipelineModel.load(sentaModelPath) ``` 3. 对需要进行情感分析的中文文本进行处理,例如分词、去停用词、转换成向量等处理,可以使用Spark的相关功能进行处理,例如: ```scala val testSentence = "这个电影真的很好看" val tokenizer = new ChineseTokenizer() .setInputCol("text") .setOutputCol("words") val stopWordsRemover = new StopWordsRemover() .setInputCol(tokenizer.getOutputCol) .setOutputCol("filtered") val word2Vec = new Word2Vec() .setInputCol(stopWordsRemover.getOutputCol) .setOutputCol("features") .setVectorSize(100) .setMinCount(0) val pipeline = new Pipeline() .setStages(Array(tokenizer, stopWordsRemover, word2Vec)) val pipelineModel = pipeline.fit(Seq(testSentence).toDF("text")) val result = pipelineModel.transform(Seq(testSentence).toDF("text")) val features = result.select("features").head().getAs[Vector](0) ``` 4. 使用加载的Senta模型对处理后的中文文本进行情感分析,例如: ```scala val prediction = sentaModel.transform(result) val score = prediction.select("score").head().getAs[Double](0) val sentiment = if (score < 0.5) "negative" else "positive" ``` 通过以上步骤,就可以在Spark Scala中使用Senta模型进行中文文本的情感分析了。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值