Our new X account is live! Follow @wizwand_team for updates
WorkDL logo mark

SVD-AE: Simple Autoencoders for Collaborative Filtering

About

Collaborative filtering (CF) methods for recommendation systems have been extensively researched, ranging from matrix factorization and autoencoder-based to graph filtering-based methods. Recently, lightweight methods that require almost no training have been recently proposed to reduce overall computation. However, existing methods still have room to improve the trade-offs among accuracy, efficiency, and robustness. In particular, there are no well-designed closed-form studies for \emph{balanced} CF in terms of the aforementioned trade-offs. In this paper, we design SVD-AE, a simple yet effective singular vector decomposition (SVD)-based linear autoencoder, whose closed-form solution can be defined based on SVD for CF. SVD-AE does not require iterative training processes as its closed-form solution can be calculated at once. Furthermore, given the noisy nature of the rating matrix, we explore the robustness against such noisy interactions of existing CF methods and our SVD-AE. As a result, we demonstrate that our simple design choice based on truncated SVD can be used to strengthen the noise robustness of the recommendation while improving efficiency. Code is available at https://github.com/seoyoungh/svd-ae.

Seoyoung Hong, Jeongwhan Choi, Yeon-Chang Lee, Srijan Kumar, Noseong Park• 2024

Related benchmarks

TaskDatasetResultRank
Collaborative FilteringMSD strong generalization
AOA Recall@200.2859
14
Collaborative FilteringNetflix strong generalization
AOA Recall@2032.06
14
Collaborative FilteringML-20M strong generalization
AOA Recall@200.372
14
Collaborative FilteringGowalla
HR@1014.4
9
Collaborative FilteringYelp 2018
HR@104.9
9
Collaborative FilteringML 1M
HR@1031.79
9
Recommendation System EfficiencyML 1M (overall)
Training Time (m)2.06
9
Collaborative FilteringML-10M
HR@100.3676
8
Recommendation System EfficiencyML 10M (overall)
Training Time (h)3.06
8
Showing 9 of 9 rows

Other info

Code

Follow for update