This is the Julia Repository for general low-rank Matrix/Tensor Completion (with/without Side Information). The main interface is:
Impute(A,k;method=:fastImpute,kwargs)
Ais the Matrix of sizen x m/ Tensor of sizen x m x pwith missing entries. The entries missing should be of type Missing.kis the desired integer rank of fitting. For Tensors, this is currently assumed to be the canonical CP/Kruskal rank.kwargsare named optional arguments to specify hyperparameters for each method. For the specific names of the hyperparameters, please see the methods listed below.methodis the keyword for specifying the low rank imputation method. Currently the following methods are implemented:- fastImpute (Fast Exact Matrix Completion: A Unifying Optimization Framework).
- The hyperparameters are:
lr(learning rate),B(side information matrix on the columns of sizem x s, default none),approx(T/F, whether approximately low rank or perfectly low rank), andγ(regularization parameter).
- The hyperparameters are:
- fastImputeT (Tensor Completion based on fastImpute)
- The hyperparameters are:
lr(learning rate), andγ(regularization parameter).
- The hyperparameters are:
- (Not Completed) softImpute (Matrix Completion and Low-Rank SVD via Fast Alternating Least Squares).
- The hyperparameter arguments are:
λ(regularization parameter).
- The hyperparameter arguments are:
- fastImpute (Fast Exact Matrix Completion: A Unifying Optimization Framework).
Current version is tested on Julia v1.2.
R package fastImpute would be available soon.