Python实现循环神经网络SimpleRNN、LSTM进行淘宝商品评论情感分析(含爬虫程序)

本文涉及的产品
模型在线服务 PAI-EAS,A10/V100等 500元 1个月
交互式建模 PAI-DSW,每月250计算时 3个月
模型训练 PAI-DLC,5000CU*H 3个月
简介: Python实现循环神经网络SimpleRNN、LSTM进行淘宝商品评论情感分析(含爬虫程序)

说明:这是一个机器学习实战项目(附带数据+代码+文档+视频讲解),如需数据+代码+文档+视频讲解可以直接到文章最后获取。

image.png

image.png


1. 项目背景

随着信息化社会的发展,互联网成为方便、快捷的信息获取渠道之一。在电子商务和社会网站中,大量非结构化的评论文本作为最直观的用户体验数据被保存下来。如何利用这些文字信息归纳出用户对某一事、物的观点态度成为自然语言(NLP)领域一项重要任务。

  文本情感分析又称文本意见挖掘,是自然语言处理领域最优吸引力的研究方向之一。文本情感分析通过计算语言学知识量化处理得到一段文字的观点态度和情感倾向。

淘宝作为一个电子商务平台,越来越受欢迎,2020年天猫双十一营业额超过3000多亿。商家销售的商品更是不计其数,每个商品的评论更是非常之多,本项目就是针对商品的评论数据通过建立循环神经网络模型进行情感倾向的分析。 

2. 数据采集

通过Python撰写爬虫程序,爬取天猫华为手机商品的评论数据。

爬取的数据集如下:

数据集:data_comment.xlsx

数据字段包括:nicknameratedateauctionSkuratecontent

在实际应用中,根据自己的数据进行替换即可。

特征数据:评论文本

标签数据:情感倾向(好评(2)、中评(1)、差评(0))

作为演示,我只弄了75条特征、标签数据,所以最后模型评估的时候,测试集再100次训练下出现了过拟合。

爬虫代码详见:tianmao.py(此程序作为参考代码,因为网站结构在不断地变化,此参考代码爬取出来的数据可能存在重复,需要去重处理)

3.数据预处理

爬虫爬取下来的数据格式如下:

image.png

用户户没有意义,直接去掉;日期转换为以天为单位;auctionSku字段以分号进行分割拆分为网络类型、机身颜色套餐类型存储容量4个数据项,方便后续进行数据分析,清洗后的数据如下:

image.png

4.探索性数据分析

1)按月统计订单完成交易时间的订单个数:

image.png

通过上图可以看到,2021年8月份完成订单交易最多,其次是2021年6月份。

 

2)按机型类型进行统计分析:

image.png

上图可以看到,SA/NSA双模(5G)、亮黑色、套餐一、8+256GB最多。

 

3)按机身颜色进行统计分析:

image.png

从上图可以看出,亮黑色最受欢迎。

 

3)按存储容量进行统计分析:

image.png

从上图可以看出,大部分人都喜欢大容量的。

 

4)制作评论数据词云图

分词:

image.png

 

词频统计:

image.png

词云图:

image.png

 

5.特征工程

1)用Tokenizer给文本分词

评论句子已经被分解为单词

每个单词已经被分配一个唯一的词典索引

分词后输出的值是列表类型的数据:

image.png

2)通过直方图显示各条评论中单词个数的分布情况

image.png

上图中的评论长度分布情况表明多数评论的词数在5以内,所以我们只需要处理前5个词,就能够判定绝大多数评论的类型。如果这个数目太大,那么将来构造出的词嵌入张量就达不到密集矩阵的效果。

6.LSTM建模  

1)建立LSTM分类模型,模型参数如下:

 

编号

参数

1

loss=' sparse_categorical_crossentropy '

2

optimizer='adam'

3

metrics=['acc']

 

其它参数根据具体数据,具体设置。

 

2)神经网络概要 

image.png

可以看到每层网络的类型、形状和参数。

一些其它的神经元图可以自行画。

 

3)训练过程展示

image.png

 

7.模型评估

1)损失和准确率图

image.png

通过上图可以看到,针对测试集 训练100次有些过拟合了,主要原因是总共我只做了75条数据,训练集数据太少。实际操作中,数据集是远远大于这个的。

其它一些评估方法,大家可以自行选择。

8.实际应用

在日常电子商务运营中,会出现新的评价数据,然后就可以运用此模型进行预测,准确定位客户对产品的评价,然后针对不同的客户要求来进行优化产品以及针对性营销。 


# 本次机器学习项目实战所需的资料,项目资源如下:
 
# 项目说明:
 
# 获取方式一:
 
# 项目实战合集导航:
 
https://docs.qq.com/sheet/DTVd0Y2NNQUlWcmd6?tab=BB08J2
 
# 获取方式二:
 
