Hi All,

I am using the Mahout to build a user-based recommender system (RS). The evaluation method I am using is AverageAbsoluteDifferenceRecommenderEvaluator, which according to the "Mahout in Action" randomly sets aside some existing preference and calculate the difference between the predicted value and the real one. The first question I have is that in a user-based RS, if we choose a small number of neighbours, then it is quite possible that the prediction is not available at all. Here is an example:

User 1                         rated item 1, 2, 3, 4
neighbour1 of user 1  rated item 1, 2
neighbour2 of user 1  rated item 1, 3

In the case above, the number of neighbours is two, so if we take out the rating of user 1 to item 4, there is no way to predict it. What will mahout deal with such a problem?

Also, I am trying to map inferred preferences to a scale of 1-5. But the problem is that if I simply map all the preference to 1-2, then I will get a really nice evaluation result (almost 0), but you can easily see that this is not a right way to do it. So I guess the question is whether there is another way to evaluate the preference mapping algorithm.

Any help will be highly appreciated.

Best Regards,
Jimmy

Reply via email to