数据分享|R语言豆瓣数据文本挖掘 神经网络、词云可视化和交叉验证

简介: 数据分享|R语言豆瓣数据文本挖掘 神经网络、词云可视化和交叉验证

全文链接:http://tecdat.cn/?p=31544


在网络技术高速发展的背景下,信息纷乱繁杂,如何能够获得需要的文本信息,成了许多企业或组织关注的问题点击文末“阅读原文”获取完整代码数据


该项目以采集的豆瓣电影评论数据查看文末了解数据免费获取方式为例,使用R语言和神经网络算法,对文本挖掘进行全流程的分析,包括对其特征及其子集进行提取,并对文本进行词云可视化和分类处理,同时采用交叉验证方法对模型进行调整,从而预测有关评论的类型,并将其作为电影推荐的一个标准。


电影评论数据



查看数据


head(pinglun1)


文本预处理


#剔除通用标题   
res=(pattern="NIKEiD"," ",res);    
res=(pattern="http://t.cn/"," ",res);  
res=(pattern="com"," ",res);


中文分词技术


不同于英文每一个单词具有明确的划分标准,中国的汉字博大精深、历史悠久。一个词语或者一句话在不同的语境里有多种切分方式,并且随着网络用词的不断更新,许多具有现时意义的词语并不能为计算机所识别。

keyword=(X=res, FUN=segmentCN)


绘制词汇图


词云不仅能够形象的将文本的主要内容进行呈现,清晰明了地展示出在一个测试集里面最为重要的关键词,同时也可以检验停用词的处理环节是否完善,因为如果不完善,词云中会不可避免地出现一些无意义的单个词。

