Advertisement
Guest User

Untitled

a guest
Sep 23rd, 2019
125
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
R 1.05 KB | None | 0 0
  1. library(magrittr)
  2. library(recommenderlab)
  3. ### real valued recommender
  4. data(Jester5k)
  5. ## create 90/10 split (known/unknown) for the first 500 users in Jester5k
  6. e <- evaluationScheme(Jester5k[1:500,], method="split", train=0.9,
  7.                       k=1, given=15)
  8. e
  9. ## create a user-based CF recommender using training data
  10. r <- Recommender(getData(e, "train"), "UBCF")
  11. ## create predictions for the test data using known ratings (see given above)
  12. p <- predict(r, getData(e, "known"), type="ratings")
  13. p
  14. ## compute error metrics averaged per user and then averaged over all
  15. ## recommendations
  16. calcPredictionAccuracy(p, getData(e, "unknown"))
  17. head(calcPredictionAccuracy(p, getData(e, "unknown"), byUser=TRUE))
  18. ## evaluate topNLists instead (you need to specify given and goodRating!)
  19. p <- predict(r, getData(e, "known"), type="topNList", n=100)
  20. p
  21.  
  22. calcPredictionAccuracy(p, getData(e, "unknown"), given=100, goodRating=5, byUser=T) %>% head
  23.  
  24. as(p,'list') %>% `[`(1)
  25. #as(getData(e, "unknown"),'matrix')[1:5,1:50]
  26. as(p,'matrix')[1,] %>% sort(decreasing = T)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement