原理:item相似矩阵*user对item喜好矩阵 得到 预测的user对所有item的喜好矩阵(推荐度),排列取高
Recommender程序实现(初):
CardID:卡号,对应于用户
ShopID:店铺标识
步骤1:
消费记录文件作为输入,生成用户(银行卡)数据、评分
MAP
在消费记录文件中,提取CardID、ShopID
输入:(Long,String),Long表示文件中的位置,String表示该行的消费记录
输出:(CardID,ShopID),如98955/ 590
REDUCE
先对每个用户统计ShopID,再跟据评分系统评分
输出:(CardID,Vector),Vector中存放该用户消费过的所有商铺和评分。如
98955/ [590:3.0, 22:4.0, 9059:1.0]
步骤2
步骤1的结果文件作为输入,衡量店铺的相关程度
MAP
输入:(CardID,Vector),如98955/ [590:3.0, 22:4.0, 9059:1.0]
输出:(ShopID1,【ShopID2:s12】),s12表示12的相关程度,如590/[22:12.0]
REDUCE
对每个店铺统计其他店铺的相关度
输出:(ShopID1,Vector),Vector中存放其他店铺和该店铺的相关度。如
590/[22:12.0,95:1.0,...,9059:3.0,...]
步骤3