Collaborative Filtering: A New Approach to Recommendation Systems
Collaborative filtering is a widely used method for analyzing user activities and creating recommendation systems for various items. However, traditional techniques have their limitations. In this article, we introduce Sliced Anti-symmetric Decomposition (SAD), a new model for collaborative filtering that tackles these limitations.
Unlike traditional methods that estimate latent representations of users and items, SAD takes a different approach. It introduces an additional latent vector for each item, using a unique three-way tensor view of user-item interactions. This new vector expands the user-item preferences calculated by standard dot products to general inner products. This means that it considers interactions between items when evaluating their relative preferences.
SAD is flexible and versatile. It reduces to state-of-the-art collaborative filtering models when the vector collapses to 1. However, in our work, we allow the value of this vector to be estimated from data. This has significant implications, suggesting that users may have nonlinear mental models when evaluating items. It also allows for the existence of cycles in pairwise comparisons.
To demonstrate the effectiveness of SAD, we conducted experiments on both simulated and real-world datasets. These datasets contained over 1 million user-item interactions. By comparing SAD with seven other state-of-the-art collaborative filtering models, SAD consistently produced personalized preferences with high accuracy in recommendations.
We are excited to announce that we have released the SAD model and inference algorithms in a Python library. You can find the model and its implementation on our GitHub repository.
Video: For a visual explanation of SAD and its applications in collaborative filtering, watch the video below.
With SAD, we have brought a new perspective to collaborative filtering. Its ability to capture nuanced user preferences and provide accurate recommendations sets it apart from traditional models. Give it a try and explore the potential of SAD in creating smarter recommendation systems.