This repository consists of my graduate research on data completion via low-rank matrix and tensor completion, and maximum volume algorithms for finding dominant submatrices of matrices. All algorithms are implemented in MATLAB and/or Python.
Low-Rank matrix completion is the task of completing missing entries of a partially complete matrix subject to the constraint that the rank of the resulting matrix is minimized. This is a non-convex minimization problem, and as such is considered difficult to solve.
- alternating projection
- alternating projection with maximum volume skeleton decomposition (MVSD)
- schur maximum volume gradient descent
Like Low-Rank matrix completion, Low-Rank tensor completion is the task of completing the missing entries of a partially complete tensor subject to the constraint that the rank of the resulting tensor is minimized. Also like low-rank matrix completion, it is also a non-convex minimization problem.
Unlike matrices, there are multiple distinct definitions for the rank of a tensor. In this repository, one tensor completion algorithm is presented which completes partially complete tensors with a particular structure of known entries subject to the constraint that the multilinear rank is minimized.
Maximum volume algorithms find
- maxvol
- simple greedy maxvol
- greedy maxvol
- alternating maxvol
- algernating greedy maxvol
Consider the following
Suppose 25% of the pixels are deleted at random.
We would like to recover the missing entries. Using the alternating projection algorithm, we recover the following image.
Using the Schur maximum volume gradient descent method, we recover the following image.