search_ads_recsys / 38 · Cold start advanced lesson 38 / 39

Cold start advanced - priors, probes, exploration, and graduation

The book returns to cold start many times because it is where modeling, product design, exploration, content understanding, privacy, and system latency meet. This lesson linearizes the advanced version: define the cold entity, choose priors, collect early signals, allocate exploration, protect quality, transfer carefully, and graduate into the main ranker.

Book anchors
Based on 1.1.3, 1.2.4, 1.4.1-1.4.5, 2.6.1-2.6.7, plus later recap questions on cold-start evaluation, bandit exploration, and large-scale user/item cold start in 22.7-22.9.

1 · Cold start is three different problems

The book's first cold-start distinction is essential. Do not answer "use popularity" before naming which data is missing.

TypeMissing signalPrimary source of substitute signalCommon trap
New userNo personal behavior historyContext, onboarding, coarse profile, early implicit feedback, transferPermanent stereotyping
New item/videoNo interaction or exposure historyContent understanding, creator prior, category prior, exploration trafficSpam exploiting trial exposure
New system/regionNo local logs or labelsExternal data, manual operations, transfer learning, explorationImporting source-domain bias

Short video makes all three harder: content lifecycle is short, feedback arrives quickly, new videos arrive constantly, and the first few recommendations shape whether a user returns.

2 · Build a relay, not one cold-start model

A mature design changes policy as evidence accumulates. The book hints at this with rules, content-based recommendation, real-time feedback, bandits, and main models. Put them into a relay:

zero signal -> safe prior and diverse probes -> early implicit-feedback model -> bandit / exploration policy -> few-shot or transfer adaptation -> main personalized ranker -> normal retraining loop

The relay needs two explicit thresholds: when to enter cold-start treatment and when to leave it. Without a graduation rule, users remain trapped in early assumptions and new items stay over- or under-explored.

3 · New-user cold start: ask, infer, probe, adapt

The book names several new-user signals: registration information, lightweight interest selection, social authorization, device/context metadata, first-screen interaction, dwell, completion, swipe speed, and cross-domain behavior. Use them in order from least invasive to most behavior-specific.

StageSignalRecommendation policyRisk
Before behaviorLocale, device, time, coarse region, optional interestsSafe popular content by segment and regionPrivacy over-collection
First exposuresCompletion, fast swipe, dwell, like, follow, skipDiverse probes across broad categoriesBad probes hurt retention
First sessionSequence of early actionsSession-interest model and recency weightingOverreacting to one accidental click
After enough actionsStable category/creator affinitiesMain ranker with personalized featuresSwitching too early on sparse noise

A good onboarding feed should be both safe and informative. If all probes are globally popular comedy videos, you learn little. If probes are too random, you waste the user's first session. The book's "hot content + random exploration + content matching" pattern is a practical starting point.

Concrete interview knob: for the first few exposures, a common starter policy is majority safe/popular content, some content-matched recommendations, and a controlled exploration slice. The book gives examples such as hot-list fallback plus random/long-tail exploration and 10%-20% probe traffic. Do not treat those numbers as universal; treat them as a way to explain that exploration is budgeted, measured, and reduced as evidence arrives.

Privacy bridge to lesson 39
Cold-start priors are constrained by consent, minimization, and purpose limitation. Social-login data, device fingerprints, location, and cross-domain behavior can help, but they require explicit purpose, drift checks, and compliance review. Lesson 39 expands the privacy architecture.

4 · New-item cold start: content first, then qualified exposure

For a new video, collaborative filtering has no interactions to work with. The book therefore emphasizes content-side information: tags, category hierarchy, cover image, title, ASR text, background music, visual embeddings, quality scores, and similarity to existing items.

new video upload -> extract multimodal features -> assign category/tag/quality/trust -> find similar mature videos and audiences -> allocate small qualified exposure -> read early CTR/completion/negative feedback -> expand, hold, or suppress
SignalUseFailure mode
Content embeddingMap new video to users who liked similar contentEmbedding misses novelty or sarcasm
Hierarchical tagsBack off from rare leaf to parent categoryCoarse tags overgeneralize
Cover/title qualityPredict click appeal and cold-start CTRCan reward clickbait
Creator priorEstimate trust and initial qualityEntrenches head creators
Exploration poolCollect unbiased early feedbackSpam attempts to exploit trial traffic

