我正试图从特征向量中获取方差。
explained_variance_ratio_
中的explained_variance_
和PCA
有什么区别?
答案 0 :(得分:2)
所解释的差异的百分比是:
explained_variance_ratio_
方差,即协方差矩阵的特征值是:
explained_variance_
公式:
explained_variance_ratio_ = explained_variance_ / np.sum(explained_variance_)
示例:
import numpy as np
from sklearn.decomposition import PCA
X = np.array([[-1, -1], [-2, -1], [-3, -2], [1, 1], [2, 1], [3, 2]])
pca = PCA(n_components=2)
pca.fit(X)
pca.explained_variance_
array([7.93954312, 0.06045688]) # the actual eigenvalues (variance)
pca.explained_variance_ratio_ # the percentage of the variance
array([0.99244289, 0.00755711])
也基于上述公式:
7.93954312 / (7.93954312+ 0.06045688) = 0.99244289
从文档中:
explained_variance_:数组,形状(n_components,)的数量 差异由每个选定的成分来解释。
等于n个分量的协方差矩阵的最大特征值 X。
0.18版的新功能。
explained_variance_ratio_:数组,形状(n个组件,)的百分比 差异由每个选定的成分来解释。
如果未设置n_components,则将存储所有组件并求和 比值等于1.0。
答案 1 :(得分:1)
只是标准化,以了解每个主要组成部分的重要性。你可以说:
explained_variance_ratio_ = explained_variance_/np.sum(explained_variance_)