Mahout 基于项目的推荐引擎,没有偏好值

问题描述 投票:0回答:2

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

GenericBooleanPrefItemBasedRecommender

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

(DataModel dataModel, ItemSimilarity similarity)

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

machine-learning mahout recommendation-engine
2个回答
2
投票

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

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

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


0
投票

只需使用 GenericBooleanPrefDataModel。

© www.soinside.com 2019 - 2024. All rights reserved.