链接:https://pan.baidu.com/s/1UKdu0-T7A1ksKmQxTfkOTg 
提取码:blmd 
相关实践学习
使用PAI-EAS一键部署ChatGLM及LangChain应用
本场景中主要介绍如何使用模型在线服务(PAI-EAS)部署ChatGLM的AI-Web应用以及启动WebUI进行模型推理,并通过LangChain集成自己的业务数据。
机器学习概览及常见算法
机器学习(Machine Learning, ML)是人工智能的核心,专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能,它是使计算机具有智能的根本途径,其应用遍及人工智能的各个领域。 本课程将带你入门机器学习,掌握机器学习的概念和常用的算法。
相关文章
|
6天前
|
数据采集 存储 XML
Python爬虫定义入门知识
Python爬虫是用于自动化抓取互联网数据的程序。其基本概念包括爬虫、请求、响应和解析。常用库有Requests、BeautifulSoup、Scrapy和Selenium。工作流程包括发送请求、接收响应、解析数据和存储数据。注意事项包括遵守Robots协议、避免过度请求、处理异常和确保数据合法性。Python爬虫强大而灵活,但使用时需遵守法律法规。
|
3天前
|
机器学习/深度学习 数据挖掘 Python
Python编程入门——从零开始构建你的第一个程序
【10月更文挑战第39天】本文将带你走进Python的世界,通过简单易懂的语言和实际的代码示例,让你快速掌握Python的基础语法。无论你是编程新手还是想学习新语言的老手,这篇文章都能为你提供有价值的信息。我们将从变量、数据类型、控制结构等基本概念入手,逐步过渡到函数、模块等高级特性,最后通过一个综合示例来巩固所学知识。让我们一起开启Python编程之旅吧!
|
7天前
|
数据采集 缓存 定位技术
网络延迟对Python爬虫速度的影响分析
网络延迟对Python爬虫速度的影响分析
|
8天前
|
数据采集 Web App开发 监控
高效爬取B站评论:Python爬虫的最佳实践
高效爬取B站评论:Python爬虫的最佳实践
|
3天前
|
存储 Python
Python编程入门:打造你的第一个程序
【10月更文挑战第39天】在数字时代的浪潮中,掌握编程技能如同掌握了一门新时代的语言。本文将引导你步入Python编程的奇妙世界,从零基础出发,一步步构建你的第一个程序。我们将探索编程的基本概念,通过简单示例理解变量、数据类型和控制结构,最终实现一个简单的猜数字游戏。这不仅是一段代码的旅程,更是逻辑思维和问题解决能力的锻炼之旅。准备好了吗?让我们开始吧!
|
5天前
|
机器学习/深度学习 数据挖掘 开发者
Python编程入门:理解基础语法与编写第一个程序
【10月更文挑战第37天】本文旨在为初学者提供Python编程的初步了解,通过简明的语言和直观的例子,引导读者掌握Python的基础语法,并完成一个简单的程序。我们将从变量、数据类型到控制结构,逐步展开讲解,确保即使是编程新手也能轻松跟上。文章末尾附有完整代码示例,供读者参考和实践。
|
9天前
|
数据采集 存储 JSON
Python爬虫开发中的分析与方案制定
Python爬虫开发中的分析与方案制定
|
10天前
|
存储 机器学习/深度学习 搜索推荐
Python编程入门:从零开始构建你的第一个程序
【10月更文挑战第32天】本文旨在通过浅显易懂的方式引导编程新手进入Python的世界。我们将一起探索Python的基础语法,并通过实例学习如何构建一个简单的程序。文章将不直接展示代码,而是鼓励读者在阅读过程中自行尝试编写,以加深理解和记忆。无论你是编程初学者还是希望巩固基础知识的开发者,这篇文章都将是你的良师益友。让我们开始吧!
|
15天前
|
数据采集 存储 JSON
Python网络爬虫:Scrapy框架的实战应用与技巧分享
【10月更文挑战第27天】本文介绍了Python网络爬虫Scrapy框架的实战应用与技巧。首先讲解了如何创建Scrapy项目、定义爬虫、处理JSON响应、设置User-Agent和代理,以及存储爬取的数据。通过具体示例,帮助读者掌握Scrapy的核心功能和使用方法,提升数据采集效率。
59 6
|
3月前
|
机器学习/深度学习 数据采集 数据可视化
基于爬虫和机器学习的招聘数据分析与可视化系统,python django框架,前端bootstrap,机器学习有八种带有可视化大屏和后台
本文介绍了一个基于Python Django框架和Bootstrap前端技术,集成了机器学习算法和数据可视化的招聘数据分析与可视化系统,该系统通过爬虫技术获取职位信息,并使用多种机器学习模型进行薪资预测、职位匹配和趋势分析,提供了一个直观的可视化大屏和后台管理系统,以优化招聘策略并提升决策质量。
176 4

热门文章

最新文章