当模型的阶数较高时预测时间序列的第一个观测值

数据挖掘 时间序列 预测建模 训练 有马
2022-03-01 03:13:06

假设您有一个包含 365 个观察值的时间序列,一年中的每一天都有一个,并且您将训练集中的前 183 行和测试集中的最新 182 行分开。

假设您创建了一个 AR(自回归模型),并将模型的阶数设置为 4。所以您将拥有:

y(t)=a1y(t1)+a2y(t2)+a3y(t3)+a4y(t4)

在这种情况下,是否可以对测试集的第一次观察进行预测?这基本上是第 184 行,我认为没有,因为我们没有 y(t-1),...,y(t-4) 但我们只有 y(t)=第 184 个观察值。

所以,我们可以预测的第一行是第 188 行,对吧?因为:

y(t1)=value187th
y(t2)=value186th
y(t3)=value185th
y(t4)=value184th

我认为直到现在都是正确的。如果我错了,请纠正我。

但是,如果我想预测 obs。184,第一个测试集,有什么办法吗?我的意思是,例如,没有将模型的顺序从 4 降低到 1。

1个回答

显而易见的答案是使用训练数据集的最后 4 个数据点。请注意,这样做没有害处或偏见。将数据集分解为训练和测试数据集的目的是对不同的数据集进行估计预测

在您的模型中,因变量是y5y183. 另一方面,四个解释变量是:y1y179;y2y180;y3y181; y4y182.

所以每个解释变量的测试数据集实际上是从y180,y181,y182y183分别。

因此,通过使用训练数据集的最后四个数据点,就重新验证拟合数据的模型而言,您不会引入任何偏差。