首页 > 编程知识 正文

如何计算协方差矩阵,协方差矩阵求方差

时间:2023-05-03 10:18:12 阅读:36446 作者:4820

协方差矩阵是什么

在统计学和概率论中,协方差矩阵的每个元素都是每个向量元素之间的协方差,是从标量随机变量到帅气虾随机向量的自然扩展。

矩阵中的数据按行排列和按列排列求出的协方差矩阵不同。 其中,默认数据按行排列。 也就是说,每行是observation(orsample ),每列是随机变量。

协方差矩阵:

协方差矩阵的维数等于随机变量的数目,即每个observaTIon的维数。 有时,前方也会出现1/(m-1 ),而不是1/m。

协方差矩阵的计算公式

在统计学和概率论中,协方差矩阵是矩阵,各元素是各向量元素之间的协方差。 这是从标量随机变量到帅气虾随机向量的自然传播。

协方差矩阵的计算方法

举个例子,矩阵x是按行排列的。

1 .求出各维度的平均值

2 .从x的各列中减去平均值

其中:

3 .计算协方差矩阵

注意:

我有时在书和网上看到这样的公式。 协方差矩阵:

其中X * X‘是因为原始数据集x按列排列。 也就是说:

另外,我认为关于在opencv文档中计算协方差矩阵的calcCovarMatrix函数的说明是有问题的,

在正常的CV_COVAR_NORMAL状态下,给出cov=scale * x * x’,但只有在按列排列数据时,此定义才可用。 也就是CV_COVAR_COLS。

URL:http://docs.opencv.org/modules/core/doc/operations _ on _ arrays.html? highlight=calccovarmatrix # cv.calccovarmatrix

这里有按列排列的PCA教程,请参考:

3358 ufl dl.Stanford.edu/wiki/index.PHP /主成分分析

matlab代码:

clear clc;

%数据are stored as rows。

X=[1 2 3;

311 );

Y=X;

[rows,cols]=size(x );

% getmeanofeachdimension (each column )。

均值矩阵=均值(x;

% x均值。

x=x-ones(Rows,1 ) *均值矩阵;

% get the cov矩阵。

cov矩阵=1/(rows-1 ) * (X‘ * X ) ) )

% the given’cov’function

是cov(y )

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。