Teachers Pay Teachers is an online marketplace for teachers to buy, sell and share original educational resources. We find that it is hard to extract good recommendations for a group using traditional recommender systems because of the focus on user-specific results. We present a method to create recommendations for a cluster of users using community detection and label propagation.
Teachers Pay Teachers is an online marketplace for teachers to buy, sell and share original educational resources. As any marketplace grows, there is an increasing need to provide a customized experience so that the site feels like it is "for me". We find that it is hard to extract good recommendations for a group using traditional recommender systems because of the focus on user-specific results.
We present a method to create recommendations using community detection and label propagation. By utilizing a graph data structure and community detection algorithms, we are able to group a fraction of our users into natural clusters. As a second step to solve a computational scaling problem, we use label propagation, a semi-supervised machine learning algorithm, to identify the cluster of the remaining users.
In this way we are able to make cluster-level recommendations so that teachers can find the most appropriate teaching resources based on their collective purchase history. In particular we find that this approach gives quality recommendations for users with very little purchase history, i.e. harnessing the power of “power users”.
In this talk, we show how to use standard Python packages to identify clusters and make product recommendations.