mycolors <- brewer.pal(8,"Dark2")#设置一个颜色系:
wordcloud(d$word,d$freq,random.order=FALSE,random.color=FALSE,colors=

点击标题查阅往期内容


【视频】文本挖掘:主题模型(LDA)及R语言实现分析游记数据


01

02

03

04


unique(words)
##    [1] "通过"             "亲"               "父"               
##    [4] "养父"             "岳父"             "人物"             
##    [7] "关系"             "构"               "写"               
##   [10] "一部"             "编"               "有"


转换成词频矩阵


由于计算机比较擅于处理电子表格、数据库这样的结构化数据,但是文本是人类的语言,所以将非结构化的文本转变成结构化的数据是非常必要的。

for(i in  1:nrow(cldata)){  
  for(j in  unique(d$word) ){  
    if(j %in%  unlist(key
    
    
##        故事 电影 一个 喜欢 父亲 童话 因为 这个 一部 时候 没有 知道 生活  
##   [1,]    0    0    0    0    0    0    0    0    1    0    0    0    0  
##   [2,]    0    0    0    0    0    0    0    0    0    0    0    0    0  
## [594,]    0  
## [595,]    0  
## [596,]    0  
## [597,]    0  
## [598,]    0  
## [599,]    0  
## [600,]    0


神经网络


nn <-  (c(label$V1)[samp]~cldata[samp,],size=10,decay=0.01,maxit=1000,l


预测分类结果


yy <- round(predict(nn, cldata))


分类混淆矩阵


table(yy,label[1:500,])


十折交叉验证


利用for循环,将参数依次赋值并对每一个结果求平均值。

k=10  
for(kk in 1:k){  
  index=sample(1:length(data),floor(length(data)*(1/k)),replace=F)#得到测试样本样本号  
  test=as.data.frame(cldata[index,])#提取测试集  
  train=as.data.frame(cldata[-index,])#提取训练集

结论


本次项目是基于豆瓣电影评论对文本挖掘的整个流程进行阐释,对文本进行了分词、文本向量化等一系列操作。项目还需要进一步地完善。首先因文本挖掘的技术手段不如数据挖掘成熟,其次就是在不同的项目中适用的方法和模型也是不同的,比如当改变算法或者参数的时候,会导致准确率发生变化,所以在处理这个项目的时候,需要注意的是,对于运用哪种方法和建立哪种模型必须进行充分的思考和实验,从而得出比较科学的支撑依据。

当然就本项目来说,也存在和其他文本挖掘项目相同的问题——分词库和停用词库不完善,所以文本挖掘这一领域仍需要大量的探索和实践,未来的研究中应该更加关注数据本身的质量和真实性并完善词典的构建。通过这个项目可以看出文本挖掘在网络评价分析方面发挥了很重要的作用,目前有很多组织或企业通过文本挖掘来提取相关产品的客户反馈,并提高自身的产品质量和服务水平。尽管这种方式还没有很完善,但是当其得到更加广泛的推广后,其中包含的技术也一定会越来越完善。相信当这种方式走向成熟时,其会广泛地应用于更多的领域,例如商品贸易、新闻出版、医疗和教育等等,那么我们的生活也会获得更多的便利。

参考文献:

[1] 张公让,鲍超,王晓玉,等.基于评论数据的文本语义挖掘与情感分析 [J].情报科学,2021,39(5):53-61.

[2] 王继成,潘金贵,张福炎.Web文本挖掘技术研究 [J].计算机研究与发展,2000(5):513-520.

相关文章
|
4月前
|
数据采集 机器学习/深度学习 数据可视化
R语言从数据到决策:R语言在商业分析中的实践
【9月更文挑战第1天】R语言在商业分析中的应用广泛而深入,从数据收集、预处理、分析到预测模型构建和决策支持,R语言都提供了强大的工具和功能。通过学习和掌握R语言在商业分析中的实践应用,我们可以更好地利用数据驱动企业决策,提升企业的竞争力和盈利能力。未来,随着大数据和人工智能技术的不断发展,R语言在商业分析领域的应用将更加广泛和深入,为企业带来更多的机遇和挑战。
|
4月前
R语言基于表格文件的数据绘制具有多个系列的柱状图与直方图
【9月更文挑战第9天】在R语言中,利用`ggplot2`包可绘制多系列柱状图与直方图。首先读取数据文件`data.csv`,加载`ggplot2`包后,使用`ggplot`函数指定轴与填充颜色,并通过`geom_bar`或`geom_histogram`绘图。参数如`stat`, `position`, `alpha`等可根据需要调整,实现不同系列的图表展示。
|
4月前
|
数据采集 数据可视化 数据挖掘
R语言在金融数据分析中的深度应用:探索数据背后的市场智慧
【9月更文挑战第1天】R语言在金融数据分析中展现出了强大的功能和广泛的应用前景。通过丰富的数据处理函数、强大的统计分析功能和优秀的可视化效果,R语言能够帮助金融机构深入挖掘数据价值,洞察市场动态。未来,随着金融数据的不断积累和技术的不断进步,R语言在金融数据分析中的应用将更加广泛和深入。
|
5月前
|
数据采集 存储 数据可视化
R语言时间序列分析:处理与建模时间序列数据的深度探索
【8月更文挑战第31天】R语言作为一款功能强大的数据分析工具,为处理时间序列数据提供了丰富的函数和包。从数据读取、预处理、建模到可视化,R语言都提供了灵活且强大的解决方案。然而,时间序列数据的处理和分析是一个复杂的过程,需要结合具体的应用场景和需求来选择合适的方法和模型。希望本文能为读者在R语言中进行时间序列分析提供一些有益的参考和启示。
|
3月前
|
数据挖掘 C语言 C++
R语言是一种强大的统计分析工具,提供了丰富的函数和包用于时间序列分析。
【10月更文挑战第21天】时间序列分析是一种重要的数据分析方法,广泛应用于经济学、金融学、气象学、生态学等领域。R语言是一种强大的统计分析工具,提供了丰富的函数和包用于时间序列分析。本文将介绍使用R语言进行时间序列分析的基本概念、方法和实例,帮助读者掌握R语言在时间序列分析中的应用。
62 3
|
8月前
|
数据可视化 数据挖掘 API
【R语言实战】聚类分析及可视化
【R语言实战】聚类分析及可视化
|
8月前
|
机器学习/深度学习 数据可视化
R语言逻辑回归logistic模型ROC曲线可视化分析2例:麻醉剂用量影响、汽车购买行为2
R语言逻辑回归logistic模型ROC曲线可视化分析2例:麻醉剂用量影响、汽车购买行为
|
5月前
|
机器学习/深度学习 数据采集 数据可视化
R语言在数据科学中的应用实例:探索与预测分析
【8月更文挑战第31天】通过上述实例,我们展示了R语言在数据科学中的强大应用。从数据准备、探索、预处理到建模与预测,R语言提供了完整的解决方案和丰富的工具集。当然,数据科学远不止于此,随着技术的不断发展和业务需求的不断变化,我们需要不断学习和探索新的方法和工具,以更好地应对挑战,挖掘数据的潜在价值。 未来,随着大数据和人工智能技术的普及,R语言在数据科学领域的应用将更加广泛和深入。我们期待看到更多创新的应用实例,为各行各业的发展注入新的动力。
|
5月前
|
资源调度 数据挖掘
R语言回归分析:线性回归模型的构建与评估
【8月更文挑战第31天】线性回归模型是统计分析中一种重要且实用的工具,能够帮助我们理解和预测自变量与因变量之间的线性关系。在R语言中,我们可以轻松地构建和评估线性回归模型,从而对数据背后的关系进行深入的探索和分析。
|
5月前
|
机器学习/深度学习 数据采集
R语言逻辑回归、GAM、LDA、KNN、PCA主成分分类分析预测房价及交叉验证
上述介绍仅为简要概述,每个模型在实施时都需要仔细调整与优化。为了实现高度精确的预测,模型选择与调参是至关重要的步骤,并且交叉验证是提升模型稳健性的有效途径。在真实世界的房价预测问题中,可能还需要结合地域经济、市场趋势等宏观因素进行综合分析。
93 3