5 · Exploration-exploitation is a budget

The book explicitly names epsilon-greedy, UCB, Thompson sampling, Bandit, LinUCB, and multi-objective exploration. The practical question is not "which algorithm is coolest?" It is "how much user experience are we willing to spend to learn?"

PolicySimple ideaGood fitRisk
Epsilon-greedyExplore randomly with probability epsilonSimple baselineWastes traffic if random pool is poor
UCBBoost uncertain items with upper-confidence scoreNew items with measurable feedbackCan overexpose noisy content
Thompson samplingSample from posterior reward estimateBalancing exploration with observed rewardNeeds well-calibrated priors
LinUCB/contextual banditExplore using user/item/context featuresCold users/items with feature priorsFeature bias can guide exploration poorly

In a short-video feed, exploration should be capped by safety and quality. Do not give unlimited trial exposure to low-trust content simply because uncertainty is high.

5a · Tiered cold-start flow pools (engineering the exploration budget)

"Exploration is a budget" is the principle; the flow pool is how production actually spends it. A new item is not dropped into the main ranker. It is routed through a ladder of escalating exposure pools and must clear a quality bar to climb each rung. The why is cost control with fairness: a bad item's blast radius is capped at the pool it is stuck in, while every item still gets a fair, bounded test before judgment. This is the structured alternative to "give 10% random traffic and hope."

new item → Pool 0 (probe) ~500 impressions LinUCB-allocated, "strong exploration" → Pool 1 (validate) ~5,000 impressions uniform-by-category, "weak exploration" → Pool 2 (scale) ~50,000 impressions near-normal ranking, light boost → main ranker unbounded graduated; cold treatment off promote rung k → k+1 iff quality bar met AND enough impressions logged demote / reclaim iff neg-feedback or low completion → fast down-weight

Two pieces make this work in practice, both straight from the playbook:

Worked promotion check

Suppose the Pool 0 → Pool 1 bar is "completion rate ≥ 0.35 AND report rate ≤ 0.5% over ≥ 400 qualified impressions." A probe item logs 500 impressions, 190 completions, 1 report:

completion = 190 / 500 = 0.38 ≥ 0.35 ✓ report = 1 / 500 = 0.2% ≤ 0.5% ✓ impressions 500 ≥ 400 ✓

All three clear, so the item promotes to Pool 1 (the ~5k rung). Had report rate hit 1.2%, it would be held or reclaimed regardless of CTR — the safety bar dominates the engagement bar, so a clickbait item that wins clicks but draws reports cannot buy its way up.

