NVIDIA-Merlin / NVIDIA-Merlin/Merlin

[RMP] Update GTC Recommender to leverage Merlin Systems and new Merlin capabilities

Open
#887 5 comments 0 reactions 5 assignees View on GitHub

@nv-alaiacano is already working on this.

Since Apr 13, 2023.

roadmap
Dominant language
Python
Stars
907
Forks
129
PR merge metrics
No merged PRs in 30d

Description

Problem:

GTC Recommender was built through custom code and shortcuts. We would like to leverage Merlin to make the deployment of the GTC Recommender much more easily.

Definition of Done

New Functionality

  • Ability to update Workflows when the item catalog changes (is this anything other than retraining it?)
  • TopK functionality (in the model or in the pipeline?)
Models
Transformers4Rec
NVTabular
  • Operator for mapping between key values (Likely a modification to categorify to support an existing mapping)
  • Operators for manipulating embeddings in NVT (e.g. concat) in order to build pre-trained embedding tables
  • Reverse Categorify mapping
  • Separate slicing and padding operators
Dataloader
Systems
  • Merging pre-trained embeddings at serving time (https://github.com/NVIDIA-Merlin/Merlin/issues/211)
  • Filtering
    - [ ] Attribute-based filtering (e.g. language)
    - [ ] Per-user filtering (e.g. for sessions a user is already registered for)
    - [ ] De-duplication
  • Ordering
    - [ ] Attribute-based re-ordering policies (e.g. by timestamp)
Deliverables
  • Blog post
  • Updated model that leverages tabular features
  • Tensorflow based version of the model
  • Examples of GTC Recommender workflow
  • Work with GTC team to onboard them and add Merlin to NVIDIA on-demand

Constraints:

  • Pytorch and Tensorflow

Starting Point:

Existing GTC Recommender is our foundation for this work.

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.

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.