2012-11-20 82 views
1

我已经找到了如何创建自己的非分布式推荐,但没有如何创建自己的分布式推荐工作几个教程(任何一个环节是值得欢迎的,如果你知道一个)。如何创建我自己的RecommenderJob?

在书中“亨利马乌在行动”也有如何编写使用Mahout中的对象映射器/减速器一些例子,但它似乎并没有说明如何把这些工作在一起吗?

但是存在Mahout的核心,其给出了如何可以做到这一点的想法项目/ RecommenderJob。我的真实意图是,以取代第一映射器,这样我就不必准备象夫的超出了我的数据(线看起来像“用户ID,itemid1,itemid2,itemid3 ......”,用item.RecommenderJob我显然需要像线“ itemid1,itemid2“,”itemid1,itemid3“,...)。

现在会是一个好主意,只是在RecommenderJob类复制和更改我需要什么? 我已经尝试过了,但由于此类使用是在包范围(例如UserVectorSplitterMapper.USERS_FILE。)变量我不得不更换这些 - 这感觉并不好。

如果我宁愿创建一个新的类扩展AbstractJob,并挑选出我从RecommenderJob需要的东西?然后,我真正需要的是RecommenderJob中的哪些元素?

回答

2

你的替代方案是用自己的作业会将您输入到作业想,或者,实际上只是修改作业的形式先于工作。我不认为复制作业并修改和定制它并不是什么大不了的事情,如果您需要非平凡的更改,而这些更改不是(并且没有意义)被支持为某种配置参数。