用Python进行AI数据分析进阶教程59:

在机器学习领域,主成分分析(PCA)是一种非常实用的降维技术。简单来说,它通过线性组合的方式,将原始特征重新组织为若干个新的、彼此独立的特征。这相当于从数据中提炼出关键信息,用更少的维度来描述尽可能多的内容。下面我们详细探讨它的核心概念和实际应用。
机器学习主成分的含义和贡献率
关键词:主成分分析、贡献率、方差最大化、正交性、降维
摘要:本文系统介绍主成分分析(PCA)的基本原理及其在机器学习中的实际用途。主成分是原始特征的线性组合,按方差从大到小排序且相互正交,从而最大程度保留数据信息。贡献率反映了每个主成分解释方差的比重,累计贡献率则用于确定降维所需的主成分数量。文章强调了数据标准化的重要性,并通过Python实例演示如何计算和可视化累计贡献率,帮助读者科学地选择降维维度。
一、主成分的含义
- 主成分分析(PCA)是一种无监督学习算法,常用于数据降维和特征提取。每个主成分都是原始特征的线性组合,且这些组合之间彼此正交——即互不相关。最关键的是,主成分按照它们所包含的信息量(即方差)从大到小依次排列。第一主成分指向数据方差最大的方向,捕获了最多的信息;第二主成分则在第一主成分的正交方向中寻找方差次大的方向,以此类推。
- 举个例子,在一个二维数据集中,如果数据点整体上沿某个方向分布特别分散,那么这个方向很可能就是第一主成分;与之垂直的方向则是第二主成分。将原始数据投影到这些主成分上,就完成了降维操作,同时尽可能保持了数据的原有结构。
二、主成分的贡献率
每个主成分能够解释的总方差比例,被称为其贡献率。贡献率越高,说明该主成分承载的信息量越大。而累计贡献率则是前k个主成分贡献率的总和,表示这k个主成分共同还原了原始数据多少比例的信息。在实际应用中,我们通常会设定一个阈值(例如80%至95%),选取累计贡献率达到该范围的前若干个主成分,作为降维后的新特征。
三、关键点
- 方差最大化:主成分按照方差从大到小排序,第一主成分的方差最大,包含的信息最多。
- 正交性:主成分之间相互正交,消除了特征间的冗余信息,使降维后的数据更加简洁高效。
- 标准化的重要性:进行PCA之前,通常需要对数据进行标准化处理,确保每个特征被公平对待,否则数值范围较大的特征会主导主成分的提取方向。
- 累计贡献率曲线:通过绘制累计贡献率随主成分数量增加的变化曲线,可以直观地判断需要保留多少个主成分。这就像“性价比”评估——每增加一个主成分,能多解释多少信息,一目了然。
