Detectar cambios en series de tiempo

11

Me encontré con una imagen de un prototipo de aplicación que encuentra cambios significativos ("tendencias" - no picos / valores atípicos) en los datos de tráfico:

texto alternativo

Quiero escribir un programa (Java, opcionalmente R) que pueda hacer lo mismo, pero debido a que mis habilidades estadísticas están un poco oxidadas, necesito profundizar en este tema nuevamente.

¿Qué enfoque / algoritmo debo usar / investigación por lo tanto?

stephanos
fuente
44
Esto es similar a stats.stackexchange.com/questions/5700/…
mpiktas
Sí, y las respuestas también serán las mismas.
whuber

Respuestas:

4

Hay varias formas en que puede ocurrir "una ruptura estructural".

Si hay un cambio en la Intercepción o un cambio en la Tendencia en "la última porción de la serie de tiempo", entonces uno sería más adecuado para realizar la Detección de Intervención (NB esta es la identificación empírica del impacto significativo de una Variable Determinista no especificada tal como un cambio de nivel o un cambio en la tendencia o el inicio de un pulso estacional). La detección de intervención es entonces un precursor para el modelado de intervención donde se incluye una variable sugerida en el modelo. Puede encontrar información en la web buscando en Google "DETECCIÓN DE INTERVENCIÓN AUTOMÁTICA". Algunos autores usan el término "DETECCIÓN DE OUTLIER", pero, como muchos lenguajes estadísticos, esto puede ser confuso / impreciso. Las intervenciones detectadas pueden ser cualquiera de las siguientes (detectar un cambio significativo en la media de los residuos);

un cambio de 1 período en el nivel (es decir, un pulso) un cambio contiguo de varios períodos en el nivel (es decir, un cambio en la intercepción) un pulso sistemático (es decir, un pulso estacional) un cambio de tendencia (es decir, 1,2,3,4,5, 7,9,11,13,15 .....) Estos procedimientos se programan fácilmente en R / SAS / Matlab y están disponibles de manera rutinaria en una serie de paquetes de series de tiempo disponibles comercialmente; sin embargo, hay muchas dificultades de las que debe tener cuidado como si primero se detecta la estructura estocástica o si se realiza la detección de intervención en la serie original. Esto es como el problema del huevo y la gallina. Los primeros trabajos en esta área se limitaron al tipo 1 y, como tal, probablemente serán insuficientes para sus necesidades, ya que sus ejemplos ilustran los NIVELES DE CAMBIO.

Hay mucho material en la web e incluso un programa gratuito en http://www.autobox.com/30day.exe que incluso le permite usar sus propios datos durante 30 días. Puede aprender mucho "simplemente mirando" como Yogi dijo una vez y replicar sus resultados.

Las referencias web para las ecuaciones exactas que puede utilizar se pueden encontrar a partir de la página 134 en http://www.autobox.com/pdfs/autoboxusersguide.pdf . Soy uno de los autores de AUTOBOX.

IrishStat
fuente
@stefanos: ¿Puede decirme el nombre de la aplicación ya que siempre estoy interesado en buscar soluciones de software que traten este problema? Puedes enviarme un correo electrónico a mi información de contacto.
IrishStat
1

Pruebe el paquete cpm o changepoint en R. Es de uso gratuito. También investigue el modelo de punto de cambio o la detección de cambio secuencial.

Cherese
fuente
3
Bienvenido al sitio, @Cherese. En la actualidad, esto es más un comentario que una respuesta. ¿Te importaría profundizar un poco en esto?
gung - Restablece a Monica