tensorflow / tensorflow/recommenders

Seeking Guidance on Feature Preparation for Retrieval and Ranking Models

Open
#659 10 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Python
Stars
2k
Forks
300
PR merge metrics
No merged PRs in 30d

Description

Hello,

I am currently working on developing a recommender system for internal customers and have found this framework to be a great tool to start with. As a beginner in the field of recommender systems, I am hoping to learn from the experts here.

The current problem I am facing involves a relatively small dataset of around 100 users and 200k items. However, this item dataset is expected to increase to 4 million in the near future. I have binary interaction data as well as negative labels (items presented to users that they did not act on), although the size of the negative labels is small.

Based on my research, a two-stage or multi-stage recommender system seems to be a better approach compared to a single-stage recommender. Additionally, from the other discussions here, it seems that it is a default practice to train the retrieval model with positive data points and the ranking model with both positive and negative data points.

The remaining doubts I have are

  1. How to prepare features for the retrieval model and the ranking model, respectively? Should they be the same or different?
  2. Is sparsity in the interaction matrix a significant issue? In this problem setup, items have to be interacted with at least once by a user, but typically by a few users only at most due to the ownership mechanism in place (a user has to give up an item so that other users can own it).

Any guidance or suggestions would be greatly appreciated. Thank you!

Contributor guide

Open the contributing guide

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

No files, tests, or entry points are named. First clarify the intended deliverable, then investigate feature preparation for retrieval and ranking models and the impact of sparse interactions at the stated dataset sizes. Done would require concrete, project-specific guidance with an agreed scope.

Written by the indexing model from the issue text.

Assessment

Tech stack
python, tensorflow
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.