2013-07-18 49 views
2

我想建立一个使用Mahout的推荐引擎,它仅根据项目到项目的相似性提供建议,而不考虑用户偏好(即评级)。项目相似度由mahout外部的其他进程计算并保存到文件中。到目前为止,我已经决定,我可以使用类:Mahout基于项目的推荐引擎没有偏好值

GenericBooleanPrefItemBasedRecommender 

...挑项目,其文件说是“适当使用时没有任何偏好值的概念,在数据的存在。”然而,类仍然作为输入:

(DataModel dataModel, ItemSimilarity similarity) 

我知道我可以使用ItemSimilarity类供应项目对项目相似值,但什么是我的数据模型在这种情况下?我没有偏好,这似乎是数据模型所代表的确切内容。我该如何解决这个问题,或者我在这里看错了什么?

回答

0

只需使用GenericBooleanPrefDataModel。

+1

请问您能详细说明一下吗?该数据模型似乎仍然会吸收用户偏好数据。也许一些示例代码? –

2

下面是一个简单的代码如何创建一个使用GenericBooleanPrefDataModel

DataModel model = new GenericBooleanPrefDataModel(GenericBooleanPrefDataModel.toDataMap(new FileDataModel(new File("YOUR_FILE_NAME")))); 

但是你的DataModel的实例,即使你有偏好值的数据模型,你有ItemSimilarity的定制实现不使用这个首选项值,你会得到想要的结果。

最好, Dragan

+0

如果您喜欢答案,您应该将其标记为接受,以便其他人可以从中受益,并会鼓励他人在将来为您提供帮助。 –