如何使矩阵为正定?


10

我正在尝试为以下因素分析模型实现EM算法;

Wj=μ+Baj+ejforj=1,,n

其中是p维随机向量,是潜变量的q维向量,是参数的pxq矩阵。一个ĴWjajB

由于该模型使用了其他假设,因此我知道,其中是误差项的方差协方差矩阵, = diag(,,...,)。d È Ĵ d σ 2 1 σ 2 2 σ 2 pWjN(μ,BB+D)DejDσ12σ22σp2

为了使EM算法正常工作,我正在进行涉及和矩阵估计的圆顶迭代,并且在这些迭代过程中,我在每次迭代中使用和新估计来计算的逆。不幸的是,在迭代过程中,失去了正定性(但不应该这样做,因为它是一个方差-协方差矩阵),这种情况破坏了算法的收敛性。我的问题是:D B B ' + D B D B B ' + DBDBB+DBDBB+D

  1. 这种情况是否表明我的算法有问题,因为在EM的每个步骤中可能性都应该增加?

  2. 使矩阵为正定的实际方法是什么?

编辑:我正在通过使用矩阵求逆定理来计算求逆,该定理指出:

(BB+D)1=D1D1B(Iq+BD1B)1BD1

其中右侧仅涉及矩阵的逆。q×q


1
可能有助于更好地了解如何“失去”其正定性。这意味着或(或两者)正变为非正定数。当直接从计算时,这很难做到,而当计算为对角矩阵且对角线为正方形时,则更难!' d 'dBB+DBBDBBBD
ub

@whuber通常在FA,所以永远不是正定的。但是(理论上)应该是,假设都大于零。'' + d σ 2 Ĵq<pBBBB+Dσj2
JMS


1
@JMS谢谢。我认为我的评论仍然有意义:可以不确定,但仍不应具有任何负特征值。但是,当的最小值与反演算法中的数值误差相当时,就会出现问题。如果是这种情况,一种解决方案是SVD适用于和零出非常小的(或负)的特征值,然后重新计算,并添加。σ 2 '' dBBσi2BBBBD
ub

1
它必须是小元素;应该处于良好条件,否则,因为q + ' d - 1个q < pDIq+BD1Bq<p
JMS

Answers:


3

好的,因为您正在执行FA,所以我假设具有完整的列级qq < p。不过,我们需要更多细节。这可能是一个数字问题;您的数据也可能有问题。Bqq<p

您如何计算逆数?您是否需要明确地求逆,或者可以重新表达计算作为线性系统的解?(即,使求解x的A x = b,通常更快,更稳定)A1bAx=b

什么是发生在?估计真的是小/ 0 /负吗?从某种意义上说,它是关键的链接,因为B B '当然是秩不足的,并且在添加D之前定义了奇异的协方差矩阵,因此您不能对其进行求逆。从技术上来说,加上正对角矩阵D使其成为满秩,但如果D小,则B B ' + D仍然可能是可怕的疾病。DBBDDBB+DD

通常情况下为特异反应性差异(您的估计,的对角元素d)是接近零或甚至负的; 这些被称为海伍德案。参见例如http://www.technion.ac.il/docs/sas/stat/chap26/sect21.htm(任何FA文本也应对此进行讨论,这是一个非常古老且众所周知的问题)。这可能是由于模型规格不正确,离群值,运气不好,太阳耀斑而引起的……MLE特别容易出现此问题,因此,如果您设计的EM算法是为了让MLE看起来更好。σi2D

我认为,如果您的EM算法正以这种估计值逼近模式,则可能会失去其正定性。有各种解决方案。我个人更喜欢使用贝叶斯方法,但是即使那样,您也需要谨慎对待先验(不正确的先验,或者甚至是质量接近于0的适当先验,出于基本相同的原因也会遇到相同的问题)BB+D


其次,在算法的主要部分中,您永远不需要真正地反转矩阵。不过,您可能最终需要获得标准估算。请参阅此博客文章johndcook.com/blog/2010/01/19/dont-invert-that-matrix
Samsdram 2011年

随着迭代次数的增加,D矩阵的值越来越小。正如您所指出的,这也许就是问题所在。
安迪·阿莫斯

1
@安迪·阿莫斯(Andy Amos):我会赌钱。就像@whuber指出的那样,如果您直接进行计算,几乎不可能具有负特征值,并且由于D是正对角线,所以应通过添加D来照顾零(由于秩不足)-除非其中一些元素真的很小。尝试从模型生成一些数据,其中σ 2 是相当大的和Σ q 2 q听,说:σ 2 。数据越多越好,因此估算值应该准确且稳定。至少可以告诉您实施中是否存在问题。BBDσi2qBiq2σi2
JMS
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.