Singular value decomposition for collaborative filtering on a GPU
Nihon Unisys, Ltd.
IOP Conference Series: Materials Science and Engineering, Vol. 10, No. 1. (01 June 2010), 012017
A collaborative filtering predicts customers’ unknown preferences from known preferences. In a computation of the collaborative filtering, a singular value decomposition (SVD) is needed to reduce the size of a large scale matrix so that the burden for the next phase computation will be decreased. In this application, SVD means a roughly approximated factorization of a given matrix into smaller sized matrices. Webb (a.k.a. Simon Funk) showed an effective algorithm to compute SVD toward a solution of an open competition called “Netflix Prize”. The algorithm utilizes an iterative method so that the error of approximation improves in each step of the iteration. We give a GPU version of Webb’s algorithm. Our algorithm is implemented in the CUDA and it is shown to be efficient by an experiment.
March 3, 2011 by hgpu