基于Hbase的用户评分协同过滤推荐算法

作者: 张保维 2012-1-3

一、 概述

本文为推荐引擎设计的基础篇,介绍基于hbase 存储方式用户评分的方式进行推荐的主体算法及在分布式平台环境下的实现。由于推荐算法分支众多,我们先从简单及实用的算法进行设计。其它更加复杂算法及实现将会在后面的相关设计中进行说明。

二、 相关知识

(一) Hadoop与MapReduce

Hadoop在本文中所起到的作用只是一个系统支撑作用,由于hbase基于Hadoop的事实,所以,hadoop是本文功能实现的一个必要条件。MapReduce是一个用于分布运算的编程模型,同时也是运行本文中核心功能的载体。

关于 hadoop 及 MapReduce知识参见 附录。

(二) Hbase

HBase – Hadoop Database,是一个高可靠性、高性能、面向列、可伸缩的分布式存储系统,利用HBase技术可在廉价PC Server上搭建起大规模结构化存储集群。

同时Hbase对外提供了Thrift接口,可以在外部进行方便的访问。可以提供实时在线的访问功能。

由于Hbase 基于hadoop 产品族,所以Hbase具体天然的优势,可以直接利用MapReduce的优势。

基于如上原因,我们把用户评分存储于hbase , 在HBase中可以建立一个Row 为用户编号, Column为产品编号,值为用户评分的大表结构。同时,HBase为稀疏存储,也可以节省存储空间。

(三) 协同过滤

协同过滤是分析用户兴趣,在用户群中找到指定用户的相似(兴趣)用户,综合这些相似用户对某一信息的评价,形成系统对该指定用户对此信息的喜好程度预测。

协同过滤是使用了集体智慧,不是传统意义上的人工干预的,受限于人的情感因素,商业因素的推荐方式。

三、 功能需求

四、 设计

五、 实验结果

六、 扩展功能

七、 参考

1. Hadoop : http://baike.baidu.com/view/908354.htm

2. MapReduce : http://zh.wikipedia.org/wiki/MapReduce

3. 奇艺升级推荐引擎提升转化率:http://www.sootoo.com/content/221739.shtml

4. HBASE:http://www.searchtb.com/2011/01/understanding-hbase.html

5. 协同过滤:http://baike.baidu.com/view/981360.htm

6.

转载于:https://www.cnblogs.com/zbw911/archive/2012/01/05/2313205.html

