Understanding the given protocol of recommenderlab library in R

136 Views Asked by At

I am trying to understand the given protocol of recommenderlab library in R.

From the original document https://cran.r-project.org/web/packages/recommenderlab/vignettes/recommenderlab.pdf :

Testing is perfomed by withholding items (parameter given). Breese et al. (1998) introduced the four experimental witholding protocols called Given 2, Given 5, Given 10 and All-but-1. During testing, the Given x protocol presents the algorithm with only x randomly chosen items for the test user, and the algorithm is evaluated by how well it is able to predict the withheld items

I do not understand the fact that this is only applied to the testing users. Why can't we simply apply this to all users, and we need to split between training and testing users AND use given protocol?

Since we give only few items for the algorithm to understand patterns and produce predictions, and then test/measure how good are those predictions based on the rest of the items, why do we need to do this for the test users only, and we can't do it for all? How do the training users serve? When the algorithm is given let's say 10 items to understand the target user's patterns, doesn't it use the whole dataset (both training and testing) to compute the user neighborhood for example (UBCF) in order to make the predictions that will be later evaluated on using the withheld items? And if not, meaning that during this process it only looks at the training users (say 80% for instance) why wouldn't it look to the testing users as well? What is the problem of having a another test user in the neighborhood, and there needs to be only training users? That part I don't get.. Or my assumptions are wrong?

To conclude: Why do we both need the given protocol, as well as the split between training and testing?

I hope my question makes sense, I am really curious to find the solution. Thank you in advance :)

0

There are 0 best solutions below