1
$\begingroup$

I am going through the documentation on recommenderlab package in R. I have few questions on how the user/item based collaborative filtering can be considered as a part of model based approaches. There is no math model being built its only finding the similar items and (loosely) predicting ratings for unknown items basis similarities and ratings of other users. Hence, is it necessary to split the data in train and test and then apply multiple algorithms like user/item/popular/random to find out the one with the least error?

Consider the following 2 scenarios: 1. With data split - best model = IBCF, 2. Without data split - best model = UBCF. Can this actually happen?

$\endgroup$
1
$\begingroup$

Yes, this can happen. Always have a test data to validate your findings. In this case as you have tried with Training to build a model and test it using a seperate data in both IBCF and UBCF models. This process is good enough. Following this process if you have better results in IBCF that is better than UBCF.

A few additional checks before finalizing the IBCF model:

  1. Normalizing ratings is very much necessary to avoid bias due to ratings

  2. Try cosine/pearson measures and identify which provide better accuracy

  3. Identify whether the error has a pattern with Time, user based clusters

Lastly, recommender algorithm is of course simple but it depends on the necessity of the analysis whether its for real time or offline analysis. Most complex algorithms are difficult to update real time.

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.