public class myMahout {
public static void main(String args[]) throws Exception {
DataModel model = new FileDataModel(new File("C:/total.csv")); // 选择数据文件MovieLen
RecommenderEvaluator evaluator = new AverageAbsoluteDifferenceRecommenderEvaluator();
RecommenderBuilder builder = new RecommenderBuilder() {
@Override
public Recommender buildRecommender(DataModel model)
throws TasteException {
UserSimilarity similarity = new PearsonCorrelationSimilarity(
model); // 选择相似度计算方法
UserNeighborhood neighborhood = new NearestNUserNeighborhood(
10, similarity, model); // 10 表示邻居数目
return new GenericUserBasedRecommender(model, neighborhood,
similarity);
}
};
double score = evaluator.evaluate(builder, null, model, 0.8, 1.0); // 80%的训练集合,100%的原始数据
System.out.println(score);//MAE
}
}
刚收到 mahout in action,45刀, mahout 做协同过滤推荐时间效率非常高,但是精度却比较差,只能依靠自己重写推荐算法吗?
分享到:
相关推荐
Mahout提供了基于用户的协同过滤(User-Based Collaborative Filtering)和基于物品的协同过滤(Item-Based Collaborative Filtering)算法。 4. **关联规则学习(Association Rule Learning)**:例如Apriori算法...
1. **推荐系统**:Mahout提供了一系列推荐算法,如基于用户的协同过滤(User-Based Collaborative Filtering)、基于物品的协同过滤(Item-Based Collaborative Filtering)等。这些算法能够根据用户的历史行为数据预测...
Mahout提供了一系列推荐算法,包括用户基于物品的协同过滤、基于模型的推荐系统等。这些算法可以根据用户的过往行为和偏好,推断出用户可能感兴趣的新商品或内容。学习推荐系统时,Mahout是极佳的参考资料,因为它的...
#### 描述:Mahout in Action 英文完整版(2012),自然语言处理,协同过滤,推荐引擎,聚类,分类 - **自然语言处理**:自然语言处理(Natural Language Processing, NLP)是计算机科学领域与人工智能领域中的一个...
在书中,作者首先介绍了Mahout的基本概念,指出它是一个机器学习库,特别关注协同过滤、聚类和分类这三个核心功能。协同过滤常用于推荐系统,通过分析用户行为和偏好来预测他们可能感兴趣的内容;聚类则是将数据分组...
它实现的算法都被归入机器学习或者集体智慧的范畴,但是在这里Mahout主要注重协同过滤/推荐引擎、聚类和分类。 Mahout是可伸缩的。Mahout致力于实现海量数据,单机无法处理情况下的机器学习工具。在目前阶段,这种...
接下来,书中详细讲解了如何在Mahout中实施这些算法,如朴素贝叶斯分类器、K均值聚类和协同过滤推荐。 在Hadoop的支持下,Mahout能够处理海量数据。Hadoop是一个分布式计算框架,它允许数据在多台服务器上并行处理...
Making recommendations**:重点介绍Mahout提供的各种推荐算法,如基于用户的协同过滤、基于物品的协同过滤、矩阵分解方法等,并通过实际例子演示如何使用这些算法。 - **5. Taking recommenders to production**:...
### Mahout In Action – 关键知识点解析 #### 一、Mahout概述 - **起源与发展**:Mahout作为Apache基金会下的一个开源项目,专注于提供可扩展的机器学习库。其核心算法涵盖了机器学习的主要领域,包括但不限于协同...
Mahout提供了多种协同过滤算法,包括基于用户的协同过滤和基于物品的协同过滤。 - **聚类**:是指将数据集中的对象分成不同的组或簇,使得同一簇内的对象相似度较高,而不同簇间的相似度较低。Mahout提供的聚类算法...
- **推荐系统**:Mahout提供了一系列推荐算法,包括基于用户的协同过滤、基于物品的协同过滤等。 - **聚类算法**:包括k-means、Canopy等,用于自动对数据进行分组。 - **分类**:提供多种机器学习算法用于预测类别...
### Mahout in Action 2(完整版):关键知识点概览 #### 一、书籍简介与作者信息 《Mahout in Action 2》是一本全面介绍Apache Mahout框架的著作,由Sean Owen、Robin Anil、Ted Dunning和Ellen Friedman共同编写...
Mahout的目标是提供可扩展的机器学习算法,特别是聚焦于协同过滤、聚类和分类这三个核心主题。由于其与Apache Hadoop的紧密集成,Mahout能够处理大数据集,实现分布式机器学习。 【推荐系统引擎】推荐系统是Mahout...