Auto.arima和autobox有何不同?


16

通过阅读该站点上的帖子,我知道有一个R 函数 auto.arima(在forecast 包中)。我也知道,IrishStat,这个网站的会员,建立了商业包装autobox在80年代初。由于这两个软件包已存在,并且会自动为给定的数据集选择Arima模型,它们有何不同之处?他们是否可能针对同一数据集产生不同的模型?


感谢您编辑@Wayne。我不熟悉R预测程序包,但是我敢肯定这就是与autobox进行比较的意思。
Michael R. Chernick

(我刚刚将“ auto-arima”更改为“ auto.arima”。)auto.arima在其他软件包中可能还有其他功能,但是中肯定有一个功能forecast,其描述为:“返回最佳ARIMA模型。到AIC,AICc或BIC值。该函数在提供的顺序约束内对可能的模型进行搜索。”
韦恩

1
AUTOBOX通过实际估算迭代遍历自动识别的方式来整体处理自动识别,然后执行诊断性升压和降压过程以呈现仅具有统计意义的参数而错误过程没有可识别结构的模型这样,它遵循迭代脚本。大约在1975年的早期版本的AUTOBOX尝试使用“一种统计方法”,但是由于确定的模型具有冗余或愚蠢的结构(例如5,1,2)或明显的结构不足,因此人们发现这很困难。
IrishStat

1
@IrishStat听起来不错。如果您发现两个可以满足您需求的竞争模型,该怎么办。似乎有可能。您是否建议基于特定条件的“最佳”模型?我意识到选择只有“具有统计意义的重要参数”的模型可能会倾向于简化,但是不可能有一个低参数的AR过程和另一个低阶AEMA模型,其中所有参数在统计上都是显着的,残差看起来像白色噪声?
Michael R. Chernick

1
@IriehStat。我同意你的看法。最后,您为用户做什么。您仅提供一种模型,还是可以提供竞争可接受模型的有序列表?如果不是后者,那么将其添加到将列表限制为少量的地方可能是个不错的选择。
Michael R. Chernick

Answers:


9

迈克尔/韦恩

如果满足以下一个或多个条件,则AUTOBOX肯定会提供/标识其他型号

1)数据中有脉冲

2)数据中存在1个或多个电平/步进

3)数据中是否存在季节性脉冲

4)数据中存在1个或多个本地时间趋势,而这些时间趋势并不能简单地进行补救

5)模型的参数是否随时间变化

6)如果误差的方差随时间变化并且没有足够的功率转换。

就一个具体的例子而言,我建议你们两个都选择/创建一个时间序列,然后将它们都发布到网络上。我将使用AUTOBOX以无人参与模式分析数据,并将模型发布到列表中。然后运行R程序,然后每个人分别对两个结果进行客观分析,指出相似之处和不同之处。将这两个模型连同所有可用的支持材料(包括最终错误条款)一起发送给我,以供我提出意见。汇总这些结果并将其显示在列表中,然后请列表的读者投票表决哪种看上去最适合他们的过程。


你的意思是像一个大赛这个
ub

@whuber是的。甚至甚至可以使用一些“未知/编码的教科书示例”作为背景。
IrishStat

22

它们代表解决两个相似但不同问题的两种不同方法。我写过auto.arima,@IrishStat是的作者Autobox

auto.arima()适合(季节性)ARIMA模型,包括漂移项。Autobox适合传递函数模型以处理电平转换和离群值。ARIMA模型是传递函数模型的特例。

即使您在中关闭了电平移动和离群值检测Autoboxauto.arima()由于在识别ARIMA参数方面的选择不同,您将获得不同的ARIMA模型。

在我对M3和M竞争数据的测试中,auto.arima()产生的预测要比Autobox这些数据更为准确。但是,Autobox对于包含主要异常值和水平移动的数据,这样做会更好。


3
我相信您指的是很多年前的AUTOBOX版本。这些年来,AUTOBOX发生了重大变化。如果我没有记错的话,您只比较了1个来源的准确性,我敢肯定您会同意是1个样本。需要从多个来源评估准确性。
IrishStat

15
我指的是数千个系列中已发布的比较。作为《国际预测杂志》的总编辑,我认为我对如何评估预测有些了解。
罗伯·海德曼

