Recommendation & search
Recommendation
feeds, "you may also like", email picks, playlists
Rank a catalogue for each user from interaction history.
Linear algebra
Probability & Bayes
Optimisation
Foundations
Matrix factorization is low-rank approximation; implicit-feedback losses are probabilistic models of exposure.
Frame the problem
Frame
The target is an interaction, the unit is a user-item pair, and the business metric sits downstream of the ranking metric.
Sourcing & signal
Exploring the data
Labeling & data collection
Data & labels
Labels are implicit feedback, so absence is not a negative. Decide how negatives are sampled.
Embedding layers
Represent
Ids become embeddings; side features join them. See click-through prediction for the high-cardinality tricks.
Split the data
Temporal splits & backtesting
Split
Temporal, per user. A random split leaks the future.
Dumb baseline
Collaborative filtering
What goes together
Market basket analysis. Association rules are still the fastest answer to 'frequently bought together'.
Association rules
Candidate generation
Matrix factorization first. Two-tower when you have side features or need fresh items.
Matrix factorization
Metric learning
Two-tower retrieval & ANN
Ranking
Gradient boosting on features is a strong ranker. Deep rankers when interaction volume justifies them.
Gradient boosting
Factorization machines
Deep rankers
Sequence and graph, if warranted
Session-based needs order. Graph methods when the interaction graph is the signal.
Sequential recommenders
Graph recommenders
Cold start
Content fallbacks for new items, popularity for new users.
The funnel & cold start
Model
Popularity, then item-item collaborative filtering.
Loss functions
Train
Pairwise or sampled-softmax losses for retrieval; pointwise for the ranker. Negative sampling is the hyperparameter that matters most.
Ranking & recsys metrics
Embedding geometry & retrieval eval
Offline / online gap
Evaluate offline
Recall@k for retrieval, NDCG for ranking. Expect disagreement with production.
A/B testing & interleaving
Bandits
Evaluate online
Interleaving beats A/B for ranking sensitivity. Bandits for the exploration slot.
Serving & release
Monitor & retrain
Ship & monitor
Feature freshness, and the feedback loop between what you show and what you learn.
Press enter or space to select a node. You can then use the arrow keys to move the node around. Press delete to remove it and escape to cancel.
Press enter or space to select an edge. You can then press delete to remove it or escape to cancel.