**Singular-Value Decomposition (SVD)** is a **matrix decomposition method**. It is not used to normalize the data, but to get rid of redundant data. SVD is used for the purpose of **dimensionality reduction**.

**For example**, if you have two features in the dataset, one is humidity index and second is the probability of rain, then their correlation is evaluated. If the second one does not give any additional information, which useful for a classification or regression task, then it will be removed. The eigenvalues in SVD tell which variables are most informative, and which ones you do not need.

The working of SVD is simple. You perform SVD over your training data (a matrix). Then it set all values of S less than a certain arbitrary threshold (e.g. 0.1), then it fetches this new matrix S'. Some features are now set to zero and can be removed, sometimes without any performance penalty. This is called **k-truncated SVD**.

In some cases SVD can't help you with sparsity, it only helps you when features are redundant. Two features can be sparse and informative (relevant) both for a prediction task, so you shouldn’t remove either one.

Using SVD, you can go from n features to k features, where each feature is a linear combination of the original n. It is a dimensionality reduction step or you can say feature selection method. When some redundant features are present, then a feature selection algorithm may lead to better classification performance than SVD depending on your data set.

Learn more about PCA and SVD by enrolling in machine Learning courses and certification.