2
我不想让这个问题引起争论,即谁拥有最好的预测算法。我认为autobox和auto.arima都是非常好的软件包。面对面的比较由于许多原因可能并不公平。1)用户可能不够熟练,无法知道如何进行判断。2)在单个时间序列上的预测准确性是一个废话。在预测中可能会有较低的均方误差,但是每当涉及随机性时,都必须将其考虑在内。您需要看几个系列,正如IrishStat建议的那样,您应该看一下不同的起点。
Michael R. Chernick

启动预测的不同点也将是有用的。3)在ARIMA世界中,同一时间序列模型有多种表示形式,有限的AR过程具有无限的移动平均表示形式,反之亦然。因此,低阶AR可能与高阶移动平均线或ARMA几乎相同。Box始终建议遵循简约原则。但是,如果您有大量数据,则可以很好地估计参数,并且高阶模型可能会生成与简约模型几乎相同的预测。4)两个软件包的目标不同。
Michael R. Chernick

3
该方法随着时间的推移而发展。戴夫·赖利(Dave Reilly)作为IrishStat在该网站上非常活跃,并且他对解释其一般工作方式持开放态度。拥有商业秘密和专有算法是业务的基本方面。从他的角度来看,R正像SPlus一样损害他的业务。但是他没有表现出苦涩,并且非常愿意展示他的软件,就像你今天看到的那样。他也愿意对竞争对手进行测试,我相信他已经进入了时间序列预测比赛。
Michael R. Chernick

11

编辑:根据您的评论,我相信如果您关闭了许多autobox选项,您可能会得到类似的答案auto.arima。但是,如果您不这样做,并且在存在异常值的情况下,肯定会有所不同:auto.arima不关心异常值,而是autobox会检测到异常值并对其进行适当处理,从而提供更好的模型。可能还会有其他差异,我确信IrishStat可以描述这些差异。


我相信autobox,除了寻找最佳的AR,I和MA系数以外,还可以检测到异常值和其他问题。如果是正确的话,则需要进行更多分析,以及两个其他R函数才能具有相似的功能。而且IrishStats是该社区的宝贵成员,并且非常友好。

当然,R是免费的,并且可以做超出ARIMA之外的大量工作。

经济型ARIMA的另一种免费选择是X13-ARIMA SEATS来自美国人口普查局的开源软件。有适用于Windows和Linux的二进制文件,但考虑到我已经加载了gnu的gfortran编译器,因此可以在Mac上直接编译。它是的继任者X12-ARIMA,经过多年的开发和测试,于最近几天发布。(它更新了X12,并且还增加了SEATS / TRAMO功能。X12是美国的官方工具,而SEATS / TRAMO来自西班牙银行,是“欧洲工具”。)

我真的很喜欢X12(现在是X13)。如果您输出大量诊断信息并通读它们并了解它们的含义,那么它们实际上是ARIMA和时间序列方面的一个很好的教育。我已经开发了自己的工作流程,但是有一个R包x12可以在R内完成大多数工作(您仍然必须为X12创建输入模型(“ .spc”)文件)。

我说X12擅长ARIMA的“经济学风格”,表示每月数据包含3年以上的数据。(您需要5年以上的数据才能使用某些诊断功能。)它具有异常值识别功能,可以处理各种异常值规范,并且可以处理假日,浮动假日,交易日影响以及许多经济因素。这是美国政府用来创建经过季节性调整的数据的工具。


我的问题是确实给了一个数据集,这两种算法可能会产生不同的模型选择。我真正感兴趣的是自动选择,而不是其他人可能没有的其他诊断功能。众所周知,ARMA模型家族和该家族中的两个模型可以是同一模型的精确或几乎精确的替代表示。因此,如果选择程序之间存在细微差异,我认为它们可以给出不同的模型选择。
Michael R. Chernick

3
@MichaelChernick:啊。我的猜测是,如果关闭所有自动填充功能,autobox您将得到相同的答案。但是使用的要点之一autobox是它将检测异常值并按这样处理它们,因此,如果存在异常值,则返回的模型将有所不同。
韦恩

@Wayne +1了解有关X13-ARIMA SEATS和SEATS / TRAMO的更多信息。
Graeme Walsh

@Wayne顺便说一句,另一个“欧洲工具”是DEMETRA +
Graeme Walsh
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.