在这一篇,我们正式进入到非监督学习的第一个算法——主成分分析(Principal Component Analysis,PCA)。
PCA算法将原来数据的高维特征压缩为你所需的低维的新特征,我们一般称之为主成分。
具体来说,算法会寻找方差最大的方向来作为第一个主成分,然后寻找与这个主成分垂直的方向,作为第二个主成分,以此类推,最终会找到与原来特征数相同的主成分个数。
以下是付费内容
但如果我们仅仅保留个别主成分,那么就实现了降维的需求。
下面我们举个实例来观察PCA的应用。
PCA实战
我们还是用之前的乳腺癌数据集为例
然后,将数据集进行标准化处理
看下此时的特征数
在未压缩之前,特征数还是原来的30个。
接下来,我们就要加载PCA了
这里我们将主成分的数量设为3,如果不设置的话,默认是全部特征的数量。
然后对数据集进行拟合
最后对数据进行实际的降维变换
我们来看看变换后的维度
可以看到,由原来的30个特征压缩到了现在的3个主成分
我们还可以查看这些主成分
其中,每一行代表一个主成分,每一列代表原始数据的特征。可以看出,主成分就是由原来的特征构造而成的。
PCA重要参数
PCA其实需要调整的就是n_components参数,它决定了你降维后将会得到的主成分的个数。
PCA优缺点
PCA因为只观察数据之间的相关性,因此其在分类上的表现很好;但它的缺点是主成分的可解释性较差。
领取专属 10元无门槛券
私享最新 技术干货