当前位置: 首页 > 科技观察

说说降维算法:PCA主成分分析

时间:2023-03-20 13:24:26 科技观察

在机器学习领域,我们从原始数据中提取特征,往往会得到高维的特征向量。在这些多特征的高维空间中,会包含一些冗余和噪声。因此,我们希望通过降维发现数据的内在特征,提高特征表达能力,降低模型的训练成本。PCA是一种经典的降维算法,属于线性、无监督、全局的降维方法。1.PCA的原理PCA的原理是线性映射。简单地说,就是将高维空间数据投影到低维空间,然后保留数据中包含大量信息的主成分,忽略对数据描述不重要的次成分。信息。对于正交属性空间中的样本,如何使用一个超平面来正确表达所有样本?如果存在这样的超平面,它应该有两个性质:所有样本点到超平面的距离是最近的样本点在这个超平面的投影尽可能地分离了以上两个性质,这是主成分的两个等价推导分析,即PCA最小平方误差理论和PCA最大方差理论。本文主要介绍最大方差理论。PCA的降维操作是选择数据离散程度最大的方向(方差最大的方向)作为第一主成分,第二主成分选择方差第二大的方向并且正交于第一主成分。在找到k个主成分之前不要重复此过程。数据点的分布在主成分方向最为离散,主成分向量相互正交。2.PCA算法实现步骤1.对所有数据特征进行集中归一化,平移样本使重心在原点,消除不同特征值的影响,转化为统一的维度:2.计算样本的相关性方差矩阵的协方差是衡量两个随机变量联合分布的线性相关程度的指标;3、求解协方差矩阵的特征值和特征向量时的注意事项:1、对称矩阵的特征向量相互正交,点积为02。数据点投影到特征向量上的方差为相应的特征值。选择特征值大的特征向量,就是选择点投影方差大的方向,是信息含量高的主成分;次最佳投影方向位于最佳投影方向的正交空间为次大特征值对应的特征向量,依次类推;4.选取k个最大特征值对应的特征向量,即k个主成分U都是协方差矩阵的特征向量组成的矩阵,对应的特征值满足:λ1>λ2>?>λn,且在同时满足投影在主成分向量上的方差和占总方差的99%或95%以上,即确定第k个选择。三、降维python实现1.配置环境,导入相关包2.读取数据3.读取特征和标签列,并进行集中归一化,选择主成分个数,前两个主成分的方差和>95%4.可视化降维后的特征。横纵坐标代表两个主成分,颜色代表结果标签分类。可以根据主成分进行后续分析和建模。以上PCA主成分分析就完成了。尽量解释样本点在超平面上投影的推导原理。有兴趣可以研究另一个等价推导,即样本点到超平面的距离最短。