如何判断PCA结果中没有模式?


9

我有19个变量的1000多个样本数据集。我的目标是根据其他18个变量(二进制和连续变量)预测一个二进制变量。我非常有信心6个预测变量与二进制响应相关联,但是,我想进一步分析数据集并寻找我可能会缺少的其他关联或结构。为了做到这一点,我决定使用PCA和群集。

当对归一化的数据运行PCA时,为了保留85%的差异,需要保留11个组件。 在此处输入图片说明 通过绘制对图,我得到了: 在此处输入图片说明

我不确定下一步是什么...我在pca中看不到明显的模式,我想知道这是什么意思,以及它是否可能是由于某些变量是二进制变量而引起的。通过运行具有6个聚类的聚类算法,我得到以下结果,尽管有些斑点看起来比较突出(黄色斑点),但这并不是一个确切的改进。 在此处输入图片说明

您可能会说,我不是PCA方面的专家,但是我看到了一些教程,以及如何了解高维空间中的结构是多么强大。使用著名的MNIST数字(或IRIS)数据集,效果很好。我的问题是:我现在应该怎么做才能使PCA更加有意义?聚类似乎没有任何用处,我如何判断PCA中没有模式,或者接下来我该怎么做才能在PCA数据中找到模式?


您为什么要进行PCA才能找到预测变量?为什么不使用其他方法?例如,你可能包括他们都在一个逻辑REG,你可以使用套索,你可以建立一个树模型,有袋翻,增压等
彼得·弗洛姆

PCA擅长揭示的“模式”是什么意思?
ttnphns

@ttnphns我想做的是找到一些可能具有共同点的观察结果子集,以更好地解释我试图预测的二进制响应的结果(这部分受到了dailyanalytics.ca/2014/ 06 /…)。同样使用pca并在虹膜数据集上进行聚类,隔离物种(scikit-learn.org/stable/auto_examples/decomposition/…)非常有用,尽管这非常容易,因为我们已经知道聚类的数量。
mickkk 2015年

@PeterFlom我已经运行了逻辑回归和随机森林模型,并且它们的表现不错,但是我想进一步研究数据。
mickkk 2015年

Answers:


7

您解释的方差图告诉我PCA在这里毫无意义。11/18是61%,因此您需要61%的变量来解释85%的方差。我认为PCA并非如此。当3-5个18的因子解释了大约95%的方差时,我使用PCA。

更新:查看由PC数量解释的累积方差百分比图。这来自利率期限结构建模领域。您会看到3个成分如何解释总方差的99%以上。这看起来像是PCA广告的伪造示例:)但是,这是真实的事情。利率期限非常相关,这就是为什么PCA在此应用程序中非常自然的原因。无需处理几十个男高音,您只需处理三个组成部分。

在此处输入图片说明


那是我首先怀疑的。我之所以没有直接指出,是因为我对PCA不太了解,无法做出如此大胆的声明。可以肯定地说,当需要多于x%的组件时,PCA并没有多大帮助?我的意思是,在我看到的应用程序示例中,通常很少有组件可以解释最多的差异。
mickkk 2015年

@mickkk,没有严格的规定。对我来说,指示是凸度,方差解释图。如果将其绘制为用PC数量解释的总方差的累积百分比,那么您希望看到一个非常凹的图形。您将接近线性:每个组件似乎都携带有关数据的大致相同的信息,在这种情况下,为什么要完全使用PCA而不是原始数据?
阿克萨卡(Aksakal)2015年

使用新示例进行的编辑非常有帮助。
mickkk 2015年

5

ñ>1000p=19

如果您确信只有一部分变量确实可以解释,那么使用稀疏回归模型(例如Elastic Net)可以帮助您确定这一点。

同样,使用混合类型输入(二进制与实数,不同比例等,请参见此处的CV问题)对PCA结果的解释也不是那么简单,除非有明确的理由,否则您可能希望避免使用它。


4

我将尽可能简洁地解释您的问题。让我知道它是否改变了您的意思。

我非常有信心,其中有6个预测变量与二进制响应相关联[但是]我发现pca中没有明显的模式

除了配对图中的一致性外,我也看不到任何“重要模式”。它们全都是大致圆形的斑点。我很好奇您预期会看到什么。显然是一些成对的点簇吗?一些非常接近线性的图?

您的PCA结果-斑点样的对图和仅在前11个主要成分中捕获的85%的方差-不会排除您对6个变量足以进行二进制响应预测的预感。

想象一下这些情况:

  1. 假设您的PCA结果显示99%的方差被6个主要成分捕获。

    这似乎可以支持您对6个预测变量的预感-也许您可以在6维空间中定义一个平面或某个其他表面,从而很好地对这些点进行分类,并且可以将该表面用作二进制预测变量。这使我排名第二...

  2. 假设您的前6个主要组件具有如下所示的对偶

    配对中的“模式”。

    但是让我们对任意二进制响应进行颜色编码

    “模式”是没有用的。

    即使您设法捕获了6个变量中几乎所有(99%)的方差,也仍然不能保证通过空间分离来预测二进制响应。

实际上,您可能需要几个数字阈值(可以将其绘制为该6维空间中的曲面),并且二进制分类的点隶属关系可能取决于该点与每个阈值之间关系的复杂条件表达式。但这只是如何预测二进制类的一个示例。有大量的数据结构和方法用于表示,训练和预测。 是一个预告片。报价,

解决机器学习问题的最难的部分通常是为工作找到合适的估计器。


1
笑脸其实是很好的,因为它不相关的!我喜欢
变形虫

@amoeba,您可以从不相关的PC中获得笑脸吗?
阿克萨卡(Aksakal)2015年

@Aksakal,是的,在我看来,笑脸散点图显示出零相关性。Kdbanman,我感谢这次更新+1。
变形虫

@amoeba,好的,你的意思是线性相关。
阿克萨卡(Aksakal)2015年
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.