Uso dudoso de los principios de procesamiento de señales para identificar una tendencia.

10

Estoy proponiendo intentar encontrar una tendencia en algunos datos a largo plazo muy ruidosos. Los datos son básicamente mediciones semanales de algo que se movió unos 5 mm durante un período de aproximadamente 8 meses. Los datos tienen una precisión de 1 mm y son muy ruidosos y cambian regularmente +/- 1 o 2 mm en una semana. Solo tenemos los datos al mm más cercano.

Planeamos usar un procesamiento de señal básico con una rápida transformación de Fourier para separar el ruido de los datos sin procesar. La suposición básica es que si reflejamos nuestro conjunto de datos y lo agregamos al final de nuestro conjunto de datos existente, podemos crear una longitud de onda completa de los datos y, por lo tanto, nuestros datos se mostrarán en una rápida transformación de Fourier y esperamos poder separarlos. .

Dado que esto me parece un poco dudoso, ¿vale la pena analizar este método o es el método de duplicar y agregar nuestro conjunto de datos de alguna manera fundamentalmente defectuoso? Estamos analizando otros enfoques, como el uso de un filtro de paso bajo también.

Ian Turner
fuente
¿Qué pasa con la transformación de Fourier lenta (estándar)?
¿Son estas mediciones GPS corregidas diferencialmente del movimiento de la placa, por casualidad?
whuber
En realidad, se trataba de movimientos de un túnel mientras se realizaban trabajos de construcción a su alrededor. Esperábamos que el movimiento siguiera más o menos una curva S durante el período de monitoreo.
Ian Turner

Respuestas:

9

A mí me suena dudoso ya que la estimación de tendencia estará sesgada cerca del punto donde empalmes los datos falsos. Un enfoque alternativo es una regresión no paramétrica más suave, como loess o splines.

Rob Hyndman
fuente
8

Si desea filtrar la tendencia a largo plazo utilizando el procesamiento de señal, ¿por qué no utilizar un paso bajo?

Lo más simple que se me ocurre sería una media móvil exponencial.

James Roth
fuente
Lo echamos un vistazo. Funcionó bien, pero en este caso el ruido aún parecía ser demasiado fuerte y si cambiamos los parámetros para igualar las distribuciones lo suficiente, parecía que la tendencia se había atenuado demasiado. Tal vez en este caso simplemente no hay solución para los datos y es demasiado ruidoso.
Ian Turner
1
Los promedios móviles ponderados exponencialmente son un caso especial de un kernel más suave (suponiendo que haya usado un MA de 2 lados en lugar de 1 lado). Las mejores estimaciones que son generalizaciones de esto son loess o splines: vea mi respuesta.
Rob Hyndman el
7

Creo que puede obtener cierta distorsión en el punto de pegado, ya que no todas las ondas subyacentes se conectarán muy bien.

Sugeriría usar una transformación de Hilbert Huang para esto. Simplemente haga la división en funciones de modo intrínseco y vea lo que queda como residuo al calcularlas.

Peter Smit
fuente
7

Puede usar la transformación de wavelet discreta (rápida :)) . El paquete wavethresh bajo R hará todo el trabajo. De todos modos, me gusta la solución de @James porque es simple y parece ir directamente al grano.

robin girard
fuente
Convenido; Las wavelets son excelentes para detectar el comportamiento no estacionario en grandes cantidades de ruido. Sin embargo, debes tener cuidado con el DWT. No es invariante a la rotación (aunque hay modificaciones del DWT que son, ver, por ejemplo, Percival y Walden 2000), por lo que puede perder transitorios agudos dependiendo del punto de partida de sus datos. Además, la mayoría de las implementaciones del DWT realizan una circularización implícita de los datos, por lo que aún deberá controlar eso.
Rico
Si mi memoria es buena, el paquete wavethresh contiene una eliminación de ruido invariante de traducción (mi referencia fue Coifman 1995) (Tenga en cuenta que habló de rotación, ¿no estamos hablando de señales temporales?).
robin girard
¿estás hablando de MODWT (Transformación de Onda Discreta de Superposición Máxima)?
RockScience
@fRed: nop, aquí está el artículo, Coifman y Donoho: citeseerx.ist.psu.edu/viewdoc/…
robin girard
4

La mayoría de las veces, cuando escucho "tendencia a largo plazo", pienso en tendencias al alza a largo plazo o tendencias a la baja a largo plazo , ninguna de las cuales es capturada adecuadamente por una transformación de Fourier. Tales tendencias unidireccionales se analizan mejor mediante el uso de regresión lineal . (Las transformadas de Fourier y los periodogramas son más apropiados para las cosas que suben y bajan).

La regresión lineal es fácil de hacer en la mayoría de las hojas de cálculo. (a) Visualice ecuaciones para líneas de regresión (b) Creación de diagramas de dispersión XY con hojas de cálculo

La regresión lineal intenta aproximar sus datos con una línea recta. Las transformadas de Fourier intentan aproximar sus datos con unas pocas ondas sinusoidales agregadas. Existen otras técnicas ("regresión no lineal") que intentan aproximar sus datos a polinomios u otras formas.

David Cary
fuente
2

La transformada de Fourier supone una estacionariedad de señal de sentido amplio y una invariancia lineal de tiempo (LTI). Si bien es robusto ante alguna violación de estas condiciones, realmente no creo que sea apropiado para el análisis de tendencias debido al supuesto de estacionariedad, es decir, está tratando de medir algo que viola uno de los supuestos básicos de FFT.

Estoy de acuerdo con los carteles anteriores; duplicar sus datos y agregar los datos reflejados al final de su serie temporal es dudoso. Sugeriría que ajustar un modelo de regresión lineal con una tendencia temporal como se mencionó anteriormente es probablemente más apropiado.

Si estaba buscando examinar la periodicidad, podría eliminar la tendencia mediante el filtrado de paso alto y realizando un análisis de Fourier. Si la tendencia permanece visible después del filtrado, puede restar una línea de regresión lineal ajustada de la señal original antes de FFT.

BGreene
fuente