Solving Principal Component Pursuit in Linear Time via Filtering

Recently, recovering a low rank matrix from sparsely corrupted data, which is known as Robust Principal Component Analysis (RPCA), has attracted tremendous interest and also found many applications in computer vision society. The solution to RPCA can be exactly found by Principal Component Pursuit (PCP), i.e., minimizing a combination of nuclear norm and norm. The existing methods for solving PCP all require singular value decompositions (SVD) of the data matrix, resulting in a high computational complexity, hence preventing the applications of RPCA to very large scale problems. In this paper, we propose a novel algorithm, called filtering, for \emph{exactly} solving PCP with an complexity, where is the size of data matrix and is the rank of the matrix to recover, which is supposed to be much smaller than and . Moreover, filtering is \emph{highly parallelizable}. It is the first algorithm that can \emph{exactly} solve a nuclear norm minimization problem in \emph{linear time} (with respect to the data size). With filtering, applications of RPCA to very large scale problems becomes possible. Numerical experiments testify to the great advantage of filtering in speed over state of the art algorithms for solving PCP.
View on arXiv