我想在RStan中定义一个协方差矩阵。
类似于如何为标量和向量值提供约束,例如实数a,我想提供协方差矩阵的前导对角线必须为正的约束,但非对角线分量可以采用任何实际值。
有没有办法强制要求矩阵也必须是半正定的?否则,产生的一些样本将不是有效的协方差矩阵。
发布于 2019-06-21 02:39:40
是,定义
cov_matrix[K] Sigma;确保Sigma是对称且正定的K x K矩阵。由于浮点数,它可以简化为半定,但我们将捕获它并引发异常,以确保它保持严格的正定。
在引擎盖下,Stan使用Cholesky因子变换-无约束表示是具有正对角线的下三角矩阵。我们只是使用它作为真实的参数,然后像reference manual chapter on constrained variables所描述的那样,在引擎盖下隐式地变换和应用雅可比矩阵,以创建具有隐式(不适当的)一致先验的协方差矩阵。
https://stackoverflow.com/questions/56671694
复制相似问题