RecSys & Search

The Cold Start Problem

How to recommend items or personalize feeds when zero interaction history exists for new users or items.

🟡 intermediate4 min readrecsysmust-know
The Cold-Start Problem occurs in recommender systems when a new user joins (User Cold Start) or a new item is uploaded (Item Cold Start), resulting in zero historical interaction logs. Because Collaborative Filtering relies on interaction history, pure CF models fail. Production solutions include Content-Based embeddings (extracting text/image features via Multimodal models), Hybrid Architectures, Active Learning onboarding surveys, and Multi-Armed Bandit exploration algorithms (Epsilon-Greedy, Thompson Sampling).

The Cold-Start Taxonomy

                               Cold-Start Modes
               ┌──────────────────────┴──────────────────────┐
               ▼                                             ▼
       User Cold-Start                               Item Cold-Start
   (New user signs up; zero                      (New product/video uploaded;
    historical click/view logs)                   zero view/purchase history)

Solution Matrix

Cold-Start TypeProduction SolutionMechanics
Item Cold-StartContent-Based EmbeddingsExtract deep text/image embeddings from item metadata (Title, Description, Visuals) using Pretrained Encoders (CLIP, BERT).
Item Cold-StartMulti-Armed Bandits (MAB)Use Thompson Sampling or UCB to inject cold items into feeds with exploration bonuses, gathering initial interaction data.
User Cold-StartActive Learning OnboardingAsk user to select 3–5 favorite genres/categories during signup to bootstrap initial user vector $u$.
User Cold-StartContextual & Demographic DefaultsRecommend top-trending local items based on User IP location, Device type, and Time of Day.
BothHybrid Deep Models (Wide & Deep)Pass content features through "Wide" linear path and interaction embeddings through "Deep" neural path.

Multi-Armed Bandits for Cold Item Exploration

For a new item $j$, model CTR as Beta distribution $\text{Beta}(\alpha_j + 1, \beta_j + 1)$:

       New Item (0 clicks, 0 views)              Established Item (1,000 clicks, 10,000 views)
       Beta(1, 1) -> Wide Flat Distribution      Beta(1001, 9001) -> Sharp Narrow Peak
       (High uncertainty -> Sampled for Explore)  (High certainty -> Exploitation)

Thompson Sampling: For each candidate item, sample click probability $\theta_j \sim \text{Beta}(\alpha_j, \beta_j)$. Rank items by sampled $\theta_j$. Highly uncertain cold items occasionally draw high $\theta_j$ values, getting showcased to collect real user feedback.

Say this out loud

"The cold-start problem occurs when new users or items have zero historical interaction logs, breaking collaborative filtering. We solve Item Cold-Start using Content-Based embeddings extracted from text and image metadata via Two-Tower models, and Multi-Armed Bandits (Thompson Sampling) for real-time exploration. We solve User Cold-Start using onboarding preference selection and contextual defaults like location and trending items."

Follow-ups to expect

Check yourself

Question 1 of 3

Which technique solves the Item Cold-Start problem for a newly uploaded video with 0 views in a YouTube-style recommendation engine?

More in RecSys & Search

See all →
Collaborative Filtering5 minTwo-Stage: Retrieval then Ranking5 minLearning to Rank: Point, Pair, List5 min