Recommenders / Systems
verifiedTwo-Tower Retrieval
Encode the user with one network and the item with another, and let the score be a dot product. Because the item side does not depend on the user, every item embedding can be computed in advance and searched with a nearest-neighbour index — which is what makes retrieval over millions of items possible in milliseconds.
The architecture's constraint is exactly its advantage: no interaction between user and item features before the dot product, so anything requiring their combination has to wait for the ranking stage. Training uses in-batch negatives, which introduces a popularity bias that has to be corrected — popular items appear as negatives more often and get pushed down for everyone.
Score s(u,i) = f(u)·g(i), so g can be precomputed and indexed. In-batch softmax makes the negative distribution proportional to item frequency, biasing scores by roughly log p(i); correcting with a logQ subtraction restores the intended objective, and omitting it systematically demotes exactly the items most users want.
precomputed holds 50% of the budget; rest holds the remaining 50%.
Work done offline on item embeddings against work left for request time, in equal units. Drag the precomputation up to watch the request-time cost vanish — this shape is why the two towers may not talk to each other.
Reviewed by opendroid · 2026-08-18
- arXiv:1906.00091 — Deep Learning Recommendation Model for Personalization and Recommendation Systems
Origin · not linkable
- Yi et al. 2019 — Sampling-Bias-Corrected Neural Modeling for Large Corpus Item Recommendations · RecSys 2019 · doi:10.1145/3298689.3346996