基于评论、新闻的情感倾向分析作商品的价格预测

实验环境

 ●  操作系统:Windows、Linux
 ●  语言环境:Python、MATLAB、java
 ●  实验工具:NLTK、sklearn、MATLAB2015b、Pycharm

 ●  服务器: tomcat

用开源框架Scrapy分析Xpath路径抓取中关村报价网站

上述文件中product文件夹是定制好抓取电子产品价格的数据采集器,MySQL建立数据库见文件

应用scrapy爬虫框架,定制爬虫抓取中关村报价产品的价格数据并且存储于MySQL数据库中

1.其中的过程是分析网页的Xpath路径,根据要获取的数据的路径定位到价格数据(可以分析不同的网站数据抓取)

2.存储数据打MySQL数据库中,主要是方便操作和使用

scrapy startproject tutorial
基于评论、新闻的情感倾向分析作商品的价格预测

爬虫名字可以随意设定,同时设定采集器在服务器上能够定时采集数据这里定制bat文件。 锁定域名范围为:zol.com分析URL中正则表达式如下:http://detail.zol.com.cn/cell_phone/index****.shtml

最后将采集到的数据存储到MySQL数据库中如下图:

基于评论、新闻的情感倾向分析作商品的价格预测

如果是在Linux服务器上做该定时任务只需要按照需要编写crontab即可。

爬虫定制方法以及网页分析

这里为了处理抓取新闻数据时候需要处理动态页面的信息采用了beautifulsoup,通过调用相关接口处理JS页面。 为保证数据的全面性而选取了百度新闻,同样需要分析页面源码的Xpath路径,为了剔除网页的标签,需要同上的路径分析。 最后可以通过用户提供的关键词获取新闻数据,效果如下图所示:

基于评论、新闻的情感倾向分析作商品的价格预测

获得的新闻数据如下:

基于评论、新闻的情感倾向分析作商品的价格预测
文本分析

 ●  为了便于处理需要对文本做一个分句处理过程,方便对文本的情感倾向分析以及特征提取。
 ●  本系统是建立在可信文本的条件下做情感倾向因素分析,所以首先需要对文本做可信分类,故需要提取分析的特征:包括文本的词长度、品牌出现次数、分成句子总数、和标准描述相似度、正负面概率得分等特征详细见源码文件*feature文件夹内容
 ●  在分类过程中这里对比了9个分类方法:
 ●  svm.SVC(gamma=0.001, C=100.)
 ●  svm.SVR()
 ●  LogisticRegression(penalty='l2', tol=0.001)
 ●  tree.DecisionTreeClassifier()
 ●  GaussianNB()
 ●  BernoulliNB()
 ●  RandomForestClassifier(n_estimators=20, max_depth=None, min_samples_split=1, random_state=0)
 ●  GradientBoostingClassifier(n_estimators=20)
 ●  AdaBoostClassifier(tree.DecisionTreeClassifier(max_depth=1),algorithm="SAMME",n_estimators=200)

通过分析对比发现随机森林分类效果最好。

最终特征如下图所示:

基于评论、新闻的情感倾向分析作商品的价格预测

再根据情感程度匹配来计算文本的情感倾向得分:在情感词典这里采用了知网基础情感词、和自己通过语料和搜索引擎得到的领域情感词(详细描过程见源码)最终得到该品牌下的情感倾向因素得分如下图:

基于评论、新闻的情感倾向分析作商品的价格预测

图中分别是积极消极得分和平均分以及方差。

基于情感因素预测模型

模型建立过程详细见论文描述,最后得到各个模型的实验系统如图所示:

基于评论、新闻的情感倾向分析作商品的价格预测

基于研究算法Android应用软件

基于应用上述研究的算法对电子产品的价格作出预测后,在Android系统开发应用软件增加研究的实际意义展示效果如下:

基于评论、新闻的情感倾向分析作商品的价格预测基于评论、新闻的情感倾向分析作商品的价格预测

单个商品的预测趋势如下图所示:

基于评论、新闻的情感倾向分析作商品的价格预测

最后提供部分本系统接口

 ●  语料填充
 ●  文档路径
 ●  定制主题
 ●  全自动采集数据
 ●  模型更改

 ●  应用软件更改


原文发布时间为:2018-09-20

本文来自云栖社区合作伙伴“大数据挖掘DT机器学习”,了解相关信息可以关注“大数据挖掘DT机器学习”。