softImpute-package: Softimpute for matrix completion

softImpute-packageR Documentation

Softimpute for matrix completion

Description

SoftImpute solves the following problem for a matrix X with missing entries: \min||X-M||_o^2 +\lambda||M||_*. Here ||\cdot||_o is the Frobenius norm, restricted to the entries corresponding to the non-missing entries of X, and ||M||_* is the nuclear norm of M (sum of singular values). For full details of the "svd" algorithm are described in the reference below. The "als" algorithm will be described in a forthcoming article. Both methods employ special sparse-matrix tricks for large matrices with many missing values. This package creates a new sparse-matrix class "SparseplusLowRank" for matrices of the form

x+ab',

where x is sparse and a and b are tall skinny matrices, hence ab' is low rank. Methods for efficient left and right matrix multiplication are provided for this class. For large matrices, the function Incomplete() can be used to build the appropriate sparse input matrix from market-format data.

Author(s)

Trevor Hastie and Rahul Mazumder

Maintainer: Trevor Hastiehastie@stanford.edu

References

Rahul Mazumder, Trevor Hastie and Rob Tibshirani (2010) Spectral Regularization Algorithms for Learning Large Incomplete Matrices, https://hastie.su.domains/Papers/mazumder10a.pdf Journal of Machine Learning Research 11 (2010) 2287-2322
Trevor Hastie, Rahul Mazumder, Jason Lee, Reza Zadeh (2015) Matrix Completion and Low-rank SVD via Fast Alternating Least Squares, https://arxiv.org/abs/1410.2596
Journal of Machine Learning Research, 16, 3367-3402


softImpute documentation built on June 10, 2025, 9:10 a.m.