Notes

Tag-Based Recommendation

The words people stick on things carry information a star rating never does. Someone who labels a film “slow-burn” or a recipe “weeknight” has described it in a vocabulary no catalogue editor thought to add.

Turning labels into a score
Tag-based recommendation treats the free-text labels users apply to items as the content features of a content-based recommender. Each item becomes a vector over the tag vocabulary, weighted by how many distinct users applied each tag and dampened by TF-IDF so that “music” does not drown out “shoegaze”. A user profile is the aggregate of tags on the items that user engaged with, and the score is the similarity between the two vectors. The richer formulation keeps all three modes — user, item, tag — and factorises the resulting tensor, which folds tag data into a latent-factor model rather than a similarity one.

Why it matters
Tags are content nobody had to author. One user tagging a newly added item makes it describable and therefore retrievable immediately, a cold-start route pure collaborative filtering has no access to. They also give recommendations a human-readable reason — “because you liked something tagged noir” — and that explanation falls out of the feature itself. The MovieLens tag genome is the dataset to look at: relevance scores for a thousand tags across every film.

What goes wrong
The vocabulary is uncontrolled, so “sci-fi”, “scifi” and “science fiction” split one concept into three features, and most items carry no tags at all. Tagging is also wide open to manipulation by whoever benefits from an item being found.

Tag-based recommendation uses the free-text labels users attach to items as content features: an item is a vector over the tag vocabulary, a user profile aggregates the tags on items they engaged with, and similarity between the two produces the score. Because one tag makes a new item describable, it supplies a cold-start route collaborative filtering lacks, and it yields a readable reason for each suggestion — at the cost of an uncontrolled, duplicated vocabulary.

Think of a second-hand bookshop where customers scribble notes on the shelf labels: “good for a rainy weekend”, “funny but sad”. Those scribbles tell you more about a book than its official category ever would.

Tag-based recommendation works from exactly those labels. Users of a site attach their own words to films, songs or products, and the software uses that pile of words as a description of each item — then looks for other items described the same way as the things you already liked. The big advantage: a brand-new item becomes findable the moment one person labels it, without waiting for thousands of people to buy it first.