推荐人没有给出topN列表

时间:2015-04-22 06:11:25

标签: r recommendation-engine

我创建了一个数据集并尝试应用recommenderlab,但未获得TopN推荐列表。我得到了“i1”的列表,但预计有三个项目。

我创建了一个包含五个项目,五个用户和1:5(加NA值)的评分的数据集。选择UBCF有三个项目为第一个用户推荐。在获得具有TopN功能的不同类型的推荐系统后,getModel()未显示。

我在RStudio版本0.98.953上运行推荐实验室版本0.1-5。

> #Get recommenderlab
> library("recommenderlab")
> #Create matrix
> Dt = matrix(c(NA,2,5,NA,3,
+               5,3,NA,2,1,
+               2,NA,4,1,1,
+               3,2,2,3,NA,
+               3,3,1,5,5), 
+             nrow = 5,
+             ncol = 5,
+             dimnames = list(user = paste("u", 1:5, sep = ''),
+                             item = paste("i", 1:5, sep = '')))
> #Identify matrix
> Dt

    item
user i1 i2 i3 i4 i5
  u1 NA  5  2  3  3
  u2  2  3 NA  2  3
  u3  5 NA  4  2  1
  u4 NA  2  1  3  5
  u5  3  1  1 NA  5

> #Convert matrix to RealRatingMatrix
> M <- as(Dt, "realRatingMatrix")
> #Identify dataset
> head(as(M, "data.frame"))

   user item rating
4    u1   i2      5
8    u1   i3      2
12   u1   i4      3
16   u1   i5      3
1    u2   i1      2
5    u2   i2      3

> # Create UBCF Recommender System 
> r <- Recommender(M, method = "UBCF")
> # Describe Recommender
> r
Recommender of type ‘UBCF’ for ‘realRatingMatrix’ 
learned using 5 users.
> # Get recommendation systems
> names(getModel(r))
[1] "description" "data"        "method"      "nn"          "sample"      "normalize"  
[7] "minRating"  
> # Get top-N model
> getModel(r)$topN
NULL
> # Create top-3 list from UBCF recommender system for users 1001
> recom <- predict(r, M[1,], n = 3)
> #Get recommendations
> as(recom, "list")
[[1]]
[1] "i1"

如果我能提供更多信息,请告诉我。

修改:

我在CRAN的推荐文档中读到,predict()函数给出了预测的评级或topN列表。出于某种原因,predict()也没有给出。第一行中存在两个NA值,但只获得一个项目。

0 个答案:

没有答案