Skip to content

Popularity bias & Grouped MP

The strongest simple baseline in this project is personalized Grouped Most Popular (grouped_most_popular_pers). It uses the user's historical affinity to the cold item's content group, instead of pretending all cold items are equally unknown.

Why naive transfer loses

Nearest-neighbor methods look attractive: find warm items similar to a cold item and average donor scores from those neighbors. The problem is that the neighbors often carry their global popularity with them. A cold item close to popular warm items receives inflated scores, even when personalization is weak.

Common pitfall

High similarity to popular warm items is not the same thing as a personalized cold-start score.

Wrong / right

Pattern Result
Average scores from similar warm items and stop there Often inherits neighbor popularity
Compare against a grouped popularity baseline Exposes whether transfer is actually useful
Use popularity as a feature or anchor Helps stacking and stacking_plus
Learn content-to-score structure directly Helps linmap preserve donor personalization

The main project hypothesis follows from this: naive transfer is not enough, but calibrated transfer can beat Grouped MP.