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

本文涉及的产品
模型训练 PAI-DLC,100CU*H 3个月
模型在线服务 PAI-EAS,A10/V100等 500元 1个月
交互式建模 PAI-DSW,每月250计算时 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)是人工智能的核心,专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能,它是使计算机具有智能的根本途径,其应用遍及人工智能的各个领域。 本课程将带你入门机器学习,掌握机器学习的概念和常用的算法。
相关文章
|
2月前
|
XML JSON API
淘宝商品详情API的调用流程(python请求示例以及json数据示例返回参考)
JSON数据示例:需要提供一个结构化的示例,展示商品详情可能包含的字段,如商品标题、价格、库存、描述、图片链接、卖家信息等。考虑到稳定性,示例应基于淘宝开放平台的标准响应格式。
|
2月前
|
数据采集 JSON API
深入解析:使用 Python 爬虫获取淘宝店铺所有商品接口
本文介绍如何使用Python结合淘宝开放平台API获取指定店铺所有商品数据。首先需注册淘宝开放平台账号、创建应用并获取API密钥,申请接口权限。接着,通过构建请求、生成签名、调用接口(如`taobao.items.search`和`taobao.item.get`)及处理响应,实现数据抓取。代码示例展示了分页处理和错误处理方法,并强调了调用频率限制、数据安全等注意事项。此技能对开发者和数据分析师极具价值。
|
1月前
|
数据采集 存储 监控
Python 原生爬虫教程:网络爬虫的基本概念和认知
网络爬虫是一种自动抓取互联网信息的程序,广泛应用于搜索引擎、数据采集、新闻聚合和价格监控等领域。其工作流程包括 URL 调度、HTTP 请求、页面下载、解析、数据存储及新 URL 发现。Python 因其丰富的库(如 requests、BeautifulSoup、Scrapy)和简洁语法成为爬虫开发的首选语言。然而,在使用爬虫时需注意法律与道德问题,例如遵守 robots.txt 规则、控制请求频率以及合法使用数据,以确保爬虫技术健康有序发展。
188 31
|
1月前
|
数据采集 搜索推荐 API
Python 原生爬虫教程:京东商品列表页面数据API
京东商品列表API是电商大数据分析的重要工具,支持开发者、商家和研究人员获取京东平台商品数据。通过关键词搜索、分类筛选、价格区间等条件,可返回多维度商品信息(如名称、价格、销量等),适用于市场调研与推荐系统开发。本文介绍其功能并提供Python请求示例。接口采用HTTP GET/POST方式,支持分页、排序等功能,满足多样化数据需求。
|
2月前
|
机器学习/深度学习 人工智能 算法
基于Python深度学习的【害虫识别】系统~卷积神经网络+TensorFlow+图像识别+人工智能
害虫识别系统,本系统使用Python作为主要开发语言,基于TensorFlow搭建卷积神经网络算法,并收集了12种常见的害虫种类数据集【"蚂蚁(ants)", "蜜蜂(bees)", "甲虫(beetle)", "毛虫(catterpillar)", "蚯蚓(earthworms)", "蜚蠊(earwig)", "蚱蜢(grasshopper)", "飞蛾(moth)", "鼻涕虫(slug)", "蜗牛(snail)", "黄蜂(wasp)", "象鼻虫(weevil)"】 再使用通过搭建的算法模型对数据集进行训练得到一个识别精度较高的模型,然后保存为为本地h5格式文件。最后使用Djan
159 1
基于Python深度学习的【害虫识别】系统~卷积神经网络+TensorFlow+图像识别+人工智能
|
3月前
|
机器学习/深度学习 人工智能 算法
基于Python深度学习的【蘑菇识别】系统~卷积神经网络+TensorFlow+图像识别+人工智能
蘑菇识别系统,本系统使用Python作为主要开发语言,基于TensorFlow搭建卷积神经网络算法,并收集了9种常见的蘑菇种类数据集【"香菇(Agaricus)", "毒鹅膏菌(Amanita)", "牛肝菌(Boletus)", "网状菌(Cortinarius)", "毒镰孢(Entoloma)", "湿孢菌(Hygrocybe)", "乳菇(Lactarius)", "红菇(Russula)", "松茸(Suillus)"】 再使用通过搭建的算法模型对数据集进行训练得到一个识别精度较高的模型,然后保存为为本地h5格式文件。最后使用Django框架搭建了一个Web网页平台可视化操作界面,
197 11
基于Python深度学习的【蘑菇识别】系统~卷积神经网络+TensorFlow+图像识别+人工智能
|
2月前
|
JSON 监控 API
python语言采集淘宝商品详情数据,json数据示例返回
通过淘宝开放平台的API接口,开发者可以轻松获取商品详情数据,并利用这些数据进行商品分析、价格监控、库存管理等操作。本文提供的示例代码和JSON数据解析方法,可以帮助您快速上手淘宝商品数据的采集与处理。
|
3月前
|
数据采集 存储 Java
Java爬虫获取微店店铺所有商品API接口设计与实现
本文介绍如何使用Java设计并实现一个爬虫程序,以获取微店店铺的所有商品信息。通过HttpClient发送HTTP请求,Jsoup解析HTML页面,提取商品名称、价格、图片链接等数据,并将其存储到本地文件或数据库中。文中详细描述了爬虫的设计思路、代码实现及注意事项,包括反爬虫机制、数据合法性和性能优化。此方法可帮助商家了解竞争对手,为消费者提供更全面的商品比较。
|
3月前
|
数据采集 存储 数据挖掘
深入剖析 Python 爬虫:淘宝商品详情数据抓取
深入剖析 Python 爬虫:淘宝商品详情数据抓取
|
4月前
|
数据采集 JSON 数据格式
Python爬虫:京东商品评论内容
京东商品评论接口为商家和消费者提供了重要工具。商家可分析评论优化产品,消费者则依赖评论做出购买决策。该接口通过HTTP请求获取评论内容、时间、点赞数等数据,支持分页和筛选好评、中评、差评。Python示例代码展示了如何调用接口并处理返回的JSON数据。应用场景包括产品优化、消费者决策辅助、市场竞争分析及舆情监测。