↗ OpenReview ↗ NeurIPS Homepage ↗ Chat
TL;DR#
Matrix completion, recovering a low-rank matrix from a small number of its entries, is a significant problem in machine learning and data analysis. Existing fast algorithms often rely on assumptions about data distribution, and these assumptions do not always hold true for real-world data, a problem known as generative overfitting. Semi-random models, which allow some degree of adversarial entry selection, provide a more realistic setting, but efficient high-accuracy algorithms for semi-random matrix completion remained elusive.
This paper introduces a novel, efficient algorithm to solve the semi-random matrix completion problem. The method uses an iterative approach with adaptive reweighting to progressively recover the matrix, using techniques from optimization and graph theory. Crucially, the algorithm provides guarantees on accuracy even in noisy settings and achieves nearly-linear time complexity, substantially improving upon existing solutions. The new algorithm avoids the polynomial dependence on inverse accuracy and condition number found in previous work, opening up possibilities for high-precision matrix recovery in practical applications.
Key Takeaways#
Why does it matter?#
This paper is crucial because it tackles the limitations of existing fast matrix completion algorithms that struggle with real-world, semi-random data. By introducing a novel algorithm robust to data irregularities and achieving high accuracy, it significantly advances the field. This opens doors for improved applications across machine learning and data analysis.
Visual Insights#
Algorithm 7 is a post-processing step in the matrix completion algorithm. It takes as input a rank-r matrix M that is approximately close to a rank-r* matrix M*, but only on a submatrix. The algorithm aims to recover the full matrix M* by identifying and correcting columns with large errors. It uses the Sparsify subroutine to find columns with few large errors, and then a Fix subroutine, applying regression, to improve the approximation of M to M*. The output is a new matrix that is entrywise close to M*.