Advertisement

协同过滤用于图书推荐(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)

还没有任何评论哟~