首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何检验时间序列模型?

如何检验时间序列模型?
EN

Stack Overflow用户
提问于 2011-01-24 19:45:43
回答 2查看 2.7K关注 0票数 2

我想知道测试时间序列模型的好方法是什么。假设我在时域t1,t2,...tN中有一个时间序列。我有输入,比如说,zt1,zt2,...ztN和输出x1,x2...xN。

现在,如果这是一个经典的数据挖掘问题,我可以使用已知的方法,如交叉验证,留一,70-30或其他方法。

但是我应该如何处理用时间序列测试我的模型的问题?我应该在第一个t1,t2,...t(N-k)输入上构建模型,然后在最后k个输入上测试它吗?但是,如果我们想要最大化对p步的预测,而不是k步(其中p< k),该怎么办?我正在寻找一个健壮的解决方案,我可以应用于我的特定情况。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2011-01-25 03:45:08

对于时间序列拟合,您需要小心,在开发模型之前不要使用样本外数据。建模的主要问题是它很容易过度拟合。

通常,我们所做的是使用70%的样本内建模,30%的样本外测试/验证。当我们在生产中使用模型时,我们每天收集的数据就变成了真实的样本外数据:那些你从未见过或使用过的数据。

现在,如果你有足够的数据点,我建议尝试滚动窗口拟合方法。对于样本中的每个时间步长,您可以回顾N个时间步长以适合您的模型,并查看模型中的参数如何随时间变化。例如,假设您的模型是线性回归,Y= B0 + B1*X1 + B2*X2。你可以对样本进行回归N- window_size时间。这样,您就可以了解Beta对时间的敏感度。

票数 3
EN

Stack Overflow用户

发布于 2011-01-25 01:10:30

听起来你有两个选择

  1. 使用前几年的数据创建模型,然后查看它对剩余年份的预测效果。
  2. 使用输入条件的某个子集的所有年份数据,然后查看使用其余输入条件进行预测的效果。
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4781579

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档