~/learn/ML System Design · Monitoring & feedback loops

Feedback loops & cold start

The model shapes its own future training data — plan for it.

6 min readlesson 15 of 15feedback loopscold startexploration

why this matters

Feedback loops and cold start show up in every recommendation interview's final minutes.

Feedback loop: the model decides what users see, users can only click what they see, and those clicks become the next training data. Popular items get shown more, get clicked more, and become even more popular — while good niche items never get a chance.

Cold start: new users have no history and new items have no interactions. Solutions: use content features (text, image, category embeddings), ask onboarding questions, fall back to popularity by region or segment, and reserve exposure for new items.

The loop

model ─► shown items ─► user clicks ─► training data ─┐
  ▲                                                   │
  └───────────────────── retrain ◄─────────────────────┘

Break the loop with exploration: show a small share of items the model is unsure about. Epsilon-greedy shows a random item with probability ε (say 5%); Thompson sampling and UCB bandits explore items with high uncertainty. Log the probability each item was shown so you can correct the bias later.

Interview trap

Exploration has a short-term cost (some worse recommendations). Present it as an investment in long-term quality and fairness to new creators.

Pro tip

Keep a small random 'holdout' slice of traffic: its unbiased data is gold for evaluating and debugging future models.

key takeaways

  • Models shape their own training data.
  • Use content features and popularity for cold start.
  • Explore a little and log exposure probabilities.

check your understanding

What's a good way to recommend items to a brand-new user?