Al leer publicaciones en este sitio, sé que hay una función R auto.arima
(en el forecast
paquete ). También sé que IrishStat , un miembro de este sitio, construyó el paquete comercial autobox a principios de la década de 1980. Como estos dos paquetes existen hoy y seleccionan automáticamente los modelos arima para conjuntos de datos dados, ¿qué hacen de manera diferente? ¿Posiblemente producirán diferentes modelos para el mismo conjunto de datos?
time-series
arima
automatic-algorithms
Michael R. Chernick
fuente
fuente
auto.arima
funciones en otros paquetes, pero definitivamente hay unaforecast
, cuya descripción es: "Devuelve el mejor modelo ARIMA de acuerdo ya sea para el valor AIC, AICc o BIC. La función realiza una búsqueda sobre el posible modelo dentro de las restricciones de orden proporcionadas ".Respuestas:
michael / wayne
AUTOBOX definitivamente entregaría / identificaría un modelo diferente si se cumple una o más de las siguientes condiciones
1) hay pulsos en los datos
2) hay 1 o más cambios de nivel / paso en los datos
3) si hay pulsos estacionales en los datos
4) hay 1 o más tendencias de hora local en los datos que no se solucionan simplemente
5) si los parámetros del modelo cambian con el tiempo
6) si la variación de los errores cambia con el tiempo y no hay transformación de potencia adecuada.
En términos de un ejemplo específico, sugeriría que ambos seleccionen / hagan una serie temporal y publiquen ambos en la web. Usaré AUTOBOX para analizar los datos en modo desatendido y publicaré los modelos en la lista. Luego ejecuta el programa R y luego cada uno de ustedes hace un análisis objetivo separado de ambos resultados, señalando similitudes y diferencias. Envíeme esos dos modelos completos con todo el material de apoyo disponible, incluidos los términos de error finales, para mis comentarios. Resuma y presente estos resultados a la lista y luego pida a los lectores de la lista que VOTEN por el procedimiento que les parezca mejor.
fuente
Representan dos enfoques diferentes para dos problemas similares pero diferentes. Escribí
auto.arima
y @IrishStat es el autor deAutobox
.auto.arima()
se adapta a los modelos ARIMA (estacionales), incluidos los términos de deriva.Autobox
se adapta a los modelos de función de transferencia para manejar cambios de nivel y valores atípicos. Un modelo ARIMA es un caso especial de un modelo de función de transferencia.Incluso si desactiva los cambios de nivel y la detección de valores atípicos
Autobox
, obtendría un modelo ARIMA diferenteauto.arima()
debido a las diferentes opciones de cómo identificar los parámetros ARIMA.En mis pruebas sobre los datos de competencia M3 y M,
auto.arima()
produce pronósticos más precisos queAutobox
para estos datos. Sin embargo, funcionaráAutobox
mejor con datos que contengan valores atípicos importantes y cambios de nivel.fuente
EDITAR: Según su comentario, creo que si desactiva muchas de
autobox
las opciones, probablemente obtendrá una respuesta similarauto.arima
. Pero si no lo hace, y en presencia de valores atípicos definitivamente habrá una diferencia:auto.arima
no le importan los valores atípicos, mientrasautobox
que los detectará y manejará de manera adecuada, lo que daría un mejor modelo. También puede haber otras diferencias, y estoy seguro de que IrishStat puede describirlas.Creo que
autobox
detecta valores atípicos y otras cosas más allá de la simple búsqueda de los mejores coeficientes AR, I y MA. Si eso es correcto, requeriría más análisis y un par de otras funciones de R para tener una funcionalidad similar. E IrishStats es un miembro valioso de esta comunidad y bastante amigable.Por supuesto, R es gratis y puede hacer miles de millones de cosas más allá de ARIMA.
Otra opción que es gratuita para ARIMA de estilo económico es
X13-ARIMA SEATS
, de la Oficina del Censo de los Estados Unidos, que es de código abierto. Hay binarios para Windows y Linux, pero se compiló directamente en mi Mac, dado que ya había cargado el compilador gfortu de gnu. Es el sucesorX12-ARIMA
y acaba de ser lanzado en los últimos días, después de años de desarrollo y pruebas. (Actualiza X12 y también agrega funciones SEATS / TRAMO. X12 es la herramienta oficial de EE. UU., Mientras que SEATS / TRAMO es del Banco de España y es la "herramienta europea").Realmente me gusta mucho X12 (y ahora X13). Si genera una buena cantidad de diagnósticos y los lee y aprende lo que significan, en realidad son una educación bastante buena en ARIMA y series de tiempo. Desarrollé mi propio flujo de trabajo, pero hay un paquete R
x12
para hacer la mayoría del trabajo desde R (aún debe crear el archivo de modelo de entrada (".spc") para X12).Digo que X12 es bueno en ARIMA "estilo económico" para significar datos mensuales con más de 3 años de datos. (Necesita más de 5 años de datos para usar algunas funciones de diagnóstico). Tiene una función de identificación de valores atípicos, puede manejar todo tipo de especificaciones atípicas y puede manejar días festivos, días festivos flotantes, efectos del día de negociación y una gran cantidad de cosas económicas. Es la herramienta que usa el gobierno de los Estados Unidos para crear datos ajustados estacionalmente.
fuente
autobox
, obtendrá la misma respuesta. Pero uno de los puntos de usoautobox
es que detectará valores atípicos y los manejará como tales, por lo que el modelo devuelto sería diferente si hubiera valores atípicos.