样本协方差矩阵不可逆时该怎么办?


12

我正在研究一些聚类技术,其中对于给定的d维向量簇,我假设一个多元正态分布并计算样本d维平均向量和样本协方差矩阵。

然后,当尝试确定一个新的,看不见的d维向量是否属于该簇时,我正在通过以下度量来检查其距离:

(Xiμ^X)σ^X1(Xiμ^X)>B0.95(p2,p2)

这需要我计算协方差矩阵的逆。但是给定一些样本,我不能保证协方差矩阵是可逆的,如果不是,我该怎么办?σ^X

谢谢


这取决于导致矩阵不可逆的原因。可能的原因可能是(a)用于计算协方差矩阵的样本太小(b)样本大小足够,但其成员不是从连续分布中提取的,因此样本的某些列/行重复出现。
user603 2013年

我认为样本量变小
Aly

@ Anony-Mousse我已经确保我现在至少使用与维数一样多的样本,否则矩阵将秩不足。到目前为止,没有问题,但是我认为样本协方差是不可逆的?
2013年

1
为什么总是可逆的?对于单个观察,均值等于该观察值,因此样本协方差为零矩阵,该矩阵不会求逆。我认为矩阵必须是全秩才能反转的,并且只有在样本数量> =维的情况下MMT
矩阵才是

1
@corone要求严格>
user603 2013年

Answers:


14

如果样本维数小于向量空间维数,则可能会出现奇异矩阵。如果您的样本少于(当是维数时),则甚至会出现这种情况:样本最多跨越一个维超平面。给定这么小的样本,您显然无法计算正交空间中的方差。d+1dk+1d

这就是为什么通常使用文字PCA,而是执行奇异值分解(通常可用于计算矩阵的伪逆)的原因。如果矩阵是可逆的,则伪逆将为逆。

但是,如果您看到的是不可逆矩阵,那么当向量在集群所代表的超平面之外时,到集群的距离很可能是无意义的,因为您不知道正交空间中的方差(您可以想到此方差为0!)SVD可以计算伪逆,但“方差”仍不能由您的数据确定。

在这种情况下,您可能应该首先进行全局降维。仅当您实际具有非冗余尺寸时,才增加样本大小:无论您从的分布中抽取多少样本,矩阵始终是不可逆的,并且您将无法判断偏差相对于标准偏差(为0)的。y=xxy

此外,取决于如何计算协方差矩阵,由于灾难性的抵消,您可能会遇到数值问题。最简单的解决方法是始终始终将数据居中,以得到零均值。


很抱歉在这里回复,但我正在处理相同的问题。我正在通过马哈拉诺比斯距离比较聚类距离,这需要逆协方差矩阵。但是就我而言,我遇到了同样的错误。所以我尝试了SingularValueDecomposition但这次所有距离都等于1.4:D我无法弄清楚
MonsterMMORPG
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.