Somiglianza di due trasformazioni discrete di Fourier?


14

Nella modellistica climatica, stai cercando modelli in grado di rappresentare adeguatamente il clima terrestre. Ciò include mostrare schemi semi-ciclici: cose come l'oscillazione meridionale El Nino. Ma la verifica del modello avviene generalmente in periodi di tempo relativamente brevi, dove esistono dati osservativi decenti (ultimi ~ 150 anni). Ciò significa che il tuo modello potrebbe mostrare i modelli giusti, ma essere sfasato, in modo tale che i confronti lineari, come la correlazione, non rileveranno che il modello sta funzionando bene.

Le trasformazioni discrete di Fourier vengono comunemente utilizzate per analizzare i dati climatici ( ecco un esempio ), al fine di raccogliere tali schemi ciclici. Esiste una misura standard della somiglianza di due DFT, che potrebbe essere utilizzata come strumento di verifica (ovvero un confronto tra il DFT per il modello e quello per le osservazioni)?

Avrebbe senso prendere l'integrale del minimo dei due DFT normalizzati per area (usando valori reali assoluti)? Penso che ciò comporterebbe un punteggio , dove x = 1X[0,1]X=1esattamente gli stessi schemi e X=0schemi totalmente diversi. Quali potrebbero essere gli svantaggi di tale metodo?


3
Hai esaminato la coerenza (nel senso dell'elaborazione del segnale, non quella statistica), una misura cross-spettrale? Non sono sicuro se questo è il tipo di misurazione che stai cercando.
jonsca,

@jonsca: cose interessanti. Non cerco certamente la causalità, ma vedo come potrebbe essere utile. L'esempio su quella pagina di Wikipedia è un po 'strano (perché non include la pressione barometrica come variabile di modello?). Inoltre, non sono sicuro da dove provenga la percentuale del 90% ...
nought101

Questa è una buona domanda. Quell'esempio è stato aggiunto all'articolo dall'ultima volta che l'ho letto. Ho il sospetto che potrebbe avere a che fare con la coerenza centrata sulle frequenze giornaliere e per 2 giorni (quindi legate a un fenomeno di marea giornaliero), ma questa è solo un'ipotesi ...
jonsca

(Non so se si sono integrati per trovare quel 90%, però)
jonsca

Risposte:


12

La coerenza spettrale, se usata correttamente, lo farebbe. La coerenza viene calcolata ad ogni frequenza e quindi è un vettore. Quindi, una somma di coerenza ponderata sarebbe una buona misura. In genere si desidera ponderare le coerenze su frequenze che hanno un'alta energia nella densità spettrale di potenza. In questo modo, misurereste le somiglianze alle frequenze che dominano le serie temporali invece di ponderare la coerenza con un peso elevato, quando il contenuto di tale frequenza nelle serie temporali è trascurabile.

Quindi, in parole semplici, l'idea di base è quella di trovare le frequenze alle quali l'ampiezza (energia) nei segnali è alta (interpretare come le frequenze che costituiscono prevalentemente ciascun segnale) e quindi confrontare le somiglianze a queste frequenze con un peso maggiore e confrontare i segnali al resto delle frequenze con un peso inferiore.

L'area che si occupa di questioni di questo tipo si chiama analisi cross-spettrale. http://www.atmos.washington.edu/~dennis/552_Notes_6c.pdf è un'eccellente introduzione all'analisi cross-spettrale.

Ritardo ottimale: guarda anche la mia risposta qui: come correlare due serie temporali, con possibili differenze di tempo

Questo si occupa di trovare il ritardo ottimale, usando la coerenza spettrale. R ha funzioni per calcolare le densità spettrali di potenza, le correlazioni automatiche e incrociate, le trasformazioni di Fourier e la coerenza. Devi trovare il codice giusto per trovare il ritardo ottimale per ottenere il massimo. coerenza ponderata. Detto questo, deve anche essere scritto un codice per ponderare il vettore di coerenza usando la densità spettrale. Dopo di che puoi riassumere gli elementi ponderati e valutarli in media per ottenere la somiglianza osservata al ritardo ottimale.


1
Questa è una risorsa eccellente! Si occupa di verificare bene le ipotesi, che un sacco di materiale sulla coerenza evita convenientemente
jonsca

2

Hai provato un altro approccio per la rilevazione / modellizzazione del segnale climatico, come un'analisi wavelet? Il grosso problema che può sorgere con il DFT nell'analisi del clima è in realtà quello che dici: le oscillazioni non sono perfettamente periodiche e di solito hanno intervalli di tempo diversi, quindi possono effettivamente avere diversi intervalli di oscillazione, il che è piuttosto confuso dal punto di vista della trasformata di Fourier .

Un'analisi wavelet è più adatta ai segnali climatici perché consente di controllare diversi intervalli di oscillazione; così come frequenze diverse vengono suonate in momenti diversi da uno strumento musicale, è possibile controllare frequenze diverse in diversi intervalli di tempo con la trasformazione wavelet.

Se sei interessato, questo articolo di Lau & Weng (1995) dovrebbe cancellare la maggior parte dei tuoi dubbi su questo metodo. La parte più interessante è che la trasformazione wavelet di un modello rispetto a quella dei dati è quasi direttamente comparabile, perché puoi confrontare direttamente l'intervallo di tempo previsto dal tuo modello, tralasciando tutti gli intervalli di oscillazione spuri che non lo fanno.

PS: Devo aggiungere che volevo pubblicare questo come commento, perché in realtà non è ciò che l'OP sta chiedendo, ma il mio commento sarebbe stato troppo grande e ho deciso di pubblicarlo come una risposta che potrebbe tornare utile come un approccio alternativo a quello dei DFT.


1

Ho votato a favore e in secondo luogo l'uso dell'analisi wavelet e basata sullo spettrogramma come alternativa alla dft. Se riesci a scomporre le tue serie in bin localizzati tempo-frequenza, riduce i quattro problemi di aperiodicità e non stazionarietà, oltre a fornire un profilo gradevole di dati discretizzati da confrontare.

Una volta che i dati sono mappati su un insieme tridimensionale di energia spettrale rispetto al tempo e alla frequenza, è possibile utilizzare la distanza euclidea per confrontare i profili. Una corrispondenza perfetta si avvicinerebbe alla distanza limite inferiore di zero. * È possibile esaminare le aree di data mining delle serie temporali e le aree di riconoscimento vocale per approcci simili.

* nota che il processo di binning wavelet filtrerà un po 'il contenuto informativo- Se non ci possono essere perdite nei dati confrontati, potrebbe essere più adatto per confrontare usando la distanza euclidea nel dominio del tempo

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.