Implementation and comparison (time, space) of SVD and CUR matrix decomposition algorithms
SVD vs CUR DECOMPOSITION
It implements both the SVD and the CUR Matrix Decomposition algorithms and compares the efficiency of both these approaches (In terms of space, time etc.).
It also shows the instances where SVD is better, and instances where CUR is better.
The pseudo code for the algorithms can be found in the slides.
Tips and Tricks:
Since CUR Decomposition involves use of random rows and columns for decomposing the matrix (Random Number Generator), a seed has been used to ensure that output remains consistent over multiple runs.
Corpus:
The Rating or Review dataset used is .
MovieLens Latest Datasets (https://grouplens.org/datasets/movielens/)
Programming Language used: Java
Additional Information:
The core of both the SVD and CUR Decomposition algorithms is coded.
We can also output the results of this phase (All the three matrices that the original matrix has been decomposed to).
The final release contains the following documents: