本文主要是介绍【甘道夫】Mahout推荐算法编程实践,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
引言
Taste是曾经风靡一时的推荐算法框架,后来被并入 Mahout中,Mahout的部分推荐算法基于Taste实现。
下文介绍基于Taste实现最常用的UserCF和ItemCF。
本文不涉及 UserCF和ItemCF算法的介绍,这方面网上资料很多,本文仅介绍如何基于Mahout编程实现。
欢迎转载,请注明来源:
http://blog.csdn.net/u010967382/article/details/39183839
步骤一:构建数据模型
UserCF和ItemCF算法的输入数据是用户偏好,用户偏好数据可以有两种形式:
- 包含用户对目标评分的【用户ID,itemID,评分】
- 不包含评分的【用户ID,itemID】
推荐算法的第一步是基于数据源构建数据模型, Taste构建数据模型的数据源可以有很多,比如JDBC,文件等。
下面仅介绍最常用的文件数据源:
- 用户偏好数据包含评分
示例代码:
DataModel dm = new FileDataModel(new File("E:\\testdata\\3columns"));
- 用户偏好数据不包含评分
示例代码:
DataModel dm = new GenericBooleanPrefDataModel(
GenericBooleanPrefDataModel
.toDataMap<
这篇关于【甘道夫】Mahout推荐算法编程实践的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!