{"about":{"site":"https://codewithpapers.app","non_affiliation":"Code with Papers and Syntology are not affiliated with, endorsed by, or sponsored by Papers with Code, Meta, or the pwc-archive mirror.","licence":"CC BY-SA 4.0","licence_url":"https://creativecommons.org/licenses/by-sa/4.0/legalcode","attribution":"https://codewithpapers.app/attribution","modified":"archive material modified by Syntology; see the attribution page"},"url":"/paper/zero-shot-recommendation-as-language-modeling","title":"Zero-Shot Recommendation as Language Modeling","arxiv_id":"2112.04184","date":"2021-12-08","proceeding":null,"authors":["Damien Sileo","Wout Vossen","Robbe Raymaekers"],"abstract":"Recommendation is the task of ranking items (e.g. movies or products) according to individual user needs. Current systems rely on collaborative filtering and content-based techniques, which both require structured training data. We propose a framework for recommendation with off-the-shelf pretrained language models (LM) that only used unstructured text corpora as training data. If a user $u$ liked \\textit{Matrix} and \\textit{Inception}, we construct a textual prompt, e.g. \\textit{\"Movies like Matrix, Inception, ${<}m{>}$\"} to estimate the affinity between $u$ and $m$ with LM likelihood. We motivate our idea with a corpus analysis, evaluate several prompt structures, and we compare LM-based recommendation with standard matrix factorization trained on different data regimes. The code for our experiments is publicly available (https://colab.research.google.com/drive/1f1mlZ-FGaLGdo5rPzxf3vemKllbh2esT?usp=sharing).","url_abs":"https://arxiv.org/abs/2112.04184v1","url_pdf":"https://arxiv.org/pdf/2112.04184v1.pdf","source":{"archive":"pwc-archive (Hugging Face), CC BY-SA 4.0","snapshot":"2025-07-28","licence_url":"https://creativecommons.org/licenses/by-sa/4.0/legalcode","row_kind":"abstracts"},"code_links":[{"paper_slug":"zero-shot-recommendation-as-language-modeling","repo_url":"https://github.com/sileod/language-model-recommendation","is_official":1,"mentioned_in_paper":0,"mentioned_in_github":0,"framework":"none","reach":{"status":"ok","spdx":"Apache-2.0"}}],"tasks":[{"task_slug":"collaborative-filtering","task_name":"Collaborative Filtering"},{"task_slug":"language-modeling","task_name":"Language Modeling"},{"task_slug":"language-modelling","task_name":"Language Modelling"}],"methods":[],"datasets_introduced":[{"slug":"language-modeling-recommendation","name":"language-modeling-recommendation","full_name":""}],"methods_introduced":[],"results":[{"leaderboard":"/sota/language-modelling-on-language-modeling","task":"Language Modelling","dataset":"language-modeling-recommendation","model":"GPT2","rank_in_archive_order":1,"of":1,"metrics":{"1:1 Accuracy":"48.8"},"uses_additional_data":false}],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=2112.04184","mcp":null,"developers":"https://syntology.ai/developers"},"arxiv_metadata":null,"syntology_extracted_results":null}