解读:学术观点| 拿“双十一”开涮的文本挖掘:电商评论情感分析
优采云 发布时间: 2022-12-04 20:56解读:学术观点| 拿“双十一”开涮的文本挖掘:电商评论情感分析
随着网络购物的普及,各大电子商务公司之间的竞争也非常激烈。为了提高客户服务质量,除了打价格战,了解客户的需求,倾听客户的声音也越来越重要。最重要的方法是对文本评论进行数据挖掘。今天通过学习《R语言数据挖掘实战》案例:电商点评与数据分析,从目标到操作内容与大家分享。
本文结构如下
1.要达到的目标
通过对客户评论的分析,进行一系列的方法来获取客户对某产品的态度和情感倾向,以及客户关注产品的哪些属性,产品的优点和缺点是什么,以及产品的卖点是什么,等等...
2.文本挖掘的主要思想。
由于语言数据的特殊性,我们主要提取句子中的关键词,提取评论的关键词,然后根据关键词的权重,这里我们使用空间向量模型将每个特征关键词转化为数字向量,然后计算其距离,然后聚类得到三类情绪,分别是积极的、消极的和中性的。用 来代表顾客对产品的情感倾向。
3、文本挖掘的主要流程:
请输入标题 4.案例流程简介及原理介绍及软件操作
4.1 数据爬取
首先下载优采云软件。链接是 。下载安装后,注册账号并登录,界面如上:
点击快速开始-新建任务,输入任务名称,点击下一步,打开京东热水器页面
将页面地址复制到优采云,如下图:
观察网页类型,由于收录美的热水器的页面不止一个,下面有一个翻页按钮,所以我们需要创建一个点击下一页的循环,然后在京东上点击下一页优采云中的页面,点击弹出的对话框列表中,点击循环,点击下一页,如图:
然后点击一个产品,在弹出的页面点击Add an element list处理祖先元素--点击Add to list--继续编辑列表,接下来我们点击另一个产品的名称,点击Add to在弹出的页面列表上,让软件自动识别页面上的其他产品,然后点击创建列表完成,再点击循环创建页面中的产品列表,循环抓取。
然后软件自动跳转到第一个产品的特定页面。我们点击评论,在弹出的页面中点击这个元素,看到有很多页的评论。这时候我们就需要创建一个循环列表。同上,点击下一页—循环点击。然后点击我们需要抓取的评论文字,点击弹出页面创建元素列表处理一组元素——点击添加到列表——继续编辑列表,然后点击第二条评论点击在弹出的页面上Add to the list—cycle,然后点击评论的文字,选择该元素的文字。好了,软件会循环抓取这个页面的文字,如图:
全部点击完成后,我们查看设计器,发现有4个循环,第一个是翻页,第二个是循环点击每个商品,第三个是翻评论页,然后第四是抓取循环评论文本,所以我们需要把第四个循环嵌入到第三个循环中,然后整体嵌入到第二个循环中,然后再整体嵌入到第一个循环中,也就是说,先点击下一页,然后点击产品,再点击下一个功能,然后抓取评论,这一套action loops。那么我们只需要在设计器中将第4个循环拖到第3个循环中,这样拖下去即可。就是这样:拖动结果如下: ,然后点击Next—Next—点击采集就OK了。
4.2 文本去重
本例以京东平台下美的热水器的顾客评论为分析对象。按照流程,我们先用优采云爬取了京东网站上客户对美的热水器的评论,部分数据如下!
通过简单的观察,我们可以发现评论的一些特征,
因此,我们需要对这些数据进行数据预处理,首先进行数据清洗,而编辑距离去重实际上是一种计算字符串之间相似度的方法。给定两个字符串,将字符串A变换为字符串B所需的删除、插入、替换等操作的次数称为从A到B的编辑路径。最短的编辑路径称为字符串A和B的编辑距离。对于例如,“还没用过,不知道怎么样,但是安装材料费有点高,380”和“还没用过,不知道质量如何,但是”的编辑距离安装材料费确实贵,380寸是9。
首先,我们需要对重复的评论进行重复,也就是删除重复的评论。
重复词出现在另一个句子中,会影响关键词在整个评论中出现的频率过高,影响分析结果。我们想压缩它。
还有一些无意义的评论,比如自动点赞的评论,我们需要识别并删除。
4.3 压缩语句规则:
1.如果读的和上面的list一样,但是下面是空的,就放下。2.如果读取的和上面的表一样,但是有底,则判断重复,清空底表。3.如果read和top list相同,bottom是,则判断不是Heavy,上下清零 4.如果read和上面list不同,字符>=2,判断为重复,上下清零 5.如果读的和上面的表不一样,底是空的,判断不重,继续放 6.如果读的和上面的表不一样,有底,判断是不重,放下 7. 看完后,判断上下,重则压紧。
4.4 然后我们进行中文分词。分词的一般原则是:
中文分词是指将一系列汉字分割成独立的词。分词结果的准确性对文本挖掘的效果非常重要。目前分词算法主要有四种:字符串匹配算法、基于理解的算法、基于统计的方法和基于机器学习的算法。
1、字符串匹配算法是将待分词的文本字符串与字典中的词进行精确匹配。如果字典中的字符串出现在当前待分词的文本中,则匹配成功。常用的匹配算法主要有正向最大匹配、反向最大匹配、双向最大匹配和最小分割。
2、基于理解的算法通过模拟人们在现实中对一句话的理解效果进行分词。这种方法需要分析句法结构,同时需要用到大量的语言知识和信息,比较复杂。
3、基于统计的方法就是利用统计的思想进行分词。单词由单个字符组成。在文本中,相邻字符同时出现的次数越多,它们组成单词的概率就越大;因此,可以用字符间的共现概率来反映词的概率,统计相邻字符的共现情况。出现次数并计算它们的共现概率。当共现概率高于设定的阈值时,可以认为它们可能构成该词
4. 最后是基于机器学习的方法:利用机器学习进行模型构建。构建大量的分割文本作为训练数据,使用机器学习算法进行模型训练,利用模型对未知文本进行分割。
4.5 得到分词结果后
我们知道这些句子中经常会有一些“了”、“啊”、“但是”,语气词、关联词、介词等,这些词对句子的特征没有贡献,我们可以去掉它们,还有一些专有名词,对于这个分析案例,“热水器”和“中国”经常出现在评论中,这是我们已经知道的,因为我们最初分析的是关于热水器的评论,所以这些都是无用的信息。我们也可以删除它们。那么这里必须删除这些词。一般通过建立的自定义词库删除。
4.6 分词结果处理后
那么我们就可以进行统计,画出词频云图,大致了解那些关键词的情况,为我们接下来的分析提供思路素材。操作如下:
4.7 得到分词结果后
我们开始建模和分析。模型选择的方法有很多,但归纳起来,只有两种,即向量空间模型和概率模型。在这里我们介绍一个具有代表性的模型
模型一:TF-IDF方法:
方法A:对每个词的出现频率进行加权后,作为其维度的坐标来确定一个特征的空间位置。
方法B:将所有出现的词所收录的属性作为维度,然后将词与各个属性之间的关系作为坐标,进而定位一篇文档在向量空间中的位置。
但实际上,如果一个词条在一类文档中频繁出现,说明该词条能够很好地代表该类文本的特征。此类词条应该被赋予更高的权重,并被选为此类文本的特征词,用于将其与其他类型的文档区分开来。这就是 IDF 的不足之处。
模型二:.LDA模型
传统的判断两篇文档相似度的方法是查看两篇文档中出现的词的数量,比如TF-IDF。几乎没有,但是这两个文件很相似。
例如,有如下两个句子:
“乔布斯走了。” “苹果会降价吗?”
可以看出,上面两句话没有共同词,但是两句话很相似。如果按照传统的方法判断两个句子,肯定是不相似的,所以在判断文档的相关性时,需要考虑文档。语义学,语义挖掘的武器是主题模型,LDA是比较有效的模型之一。
LDA模型是一种无监督的主题生成模型,它假设文档集中的文档按照一定的概率共享一组隐藏主题,隐藏主题集由相关词组成。这里一共有三个集合,分别是文档集合、主题集合和单词集合。文档集到主题集服从概率分布,词集到主题集也服从概率分布。既然我们知道了文档集和词集,那么根据贝叶斯定理就可以找到主题集了。具体算法很复杂,这里就不多解释了。有兴趣的同学可以参考以下资料
37616
4.8 项目概要
1、数据复杂度较高,文本挖掘面临的非结构化语言,文本非常复杂。
2.过程不同,文本挖掘更注重预处理阶段
3、整体流程如下:
五、应用领域:
一、舆情分析
2.搜索引擎优化
3、其他行业的辅助应用
6、分析工具:
ROST CM 6 是目前国内唯一由武汉大学沉阳教授开发编码,助力人文社会科学研究的大型免费社交计算平台。本软件可以实现微博分析、聊天分析、全网分析、网站分析、浏览分析、分词、词频统计、英文词频统计、流量分析、聚类分析等一系列文本分析.,拥有超过7000名用户,覆盖*敏*感*词*100多所大学,包括剑桥大学、北海道大学、北京大学、清华大学、香港城市大学、澳门大学等多所高校。下载地址:
RStudio是R语言的集成开发环境(IDE),其亮点在于出色的界面设计和编程辅助。它可以运行在多种平台上,包括windows、Mac、Ubuntu和网页版。另外,本软件是免费开源的,可以在官网下载:
7.1 Rostcm6实现:
打开软件ROSTCM6
这是处理前的文本内容。我们会从爬取的数据中只去除评论字段,然后将其保存为TXT格式。打开它如下。按照流程,我们会先去除重复和字符、英文、数字等项。
2、点击文本处理-一般处理-处理条件选择“retain only one for all repeated lines”和“delete all English characters contained in all lines”,去掉英文和数字等字符
这是处理后的文件内容,可以看到数字和英文都被删除了。
3、接下来进行分词。点击功能分析——分词(这里可以选择自定义词库,如搜狗词库等)
分词处理后的结果。简单观察一下,分词之后,出现了很多无意义的停用词,比如“in”、“under”、“one”等等
4. 接下来,我们过滤专有名词,停用词,统计词频。点函数分析——词频分析(中文)
在功能分析下,单击情绪分析以执行情绪分析。
并且可以实现云图的可视化。
7.2 R的实现
这里需要安装几个必要的包,因为几个包的安装比较复杂,这里是链接
可以参考这篇博客安装包。安装完成后,就可以开始R文本挖掘了。下面代码的说明文字较少,各个函数的作用初学者比较陌生。读者可以先阅读这些文章文章,了解各个函数的作用后,使用R进行文本挖掘。链接如下:
博客/档案/29060
直接
读完之后,进行下去就会清楚很多。
加载工作区库 (rJava)
图书馆(tmcn)
图书馆(Rwordseg)
图书馆(TM)
setwd("F:/数据和程序/chapter15/计算机实验")
data1=readLines("./data/meidi_jd_pos.txt", encoding = "UTF-8")
头(数据1)
数据
—————————————————————— #Rwordseg分词
data1_cut=segmentCN(data1, nosymbol=T, returnType="tm")
删除\n、英文字母、数字 data1_cut=gsub("\n", "", data1_cut)
data1_cut=gsub("[az]*", "", data1_cut)
data1_cut=gsub("\d+", "", data1_cut)
write.table(data1_cut, 'data1_cut.txt', row.names = FALSE)
Data1=readLines('data1_cut.txt')
Data1=gsub('\"', '', data1_cut)
长度(数据1)
头(数据1)
———————————————————————————— #Load workspace
图书馆(自然语言处理)
图书馆(TM)
图书馆(大满贯)
图书馆(主题模型)
R语言环境下的文本可视化与主题分析 setwd("F:/data and program/chapter15/computer experiment")
data1=readLines("./data/meidi_jd_pos_cut.txt", encoding = "UTF-8")
头(数据1)
停用词
停用词=停用词[611:长度(停用词)]
去掉空格、字母 Data1=gsub("\n", "", Data1)
Data1=gsub("[a~z]*", "", Data1)
Data1=gsub("\d+", "", Data1)
构建语料库 corpus1 = Corpus(VectorSource(Data1))
corpus1 = tm_map(corpus1, FUN=removeWords, stopwordsCN(stopwords))
创建文档术语矩阵 sample.dtm1
colnames(as.matrix(sample.dtm1))
tm::findFreqTerms(sample.dtm1, 2)
unlist(tm::findAssocs(sample.dtm1, '安装', 0.2))
——————————————————————–
# 主题模型分析
Gibbs = LDA(sample.dtm1, k = 3, method = "Gibbs", control = list(seed = 2015, burnin = 1000, thin = 100, iter = 1000))
最有可能的主题文档 Topic1
表(主题1)
每个主题的前 10 个 TermTerms1
条款1
—————————————————————————— #使用vec方法分词
图书馆(tmcn)
图书馆(TM)
图书馆(Rwordseg)
图书馆(文字云)
setwd("F:/数据和程序/chapter15/计算机实验")
data1=readLines("./data/meidi_jd_pos.txt", encoding = "UTF-8")
d.vec1
wc1=getWordFreq(unlist(d.vec1), onlyCN = TRUE)
wordcloud(wc1$Word,wc1$Freq,col=rainbow(长度(wc1$Freq)),min.freq = 1000)
#
八、结果展示及说明
这是分析的部分结果。可以看到,大部分客户的评论都带有正面的情绪,说明客户对美的热水器的满意度是比较高的。哪些方面满意,哪些方面不满意,哪些方面可以保持,哪些方面需要改进,这就需要我们另一种结果展示了。
点击可视化工具,得到词频云图。根据云图,我们可以看到客户最关心的点,也就是评论中提到较多的点。从图中可以看到“安装”、“师傅”、“配件”、“暖气”、“快”、“便宜”、“速度”、“品牌”、“京东”、“送货”、“服务” 、“价格”、“供暖”等关键词出现频率很高,我们可以大致猜到26
另外,值得注意的是,云图中还有一些“好”、“大”、“满意”等字眼。我们还不知道这些词背后的语义,所以我们需要找到相应的注释。,提取这些词对应的主题点,然后对分析结果进行优化
文|@白加黑治疗病
来源 | PPV类
原来的:
1个
出版与投稿
2个
编辑部招募新读者
现在我们的专栏“读书笔记”编辑部正在招募青年教师和*敏*感*词*加入我们的读书写作活动。入选阅读对象包括SSCI、CSSCI优秀论文和*敏*感*词*学术专着。每个成员都参与编辑小组讨论、文章写作、校对和编辑(其中许多是自愿的)。我们有一个8人的稳定团队,现在我们正在继续招募语言学、翻译学和文学领域的新人。由于读写任务压力大,围观者很快被淘汰。诚意欢迎有学术奉献精神的新人加盟。加入方式:微信添加公众号负责人:wonderdesire(请添加真实姓名,或实名入群:姓名-单位-研究方向)。对于其他业务联系人,请发送电子邮件至:
解读:文章图片提取工具(图片提取文本的工具有哪些)
目录:
1. 一个图片提取文字的工具
批量提取网站图片。使用图片提取工具从我们的网页中提取图片。图片批量提取工具具有图片过滤功能。通过设置图片大小范围,可以提取目标网站抓取的所有图片,而采集为文章采集,提取文章中的插图。
2.从图片中提取文章
批量提取网站图片工具,可以通过批量链接下载图片,导入我们的图片链接批量下载保存到本地,其次可以使用批量关键词采集,通过图片采集、文章采集、文章导出插图生成本地图片素材库,最后即可提取下载全站图片,输入目标链接地址即可,可以批量导出整站图片。
3. 文章 内容提取工具
4.图片提取文本文件
在我们的 网站 上重做视觉内容,包括信息图表、视频、图像和视觉元素 我们甚至可以决定更改 网站 的设计作为内容更新的一部分,只要我们认为它是好的当决定(例如,我们的 网站 设计看起来过时了)执行 文章 图像优化时,我们需要做的第一件事实际上是分析所有内容并选择要刷新的部分。
5.文档图像提取
为了更新和重新制作我们的内容,我们可以从最好的论文中聘请专业的作家并撰写网站,或者我们可以自己完成所有工作但是,在开始选择内容时,我们应该自己完成
6、图文提取工具有哪些?
为了帮助我们选择最好的内容来刷新,我们可以使用我们在 文章 图像优化过程中使用的优先级排序的基本原则: 检查 SEO 排名 - 检查不同内容的搜索引擎排名 它们是否在第一页?如果他们曾经在第一页上但掉到第二页或第三页,请关注这些部分。
7.图片提取文件软件
我们可能只需要进行一些更改即可使这些部分再次排在第一页上
8.图片文字提取
考虑我们的品牌——我们最近是否改变了我们的品牌?我们的听众与以前的听众有什么不同吗?如果是这种情况,请为我们的老观众找到内容,然后找到一种方法来更新或重新制作这些内容以与我们当前的观众相关 查看指标 - 我们可能正在跟踪很多指标,所以只需检查它们,我们就可以决定需要刷新的内容。
9.从文档中提取图片
浏览量、点赞数、评论数、分享数等都是需要更改哪些部分的良好指标。比如标题稍微改一下,就可以提高点击率
10、有什么工具可以从图片中提取文字
让自己成为领导者——如果我们想在自己周围建立某种品牌形象,让我们被视为我们领域的权威和思想领袖,那么我们绝对应该用新发现更新旧内容。自从我们发布这些文章文章 关于自以来新发现或开发的主题。
然后,向这些添加新信息
图片