gpt4 book ai didi

java - Apache Mahout 没有给出任何建议

转载 作者:行者123 更新时间:2023-11-29 04:31:56 25 4
gpt4 key购买 nike

我正在尝试使用 mahout 进行推荐但没有成功

我的数据集:

0,102,5.0
1,101,5.0
1,102,5.0

代码:

      DataModel datamodel = new FileDataModel(new File("dataset.csv"));
// Creating UserSimilarity object.
UserSimilarity usersimilarity = new PearsonCorrelationSimilarity(datamodel);

// Creating UserNeighbourHHood object.
UserNeighborhood userneighborhood = new ThresholdUserNeighborhood(0.1, usersimilarity, datamodel);

// Create UserRecomender
UserBasedRecommender recommender = new GenericUserBasedRecommender(datamodel, userneighborhood, usersimilarity);

List<RecommendedItem> recommendations = recommender.recommend(0, 1);

for (RecommendedItem recommendation : recommendations) {
System.out.println(recommendation);
}

我正在使用 Mahout 版本:0.13.0

理想情况下,它应该将 item_id = 101' 推荐给 'user_id = 0' 作为 user = 0user = 1 让项目 102 共同显示它应该推荐item_id = 101user_id = 0`

日志:

18:08:11.669 [main] INFO org.apache.mahout.cf.taste.impl.model.file.FileDataModel - Creating FileDataModel for file dataset.csv
18:08:11.700 [main] INFO org.apache.mahout.cf.taste.impl.model.file.FileDataModel - Reading file info...
18:08:11.702 [main] INFO org.apache.mahout.cf.taste.impl.model.file.FileDataModel - Read lines: 3
18:08:11.722 [main] INFO org.apache.mahout.cf.taste.impl.model.GenericDataModel - Processed 2 users
18:08:11.738 [main] DEBUG org.apache.mahout.cf.taste.impl.recommender.GenericUserBasedRecommender - Recommending items for user ID '0'

最佳答案

Mahout 中的 Hadoop Mapreduce 代码已被弃用。新的推荐代码以@rawkintrevo 的示例开头。如果您是 Scala 程序员,请关注他们。

大多数工程师都希望系统无需修改即可工作,Mahout 算法封装在构建于 Apache PredictionIO 之上的通用推荐器中。它有一个服务器来接受事件,就像你的例子中的那些,它有内部事件存储和一个结果查询服务器。与旧的 Mapreduce 代码相比有许多改进,包括使用实时用户行为来提出建议。新的 Mahout 和旧的输入和查询服务器都没有,Universal Recommender 对两者都有 REST 端点。

鉴于您正在使用的代码将被弃用,我强烈建议您深入研究 Mahout 代码(@rawkintrevo 的示例)或查看 Universal Recommender,这是一个完整的端到端系统。

  • 使用“单机”设置安装 PredictionIO here或者使用我们预先打包的 AWS AMI 进行真正快捷的设置 here它包括预装的 PIO 和 The Universal Recommender。
  • 添加 UR 模板 here
  • 用于向推荐系统发送事件的 Java SDK here

完成此设置后,您就可以处理配置、REST 或 Java SDK 以及 PIO CLI。无需 Scala 编码。

关于java - Apache Mahout 没有给出任何建议,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43472237/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com