Home / Companies / Neo4j / Blog / Post Details
Content Deep Dive

Collaborative Filtering: Creating the Best Teams Ever

Blog post from Neo4j

Post Details
Company
Date Published
Author
Maurits van der Goes
Word Count
1,952
Language
English
Hacker News Points
-
Summary

We are developing a graph recommendation system for Part-Up, an online platform that enables people to create and manage virtual teams. We need to serve users one team that perfectly matches their interests, ambitions, and moods from over 400 available public teams. To achieve this, we are using collaborative filtering with a hybrid database structure, combining MongoDB and Neo4j. Our system architecture includes GraphAware for recommendation framework, Java Importer for data import, and JCypher for Neo4j interaction. We have designed algorithms to overcome filtering challenges such as data sparsity, grey sheep, scalability, shilling attacks, and synonymy. Our approach is item-based collaborative filtering with adjusted cosine similarity and weighted sum, allowing us to provide personalized recommendations to users. The system is domain-independent, easy to customize, scalable, and transparent, making it a necessity for any platform offering team management services.