Auto.arima vs autobox ¿se diferencian?


16

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?


Gracias por la edición @Wayne. No estoy familiarizado con el paquete de pronóstico R, pero estoy seguro de que eso es lo que quiero comparar con autobox.
Michael R. Chernick

(Acabo de hacer un segundo pequeño cambio de "auto-arima" a "auto.arima".) Puede haber otras auto.arimafunciones en otros paquetes, pero definitivamente hay una forecast, 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 ".
Wayne

1
AUTOBOX trata la identificación automática de manera holística al iterar a través de la identificación automática al estimar y luego realizar procedimientos de diagnóstico ascendentes y descendentes para representar un modelo que solo tiene parámetros estadísticamente significativos mientras tiene un proceso de error que está libre de estructura identificable De esta manera, sigue el guión de iteración. Las primeras versiones de AUTOBOX alrededor de 1975 intentaron utilizar el "enfoque de una estadística", pero se descubrió que los modelos identificados tenían una estructura redundante o tonta (5,1,2 por ejemplo) o evidenciaban una estructura insuficiente.
IrishStat el

1
@IrishStat Eso suena como un buen enfoque. ¿Qué haces si encuentras dos modelos competidores que cumplan tus requisitos? Parece posible. ¿Recomienda un modelo "óptimo" basado en criterios específicos? Me doy cuenta de que la elección de un modelo con solo "parámetros estadísticamente significativos" puede tender a favorecer la parsimonia, pero no es posible tener un proceso AR de parámetros bajos y otro modelo AEMA de orden bajo donde todos los parámetros sean estadísticamente significativos y los residuos parezcan blancos ¿ruido?
Michael R. Chernick

1
@IriehStat. Estoy de acuerdo contigo. Al final, ¿qué haces por el usuario? ¿Proporciona solo un modelo o podría dar una lista ordenada de modelos aceptables de la competencia? Si no es lo último, tal vez sería una buena opción para agregar donde limita la lista a un número pequeño.
Michael R. Chernick

Respuestas:


9

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.


¿Te refieres a un concurso como este ?
whuber

@whuber Sí. Quizás incluso usando algún "ejemplo de libro de texto desconocido / codificado" que podría usarse como telón de fondo.
IrishStat el

22

Representan dos enfoques diferentes para dos problemas similares pero diferentes. Escribí auto.arimay @IrishStat es el autor de Autobox.

auto.arima()se adapta a los modelos ARIMA (estacionales), incluidos los términos de deriva. Autoboxse 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 diferente auto.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 que Autoboxpara estos datos. Sin embargo, funcionará Autoboxmejor con datos que contengan valores atípicos importantes y cambios de nivel.


3
Creo que se refería a una versión de AUTOBOX de hace muchos, muchos años. AUTOBOX ha cambiado significativamente durante estos años. Si no me equivoco, solo comparó las precisiones de 1 origen, lo que estoy seguro de que aceptará es una muestra de 1. Las precisiones deben evaluarse a partir de varios orígenes.
IrishStat

15
Me refiero a las comparaciones publicadas en miles de series. Como editor en jefe del International Journal of Forecasting, creo que tengo alguna idea sobre cómo evaluar los pronósticos.
Rob Hyndman

2
No tenía la intención de que esta pregunta presentara argumentos sobre quién tiene el mejor algoritmo de pronóstico. Creo que tanto autobox como auto.arima son probablemente paquetes muy buenos. Una comparación cabeza a cabeza podría no ser justa por muchas razones. 1) El usuario puede no ser lo suficientemente experto como para saber cómo juzgarlos. 2) La precisión del pronóstico en una sola serie de tiempo es un tiro de mierda. Uno podría tener un error cuadrático medio más bajo en la predicción, pero siempre que se trate de aleatoriedad debe tenerse en cuenta. Debe mirar varias series y, como IrishStat sugiere, debe mirar diferentes puntos de partida.
Michael R. Chernick

También serían útiles diferentes puntos para iniciar el pronóstico. 3) En el mundo ARIMA hay múltiples representaciones para el mismo modelo de serie temporal, los procesos AR finitos tienen infinitas representaciones de promedio móvil y viceversa. Por lo tanto, un AR de bajo orden podría ser casi lo mismo que un promedio móvil de alto orden o un ARMA. Box siempre sugirió seguir el principio de parsimonia. Pero si tiene muchos datos, puede obtener buenas estimaciones de los parámetros y el modelo de alto orden puede generar casi los mismos pronósticos que el parsimonioso. 4) Los dos paquetes tienen objetivos diferentes.
Michael R. Chernick

3
El método ha evolucionado con el tiempo. Dave Reilly es muy activo en este sitio como IrishStat y ha sido muy abierto al explicar cómo funciona en términos generales. Es un aspecto esencial de las empresas tener secretos comerciales y algoritmos patentados. Desde su punto de vista, R está perjudicando su negocio como lo es para SPlus. Pero él no muestra amargura y está muy dispuesto a demostrar su software como puede ver que hizo hoy. También está dispuesto a realizar pruebas contra competidores y creo que ha entrado en competiciones de pronóstico de series de tiempo.
Michael R. Chernick

11

EDITAR: Según su comentario, creo que si desactiva muchas de autoboxlas opciones, probablemente obtendrá una respuesta similar auto.arima. Pero si no lo hace, y en presencia de valores atípicos definitivamente habrá una diferencia: auto.arimano le importan los valores atípicos, mientras autoboxque 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 autoboxdetecta 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 sucesor X12-ARIMAy 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 x12para 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.


Mi pregunta realmente recibió un conjunto de datos si los dos algoritmos posiblemente produzcan diferentes selecciones de modelos. Es realmente la selección automática lo que me interesa y no otras características de diagnóstico que uno puede tener que el otro no. Se sabe que la familia de modelos ARMA y dos modelos en la familia pueden ser representaciones alternativas exactas o casi exactas del mismo modelo. Entonces, si hay diferencias menores en los procedimientos de selección, creo que podrían dar diferentes opciones de modelo.
Michael R. Chernick

3
@MichaelChernick: Ah. Supongo que si desactiva todas las funciones automáticas autobox, obtendrá la misma respuesta. Pero uno de los puntos de uso autoboxes que detectará valores atípicos y los manejará como tales, por lo que el modelo devuelto sería diferente si hubiera valores atípicos.
Wayne

@Wayne +1 para obtener información adicional sobre X13-ARIMA SEATS y SEATS / TRAMO.
Graeme Walsh

@Wayne Por cierto, otra "herramienta europea" es DEMETRA + .
Graeme Walsh
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.