ML Systems Lab Open interactive version →
Advanced 65 min read recommendationcold startexplorationdelayed feedbackbatched bandits

Bandits in Recommendation Systems

Cold start, exploration bonus in ranking, batched bandits, delayed feedback, cascaded exploration

Pure exploitation recommendation systems have a fundamental self-fulfilling problem: items that were never shown cannot accumulate the impressions needed to estimate their quality, so they are never shown. Popular items stay popular not because they are always the best choice but because they received the most data. New items, niche items, and items that would suit specific user segments never get discovered. This is the filter bubble — not a philosophical concern but a measurable system failure: catalog coverage collapses, long-tail content atrophies, and users see an increasingly narrow slice of what is available.

Bandit exploration in recommendation systems must confront engineering realities that pure bandit theory ignores: batched updates (not per-interaction), delayed feedback (clicks arrive seconds to days after impressions), and cascade position bias (users scan top-to-bottom, so items at higher positions get more examination regardless of quality). The practical answer is to dedicate a fixed exploration budget and use content-based priors to warm-start new items rather than starting from scratch.

Key points

Takeaway

Pure exploitation creates a filter bubble: items that receive no impressions cannot accumulate data, so they never escape the cold start, so catalog coverage collapses. The operational answer is: dedicate a fixed exploration budget (e.g., 5% of traffic), use content-based priors to warm-start new item posteriors, and use position-debiased reward estimates to avoid conflating cascade position effects with item quality — otherwise exploration slots at high positions look like item quality improvements.

Recap

Check your understanding

Q1. A Netflix-scale system has 50M movies. 10,000 new movies are added each month. Select the two elements a sound cold-start exploration strategy needs.

Q2. Your recommendation system updates model parameters once per day (batched bandit). You observe that UCB scores computed at midnight are stale by end of day because popular items have shifted. How do you handle this?

Q3. Explain cascade bandits. How does position bias complicate exploration in recommendation ranking?

Try it interactively

ML Systems Lab is a free interview-prep platform for ML engineers — work through the full interactive module, quizzes, and drills.

Open ML Systems Lab →