2

我正在尝试使用 Mahout 构建一个推荐引擎,该引擎仅根据项目与项目的相似性给出推荐,而不考虑用户偏好(即评级)。项目相似度由 mahout 外部的一些其他进程计算并保存到文件中。到目前为止,我已经确定我可以使用该类:

GenericBooleanPrefItemBasedRecommender

...选择项目,文档中说“适合在数据中不存在偏好值概念时使用”。但是,该类仍然作为输入:

(DataModel dataModel, ItemSimilarity similarity)

我知道我可以使用 ItemSimilarity 类来提供项目到项目的相似性值,但是在这种情况下我的数据模型是什么?我没有偏好,这似乎正是数据模型所代表的东西。我该如何解决这个问题,还是我在这里看错了?

4

2 回答 2

2

这是一个简单的代码,您可以如何创建使用 GenericBooleanPrefDataModel 的 DataModel 实例

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

但是,即使您有具有首选项值的数据模型,并且您有不使用此首选项值的 ItemSimilarity 的自定义实现,您也将获得所需的结果。

最好的,德拉甘

于 2013-08-01T14:09:58.930 回答
0

只需使用 GenericBooleanPrefDataModel。

于 2013-07-18T04:17:29.547 回答