我正在使用R中recommenderlab
个包的基于用户的协同过滤来向用户推荐前N个项目。我使用二进制用户项矩阵作为输入(从购买历史创建)。
是否有可能获得客户为每个前N项购买商品的概率,而不仅仅是获得前N项?
dB
是我的用户项矩阵,我正在使用下一个代码:
r <- as(dB, "binaryRatingMatrix")
rTrain <- r[1:874, ]
rTest <- r[875, ]
rr <- Recommender(rTrain, method = "UBCF",
parameter = list(method = "Jaccard", nn = 50))
rrP <- predict(rr, rTest, n = 500, type = "topNList")
predCF <- as(rrP, "list")
在predict
包中的caret
方法中,您只需指定type="prob"
,因此我在recommenderlab
包中寻找类似的内容。我尝试了type="ratings"
,但我得到了相同的结果。
答案 0 :(得分:0)
标准推荐算法预测评级(分数),但不是购买概率。这个想法是具有最高评级(得分)的项目是最理想的项目,因此可能是下次购买(可能具有最高的购买概率),但这并不直接给出概率。