基于hadoop的商品推荐引擎

本文介绍了基于Hadoop构建商品推荐引擎的过程,包括计算物品的相似度矩阵、使用协同过滤算法以及通过用户购买向量进行推荐。项目名为GRES,详细步骤涉及数据处理、配置文件、编程实现,并给出了推荐系统的准确率和覆盖率评估指标。
摘要由CSDN通过智能技术生成

基于Hadoop的商品推荐系统

推荐:
基于特征:
基于行为:
基于物品:
基于用户:不确定性

使用协同过滤算法
相似度计算方式:
1.欧式距离:(x1,y1)(x2,y2)(x3,y3),比较三点距离,越近越相似
在这里插入图片描述在这里插入图片描述
2.余弦夹角

在这里插入图片描述

3.共现矩阵
物品的相似度:物品共现次数
在这里插入图片描述
在这里插入图片描述
这个项目我是计算
推荐结果=用户的购买向量*物品的相似度矩阵

物品的相似度:物品的共现次数

1.项目名:GRES【Goods Recommend Engine System】
2.添加Maven依赖:pom.xml
3.创建包:
com.briup.bigdata.project.gres
|–step1
|–step2
|–…
|–utils
4.将集群上的四个xml配置文件放到resources目录中。
5.在HDFS集群的根目录下创建目录:
/gres
|–rawdata
|-----matrix.txt
|–step1
|–…
6.开始编程。
原始数据:(部分数据,这里为了方便我将用户评价分数改为是否购买,1是指购买)
10001 20001 1
10001 20002 1
10001 20005 1
10001 20006 1
10001 20007 1
10002 20003 1
10002 20004 1
10002 20006 1
10003 20002 1
10003 20007 1
10004 20001 1
10004 20002 1
10004 20005 1
10004 20006 1
10005 20001 1
10006 20004 1
10006 20007 1

a.计算用户购买商品的列表
    类名:UserBuyGoodsList.java

          UserBuyGoodsList
          UserBuyGoodsListMapper
          UserBuyGoodsListReducer
    结果数据:
    10001	20001,20005,20006,20007,20002
    10002	20006,20003,20004
    10003	20002,20007
    10004	20001,20002,20005,20006
    10005	20001
    10006	20004,20007

b.计算商品的共现关系
    文件:GoodsCooccurrenceList.java

    类名:GoodsCooccurrenceList
          GoodsCooccurrenceListMapper
          GoodsCooccurrenceListReducer
    数据来源:第1步的计算结果
    计算结果:
        20001	20001
        20001	20001
        20001	20002
        20001	20005
        20001	20006
        20001	20007
        20001	20001
        20001	20006
        20001	20005
        20001	20002
        20002	20007
        20002	20001
        20002	20005
        20002	20006
        20002	20007
        20002	20002
        20002	20006
        20002	20005
        20002	20002
        20002	20001
        20002	20002
        20003	20003
        20003	20004
        20003	20006
        20004	20004
        20004	20007
        20004	20004
        20004	20006
        20004	20003
        20005	20002
        20005	20006
        20005	20005
        20005	20001
        20005	20005
        20005	20006
        20005	20007
        20005	20001
        20005	20002
        20006	20005
        20006	20003
        20006	20004
        20006	20001
        20006	20002
        20006	20006
        20006	20002
        20006	20006
        20006	20007
        20006	20006
        20006	20001
        20006	20005
        20007	20006
        20007	20004
        20007	20007
        20007	20002
        20007	20007
        20007	20005
        20007	20001
        20007	20002
        20007	20007

c.计算商品的共现次数(共现矩阵)
    文件:GoodsCooccurrenceMatrix.java

    类名:GoodsCooccurrenceMatrix
          GoodsCooccurrenceMatrixMappper
          GoodsCooccurrenceMatrixReducer
    数据来源:第2步的结果
    计算结果:
        20001	20001:3,20002:2,20005:2,20006:2,20007:1
        20002	20001:2,20002:3,20005:2,20006:2,20007:2
        20003	20003:1,20004:1,20006:1
        20004	20003:1,20004:2,20006:1,20007:1
        20005	20001:2,2
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值