Matlab:与滞后的相关操作相关的混淆



我有一个时间序列模型y(t)= h^T y(t-1) + n(t)其中n(t)是激发和驱动过程的白色高斯噪声。 y 是表示数据点数的t = 1,2,...线性回归模型的输出。

问题:如果相关矩阵Ryy = E[y(t)*y(t)^T],那么是否可以计算滞后随机变量的相关性,例如

 [E[y(t-1)*y(t-1)']]

通常,这些运算符和表达式也位于:

幻灯片 2 提到了自相关矩阵。在公式中,有期望运算符。那么,如何在不使用内置命令的情况下,用自身和其他此类表达式实现滞后随机变量乘积的期望呢?

我无法实施这些公式。请帮忙。

谢谢你的任何解释!

更新:在对此问题进行了多次修订后,它归结为Matlab提出的另一个问题:计算时间序列的相关性。所以,这两个问题变得重复。

下面是一个示例代码

y = randn(10,1);
for t = 1:10
disp(y(t));
end
Expectation_y =  sum(y(1:end))/10 % this give a scalar
Mean_y = mean(y); % This returns 10 values 
您可能会

混淆随机向量的相关矩阵(多元随机变量)和随机过程(随机过程)的自相关矩阵...

因此,如果你的系列是 1 阶的向量自回归模型(它似乎是,所以h'是你的系数矩阵),那么E[y(t-1)*y(t-1)']确实是有意义的,并且是随机向量本身的相关矩阵。

现在在平稳性假设下,您可以通过检查det(I - h'*x) = 0的根x_i是否在单位圆之外(模量大于 1)来检查,那么y[t_1]的统计属性等同y[t_2]于所有足够大的t_1, t_2的统计属性。所以实际上:

E[y(t-1)*y(t-1)'] = E[y(t)*y(t)']

如果你的过程不是平稳的,你就有麻烦了,因为现在你的相关矩阵取决于t_0的边界条件......

但是,您可能正在寻找的是以下表达式:

E[y(t)*y(t-1)'] = E[(h'*y(t-1) + n(t))*y(t-1)']

但我不知道是否有这些在功能上的分析表示E[y(t)*y(t)']......您可以在线研究,也可以在幻灯片提供的参考资料中进行研究......

编辑:

由于OP提到这是一个简单的自回归模型,而不是向量自回归模型,所以事情大大简化。

对于稳态 AR(1) 模型,均值、方差和自协方差(以及自相关)有很好的分析表示,我将在这里给出它们用于更通用的模型: y(t) = c + h*y(t-1) + n(t)

E[y(t)] = c/(1-h) --> so in your case: 0
Var[y(t)] = Var[n(t)]/(1-h^2) --> this is equal to the E[y(t)y(t)] or E[y(t-1)y(t-1)] that you are looking for
Cov[y(t)y(t-j)] = Var[n(t)]*h^j/(1-h^2)
Corr[y(t)y(t-j)] = h^j --> this is the autocorrelation in function of the timedifference j

您可以在参考书或法语维基百科页面上找到所有关于这些的数学推导:在这里,在"Moment d'un processus AR(1)"部分

现在真的归结为您正在寻找什么...... E[y(t-1)y(t-1)] 根据平稳性的定义简直等于 E[y(t)y(t)],也许你真的在寻找 E[y(t)y(t-1)] 的推导,我将在这里开发:

 E[y(t)y(t-1)] = E[(h*y(t-1) + n(t))*y(t-1)] = E[(h*y(t-1))*y(t-1)] + E[n(t)*y(t-1)]

现在由于n(t)是t中的白噪声,它与y(t-1)不相关,所以E[n(t)*y(t-1)] = 0,所以我们有:

E[y(t)y(t-1)] = E[(h*y(t-1))*y(t-1)] = h*E[(y(t-1))*y(t-1)] = h*Var[y(t)] = h*Var[N(t)]/(1-h^2)

这与上面给出的Cov[y(t)y(t-j)]定义完全吻合......

希望这有帮助。

最新更新