了解遍历性和整体平均

信息处理 matlab 随机过程 随机 随机的 遍历的
2021-12-28 02:32:31

文献说,如果它的整体平均值 = 时间平均值,则静止信号是遍历的。应该是时间平均计算的统计量=集合平均计算的统计量吗?我从链接中的书中理解的方式如下:

案例 1:时间序列中有 N 个样本,我计算 mean1,skewness1,kurtosis1 。

案例2:接下来,对N个样本,进行T个实验,在每个实验中计算统计量。完成 T 次实验后,我们计算这些统计数据的平均值 - mean_avg,skewness_avg, kurtosis_avg。这称为整体平均或概率平均。

如果 mean1 = mean_avg 等等,则过程/信号是遍历的。我的理解正确吗?

1个回答

我将尝试使用 MATLAB 符号来实际解释这一点。
但在此之前,我必须说,遍历属性有时仅限于某个时刻,即在第 1、第 2、第 3 时刻等中的遍历……
如果过程是独立同分布的,则它被承诺是遍历的。

现在,假设我们myRandomProcess在 MATLAB 中有一个函数。
它返回一个长度n为随机过程的随机属性的行向量。

现在,假设我们建立一个矩阵A,它是m经过n矩阵,每行是使用上述函数创建的不同向量。

现在,使用 MATLAB 中的meanvar函数,我们可以计算过程的属性。

如果我们应用mean很长的列(即,在每一行上),我们将得到m结果。
如果这些足够接近nmean通过沿行 应用函数产生的结果(在每一列上)我们可以假设该过程在其第一时刻是遍历的。

现在,如果mn接近无穷大“足够接近”可以像我们想要的那样小。

随机过程的大多数与其遍历性相关的性质可以通过观察其自相关函数来推断。

更新

简单的 MATLAB 代码来传达这个想法:

% Ergodic Random Process

% The Prbability dimension is a long rows (Vertical) and the time dimension
% is a long the columns (Horizontal).

numSamples  = 1000;
numTrials   = 1000;

% Ergodic Process - IID Random Samples

mRandomProcess = randn(numTrials, numSamples);

vTimeAverage = mean(mRandomProcess, 2);
vSampleAverage = mean(mRandomProcess, 1);

vTimeVariance = var(mRandomProcess, 1, 2);
vSampleVariance = var(mRandomProcess, 1, 1);

disp(['Ergodic Process Statistics']);
disp(['1st Moment Ergodicity - ', num2str(mean([vTimeAverage(:) - vSampleAverage(:)] .^ 2))]);
disp(['2nd Moment Ergodicity - ', num2str(mean([vTimeVariance(:) - vSampleVariance(:)] .^ 2))]);

% Un Ergodic Process

% The DC Level is drawed once per random process (Realization)
vDcLevel = (10 * rand(numTrials, 1)) - 5;

mRandomProcess = randn(numTrials, numSamples) + repmat(vDcLevel, [1, numSamples]);

vTimeAverage = mean(mRandomProcess, 2);
vSampleAverage = mean(mRandomProcess, 1);

vTimeVariance = var(mRandomProcess, 1, 2);
vSampleVariance = var(mRandomProcess, 1, 1);

disp(['Un Ergodic Process Statistics']);
disp(['1st Moment Ergodicity - ', num2str(mean([vTimeAverage(:) - vSampleAverage(:)] .^ 2))]);
disp(['2nd Moment Ergodicity - ', num2str(mean([vTimeVariance(:) - vSampleVariance(:)] .^ 2))]);

如您所见,第一个过程是遍历的(与任何 IID 过程一样),因为它等效于沿时间维度或样本维度计算其矩。

另一方面,第二个不是遍历的。
由于沿行的平均值为零(从均匀随机变量 [-5, 5] 中得出),但沿其列的平均值是均匀变量的特定实现的值。

我希望这能澄清它。