2015-08-21 77 views
1

有人可以告诉我,截断SVD之间的差额作为sklearn实施,为实现局部SVD,比方说,fbpca?截断SVD VS偏SVD

我无法找到一个明确的答案,因为我还没有看到任何人使用截断SVD为主要成分的追求(PCP)。

回答

1

截短的或部分的装置,你只计算一定数量的组件/奇异向量 - 值对(最强的)的。

在scikit学习的说法,“部分”通常是指这样的事实:一种方法是就行,这意味着它可以与部分数据被馈送。您提供的数据越多,它将收敛到预期的最佳状态。

两者可以结合起来,并一直,也sklearn:sklearn.decomposition.IncrementalPCA做到这一点。

+0

因此,部分SVD相当于增量PCA在sklearn?我很困惑。如果是这样,那么用于主分量追踪(即强健的PCA)的是什么? – slaw

+0

强大的pca在低位+稀疏的纸条? – eickenberg

+0

是的,Candes纸。正如我目前所了解的(如果我错了,纠正我),PCP可用于将矩阵(M)分解为低秩(L)和稀疏(S),并且通常使用部分SVD来实现。我想知道如何使用sklearn/Python来获取L + S,而不必根据论文来滚动我自己的算法。另外,如果M太大而不适合记忆,我该怎么办?您是否已经有了一个确定L + S的在线方法?在此先感谢 – slaw