Questions tagged «cholesky»

5
如何使用Cholesky分解或其他方法进行关联数据模拟
给定相关矩阵,我使用Cholesky分解来模拟相关的随机变量。问题是,结果永远不会像给出的那样重现相关结构。这是Python中的一个小例子来说明这种情况。 import numpy as np n_obs = 10000 means = [1, 2, 3] sds = [1, 2, 3] # standard deviations # generating random independent variables observations = np.vstack([np.random.normal(loc=mean, scale=sd, size=n_obs) for mean, sd in zip(means, sds)]) # observations, a row per variable cor_matrix = np.array([[1.0, 0.6, 0.9], [0.6, 1.0, …

3
从多元正态分布中提取样本的Cholesky与本征分解
我想绘制样品X〜Ñ(0,Σ)X〜ñ(0,Σ)\mathbf{x} \sim N\left(\mathbf{0}, \mathbf{\Sigma} \right)。维基百科建议任一使用的Cholesky或特征分解,即 Σ = D1个dŤ1个Σ=d1个d1个Ť \mathbf{\Sigma} = \mathbf{D}_1\mathbf{D}_1^T 或 Σ = Q Λ QŤΣ=问Λ问Ť \mathbf{\Sigma} = \mathbf{Q}\mathbf{\Lambda}\mathbf{Q}^T 因此,样品可通过得出: x = D1个vX=d1个v \mathbf{x} = \mathbf{D}_1 \mathbf{v} 或 X = Q Λ--√vX=问Λv \mathbf{x} = \mathbf{Q}\sqrt{\mathbf{\Lambda}} \mathbf{v} 其中 v〜Ñ(0,I)v∼N(0,I) \mathbf{v} \sim N\left(\mathbf{0}, \mathbf{I} \right) 维基百科建议它们在生成样本方面都同样出色,但是Cholesky方法具有更快的计算时间。这是真的?尤其是在使用蒙特卡洛方法时,在数值上,沿对角线的方差可能相差几个数量级?是否有对此问题的正式分析?


1
说明“本征”如何帮助反转矩阵
我的问题与geoR:::.negloglik.GRF或中利用的计算技术有关geoR:::solve.geoR。 在线性混合模型设置中: 其中和分别是固定效应和随机效应。此外,Y=Xβ+Zb+eY=Xβ+Zb+e Y=X\beta+Zb+e ββ\betabbbΣ=cov(Y)Σ=cov(Y)\Sigma=\text{cov}(Y) 估算效果时,需要计算 ,通常可以使用来完成,但是有时几乎不可逆,因此请运用技巧(X′Σ−1X)−1X′Σ−1Y(X′Σ−1X)−1X′Σ−1Y (X'\Sigma^{-1}X)^{-1}X'\Sigma^{-1} Y solve(XtS_invX,XtS_invY)(X′Σ−1X)(X′Σ−1X)(X'\Sigma^{-1}X)geoR t.ei=eigen(XtS_invX) crossprod(t(t.ei$vec)/sqrt(t.ei$val))%*%XtS_invY (可以在geoR:::.negloglik.GRF和中看到geoR:::.solve.geoR)等于分解 ,其中,因此 (X′Σ−1X)=ΛDΛ−1(X′Σ−1X)=ΛDΛ−1 (X'\Sigma^{-1}X)=\Lambda D \Lambda^{-1}\\ Λ′=Λ−1Λ′=Λ−1\Lambda'=\Lambda^{-1}(X′Σ−1X)−1=(D−1/2Λ−1)′(D−1/2Λ−1)(X′Σ−1X)−1=(D−1/2Λ−1)′(D−1/2Λ−1) (X'\Sigma^{-1}X)^{-1}=(D^{-1/2}\Lambda^{-1})'(D^{-1/2}\Lambda^{-1}) 两个问题: 本征分解如何帮助反转?(X′Σ−1X)(X′Σ−1X)(X'\Sigma^{-1}X) 还有其他可行的选择(强大且稳定)吗?(例如qr.solve或chol2inv?)
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.