The PCA algorithm using SVD