大数据处理实例——Amazon商品评分&评论(一)

概述

在积累了一定的主流大数据分析工具(Hadoop, Spark, Storm, HBase等)的基础知识后,加之以前学习和工作中积累的机器学习和分布式的相关经验,想着尝试一下自己对一个大数据案例完整的分析实践一遍。因此本文所述观点更多的是对自己这一个多月的大数据知识体系的学习的总结和实践,仅供参考。

准备工作

一、 案例筛选

个人在这一阶段主要考虑了以下几个方面:

  • 数据真实性:无论是自己采集真实数据还是使用开源的供分析数据,希望这是一次真正有意义的实践
  • 覆盖知识点:希望是可以把之前学习的知识点基本都串联起来的一次完整实践
  • 可实现性:就个人当前技能(前端知识空白)而言,是可以实现的
  • 个人兴趣:希望可以借机温习下以前对机器学习算法和自然语言处理的理解

综合以上因素,我选择了Amazon商品评分&评论这个案例,其实网上也没有关于这个案例的讨论,只是自己在网上找到了Amazon商品评论相关的开源数据和以此为基础的数据分析论文后,决定结合主流大数据分析工具做这么一个案例实践的。

二、资料收集

这里提供两个开源数据索引,一个是自己使用的是Stanford公开的Amazon商品评论信息数据源,另一个是更加全面的整理的比较好的开源数据索引。有需要的同学可以自行下载需要的数据,构建自己想要的案例实践

由链接可知,Stanford已经对Amazon商品评论按照商品类型进行了分类。为了简化实践,本次只针对乐器类商品评论进行分析,主要参考的数据分析论文:
J. McAuleyHidden and J. Leskovec, Factors and Hidden Topics:Understanding Rating Dimensions with Review Text, ACM, 2013

案例分析

目标及使用场景:

这个案例想要的目标是希望通过用户评分和用户评论信息构建商品的主题模型以及用户感兴趣的主题模型,并以此来做一些推荐和预测的工作,个人想到的该案例可以实现的目标如下:

  • 根据用户评论,学习出某一类商品评论的主题模型
  • 根据用户评分和评论,学习出用户相似度模型
  • 对有少量用户评论的新商品,根据主题和相似用户进行推荐

需求分解:

  1. 根据所有评论构建乐器类商品的主题模型(Top K的主题及其对应单词)
  2. 归纳用户的每一条评论文本到相应的主题
  3. 根据用户对商品的评分和评价主题,学习用户评分-主题模型
  4. 根据用户评分-主题模型,找出用户感兴趣主题
  5. 根据用户感兴趣主题,建立用户相似度模型
  6. 对有少量用户评论的新商品,归纳其所属主题,根据用户评分-主题模型,预测每个用户对其评分
  7. 对有少量用户评论的新商品,根据其评价用户及用户相似度模型,找出感兴趣的用户
  8. 综合6和7的分析结果,对特定用户推荐该商品

详细分析

  1. 商品的主题模型可以通过LDA模型学习出来,这里使用Spark MLlib中的LDA Module实现。使用该模型的前提是要构建出评论文本的词频向量,这就需要对评论文本进行分词,去停用词,词频统计等。本人考虑是使用Storm来对每一条评论文本做这些实时预处理工作,并将预处理结果存到HBase中。
  2. 在已知商品主题模型(主题–单词列表)及评论的词频向量后,可以很容易的通过TF-IDF余弦相似度将其归纳到与之有最高相似度的主题
  3. 参考论文中给出的HFT模型及主要参数含义如下:
符号 含义
ru,i 实际的用户 u 对商品 i 的评分
rec(u,i) 预测的用户 u 对商品 i 的评分
α 全局因子
βu 用户 u 的偏移参数
  • 5
    点赞
  • 60
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值