Memory-based collaborative filtering aims at predicting the utility of a certain item for a particular user based on the previous
ratings from similar users and similar items. Previous studies in finding similar users and items are based on user-defined
similarity metrics such as Pearson Correlation Coefficient or Vector Space Similarity which are not adaptive and optimized
for different applications and datasets. Moreover, previous studies have treated the similarity function calculation between
users and items separately. In this paper, we propose a novel adaptive bidirectional similarity metric for collaborative filtering. We automatically learn similarities between users and items simultaneously through matrix factorization.
We show that our model naturally extends the memory based approaches. Theoretical analysis shows our model to be a novel generalization
of the SVD model. We evaluate our method using three benchmark datasets, including MovieLens, EachMovie and Netflix, through
which we show that our methods outperform many previous baselines.