lyst / lyst/lightfm

movielens example: recall@k vs. precision@k vs. auc

Open
#544 2 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Python
Stars
5.1k
Forks
724
PR merge metrics
No merged PRs in 30d

Description

Hi

For the movielens example,

1) is it all right for Precision@K to have such a low score on test dataset i.e. 0.11 for test vs 0.6 on train set? Is this a case of it is better to have recommended than not?

2) is it better to normalize it with the maximum Precision@K that each user can attain for business evaluation and even for model comparison?

3) am i right to say that Precision@K for LightFM generally tends to suffer as compared to the Surprise library? This is because LightFM will recommend K number of recommendations regardless of actual rating - since LightFM uses relative scoring - whereas for the Surprise library, there is the notion of rating threshold and the latter might recommend less than K recommendations due to a minimum threshold requirement?

4) any reason why recall@k is not computed but LightFM has it implemented?

apologies for the many questions asked.

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reviewing the movielens example and its precision@k, recall@k, and AUC calculations, then consult the implemented recall@k metric. Done requires a maintainer-supported clarification of the four metric questions and, if a change is intended, a specified scope; the issue names no files or tests.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
machine-learning
Issue type
Documentation
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
20/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.