{"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/sapling-similarity-outperforms-other-local","title":"Sapling Similarity: a performing and interpretable memory-based tool for recommendation","arxiv_id":"2210.07039","date":"2022-10-13","proceeding":null,"authors":["Giambattista Albora","Lavinia Rossi-Mori","Andrea Zaccaria"],"abstract":"Many bipartite networks describe systems where an edge represents a relation between a user and an item. Measuring the similarity between either users or items is the basis of memory-based collaborative filtering, a widely used method to build a recommender system with the purpose of proposing items to users. When the edges of the network are unweighted, the popular common neighbors-based approaches, allowing only positive similarity values, neglect the possibility and the effect of two users (or two items) being very dissimilar. Moreover, they underperform with respect to model-based (machine learning) approaches, although providing higher interpretability. Inspired by the functioning of Decision Trees, we propose a method to compute similarity that allows also negative values, the Sapling Similarity. The key idea is to look at how the information that a user is connected to an item influences our prior estimation of the probability that another user is connected to the same item: if it is reduced, then the similarity between the two users will be negative, otherwise, it will be positive. We show that, when used to build memory-based collaborative filtering, Sapling Similarity provides better recommendations than existing similarity metrics. Then we compare the Sapling Similarity Collaborative Filtering (SSCF, a hybrid of the item-based and the user-based) with state-of-the-art models using standard datasets. Even if SSCF depends on only one straightforward hyperparameter, it has comparable or higher recommending accuracy, and outperforms all other models on the Amazon-Book dataset, while retaining the high explainability of memory-based approaches.","url_abs":"https://arxiv.org/abs/2210.07039v2","url_pdf":"https://arxiv.org/pdf/2210.07039v2.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":"sapling-similarity-outperforms-other-local","repo_url":"https://github.com/giamba95/saplingsimilarity","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"none","reach":null}],"tasks":[{"task_slug":"collaborative-filtering","task_name":"Collaborative Filtering"},{"task_slug":"recommendation-systems","task_name":"Recommendation Systems"}],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[{"leaderboard":"/sota/recommendation-systems-on-amazon-book","task":"Recommendation Systems","dataset":"Amazon-Book","model":"SSCF","rank_in_archive_order":1,"of":16,"metrics":{"Recall@20":"0.0773","nDCG@20":"0.0647"},"uses_additional_data":false},{"leaderboard":"/sota/recommendation-systems-on-gowalla","task":"Recommendation Systems","dataset":"Gowalla","model":"SSCF","rank_in_archive_order":11,"of":13,"metrics":{"Recall@20":"0.1775","nDCG@20":"0.1390"},"uses_additional_data":false},{"leaderboard":"/sota/recommendation-systems-on-yelp2018","task":"Recommendation Systems","dataset":"Yelp2018","model":"SSCF","rank_in_archive_order":9,"of":11,"metrics":{"NDCG@20":"0.0542","Recall@20":"0.0664"},"uses_additional_data":false}],"syntology":{"atlas_url":null,"mcp":null,"developers":"https://syntology.ai/developers"},"arxiv_metadata":null,"syntology_extracted_results":null}