Absorbing diagonal algorithm for enhancing randomized SVD algorithms in collaborative filtering
conference contributionposted on 2019-01-01, 00:00 authored by Junfeng Wu, J He, C H Chi, Belinda HuangBelinda Huang, P Li, Y Ji, H Yao, Y Wu
© 2016 Copyright held by the owner/author(s). Collaborative filtering is a main-stream technique to alleviate information overload. Singular Value Decomposition (SVD) has become very popular in the field of collaborative filtering. For computation of collaborative filtering, traditional SVD algorithms are too slow, randomized SVD algorithms using sampling techniques are more practical than them. The approximation accuracy of these randomized SVD algorithms, however, comes with a high price at their sampling. The enlargement of sample-set picked by the sampling will dramatically increase the computational complexity. The algorithm proposed in this paper aims to give a more efficient precision-improvement to these randomized SVD algorithms under some assumptions of collaborative filtering. The idea of our algorithm is two-fold. Firstly, the a priori error estimate of these randomized SVD algorithms is replaced by an efficient a posteriori estimate to control the amount of further sampling adaptively. Secondly, since SVD is actually a factorization to diagonalize a matrix with orthogonal transforms, our algorithm iteratively improve the precision with two basic operations: a diagonal-attraction operation to transform the matrix according to further sampling for better concentration of residuals near the diagonal, and a diagonal-absorption operation to absorb a large portion of these concentrated residuals into the diagonal. Experiments have shown that our algorithm can efficiently improve the precision of a randomized SVD in collaborative filtering.