我正在尝试创建一个用于向用户推荐书籍的排名系统。假设我们有一些书籍主题,如“A”、“B”、“C”、“D”,从过去的行为来看,用户更倾向于“A”和“B”主题。我的数据集具有二进制分类数据集的格式,即它包含书籍规格和指定用户是否阅读的标签(1/0)。基于此,我分配用户喜欢一本书的概率,使用类似RandomForestClassifier. 问题是,根据过去的行为,主题为“A”和“B”的书籍总是倾向于获得更高的概率分数。有没有办法为模型添加一些“可发现性”,以便它为其他学科的书籍分配高分?
更改 ML 模型的行为
数据挖掘
分类
推荐系统
排行
2022-02-25 02:47:30
1个回答
这是一种确认偏差,它经常出现在推荐系统中并且很难被击败:由于系统旨在查找相似的书籍,它返回最相似的书籍是正常的,但它可能会让用户失望。如果可以参考的过去书籍很少,即模型使用的参考样本太小而无法代表用户的偏好,这种偏差尤其强烈。
正如 Nikos 在评论中建议的那样,使推荐多样化的一种方法是扩大相似性特征的集合。更高级的方法是使用一些二级方法:系统不仅推荐与特定用户过去相似的书籍,而且找到喜欢相同书籍的其他用户并推荐他们喜欢的书籍(类似于“其他用户像 X 也像 Y")。
其它你可能感兴趣的问题