基于Hbase的用户评分协同过滤推荐算法相关推荐

  1. 协同过滤算法_基于用户的协同过滤推荐算法原理和实现

    (给算法爱好者加星标,修炼编程内功) 来源:Create Chen's Blog https://www.cnblogs.com/technology/p/4467895.html 在推荐系统众多方法 ...

  2. python协同过滤可以预测吗_基于用户的协同过滤推荐算法原理-附python代码实现...

    在推荐系统众多方法中,基于用户的协同过滤推荐算法是最早诞生的,原理也较为简单.该算法1992年提出并用于邮件过滤系统,两年后1994年被 GroupLens 用于新闻过滤.一直到2000年,该算法都是 ...

  3. 基于用户的协同过滤推荐算法原理和实现

    在推荐系统众多方法中,基于用户的协同过滤推荐算法是最早诞生的,原理也较为简单.该算法1992年提出并用于邮件过滤系统,两年后1994年被 GroupLens 用于新闻过滤.一直到2000年,该算法都是 ...

  4. 基于用户的协同过滤推荐算法原理和实现分析

    本文转载自nieson  基于用户的协同过滤推荐算法原理和实现 在推荐系统众多方法中,基于用户的协同过滤推荐算法是最早诞生的,原理也较为简单.该算法1992年提出并用于邮件过滤系统,两年后1994年被 ...

  5. (一)基于用户的协同过滤推荐算法原理和实现

    在推荐系统众多方法中,基于用户的协同过滤推荐算法是最早诞生的,原理也较为简单.该算法1992年提出并用于邮件过滤系统,两年后1994年被 GroupLens 用于新闻过滤.一直到2000年,该算法都是 ...

  6. 基于音乐/电影/图书的协同过滤推荐算法代码实现(基于用户推荐、基于项目推荐、基于SlopeOne算法推荐、基于SVD算法推荐、混合加权推荐)

    基于音乐/电影/图书的协同过滤推荐算法代码实现(基于用户推荐.基于项目推荐.基于SlopeOne算法推荐.基于SVD算法推荐.加权混合推荐) 一.开发工具及使用技术 MyEclipse10.jdk1. ...

  7. mysql数据推荐算法_Java+Mysql实现简单在线电影、音乐、图书推荐系统 基于用户的协同过滤推荐算法实现 源代码下载...

    # Java+Mysql实现简单在线电影.音乐.图书等推荐系统(基于用户的协同过滤推荐算法) 一.项目简介 1.开发工具和实现技术 MyEclipse10,jdk1.7,mysql5.5,tomca ...

  8. Java+Jsp+Mysql实现简单在线图书推荐系统 个性化图书推荐系 java实现基于用户的协同过滤推荐算法 源代码下载 算法实现 Spring+Struts+Hibernate(SSH)开发框架

    Java+Jsp+Mysql实现简单在线图书推荐系统 个性化图书推荐系统(基于用户的协同过滤推荐算法) 一.项目简介 1.开发工具和实现技术 MyEclipse10,jdk1.7,mysql5.5,t ...

  9. Python实现基于用户的协同过滤推荐算法构建电影推荐系统

    说明:这是一个机器学习实战项目(附带数据+代码+文档+视频讲解),如需数据+代码+文档+视频讲解可以直接到文章最后获取. 1.项目背景 基于用户的协同过滤推荐(User-based CF)的原理假设: ...

最新文章

  1. Weblogic 集群部署说明 --转
  2. EXCEL导入导出使用的框架
  3. matlab删失数据威布尔,基于混合I型删失数据威布尔模型的可接受抽样计划
  4. python安卓自动化实现方法_uiautomator +python 实现安卓UI自动化
  5. java删除xml文件中尖括号之外的内容
  6. 金银岛(信息学奥赛一本通-T1225)
  7. 吴恩达深度学习4.4练习_Convolutional Neural Networks_Face Recognition for the Happy House
  8. 高德地图联手中国气象局,积水地图 AI 版实时预测道路积水
  9. RMAN 系列(四) ---- RMAN 备份
  10. mysql 截取 效率,MySQL 随机函数获取数据速度和效率分析
  11. 深度学习框架间互操作的工具:MMdnn
  12. 信号与系统——傅里叶变换
  13. 个税系统代理服务器参数是什么,个税系统网络参数设置服务器地址
  14. 创建一个简单的后台教务管理系统,包含动态增删改查学生,年级和课程信息及查看登录日志等功能,包含表单验证.
  15. Oracle数据库网络详解
  16. mysql insert 返回值是什么_各种SQL Insert 返回值
  17. Latex---IEEE论文写作
  18. 桌面linux imx6q,SAIL-IMX6Q添加qt桌面应用程序
  19. 关于OPENSSL的EVP函数的使用
  20. python plc_基于python的西门子plc数据采集系统

热门文章

  1. 小程序 --- 项目小练手Ⅰ
  2. es6 --- 对任意对象部署可遍历接口
  3. 《众妙之门——网页排版设计制胜秘诀》——3.4 展现品牌视觉的同时保持网页的可读性...
  4. Java this关键字
  5. Keras 深度学习框架中文文档
  6. 如何理解 Objective-C Delegate
  7. iphone3G恢复到3.1.2遇到的问题
  8. Linux下怎么改分辨率和刷新率?
  9. 定制一个网络文件系统
  10. IC设计常见设计思想