TruncatedVD-解释的差异



对于sci-kit learn中的RandomizedPCA,我可以看到explained_variance_ratio_属性中每个分量所解释的方差。我能从TruncatedSVD那里得到类似的东西吗?我想知道是否值得让TruncatedSVD返回更多组件。

注意:我甚至不知道"解释方差"的概念是否适用于TruncatedSVD技术。

我需要检查,但即使是RandomizedPCAexplained_variance_ratio_也可能损坏。我认为在截断SVD时,没有一种原则性的方法来计算它。

编辑:我刚刚通过从数据中计算真实解释的方差率来检查这个笔记本,事实上RandomizedPCA是在撒谎。

最后,如果你想计算真正解释的方差,你可以根据数据来计算:

import numpy as np
from sklearn.decomposition import TruncatedSVD
model = TruncatedSVD(n_components=10).fit(X)
X_proj = model.transform(X)
explained_variances = np.var(X_proj, axis=0) / np.var(X, axis=0).sum()

第二次编辑:我在此处报告了此问题:https://github.com/scikit-learn/scikit-learn/issues/2663

相关内容

  • 没有找到相关文章

最新更新