我在推荐系统中对矩阵分解方法进行了一些阅读,并且遇到了这个非常好的教程:http://www.quuxlabs.com/blog/2010/09/matrix-factorization-a-simple-tutorial-and-implementation-in-python/
一切都很好,但这一段让我很感兴趣:
现在可能会出现一个问题:如果我们找到两个矩阵 P 和 Q ,那么 PXQ 近似 R,并不是说我们对所有看不见的评级的预测都不是零吗?事实上,我们并没有真正尝试提出P和Q,以便我们可以完全重现R.相反,我们只会尝试最小化观察到的用户 - 项对的错误。换句话说,如果我们让 T 成为一组元组,每个元组都是(u_i,d_j,r_ij)的形式,这样T包含所有观察到的用户项对以及相关的评级,我们只是试图最小化T中(u_i,d_j,r_ij)的每个 e_ij 。(换句话说,T是我们的训练数据集。至于其他未知数,一旦学习了用户,项目和特征之间的关联,我们就能够确定它们的价值。
我想知道是否有人可以帮我这个?潜在因素是否有助于我们理解每个用户和项目的行为?
由于
答案 0 :(得分:1)
潜在因素是描述用户和项目的两组值(用户的集合和项目的集合)。基本上你要做的是找到你的项目和用户的数字表示。
想象一下,你有电影评级系统,有3个因素供用户使用,3个因素适合电影(项目)。用户项目可以是您喜欢的喜剧,戏剧或动作片以及影片因素,它是多少喜剧,戏剧或动作片。从这些属性中,您可以估计其他对的评级。该模型为您找到这些抽象因素。
这意味着您只能为有评分的商品和用户找到合理的代表。 因此,当您训练模型时,使用已知的评级来估计此表示。通过它,您可以尝试预测用户和项目的未知评级。