基于内容的推荐引擎在日食上使用mahout

时间:2018-04-18 15:40:56

标签: java mahout recommendation-engine mahout-recommender

是否有任何分步教程在eclipse / java上使用Mahout制作基于内容的推荐系统?

我尝试过使用Mahout并且能够建立一个协作系统,但我想尝试制作一个基于内容的内容,我已经阅读了关于制作自定义ItemSimilarity方法的内容,我刚刚发现了针对Mahout的RowSimilarityJob,我对使用mahout相对较新有人可以帮我解决如何使用这个功能吗?

1 个答案:

答案 0 :(得分:0)

实际上,itemSimilarity作业是1)旧的即将被弃用的Hadoop MapReduce代码和2)以相当简单的方式找到2个类似的文档。有一个名为spark itemSimilarity的作业的新Spark版本,其功能大致相同,但只支持相似的LLR分数。

除非您将其合并到更大的更复杂的推荐器中,否则我建议您只使用Elasticsearch或Solr按内容查找类似的项目。他们有更强大的方法,非常灵活。在核心,他们都使用Lucene,稀疏数据的卓越knn引擎(k-最近邻居)。

KNN是你想要的算法类型,给定一个项目有多个内容字段,哪些项目最相似?

Elasticsearch和Solr还拥有高性能且高度可扩展的服务器。此外,他们不需要不断的培训。只需为每个项目添加一个新文档,它们将以递增方式编制索引,因此查询结果最终将包含较新的文档,而无需培训步骤。

但请注意,如果您拥有正确的数据,基于内容的推荐很少与协作过滤一样好。可以说现代多模式CF推荐器的最佳开源示例是Universal Recommender(基于Mahout和Apache PredictionIO):http://actionml.com/docs/ur