# Sparse PCA/Dictionary learning when the features are extremely sparse?

I am trying to do sparse PCA/dictionary learning, that is decompose a matrix $X\approx UV$ where the loading matrix $V$ is sparse, usually enforced with an $\ell_1$ penalty (the difference between sparse PCA and dictionary learning being whether the inner dimension of $U$ and $V$ is greater than the smaller dimension of $X$). In my data the columns of $X$ are extremely large (order $10^8$) but extremely sparse (order $10^2$). Are there specialized algorithms for the case of sparse data? Online is a plus.

• The R package irlba is fantastic for SVD on sparse data, which will get you most of the way to PCA. – Zach Jan 24 '14 at 19:28
• I believe that this answer of mine is relevant to your question. – Aleksandr Blekh Feb 1 '15 at 3:48