lyst / lyst/lightfm

Question: What happens if a meta-data feature is specific for a single item or user?

Open
#649 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
Python
Stars
5.1k
Forks
724
PR merge metrics
No merged PRs in 30d

Description

Hi!

I have a question about a sentence contained in [LigtFM paper](https://arxiv.org/pdf/1507.08439.pdf):

> If the feature sets also contain meta-data features **shared by more than one item or user**, LightFM extends the MF model by letting the feature latent factors explain part of the structure of user interactions.

What happens if a meta-data feature is specific for a single item or user?
Let's suppose for example to have _10 movies, 4 comedies, 5 horror, and 1 action_ and some users (with no metadata for simplicity) that interact with them.

Shall I encode _action_ feature even it is specific of a single movie [method 1] or shall I drop that level and encode only _comedy_ and _horror_ [method 2]?

method 1:
`dataset.create_item_features({(1, ['comedy']), (2, ['comedy']), (3, ['comedy']), (4, ['comedy']), (5, ['horror']), (6, ['horror']), (7, ['horror']), (8, ['horror']), (9, ['horror']), (10, ['action'])})`

method 2:
`dataset.create_item_features({(1, ['comedy']), (2, ['comedy']), (3, ['comedy']), (4, ['comedy']), (5, ['horror']), (6, ['horror']), (7, ['horror']), (8, ['horror']), (9, ['horror'])})`

Many thanks
Ilaria

Contributor guide

No contributing guide indexed for this repository

Research direction

Start with the linked LightFM paper and the Dataset.create_item_features examples in the issue. Done means turning the behavior for a feature used by one item or user into a clear project answer or documentation note; no implementation target is named.

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
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.