我是mahout的新手,仍在努力解决问题。
我正在尝试使用在hadoop集群(分布式推荐器)中运行的mahout 0.8来运行基于KNN的推荐器。我正在使用mahout 0.8,因此KNN已被弃用,但它仍然可用(至少当我在java代码中使用它时)
我有几个问题:
基本上有两个mahout实现是真的吗? 分布式(从命令行运行) non disributed(从jar文件运行)
Assumming(1)是正确的,mahout是否支持从命令行运行基于KNN的推荐程序?有人能指导我这么做吗?
假设(1)是错误的,如何在hadoop集群(分布式)中运行的java(我使用eclipse)中构建推荐器?
谢谢!
答案 0 :(得分:2)
KNN正在被弃用,因为它被替换为基于项目和基于用户的同伴推荐器和ALS-WR推荐器,它们更好,更现代。
Mahout推荐人的最新成果是使用Hadoop在后台训练,然后输出由Solr索引。然后,您使用用户表示首选项的项查询Solr,无需预先计算所有用户的所有rec,因为他们几乎实时地从Solr查询返回。这是在Mahout 1.0-SNAPSHOT的mahout / examples /或https://github.com/pferrel/solr-recommender
顺便说一下,这个代码正在与Mahout 1.0集成,并且在Spark而不是Hadoop上运行,因此即使是训练步骤也会快得多。
更新: 我已经澄清了从上面的CLI可以运行的内容。