Sum-of-Squares method, dictionary learning, and tensor decomposition
Banff approximation workshop, STOC 2015.
We give a new approach to the dictionary learning (also known as “sparse coding”) problem of recovering an unknown matrix (for ) from examples of the form where is a random vector in with at most nonzero coordinates, and is a random noise vector in with bounded magnitude. For the case , our algorithm recovers every column of within arbitrarily good constant accuracy in time , in particular achieving polynomial time if for any , and time if is (a sufficiently small) constant. Prior algorithms with comparable assumptions on the distribution required the vector to be much sparser—at most nonzero coordinates—and there were intrinsic barriers preventing these algorithms from applying for denser .
We achieve this by designing an algorithm for noisy tensor decomposition that can recover, under quite general conditions, an approximate rank-one decomposition of a tensor , given access to a tensor that is -close to in the spectral norm (when considered as a matrix). To our knowledge, this is the first algorithm for tensor decomposition that works in the constant spectral-norm noise regime, where there is no guarantee that the local optima of and have similar structures.
Our algorithm is based on a novel approach to using and analyzing the Sum of Squares semidefinite programming hierarchy (Parrilo 2000, Lasserre 2001), and it can be viewed as an indication of the utility of this very general and powerful tool for unsupervised learning problems.