Uso incerto dei principi di elaborazione del segnale per identificare una tendenza


10

Propongo di provare a trovare una tendenza in alcuni dati a lungo termine molto rumorosi. I dati sono fondamentalmente misurazioni settimanali di qualcosa che si è spostato di circa 5 mm in un periodo di circa 8 mesi. I dati hanno una precisione di 1 mm ed è molto rumoroso cambiando regolarmente +/- 1 o 2 mm in una settimana. Abbiamo solo i dati al mm più vicino.

Abbiamo in programma di utilizzare alcune elaborazioni di base del segnale con una trasformata di Fourier rapida per separare il rumore dai dati grezzi. Il presupposto di base è che se rispecchiamo il nostro set di dati e lo aggiungiamo alla fine del nostro set di dati esistente, possiamo creare una lunghezza d'onda completa dei dati e quindi i nostri dati verranno visualizzati in una rapida trasformata di Fourier e, si spera, possiamo separarli .

Dato che questo suona un po 'dubbio per me, è questo un metodo che merita di essere purificato o è il metodo di mirroring e aggiunta dei nostri set di dati in qualche modo fondamentalmente difettoso? Stiamo esaminando altri approcci come l'utilizzo di un filtro passa basso.


Che dire della trasformata di Fourier lenta (standard).

Queste misure GPS sono state differenziate in modo differenziato del movimento della placca, per caso?
whuber

In realtà erano i movimenti di un tunnel mentre i lavori di costruzione stavano procedendo attorno ad esso. Ci aspettavamo che il movimento seguisse molto approssimativamente una curva a S durante il periodo di monitoraggio.
Ian Turner,

Risposte:


9

Mi sembra complicato poiché la stima del trend sarà distorta vicino al punto in cui si collegano i dati falsi. Un approccio alternativo è una regressione non parametrica più fluida come loess o spline.


8

Se si desidera filtrare la tendenza a lungo termine utilizzando l'elaborazione del segnale, perché non utilizzare solo un passa basso?

La cosa più semplice che mi viene in mente sarebbe una media mobile esponenziale.


L'abbiamo visto. Ha funzionato bene, ma in questo caso il rumore sembrava essere ancora un po 'troppo forte e se avessimo modificato i parametri per uniformare abbastanza le distribuzioni, sarebbe sembrato che la tendenza fosse troppo attenuata. Forse in questo caso non c'è soluzione ai dati ed è solo un po 'troppo rumoroso.
Ian Turner,

1
Le medie mobili ponderate in modo esponenziale sono un caso speciale di un kernel più fluido (supponendo che tu abbia usato un MA a 2 facce anziché a 1 faccia). Stime migliori che sono generalizzazioni di questo sono loess o spline - vedi la mia risposta.
Rob Hyndman,

7

Penso che puoi ottenere qualche distorsione sul punto di incollaggio poiché non tutte le onde sottostanti si collegheranno molto bene.

Suggerirei di usare una trasformazione di Hilbert Huang per questo. Basta eseguire la divisione in funzioni in modalità intrinseca e vedere ciò che rimane come residuo durante il calcolo.


7

È possibile utilizzare la trasformazione wavelet discreta (veloce :)) . Il pacchetto wavethresh sotto R farà tutto il lavoro. Ad ogni modo, mi piace la soluzione di @James perché è semplice e sembra andare dritta al punto.


Concordato; le wavelet sono eccellenti per individuare comportamenti non stazionari con elevate quantità di rumore. Devi stare attento con il DWT, però. Non è invariante alla rotazione (anche se ci sono modifiche del DWT che sono, vedi ad esempio Percival e Walden 2000), quindi puoi perdere transitori nitidi a seconda del punto di partenza dei tuoi dati. Inoltre, la maggior parte delle implementazioni del DWT comporta una circolarizzazione implicita dei dati, quindi dovrai comunque controllarlo.
Ricco

Se la mia memoria è buona, il pacchetto wavethresh contiene il denoising invariante della traduzione (il mio riferimento era Coifman 1995) (Notate che avete parlato di rotazione, non stiamo parlando di segnali temporali?).
Robin Girard,

stai parlando di MODWT (Trasformazione Wavelet discreta a sovrapposizione massima)?
RockScience,

@fRed: no, ecco il documento, Coifman e Donoho: citeseerx.ist.psu.edu/viewdoc/…
robin girard

4

Il più delle volte quando ascolto una "tendenza a lungo termine", penso a tendenze al rialzo a lungo termine o tendenze al ribasso a lungo termine , nessuna delle quali viene correttamente catturata da una trasformata di Fourier. Tali tendenze unidirezionali vengono analizzate meglio utilizzando la regressione lineare . (Le trasformazioni e i periodogrammi di Fourier sono più appropriati per le cose che vanno su e giù).

La regressione lineare è facile da eseguire nella maggior parte dei fogli di calcolo. (a) Visualizza equazioni per le linee di regressione (b) Creazione di grafici a dispersione XY con fogli di calcolo

La regressione lineare tenta di approssimare i dati con una linea retta. Le trasformazioni di Fourier provano ad approssimare i tuoi dati con alcune onde sinusoidali aggiunte insieme. Esistono altre tecniche ("regressione non lineare") che provano ad approssimare i tuoi dati a polinomi o altre forme.


2

La trasformata di Fourier presuppone la stazionarietà del segnale di senso ampio e l'invarianza del tempo lineare (LTI). Sebbene sia robusto per una certa violazione di queste condizioni, non penso davvero che sia appropriato per l'analisi delle tendenze a causa dell'assunzione di stazionarietà, cioè stai cercando di misurare qualcosa che viola una delle ipotesi di base della FFT.

Concordo con i poster sopra; il mirroring dei dati e l'aggiunta dei dati con mirroring alla fine delle serie temporali è difficile. Suggerirei che probabilmente è più appropriato adattare un modello di regressione lineare con una tendenza temporale come menzionato sopra.

Se stavi cercando di esaminare la periodicità, potresti rimuovere la tendenza filtrando passa-alto ed eseguendo un'analisi di Fourier. Se la tendenza rimane visibile dopo il filtraggio, è possibile sottrarre una linea di regressione lineare adattata dal segnale originale prima di FFT.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.