Facebook seems to have a pretty good PCA / low rank randomized SVD here: https://github.com/facebook/fbpca I wonder whether we should use that to replace our own randomized svd. Ping @ogrisel