首页 » python机器学习 » python机器学习全文在线阅读

《python机器学习》5.1.2 特征转换

关灯直达底部

在将协方差矩阵分解为特征对后,我们继续执行PCA方法的最后三个步骤,将葡萄酒数据集中的信息转换到新的主成分轴上。在本小节中,我们将对特征值按降序进行排列,并通过挑选出对应的特征向量构造出映射矩阵,然后使用映射矩阵将数据转换到低维的子空间上。

首先,按特征值的降序排列特征对:

接下来,我们选取两个对应的特征值最大的特征向量,这两个值之和占据了数据集总体方差的60%。请注意,出于演示的需要,我们只选择了两个特征向量,因为在本小节中我们将以二维散点图的方式绘制相关图像。在实际应用中,确定主成分的数量时,我们需要根据实际情况在计算效率与分类器性能之间做出权衡。

执行上述代码,通过选取的两个特征向量我们得到了一个13×2维的映射矩阵W。通过映射矩阵,我们可以将一个样本x(以13维的行向量表示)转换到PCA的子空间上得到x',样本转换为一个包含两个新特征的二维向量。

类似地,通过计算矩阵的点积,我们可以将整个124×13维的训练数据集转换到包含两个主成分的子空间上:

最后,转换后的葡萄酒数据集将以124×2维矩阵的方式存储,我们以二维散点图的方式来对其进行可视化展示:

在下图中可以看到,相较于第二主成分(y轴),数据更多地沿着x轴(第一主成分)方向分布,这与我们在上一小节中绘制的方差贡献率图是一致的。而且,可以直观地看到,线性分类器能够很好地对其进行划分:

为了演示散点图,我们使用了类标信息,但请注意PCA是无监督方法,无需类标信息。