【问题标题】:Adding new methods to the Apache mahout向 Apache mahout 添加新方法
【发布时间】:2015-11-07 19:29:12
【问题描述】:

我正在尝试对推荐系统做一些工作和研究。我想使用 Apache Mahout。但是,我想添加一些方法,因为它们现在没有实现。我试图这样做,但 Mahout 的源代码被锁定,我无法添加或更改任何内容。我想知道是否有人知道如何解决这个问题。

【问题讨论】:

  • 这是一个开源项目。您可以从 Github (github.com/apache/mahout) 下载源代码。您可以在文本编辑器中编辑任何文件。哪个文件和方法给您带来了问题?
  • 我使用 Intellij 作为我的 IDE。例如,我想向推荐对象添加一个方法 RecommendUsers(itme i)。我希望这个方法返回对项目 i 感兴趣的用户。
  • 那么您实际上并不会修改 Mahout 源代码,您只是要编写一个使用 Mahout 生成推荐的应用程序。目前 YouTube 上有几个教程可以演示此类系统。
  • 这不是答案。某处存在的几个视频不是我问题的科学答案。至少你可以在这里分享链接。而且我不是仅将 Mahout 用于构建应用程序。正如我所说,在某些情况下,我还需要修改 Mahout 的实现。

标签: java mahout mahout-recommender


【解决方案1】:

Gihub 上的项目分叉到您自己的存储库中。进行您想要的修改,如果它们足够好,则创建一个“拉取请求”返回给 Mahout。它们可能会被纳入主流。

请注意,Mahout 不接受旧式 Hadoop“mapreduce”代码。新的 Mahout 基于更现代的计算后端,主要是 Spark,但最近是 Flink。该项目也主要是 Scala,尽管这不是必需的。

现代 Mahout Recommender 支持通过 SimilarityAnalysis.cooccurrenceSimilarityAnalysis.rowsimilarity 提供。这些提供协同过滤和基于内容的推荐,但必须使用 knn/搜索引擎提供服务。请参阅 Mahout 文档 here 和完整的推荐系统:https://templates.prediction.io/PredictionIO/template-scala-parallel-universal-recommendation

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-10-07
    • 1970-01-01
    • 2017-12-09
    • 2012-06-09
    • 2020-08-03
    • 2015-08-12
    相关资源
    最近更新 更多