我运行一些RecommenderJob(org.apache.mahout.cf.taste.hadoop.item.RecommenderJob)基于从亨利马乌0.7工作,并注意有像startPhase和endPhase选项。我猜测这些只是运行管道的一部分,假设你有来自之前运行的必要输入数据。但我很难理解RecommenderJob中的哪些阶段。我正在阅读源代码,但看起来需要一段时间。在此期间,我想知道是否有人可以通过RecommenderJob类了解如何使用这些选项(特别是startPhase)?如何使用startPhase在亨利马乌
1
A
回答
3
以下是我发现:
阶段0约为PreparePreferenceMatrixJob,它有3个Hadoop作业:
PreparePreferenceMatrixJob-ItemIDIndexMapper-Reducer
PreparePreferenceMatrixJob-ToItemPrefsMapper-Reducer
PreparePreferenceMatrixJob-ToItemVectorsMapper-Reducer
阶段图1是关于RowSimilarityJob,它有3项工作:
RowSimilarityJob-VectorNormMapper-Reducer
RowSimilarityJob-CooccurrencesMapper-Reducer
RowSimilarityJob-UnsymmetrifyMapper-Reducer
相2约为RecommenderJob,它有3项工作:
RecommenderJob-SimilarityMatrixRowWrapperMapper-Reducer
RecommenderJob-UserVectorSplitterMapper-Reducer
RecommenderJob-Mapper-Reducer
第3阶段是最后一个,它只有一个任务:
RecommenderJob-PartialMultiplyMapper-Reducer
而且从RecommenderJob类此阶段1的输出完全一样,从相位0和ItemSimilarityJob的1输出(但临时目录名称不同)。
1
是的,这是正确的。这是一个相当粗糙的机制。真的,它控制着运行一系列MapReduce作业中的哪一个。你必须阅读代码才能知道它们是什么,是的。他们因工作而异。
如果我做了一遍又一遍,我会只是做它检测输出的存在就知道跳过作业。 (这是我在我的下一代推荐项目已经做到了。)
相关问题
- 1. 在亨利马乌
- 2. ClusterDump在亨利马乌0.9
- 3. 亨利马乌 - 类LongPair
- 4. 抛出:IllegalArgumentException在亨利马乌
- 5. 亨利马乌:正火UserSimilarity距离
- 6. 亨利马乌LDA给FileNotFound例外
- 7. 亨利马乌CVB主题文件
- 8. 亨利马乌打死错误
- 9. 访问Apache的亨利马乌LDA包
- 10. 亨利马乌:k均值聚类
- 11. 亨利马乌0.8和Hadoop 0.21
- 12. 密度亨利马乌稀疏矩阵
- 13. 获得成员 - 亨利马乌
- 14. 如何采取键和值在中亨利马乌
- 15. 亨利马乌使用命令行来创建集群 - 问题
- 16. 如何写亨利马乌推荐星火
- 17. 亨利马乌:java.lang.NumberFormatException:对于输入字符串:
- 18. 亨利马乌最小哈希org.apache.hadoop.io.LongWritable不能转换到org.apache.hadoop.io.Text
- 19. 亨利马乌0.11.1火花壳牌的NoClassDefFoundError
- 20. 亨利马乌 - 简单的分类问题
- 21. 亨利马乌 - 集群 - “命名”集群元素
- 22. 点亨利马乌到HDFS,而不是本地磁盘
- 23. 不能用Hadoop流读取亨利马乌生成的序列文件
- 24. 错误导入亨利马乌的行家资源的日食在
- 25. 需要帮助亨利马乌在行动第2章的例子
- 26. 亨利马乌在行动:06章:维基百科作业失败java.lang.ArrayIndexOutOfBoundsException
- 27. 亨利马乌Recomendaton引擎推荐的产品和其数量客户
- 28. 亨利马乌:要读取一个自定义的输入文件
- 29. 亨利马乌Naive Bayes模型无法找到缓存文件问题
- 30. 亨利马乌 - 错误时尝试了维基百科的例子