4 votos

¿Descomponer una serie temporal en superposición de funciones escalonadas?

Antecedentes

Tengo datos de series temporales que comprenden observaciones horarias de las lecturas de un sensor durante un período de casi un año. El sensor registra un entorno cuyas mediciones de referencia deben tener una ciclicidad diaria, y que son generadas por una suma de varios procesos "escalonados" (es decir, encendidos, apagados). Sin embargo, hay muchas otras cosas que ocurren en el entorno, y el sensor también las capta. Estas "otras cosas" suelen tener una amplitud mucho mayor que los datos cíclicos subyacentes.

Una última advertencia: las "otras cosas" pueden tener una ciclicidad diaria aproximada, pero si es así su periodo es extremadamente ruidoso, es decir, las "otras cosas" (digamos) empiezan a las 1200 de media y terminan a las 1500 de media, pero los puntos de inicio y fin varían mucho de un día a otro.

Pregunta

  • ¿Cómo puedo descubrir los procesos cíclicos reales que subyacen a estos datos? (pregunta principal)
  • ¿Puedo escribir una optimización basada en la suma de errores cuadrados que intente representar estos datos como una superposición de funciones escalonadas? Estoy pensando en algo parecido a la regresión lineal múltiple, excepto que los IDV codifican funciones escalonadas con diferentes amplitudes y tiempos de inicio. (pregunta secundaria)

Algunos enfoques que no han funcionado, o que no creo que funcionen

  • Análisis de Fourier. He ejecutado la DFT, y he intentado guardar las frecuencias de mayor amplitud, o las que tienen períodos entre 0,8 y 1 días. Sin embargo, esto no consigue filtrar las "otras cosas" - de hecho, debido a que el proceso cíclico de base es estepado, retener sólo unas pocas frecuencias no puede capturar esto adecuadamente, y debido a que la relación SNR es baja, la serie reconstruida puede estar bastante cerca de la "media de un solo día" del proceso de ruido

  • Ver 2. arriba en Preguntas. No creo que esto funcione. Dos enfoques: 1) fingir que estoy haciendo una regresión lineal simple, con una IDVs que codifican cada función de paso posible (por ejemplo, si un día se representado por sólo 4 puntos de tiempo, {1, 1, 0, 0}, {0, 0, 1, 1}, ... etc (es probable que esté sobreparametrizado) 2) o escribir una función de coste de suma de cuadrados donde mi estimador es una suma sobre S funciones de paso, parametrizadas por una amplitud y un tiempo de paso. No estoy seguro de que si optimizo mi función de coste con un estimador de este tipo converja a un mínimo global, especialmente si el número de pasos, S, puede variar.

Me gustaría que me dieran su opinión al respecto.

Gracias

0 votos

¿Puede explicar con más detalle: (1) ¿Qué fiabilidad tiene la periodicidad de sus funciones escalonadas? Por ejemplo, ¿un determinado paso se produce siempre en cinco segundos o minutos alrededor de las 12 horas? (2) ¿Cómo de suave es su otro material durante un día? ¿Es más bien ruido blanco con tendencia o tiene una memoria relevante? (3) ¿Cómo se muestrean sus datos? ¿Van variando las horas de las grabaciones diarias o son bruscamente a la misma hora? (Por favor, déjeme un respuesta al comentario Si añadiste esa información, tengo algunas ideas sobre cómo hacerlo).

0 votos

@Wrzlprmft OP aquí. En respuesta a lo anterior (1) Ni idea - estamos trabajando en la suposición de que esta estructura existe bajo los datos - esperamos ser capaces de responder a esta pregunta como parte de nuestra investigación (tal vez por bootstrapping datos) (2) muy ruidoso - posiblemente poisson sobredispersa - con al menos un poco de memoria (3) las muestras se toman precisamente al mismo tiempo. Gracias.

1voto

Aksakal Puntos 11351

Si tienes dos señales con la misma frecuencia, va a ser difícil separarlas. Una idea es la separación de las fases, tal vez el "ruido" del entorno esté desfasado con respecto a la señal.

Nótese que uso las comillas por el ruido, porque realmente no lo es. El ruido debe ser blanco, mientras que el tuyo claramente no lo es. Así que, técnicamente, es una señal, que quieres separar.

Prueba la transformada de Fourier, pero en lugar de fijarte, como es habitual, en las densidades espectrales, presta atención a las fases.

La segunda idea es utilizar algún tipo de transformada wavelet. Si se utiliza la FFT (DFT) directa, habrá muchos sobretonos tanto de la señal como de "otras cosas", lo que puede dificultar su separación. Tal vez las ondículas encajen mejor en este caso.

ACTUALIZACIÓN: En cualquier caso, si tu señal y otras cosas tienen la misma frecuencia base, es un gran problema. Piensa en un caso extremo: dos senos con la misma frecuencia y diferentes fases: $\sin(wt)+\sin(wt+\phi)=2\cos(\phi/2)\sin(wt+\phi/2)$ . Esto es precisamente un onda sinusoidal, la FFT no podrá detectar dos ondas.

1voto

Las transformadas de Fourier y otros periodogramas son buenos sobre todo si no se conoce el periodo subyacente de los datos. (Además, 24 puntos de datos por ciclo con ruido harán muy difícil reunir los subarmónicos, etc., necesarios para reconstruir la señal periódica subyacente).

La principal ventaja que tienes es que conoces la periodicidad de los datos o tienes alguna hipótesis al respecto que quieres probar. Por lo tanto, yo sugeriría dos enfoques mucho más simples:

  • Tome los promedios de todos los datos para una hora determinada del día y observe la serie temporal resultante, que representa el ciclo medio diario. Si tus suposiciones son correctas, el efecto del ruido debería reducirse con el promedio y tus pasos reales deberían permanecer.

  • Echa un vistazo a todos los pares de horas adyacentes del día y cuenta el número de aumentos (o disminuciones) que superan un umbral determinado. Si tus suposiciones son correctas y tu nivel de ruido no es demasiado alto, debería haber un umbral para el que tu recuento debería ser significativamente mayor para algunas horas del día.

Si los dos enfoques anteriores fallan, es probable que su hipótesis (tal y como la he entendido) no sea correcta.

0voto

Michał Herman Puntos 118

¿Has probado a utilizar los métodos del periodograma? como el método de Welch? Si la "otra cosa" es variable en frecuencia a lo largo del tiempo, mientras que la señal deseada permanece constante en frecuencia a lo largo del tiempo, entonces hay mejores estimaciones del espectro que la DFT en todo el conjunto de datos. El método de Welch toma varias DFT en una ventana deslizante de sus datos y las promedia juntas.

No sé lo suficiente sobre sus datos para responder a su segunda pregunta. ¿Tal vez debería publicar un ejemplo de gráfico? Si tiene varias funciones escalonadas, el modelo de mínimos cuadrados no lineales tardará una eternidad en resolverse, a menos que haya otra relación en sus datos que yo desconozca.

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X