Hybrid Recommender Models
Many of todays recommender systems are not just one model, but a combination of models working together. These models we call Hybrids, and in general, there are 3 approaches to them: Parallellized, Monolithic and Pipelined.
Parallellized hybrid recommender systems
This is when multiple recommender systems work in parallel to create recommendations.
There are 3 ways of doing so:
Strategy | How it works | Example |
---|---|---|
Weighted | Each system gives a score for every item; final score = weighted sum of those scores. | 𝑆(item)=0.7·S_CF(item)+0.3·S_CB(item) |
Switching | A controller picks one recommender based on context or data availability. | If user has fewer than 5 ratings → use content-based; else CF. |
Mixed | Simply merge top-N lists from each system into one recommendation list. | Show top 5 CB + top 5 CF results interleaved. |
It can be simple to combine diverse signals; can tune weights or rules, however it typically requires score normalization and decision logic.
Monolithic hybrid recommender systems
Monolithic systems merges techniques into a single model by combining their features. These learn complex interactions between signals without a separate fusion step, but can become high-dimensional; needs more training data.
Strategy | How it works | Example |
---|---|---|
Feature Combination | Treat other systems' outputs as additional input features to a main recommender. | In a CB model, add CF-predicted rating as a new feature. |
Feature Augmentation | Use one system to enrich the user/item profiles, then feed these enhanced profiles to another. | Use association-rule CF to add "likely tags" to item metadata. |
Pipelined hybrid recommender systems
Recommenders are applied in sequence, each narrowing or refining the candidate set.
Strategy | How it works | Example |
---|---|---|
Cascade | First system produces a coarse top-K; the second refines ranking among those. | CB orders candidate items; CF re-ranks top 20 by neighborhood. |
Meta-Level | The model learned by one system becomes the input data for the next. | Train a CB profile-model for each user; use those profiles in CF. |
These are very Efficient, as later stages only process a small set. But Early stage errors can't be recovered later.