Item2Vec
Treat one shopping basket as a sentence and each product inside it as a word, and you can hand a catalogue to a word-embedding model without it noticing the difference. That observation is Item2Vec.
The borrowing
Item2Vec, from Barkan and Koenigstein in 2016, applies skip-gram with negative sampling — word2vec — to sets of co-consumed items. A user's session, basket or playlist becomes the context window, and the model learns one embedding per item by training it to tell genuine co-occurrences apart from randomly drawn items. Because a basket has no meaningful order, the window is the whole set rather than a sliding span, which is the main departure from the text original.
What you get
The output is an item embedding table and nothing else — no user vectors at all. Similarity is cosine distance between item vectors, so the model answers "what else is like this" directly and drops straight into FAISS for approximate nearest-neighbour retrieval. It is the standard way to produce item embeddings when feedback is implicit and the session is the natural unit, and it powers a related-items module with no ranking model behind it.
Why it is still in use
It trains cheaply, needs no ratings, and produces better neighbourhoods than raw co-occurrence counts, because negative sampling discounts globally popular items instead of rewarding them. The limits are equally plain:
- No user representation exists, so personalisation needs a separate pooling step over a user's history.
- Items below a frequency threshold get unreliable vectors, and an item never seen in training gets none.
Item2Vec applies word2vec's skip-gram with negative sampling to sets of co-consumed items, treating a user's session or basket as the sentence and each item as a word. Training yields an item embedding table — and no user vectors — in which cosine distance expresses item similarity, ready for approximate nearest-neighbour retrieval. It needs only implicit interactions and beats raw co-occurrence counts, because negative sampling discounts globally popular items rather than rewarding them.
Language software learned a neat trick: words that keep turning up in the same sentences probably mean related things. Item2Vec borrows that trick wholesale for shopping and listening.
A basket is treated as a sentence and each product in it as a word. Feed in millions of baskets and the software starts placing related products close together — not because anyone described them, but because people keep choosing them together. The result is a map of the catalogue where "what else is like this" is answered by looking at whatever sits nearby. Products that almost nobody buys end up badly placed on that map.