# 基于LSTM实现文本的情感分析-耳机用户情感可视化分析预测
#### 介绍
数据是关于用户对耳机不同主题的不同情感的评论,根据数据内容来对品牌的议题进行数据可视化与分析预测。
#### 代码实现内容
**一、对数据集进行读取,打印前20行数据、主题词、情感词、情感值,并绘制主题词、情感词、情感值的分布图**
![前20行数据、主题词、情感词、情感值](%E6%95%B0%E6%8D%AE%E6%89%93%E5%8D%B0.png)
根据数据集里的内容打印,我们看到主题词、情感词和情感值三列,之后对这三部分展开数据可视化与后续分析,用饼图和柱状图去直观体现
![主题词](%E4%B8%BB%E9%A2%98%E5%88%86%E5%B8%83%E5%9B%BE.png)
![情感词分布图](%E6%83%85%E6%84%9F%E8%AF%8D%E5%88%86%E5%B8%83%E5%9B%BE.png)
![情感值分布图](%E6%83%85%E6%84%9F%E5%80%BC%E5%88%86%E5%B8%83%E5%9B%BE.png)
**二、宏观了解后,对数据集进行处理,之后生成词云与不同的分布图**
1.删除过长与过短的评论、重复项、标点符号和英文字母过多的三类评论
2.提取不同情感种类、合成字符串、定义停用词
3.加载词云形状照片,之后生成各类词云图(所有情感词的、积极词、消极词、中立词)
![所有情感词词云图](%E6%89%80%E6%9C%89%E6%83%85%E6%84%9F%E8%AF%8D%E8%AF%8D%E4%BA%91%E5%9B%BE.png)
![积极词语词云](%E7%A7%AF%E6%9E%81%E8%AF%8D%E8%AF%AD%E8%AF%8D%E4%BA%91.png)
![消极词语词云](%E6%B6%88%E6%9E%81%E8%AF%8D%E8%AF%AD%E8%AF%8D%E4%BA%91.png)
![中立词语词云](%E4%B8%AD%E7%AB%8B%E8%AF%8D%E8%AF%AD%E8%AF%8D%E4%BA%91.png)
4.对不同主题词中进行不同情感词数量进行柱状图展示
首先对每个主题中评论分成好、中、坏三个方面,去看各个部分的评论数量
![不同主题的不同情感评论数](%E4%B8%8D%E5%90%8C%E4%B8%BB%E9%A2%98%E7%9A%84%E4%B8%8D%E5%90%8C%E6%83%85%E6%84%9F%E8%AF%84%E8%AE%BA%E6%95%B0.png)
5.去除中性词,之后对不同情感词语进行数据浏览
以下的可视化展示针对去除中性词后的数据展示,后面使用LSTM进行预测也是用的没有中性词的评论,所以代码加入了积极与消极的数据可视化展示
5.1 不同主题的不同情感评论数
![不同主题的不同情感评论数(去除中性词)](%E4%B8%8D%E5%90%8C%E4%B8%BB%E9%A2%98%E7%9A%84%E4%B8%8D%E5%90%8C%E6%83%85%E6%84%9F%E8%AF%84%E8%AE%BA%E6%95%B0%EF%BC%88%E5%8E%BB%E9%99%A4%E4%B8%AD%E6%80%A7%E8%AF%8D%EF%BC%89.png)
5.2 情感评论词前十数量展示(包含积极评论词与消极评论词)
![情感评论词前十数量](%E6%83%85%E6%84%9F%E8%AF%84%E8%AE%BA%E8%AF%8D%E5%89%8D%E5%8D%81%E6%95%B0%E9%87%8F.png)
5.3 积极情感词前十数量展示
![积极情感评论词前十数量柱状图](%E7%A7%AF%E6%9E%81%E6%83%85%E6%84%9F%E8%AF%84%E8%AE%BA%E8%AF%8D%E5%89%8D%E5%8D%81%E6%95%B0%E9%87%8F%E6%9F%B1%E7%8A%B6%E5%9B%BE.png)
5.4 消极情感词前十数量展示
![消极情感评论词前十数量柱状图](%E6%B6%88%E6%9E%81%E6%83%85%E6%84%9F%E8%AF%84%E8%AE%BA%E8%AF%8D%E5%89%8D%E5%8D%81%E6%95%B0%E9%87%8F%E6%9F%B1%E7%8A%B6%E5%9B%BE.png)
5.5 热力图展示
![热力图展示](%E7%83%AD%E5%8A%9B%E5%9B%BE%E5%B1%95%E7%A4%BA.png)
由结果可以看到“好”与主题词中的几个主题词相关性较高。如果我们没有去除中性去绘制热力图,某些中性评论词此对应各个主题词的相关性可能会更强,即存在很强的多重共线性。我们去除中性词这个变量,可以避免因多重共线性造成的过拟合。
**三、基于LSTM实现文本的情感分析预测**
我们想实现情感分类的一个预测模型,用于对文本数据进行情感分析预测,代码基于LSTM,实现将给定的文本分类为正面或负面情感。
包含:
数据预处理:直接调用无中性情感评论词的数据,并对情感值进行标签编码(1与-1变成1和0)。
数据集划分:将数据集分割为训练集和测试集,测试集占20%。
文本向量化和序列填充:使用Tokenizer对文本数据进行向量化,并对序列进行填充和截断。
构建LSTM模型:定义一个包含嵌入层、LSTM层和全连接层的神经网络模型。
模型训练:使用训练数据集对模型进行训练,使用二元交叉熵损失函数和Adam优化器。
模型评估:在测试集上评估模型的表现,计算并打印损失、准确率、精确率、召回率和F1分数。
结果展示:
![预测结果展示](%E9%A2%84%E6%B5%8B%E7%BB%93%E6%9E%9C%E5%B1%95%E7%A4%BA.png)
通过结果的截图,我们逐一进行分析:
模型的测试损失较低,预测误差小。
准确率87.324%,模型在大多数情况下能正确分类。
精确率为0.873,说明大部分预测为正类的样本是准确的。
召回率达到1.000,意味着模型对所有实际正类样本都进行了正确预测,没有漏检。
F1得分为0.932,显示模型在精确率和召回率之间达到了很好的平衡,综合表现优异。
总的来看模型在测试集上表现良好,具有很高的预测准确性和可靠性。特别是召回率达到1,说明模型在检测正类样本时没有漏掉任何一个正类样本。
注意:比较精度的评估指标中准确率和精确率不是同一个东西,准确率是指所有预测正确的样本占总样本的比例,精确率是指模型预测为正类的样本中实际为正类的比例,也就是说准确率关注的是总体预测的正确性,包括正类和负类样本。精确率仅关注模型预测为正类的样本是否真正为正类样本。
没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
<项目介绍> 基于LSTM实现文本的情感分析-耳机用户情感可视化分析预测 介绍 数据是关于用户对耳机不同主题的不同情感的评论,根据数据内容来对品牌的议题进行数据可视化与分析预测。 代码实现内容 一、对数据集进行读取,打印前20行数据、主题词、情感词、情感值,并绘制主题词、情感词、情感值的分布图 - 不懂运行,下载完可以私聊问,可远程教学 该资源内项目源码是个人的毕设,代码都测试ok,都是运行成功后才上传资源,答辩评审平均分达到96分,放心下载使用! 1、该资源内项目代码都经过测试运行成功,功能ok的情况下才上传的,请放心下载使用! 2、本项目适合计算机相关专业(如计科、人工智能、通信工程、自动化、电子信息等)的在校学生、老师或者企业员工下载学习,也适合小白学习进阶,当然也可作为毕设项目、课程设计、作业、项目初期立项演示等。 3、如果基础还行,也可在此代码基础上进行修改,以实现其他功能,也可用于毕设、课设、作业等。 下载后请首先打开README.md文件(如有),仅供学习参考, 切勿用于商业用途。 --------
资源推荐
资源详情
资源评论
收起资源包目录
one-master (1).zip (21个子文件)
one-master
消极情感评论词前十数量柱状图.png 41KB
不同主题的不同情感评论数.png 51KB
image.png 105KB
情感值分布图.png 92KB
积极词语词云.png 138KB
simhei.ttf 9.3MB
情感词分布图.png 105KB
情感评论词前十数量.png 41KB
数据打印.png 114KB
所有情感词词云图.png 134KB
积极情感评论词前十数量柱状图.png 41KB
耳机用户情感分析.py 24KB
中立词语词云.png 133KB
earphone_sentiment.csv 1.57MB
预测结果展示.png 9KB
主题分布图.png 99KB
热力图展示.png 118KB
消极词语词云.png 124KB
不同主题的不同情感评论数(去除中性词).png 48KB
README.en.md 974B
README.md 6KB
共 21 条
- 1
资源评论
机智的程序员zero
- 粉丝: 2416
- 资源: 4812
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功