可以使用PCA来减少高度非线性数据集的维数吗?
0 1268
0
该提问暂无详细描述
收藏
2021-01-22 12:03 更新 anna •  5042
共 1 个回答
高赞 时间
0

你可以将其应用于任何事物,问题是,如果使用PCA,数据集是高度非线性的,则会扭曲点之间的距离,并且很可能你的下游算法会产生误导性的结果。

PCA将“失败”的经典示例是“瑞士卷”: 如果将PCA应用于此数据集,你会看到前两个分量将沿着图的x轴和y轴(主要变量的方向)。但是,这会使该结构内的距离概念失真。

在该“瑞士卷”中,蓝色的点与红色的点最远,但是PCA会认为它们相对较近。在这种情况下,我们有兴趣保留测地线距离;也就是说,图中的点之间的距离是由连接最近的两者产生的。

这涉及到了流形学习的领域:学习存在于某些高维(环境)空间中的低维结构。

一种在这种情况下通常效果很好的算法是局部线性嵌入(LLE)。这是在“瑞士卷”上使用LLE得出的投影: 你可以看到它能够解决问题:蓝点应该是距离红点最远的点。

收藏
2021-01-22 13:30 更新 anna •  5042