Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: add Random algorithm to GeneralRecommenders #1690

Merged

Conversation

guedes-joaofelipe
Copy link
Contributor

A Random algorithm was added as a General Recommender for baseline purposes.

The Random algorithm recommends random items for each user. The motivation behind this approach is to create 2 baselines:

  • Coverage metric: a random algorithm tends to have a high Item Space Coverage.
  • Ranking/Rating metrics: any recommender algorithm should outperform a random approach in terms o ranking and rating metrics.

The inclusion of the Random class provides easier comparison in terms of the aforementioned metrics

@Paitesanshi
Copy link
Collaborator

Thanks for your interest in and contribution to RecBole! I apologize for my delayed response. You are correct that any model should perform better than random. However, I haven't seen any research papers in the field of recommendation systems that use the random method as a baseline for recommendation systems.

@ChenglongMa
Copy link
Contributor

Hi @Paitesanshi, I think random method could be a good baseline when we want to improve performance like diversity, and coverage other than accuracy-based metrics.

Thanks!

@guedes-joaofelipe
Copy link
Contributor Author

Complementing @ChenglongMa , here is an example of a published paper that explores diversity metrics and uses the Random algorithm as a baseline:

https://dl.acm.org/doi/10.1145/2043932.2043955

@Paitesanshi Paitesanshi merged commit a9259e3 into RUCAIBox:master Oct 10, 2023
2 checks passed
@Paitesanshi
Copy link
Collaborator

@guedes-joaofelipe @ChenglongMa Thank you for pointing that out. You're right. We've now added the Random recommendation algorithm to RecBole's model library. We appreciate your contribution and feedback to the RecBole!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants