EasyDeepLearn

Incremental PCA — when do you need it?

medium

Answer

  • Dataset doesn't fit in RAM.
  • Process mini-batches, update running estimate of principal components (block Lanczos or Ross et al.'s method). scikit-learn: IncrementalPCA.
  • Constant memory O(dk) rather than O(np).
  • Slight accuracy tradeoff vs full SVD.
  • Standard for streaming / out-of-core PCA on terabyte-scale tabular data.
Check yourself — multiple choice
  • Not needed
  • Streaming / out-of-core PCA on data not fitting in RAM; constant memory O(dk); slight accuracy tradeoff vs full SVD
  • Random
  • Same as PCA

Incremental PCA: streaming mini-batches; O(dk) memory.

#dimensionality-reduction#pca

Practise Unsupervised Learning

214 interview questions in this topic.

Related questions