类似于PCA的非正交技术


9

假设我有一个二维点数据集,并且我想检测数据中所有局部极大值方差的方向,例如:

在此处输入图片说明

PCA在这种情况下无济于事,因为它是正交分解,因此无法检测到我用蓝色表示的两条线,而是它的输出可能看起来像绿线所示。

请推荐任何适合此目的的技术。谢谢。


您能否提供示例数据集?我想为您尝试一些东西。此致Eric
Eric Melse

Answers:


10

独立成分分析应该能够为您提供良好的解决方案。通过假设您的测量结果是由统计独立变量的混合得出的,它可以分解非正交分量(如您的情况)。

Internet上有很多很好的教程,并提供了一些免费的可用实现供您试用(例如scikitMDP)。

ICA什么时候不起作用?

与其他算法一样,在适用ICA的假设时,ICA是最佳的。具体来说,

  1. 来源在统计上是独立的
  2. 独立分量是非高斯的
  3. 混合矩阵是可逆的

ICA返回混合矩阵和独立分量的估计值。

当您的源是高斯源时,ICA将找不到这些组件。假设您有两个独立的组件,X1个X2, 哪个是 ñ0一世。然后,

pX1个X2=pX1个pX2=1个2π经验值-X1个2+X222=1个2π经验值-||X||22

哪里 ||||。是二维向量的范数。如果它们与正交变换(例如旋转)混合[R), 我们有, ||[RX||=||X||,这意味着概率分布在旋转下不会改变。因此,ICA无法从数据中找到混合矩阵。



1
如果您提供更多信息,这可能会变成一个非常深刻的答案。特别是,决定将@Gottfried的提案(带有倾斜旋转的PCA)与您的提案(ICA)进行比较-两者的区别和缺点是什么。
ttnphns 2014年

我看到这个问题已得到部分答复。检查编辑,添加一个简单的示例,该示例不适用于ICA。
jpmuc 2014年

3

对于所谓的“倾斜”情况,有类似PCA的过程。在像SPSS这样的统计软件(可能还包括在其免费软件克隆中)中,PSPP会发现等价的“倾斜旋转”,其实例称为“ oblimin”,“ promax”等。如果我对事情的理解正确,软件会尝试通过将正交欧几里德空间(例如,如您的图片所示)中的坐标重新计算为坐标轴非正交的空间坐标来“分解”因子负载。从多元回归中得知的一些技术。此外,我认为这仅是迭代工作,并且在模型的统计测试中消耗了一个或多个自由度。

对比PCA和倾斜旋转的
所述参考手册SPSS的(在IBM站点)为斜旋转包含用于计算偶数公式。

[更新](upps,抱歉,刚刚检查过PSPP不提供倾斜类型的“旋转”)


1
嗯,我看了三遍之后,发现您的问题与“斜向旋转”略有不同:在您的数据云中,均值甚至不在原点/数据甚至不在中心,所以您除了我在此处回答的内容外,可能还有其他想法。如果是这种情况,我可以稍后删除答案...
Gottfried Helms

1
因为在PCA之后是倾斜的“旋转”,所以它们无法“看到”问题中所示的情况,因此,与PCA本身相比,似乎没有更多的能力来识别这两个组件。


2

其他答案已经给出了有关您可以考虑使用的技术的有用提示,但是似乎没有人指出您的假设是错误的:原理图上以蓝色显示的线条不是方差的局部最大值。

要查看它,请注意方向变化 w 是(谁)给的 wΣw,在哪里 Σ表示数据的协方差矩阵。为了找到局部最大值,我们需要将该表达式的导数设为零。如w 被限制为具有单位长度,我们需要添加一个术语 λww-1个 哪里 λ是拉格朗日的乘数。求微分,我们得到以下方程式:

Σw-λw=0。

这意味着 w应该是协方差矩阵的特征向量,即主向量之一。换句话说,PCA为您提供所有局部最大值,没有其他最大值。


嗨,我没有太多的数学背景,能否推荐我一个很好的资源来学习您上面提到的内容?谢谢。
艾哈迈德(Ahmed)2014年

@Ahmed:我不确定,这取决于您已经知道的内容。我想您需要有关线性代数和分析的不错的教科书。这是非常基本的东西,任何体面的教科书都应涵盖。
变形虫
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.