我希望能够生成维度的协方差矩阵X,使得该矩阵的某些指定单元格包含固定的预定值(至少近似)。
例如对于矩阵, =
我想确保某些有一个预定值。
(如果我在没有这个约束的情况下生成协方差矩阵,我只会使用 Wishart 随机生成器。在 Matlab 中,它类似于 -
W = wishrnd([1 0.5; 0.5 3],30)/30)
我可以想到这个问题的一种方法是协方差矩阵的不同单元具有不同的自由度。因此可以假设具有固定值的单元格具有无限自由度,其余的则为某个有限数。
我希望能够生成维度的协方差矩阵X,使得该矩阵的某些指定单元格包含固定的预定值(至少近似)。
例如对于矩阵, =
我想确保某些有一个预定值。
(如果我在没有这个约束的情况下生成协方差矩阵,我只会使用 Wishart 随机生成器。在 Matlab 中,它类似于 -
W = wishrnd([1 0.5; 0.5 3],30)/30)
我可以想到这个问题的一种方法是协方差矩阵的不同单元具有不同的自由度。因此可以假设具有固定值的单元格具有无限自由度,其余的则为某个有限数。
在某些条目被修复的情况下,应该可以从 Wishart 分布中进行采样。使用任何类似 BUGS 的语言(例如 JAGS 或 STAN)可能无法开箱即用,但您可以依赖 Wishart 的高斯分布,如本文档第 5 页所述。
编辑添加:看起来STAN手册直接在第40页解决了这个问题(第8.2节,“部分已知参数”)。PDF在这里。它们的协方差矩阵很小,但应该可以用更大的协方差矩阵做同样的事情。Stan 的 Hamiltonian Monte Carlo 应该相当快,因此您可以忽略下一段中的蛮力方法。
以下建议可能没有用,但我会将其保留在下面以供后代使用:
或者,由于您说您只需要与它们的固定值相似的值,您可以继续重新采样,
wishrnd直到得到足够接近的值。请参阅拒绝抽样和近似贝叶斯计算。我第一段中的 MCMC 类型的方法可能有点矫枉过正。