Mahout附带了许多预定义的Hadoop作业类(从AbstractJob派生的东西)。这些包括计算建议的工作(RecommenderJob)。 Mahout还定义了各种RecommenderEvaluators用于测试这些建议,但我不清楚如何使用Hadoop以分布式方式运行这些建议。
是:运行推荐器作业,然后将其输出提供给评估器?我查看了RMSRecommenderEvaluatorTest,但这似乎一下子就完成了所有事情,并且看起来不像是Hadoop。
答案 0 :(得分:2)
首先,我认为Mahout中的建议分为两部分:非分布式算法(来自Taste)和分布式hadoop作业(ParallelAls和基于项目的协作过滤)。 RMSEEvaluator处于非分布式部分,不认为它适用于hadoop作业。
要评估Mahout中的hadoop推荐工作,请查看
org.apache.mahout.cf.taste.hadoop.als.FactorizationEvaluator
您还可以编写一些脚本并将推荐结果下载到本地文件系统进行评估。