Cholesky矩阵实现相关变量和不相关变量的转换

来源:互联网 发布:看漫画软件 编辑:程序博客网 时间:2024/05/21 13:15

给定一个协方差矩阵 Σ, 其可以唯一的分解为点乘形式:

Σ=UTU

其中U是上三角矩阵。

几何上讲,Cholesky矩阵将无相关的变量转换为由Σ给定的方差和协方差的相关变量。特别的,如果产生了p个标准正态分布的变量,Cholesky转换将这些变量映射为多元正态分布(其协方差矩阵为Σ,中心在原点(表示为MVN(0,Σ)))

在高斯过程的例子中,我们通过下面的形式形成高斯分布数据点:

n1 = 80;n2 = 40;S1 = eye(2);S2 = [1 0.95 ;0.95 1];% 两个协方差矩阵m1 = [0.75;0];m2 = [-0.75;0]; %两个均值x1 = bsxfun(@plus,chol(S1)'*gpml_randn(0.2,2,n1),m1);x2 = bsxfun(@plus,chol(S2)'*gpml_randn(0.3,2,n2),m2);x = [x1 x2]';y = [-ones(1,n1) ones(1,n2)]';plot(x1(1,:),x1(2,:),'b+');hold on;plot(x2(1,:),x2(2,:),'r+');% check cov1 = cov(x1');cov2 = cov(x2');

参考文献:
1.http://blogs.sas.com/content/iml/2012/02/08/use-the-cholesky-transformation-to-correlate-and-uncorrelate-variables.html
2.http://www.gaussianprocess.org/gpml/code/matlab/doc/