I am new in making recommendation systems . I am using the surpriselib library to evaluate my recommendations. All the Accuracy Metrics are well supported in this library. But I also want to compute the Hit Rate of my top n recommender system.
I know the formula for hit rate is:
(no items users have already purchased)/(no of users)
But this does not makes sense to me because to train and test the user vs item ratings I have only those users in my dataset which have already rated all the items that are in the dataset. (**After all this is what enables me to measure accuracy of my rating predictions **)
This means I will get a HIT RATE OF 100% everytime !!!
Is my theory wrong if not what can I do to properly measure hit rate I know there is one method called Leave one out cross validation which can help me in this case . If that's the answer how do they work with top n recommender systems?