PCA缺点

ref:https://blog.csdn.net/Y_hero/article/details/88797908

1 在对数据完全无知的情况下,PCA变换并不能得到较好的保留数据信息

因为PCA 需要对数据进行预处理,第一步需要对其进行中心化,如果数据的尺度不统一,还需要标准化。通常的标准化方式是除以标准差。这里可能就出现一个问题,比如标准差很小,接近于零,尤其是被噪声污染的数据,噪声的标准差对数据的放大作用更显著,而没被噪声污染的数据其在标准化的过程中放大作用较小。

2 对降维最终得到数目,也就是潜在的隐变量的数目,不能很好地估计。

3 PCA 原理主要是之间的相关性,并且假设这种相关性是线性的,对于非线性的依赖关系则不能得到很好的结果。

使用PCA 进行线性降维后样本间的非线性相关性有可能会丢失。

使用PCA 进行线性降维后样本间的非线性相关性有可能会丢失。

判断是否是线性降维后样本间的非线性相关性有可能会丢失

判断是否是线性降维过程可以用一个线性变换表示决定。pca 降维的过程可以通过数据乘以一个矩阵表示,因此就是一个朴素的线性变换。

4 pca 假设变量服从高斯分布,当变量不服从高斯分布(如均匀分布)时,会发生尺度缩放与旋转。

### 主成分分析(PCA)的优点 PCA作为一种重要的降维技术,在多个方面展现出显著的优势: - **数据降维**:能够有效地将高维度的数据集转换成低维度表示,从而简化模型并提高效率[^1]。 - **特征提取**:可以识别出最能代表原始数据变化趋势的关键属性,即所谓的“主成分”,这些新构建出来的变量彼此之间互不相关,有助于后续建模过程中的解释性和稳定性提升[^3]。 - **降低计算成本**:减少了参与运算的信息量,进而降低了算法执行所需的时间资源消耗;对于大规模数据集尤其重要。 - **去噪能力**:通过忽略那些贡献较小的次要因素,可以在一定程度上去除测量误差或其他形式干扰所带来的影响,使结果更加可靠稳定。 - **适用范围广**:不仅限于特定领域或应用场景,而是普遍适用于各类数值型结构化表格资料之上[^2]。 ### 主成分分析(PCA)的缺点 尽管具有诸多优势,但在某些情况下也可能存在局限性: - **信息丢失风险**:当削减过多维度时可能会无意间舍弃掉一些潜在有价值的信息片段,特别是如果原空间里本身就不存在明显主导方向的话,则这种做法反而会损害表达力。 - **过拟合隐患**:仅依据现有样本分布情况来决定哪些轴更重要,这可能导致所选基底过分贴合当前观测值而无法很好地泛化到未知实例上,特别是在极端情形下甚至会出现过度适应训练集合的现象。 - **假设前提严格**:传统意义上的PCA假定输入矩阵服从多元正态分布,并且各分量间的协方差关系保持恒定不变。然而现实中许多现象并不满足上述条件,此时直接套用该方法未必能得到理想效果[^4]。 ```python import numpy as np from sklearn.decomposition import PCA # 创建一个随机数据集用于演示 X = np.random.rand(100, 5) # 初始化PCA对象并将数据投影至两个主成分构成的新坐标系中 pca = PCA(n_components=2) principalComponents = pca.fit_transform(X) print(principalComponents.shape) # 输出变换后的形状 ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值