我有一个数据集,其中有一个稀疏效用矩阵( user - product ),具有二进制输入:如果用户?购买了产品?,则为1;如果没有购买,则为0。
然而,它在测试集上有不同的含义,0表示我们不知道用户是否购买了该产品,1表示我们确定用户购买了给定的产品。
我需要为每个产品中的每个用户获取用户?在测试集中购买产品?的概率。为此,我希望使用不同的矩阵分解技术,如FunkSVD、NMF或SVD++,但我非常困惑:
这些技术只允许我在测试集上获得标签(1或0),但我需要计算获得1的概率,而不是标签本身。
我该如何解决这个问题?或者我将其视为一个分类问题,然后使用所有常见的分类技术?
发布于 2020-07-22 04:17:58
好的,基于Recurrent-Knowledge-Graph-Embedding的一种方法可能会有所帮助。
尝试将用户-项目交互转换为知识图,并挖掘图中user_i
和item_j
之间的top-n
路径。按照本文所述构建RNN模型及其代码,以获取概率。
https://stackoverflow.com/questions/62734160
复制相似问题