1

我正在使用基于项目的协作过滤器为餐馆创建推荐的推荐引擎。每家餐馆的评论评分从1到5。
每个推荐算法都会遇到数据稀疏问题,所以我一直在寻找解决方案来计算正确的相关性。基于项目的协作过滤器的最小数据量

我在餐厅之间使用调整后的余弦相似度。

当您想计算餐厅之间的相似度时,您需要评价这两家餐厅的用户。但是,对两家餐厅进行评分以获得正确关联的用户的最小数量是多少?

从测试中,我发现有一组用户对两家餐厅进行评分会导致不良的相似性(很明显)。通常它是-1或1.所以我将它增加到了两个同时拥有餐厅的用户,这给了我更好的相似之处。我发现很难确定这种相似性是否足够好。有没有一种方法可以检验这种相似性的准确性,还是有关于最小值如何的准则?

回答

0

简短的答案是参数扫描:尝试“评价两家餐厅的最低用户数”的几个值并测量结果。随着更多的用户,你会更好地了解项目(餐馆)之间的相似性。但是你的相似性信息会更加稀疏。也就是说,你会专注于更受欢迎的物品,并且不太可能推荐长尾物品。这意味着你总是会有一个权衡,你应该衡量一切,让你做出权衡。例如,测量预测准确度(例如RMSE)以及可能推荐的项目数量。

如果您的物品空间变得太稀疏,您可能需要找到其他方式来完成超出用户评分的物品项目相似度。例如,您可以使用基于内容的过滤方法来包含有关每家餐厅美食的信息,然后创建一个中间步骤来了解每位用户的美食偏好。即使您没有项目相似性分数,这也可以让您做出建议。