我正在尝试在Rails应用程序中使用PredictionIO推荐引擎来建议用户喜欢的项目。因此,我有三个模型:user
、product
和favorite(user_id, product_id)
。这就是algorithms.json文件的样子:
[
{
"name": "ncMahoutItemBased",
"params": {
"booleanData": true,
"itemSimilarity": "LogLikelihoodSimilarity",
"weighted": false,
"threshold": 0.6,
"nearestN": 10,
"unseenOnly": false,
"freshness" : 0,
"freshnessTimeUnit" : 86400
}
}
]
事情是,在培训和部署之后,我得到了一个用户建议项目的列表,其中一些项目用户已经喜欢了。为什么会这样?
UserBased算法而不是"ncMahoutItemBased"的名称是什么?
谢谢。
推荐用户喜欢的项目没有错。这是服装店的预期行为,我总是在那里买李维斯牛仔裤,他们想提醒我这一点。
在你的情况下,你可能不想推荐已经喜欢的项目,所以把它们从推荐中过滤掉。在大多数Mahout推荐程序中,这是为您完成的,因此PredictionIO必须禁用该功能。是否有一些参数或配置选项告诉PredictionIO筛选出用户的首选项?