NVIDIA-Merlin / NVIDIA-Merlin/Merlin

Configure how sequential and non-sequential features are combined

Open
#944 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

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

Description

Session-based models are typically fed with sequential features (e.g. sequence of user interactions). But they can also be fed in addition with non-sequential features, that might represent:

  • User/context features: e.g. user demographics (e.g. age, gender), user behavioural features (favorite item category, time since last purchase), context features (e.g. device, day of week).
  • Target item features: e.g. when being used for ranking, you might want to provide features of the item target together with a label on whether the item is relevant or not the user/session. Those target item features are not sequential.

This task is about allowing users to configure via CLI how to combine sequential and non-sequential features:
Merge before the sequence processing

  • Broadcast and concat - So that non-sequential features are replicated for the whole sequence and concatenated for each position

Merge after the sequence processing:

  • concat
  • element-wise ops: sum, mean, element-wise multiplication)

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. Start by locating the CLI configuration and session-model sequence-processing paths, then trace how sequential and non-sequential features are currently passed through. Done means the CLI can select the listed pre-processing broadcast/concat and post-processing combination operations, with coverage for each supported choice.

Written by the indexing model from the issue text.

Assessment

Domain
cli, machine-learning
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.