Per-pool Gini monitoring
Each pool carries its own fairness dashboard: the Gini coefficient (and exposure entropy) of impressions across items in that pool. A Gini drifting toward 1 inside the probe pool means a few items are vacuuming the trial budget — the relay is leaking back into Matthew-effect concentration before items have earned it. The fix is to cap per-item share within a pool, not to widen the pool. See the cold-start fairness metrics in lesson 15.
Cost-control failure mode
Flow pools fail when promotion bars are loose or the reclaim is slow: items leak into the 50k pool on noisy early luck, and the "bounded blast radius" guarantee evaporates. The discipline is that every rung is both a fairness gate (you got your fair test) and a cost gate (your downside is capped at this pool's size).

5b · Uncertainty-aware ranking: variance as an exploration bonus

Bandits (section 5) explore in a separate re-rank layer. A complementary mechanism puts exploration inside the ranker as a feature. Estimate the model's predictive uncertainty — the output variance of a Bayesian neural network (BNN) or, cheaply, the variance across several MC-dropout forward passes — and add it as a UCB-style bonus to the score:

score = μ + β·σ

where μ is the mean predicted engagement, σ its standard deviation across stochastic passes, and β the exploration strength. The book frames a related form as a convex blend, final = α·score + (1−α)·uncertainty — a different parameterization of the same instinct: "boost what we are unsure about, because that is where a probe buys the most information." (The two aren't identical — the additive bonus and the convex blend trade off mean vs. uncertainty differently — but both push exploration toward high-variance items.) An item is flagged cold by a hard rule: exposures < 100.

The bonus must α-decay (equivalently, decay β) as exposures accumulate: more data shrinks σ naturally, and you also actively pull the multiplier down so a graduated item stops getting exploration help it no longer needs.

Worked UCB score

A cold item (60 exposures, so < 100) gets 8 MC-dropout passes giving mean pCTR μ = 0.040 with σ = 0.018 (high variance — the model has barely seen it). A mature item has μ = 0.052, σ = 0.002. With β = 0.5:

cold item: score = 0.040 + 0.5 × 0.018 = 0.040 + 0.0090 = 0.0490 mature item: score = 0.052 + 0.5 × 0.002 = 0.052 + 0.0010 = 0.0530

On raw mean the cold item loses (0.040 < 0.052), but the bonus closes most of the gap (0.0490 vs 0.0530), earning it exposure to resolve the uncertainty. After ~200 more impressions its σ might fall to 0.004 and we decay β → 0.2:

score = 0.044 + 0.2 × 0.004 = 0.0448

Now the bonus is worth 0.0008 — negligible. The item rises or falls on its real mean, exactly as graduation intends.

KnobMeaningFailure mode
β / α decay rateHow fast exploration help fades with exposuresToo slow: overexpose noise; too fast: items never escape cold. Tune by A/B.
BNN / MC-dropout passesSource of the σ estimateBNN inference is expensive; MC-dropout adds latency per extra pass
cold flag (<100 exposures)When the bonus applies at allWrong threshold either starves or floods the explore lane

This is "exploration as a model feature," and it composes with the flow pools above: the bonus decides ranking within a pool's traffic; the pool decides how much traffic exists.

UCB exploration-bonus playground
Set the mean, variance, exploration strength β, and exposure count. Watch the bonus close the gap to a mature reference item, then watch α-decay shrink it as exposures climb past the cold threshold (100).
cold flag
cold
effective β
0.50
bonus β·σ
0.0090
cold score μ+β·σ
0.0490
cold score vs mature reference (μ=0.052, σ=0.002)

6 · Transfer learning helps only when domains align

The book mentions cross-domain migration: social, e-commerce, search, regional data, graph embeddings, and federated transfer. Transfer can shorten cold start, but it can also import wrong assumptions.

SourceUseful forMisalignment risk
Search queriesImmediate intent topicsQuery is temporary, not durable preference
E-commerce behaviorBrand/category affinityBuying intent differs from entertainment intent
Social graphCreator/friend affinityFriendship is not content preference
Other region/platformWarm-start model weightsCulture, catalog, and policy differ
Public/pretrained content modelSemantic understandingMay miss platform-specific engagement quality

Use transfer as a prior, not as truth. Let early local behavior override it quickly when evidence contradicts the prior.

Also monitor drift by source. A social graph prior may be useful for creator affinity but weak for entertainment topic preference; a device or region prior may help bootstrapping but become unfair if it dominates after real behavior appears.

7 · Meta-learning is fast adaptation, not zero-signal magic

The book mentions MAML/meta-learning for small-sample cold start. The right explanation is:

train across many users/items/tasks -> learn an initialization or adaptation rule -> observe a few interactions from a new entity -> update quickly with small data -> personalize faster than ordinary training

Meta-learning helps after a few informative signals arrive. It does not replace content features, privacy-safe context, exploration, or quality gates. In interviews, pair it with the relay rather than presenting it as a magic model.

7a · Beyond MAML: prototypical init and synthetic interactions

MAML is the optimization-based meta-learning family. The book names two others, and a synthesis trick worth knowing because they trade serving cost differently.

ApproachHow a new entity is warmedServing costRisk
MAML (optimization-based)Few gradient steps from a learned init on the new entity's first interactionsPer-entity fine-tune at serve timeCatastrophic forgetting on distribution shift
Prototypical / metric-basedCluster users/items into prototypes; init the new entity from its nearest prototype — no gradient stepOne nearest-neighbour lookup; cheapPrototype too coarse → bland init
Matching / memory-basedAttend over a memory of labelled support examplesMemory read per queryMemory staleness

The engineering point: prototypical-net init is often the pragmatic default for brand-new entities because the embedding is assigned by a similarity lookup against precomputed prototypes — no per-user fine-tuning in the serving path, unlike MAML. You pay the fine-tune cost only when a few real signals justify it.

Synthetic interactions attack the same sparsity from the data side: generate plausible early behavior to warm the embedding before any real impressions exist.

Hallucination / contamination caveat
Industry reports cite a +15% cold-start lift from LLM-synthesized behavior, paired with a hallucination-contamination risk: fabricated interactions can teach the model preferences the user never had, and they bias the very metrics you use to judge cold start. Treat synthetic signal as a prior to be overwritten the instant real behavior arrives — never let it survive into the graduated model, and exclude it from evaluation labels.

7b · GNN / LightGCN: borrow neighbors' embeddings through the graph

A complementary warm-up uses the structure the platform already has. Build a user–item bipartite graph (edges weighted by interaction count or dwell), initialize new nodes from attributes (category tags, demographics), then run LightGCN-style multi-hop neighbor aggregation so a cold node inherits high-order features from its few neighbors and their neighbors. A cold user's embedding becomes a weighted blend of the items they touched plus the users those items connect to. Add a cross-domain contrastive term to the BPR objective that pulls a cold user toward similar warm users in embedding space (PinSage is the production-scale example for densifying sparse behavior). See lesson 24 for the message-passing mechanics.

cold user (2 edges) ├─ item A ──┬─ warm user U1 ── item C, item D │ └─ warm user U2 ── item E └─ item B ──── warm user U3 ── item F 2-hop aggregation: cold-user embedding ← f(A, B, U1, U2, U3 …) → inherits high-order signal it never directly produced
Failure modeWhy it happensMitigation
Degenerates to feature-averagingToo few neighbors → aggregation has nothing high-order to mix; collapses to the attribute initFall back to content/prototype init below a min-degree; do not pretend the graph helped
Feature-space heterogeneityUser-attribute space (age, region) and item-content space (video frames, ASR) are not comparableProject both into a unified encoding space before aggregation
Dynamic-graph serving costNew nodes/edges arrive constantly; full re-propagation is expensiveSubgraph sampling / Temporal GNN; precompute static embeddings offline, recompute only the local subgraph on request

So the relay now has three warm-start sources that compose rather than compete: content (always available), prototype/MAML (after a few signals), and graph propagation (when the node has neighbors). Pick by what the new entity actually has.

8 · Graduate cold entities explicitly

EntityPossible graduation criteriaWhy
New userMinimum sessions, enough category exposure, stable short-term vector, uncertainty below thresholdAvoid permanent stereotypes and sparse overfit
New videoQualified impressions, non-bot feedback, category confidence, quality score, report rate below thresholdAvoid spam and noisy popularity
New creatorTrust tier, content consistency, violation checks, early audience fitBalance creator opportunity and user safety
New regionLocal label volume, drift checks, segment lift, policy fitAvoid blindly importing a source-region model

Graduation can be one-way or staged. For users with interest drift, the system may re-enter a "session cold-start" mode for a topic even when the user is not globally new.

9 · Evaluate cold start separately

The book emphasizes cold-start-specific evaluation: first-screen CTR, first-session value, D7 retention, new-item exposure, exploration efficiency, and long-term value. Global averages hide cold-start failures because mature users dominate traffic.

CohortMetricsQuestion
New usersFirst-session effective watch, fast-swipe rate, D1/D7 retention, onboarding completionDid we learn preference without losing the user?
New videosQualified exposure count, early completion, report rate, graduation rateDid we give fair trial traffic safely?
New creatorsCreator activation, content quality, repeat creation, violation rateDid the ecosystem grow without spam?
Exploration policyExploration regret, information gain, long-tail coverage, retention guardrailsWas the learning worth the user cost?

9a · Cold-start A/B specifics

General A/B design lives in lessons 33 and 08. Cold start adds four problems that change the experiment: the metric you care about (D7 retention) is far downstream, cold traffic is a thin slice, the first days are dominated by a novelty effect, and a bad strategy can hurt real users fast. The book's recipe addresses each.

ConcernCold-start design choiceWhy
Thin, mixed trafficDevice-ID hash bucketing; require ≥ 30% new-user share per bucket; reserve a 5% long-term blank/holdout with no cold-start strategyEven allocation + a clean baseline to measure long-horizon effect against
Novelty effectDiscard the first ~3 days of data (monitor only, do not decide)Early curiosity inflates engagement and would falsely validate any change
Downstream, noisy metricCUPED to remove pre-period user-baseline variance; significance bar p < 0.01 on D7 per-user watch-timeCUPED buys sensitivity so a real effect clears the bar on small traffic; the strict p guards against false positives from many cold-start variants
User-harm riskAuto-halt if negative-feedback rate jumps ≥ 15%A circuit-breaker so a bad probe policy cannot run for two weeks before D7 reads
Slow readWatch first-30-minute per-user plays as the earliest signal; Bayesian hierarchical models for fast decisions under small trafficFirst-30-min plays turn before overall watch-time, giving an early directional read while you wait for D7

The pattern to articulate: a cold-start A/B is a variance-reduction and safety exercise. CUPED and the holdout fight the small-sample noise; dropping day 1–3 and watching first-30-min plays fight the timing problem; the ≥ 15% neg-feedback halt and p < 0.01 bar bound the downside. Read the new-user cohort separately — a global watch-time win can hide a new-user retention loss the holdout would have caught.

Interview prompts you should be ready for

  1. "How do you handle a completely new user?" Use safe priors, optional interests, diverse probes, early implicit feedback, contextual bandits, and graduation to the main model.
  2. "How do you handle a new video?" Use multimodal content embeddings, tags, creator/quality priors, trial exposure, abuse filtering, early feedback, and expansion/suppression rules.
  3. "How do you balance exploration and exploitation?" Set explicit exploration budgets, use UCB/Thompson/contextual bandits, cap risky content, and evaluate regret plus retention.
  4. "Where do transfer learning and meta-learning help?" Transfer gives priors when domains align; meta-learning enables fast adaptation after a few examples. Neither solves zero signal alone.
  5. "How do you know cold start works?" Read cold cohorts separately: first-session value, D1/D7 retention, qualified exposures, graduation rate, spam/report rate, and exploration regret.
  6. "Walk me through how a brand-new item gets its first 50k impressions safely." Tiered flow pools (≈500 → 5k → 50k) with a quality+safety promotion bar at each rung, Tier-1 LinUCB strong explore plus Tier-2 uniform weak explore, sliding-decay exposure with early-signal amplification and fast neg-feedback reclaim, and per-pool Gini/entropy monitoring so the budget is bounded and fair.
  7. "You can't run a bandit re-rank layer here — how else do you make the ranker explore?" Uncertainty as a feature: flag cold at <100 exposures, use BNN or MC-dropout output variance σ as a UCB bonus score = μ + β·σ, and α-decay β as exposures grow so graduated items rise on their true mean; cost is BNN/extra-pass inference and the decay rate needs A/B tuning.
  8. "How would you A/B-test a new-user cold-start strategy, and what breaks if you A/B it like a normal feature?" Device-ID hash buckets with ≥30% new-user share plus a 5% blank holdout, drop the first ~3 days for novelty, CUPED for sensitivity, decide on D7 per-user watch-time at p<0.01, auto-halt at ≥15% neg-feedback, and read first-30-min plays as the earliest signal; naively, the novelty spike and thin traffic make a bad strategy look like a win.
Takeaway
Cold start is a relay from priors to evidence. The book's many cold-start answers become one system: use context and content when behavior is missing, explore with budgets, protect quality, adapt quickly, and graduate once reliable signal exists.