协同过滤用于图书推荐(Java版)
发布时间
阅读量:
阅读量
0. 协同过滤算法简介
协同过滤(Collaborative Filtering)本质上是借助兴趣一致、具有相似经历的群体偏好,向用户推荐其可能感兴趣的内容。依据关注焦点的不同,协同过滤算法可划分为以下三类:
基于用户的协同过滤(User-based): 通过统计相似性方法,识别出与目标用户兴趣相近的其他用户,并据此推荐这些相似用户所偏好的项目。
基于项目的协同过滤(Item-based): 该方法遵循“能够吸引用户关注的项目,往往与其先前评分较高的项目存在相似性”的原则,通过计算项目间的相似度来替代用户间的相似度分析。
基于模型的协同过滤(Model-based): 利用历史数据构建预测模型,并借助该模型对未来情况进行推断。
在mllib中实现了基于模型的协同过滤技术,采用als算法完成模型训练过程。
1. 数据源
book-crossing数据集:
http://www2.informatik.uni-freiburg.de/~cziegler/BX/
该数据集由三个独立文件组成
评分信息文件:"User-ID";"ISBN";"Book-Rating"
图书相关信息文件:"ISBN";"Book-Title";"Book-Author";"Year-Of-Publication";"Publishe
全部评论 (0)
还没有任何评论哟~
