【发布时间】:2013-07-30 09:54:52
【问题描述】:
假设一个无噪声的 AR(1) 进程 y(t)= a*y(t-1) 。我有以下概念性问题,很高兴得到澄清。
Q1 - 数学公式和实现之间的差异 - AR 模型的数学公式为 y(t) = - summmation over i=1 to p[a*y(t-p)] + eta(t) 的形式,其中 p=模型阶数,eta(t) 是高斯白噪声。但是当使用任何方法(如arburg() 或最小二乘法)估计系数时,我们只需调用该函数。我不知道是否隐式添加了白高斯噪声。然后,当我们用估计的系数求解 AR 方程时,我看到没有考虑负号,也没有添加噪声项。
什么是 AR 模型的正确表示?当我只有一个包含 1000 个数据点的样本时,如何找到 k 次试验的平均系数?
Q2 - 如何为 k 次试验模拟fitted_data 中的编码问题,然后找到残差 - 我拟合了从未知系统生成的数据“数据”并通过
获得系数load('data.txt');
for trials = 1:10
model = ar(data,1,'ls');
original_data=data;
fitted_data(i)=coeff1*data(i-1); % **OR**
data(i)=coeff1*data(i-1);
fitted_data=data;
residual= original_data - fitted_data;
plot(original_data,'r'); hold on; plot(fitted_data);
end
在计算残差时,是否通过用获得的系数解析 AR 方程获得了上述 fit_data? Matlab 有这样做的功能,但我想自己做。那么,在从原始数据中找到系数后,我该如何解决?上面的编码不正确。附上原始数据和fitted_data的图。
【问题讨论】:
-
拟合数据来模拟一条通往黑暗面的道路,年轻的学徒。而是尝试将模型拟合到您的数据...
-
您发布的代码令人困惑,例如您在某些时候使用索引 i。请发布 matlab 代码或说明您发布的是伪代码。