Perché così tanti metodi di calcolo della PSD?


53

Il metodo di Welch è stato il mio algoritmo di riferimento per il calcolo della densità spettrale di potenza (PSD) di serie temporizzate equamente campionate. Ho notato che ci sono molti altri metodi per il calcolo della PSD. Ad esempio, in Matlab vedo:

  • PSD usando il metodo Burg
  • PSD usando il metodo della covarianza
  • PSD utilizzando periodogramma
  • PSD utilizzando il metodo di covarianza modificato
  • PSD utilizzando il metodo multitaper (MTM)
  • PSD usando il metodo di Welch
  • PSD utilizzando il metodo AR Yule-Walker
  • Spettrogramma che utilizza la trasformata di Fourier di breve durata
  • Stima spettrale

Quali sono i vantaggi di questi vari metodi? Come domanda pratica, quando vorrei usare qualcosa di diverso dal metodo di Welch?


Neanche un principiante nell'elaborazione del segnale, ma indovina {this} può essere rilevante, anche {this} . Ho appena cercato su Google.
Sviluppatore

4
In realtà non "calcoli" il PSD ma "stimalo". C'è un'enorme differenza.
leonbloy,

1
Questo link contiene esempi di alcune delle tecniche sopra menzionate: mathworks.com/help/signal/ug/nonparametric-methods.html

Risposte:


67

Non ho familiarità con il metodo Multitaper. Detto questo, hai fatto una bella domanda. Alla ricerca del mio titolo MSEE, ho seguito un intero corso che ha riguardato la stima del PSD. Il corso ha coperto tutto ciò che hai elencato (ad eccezione del metodo Multitaper) e anche i metodi subspaziali. Anche questo copre solo alcune delle idee principali e ci sono molti metodi derivanti da questi concetti.

Per cominciare, ci sono due metodi principali per la stima della densità spettrale di potenza: non parametrici e parametrici.

I metodi non parametrici vengono utilizzati quando si sa poco sul segnale in anticipo. In genere presentano una complessità computazionale inferiore rispetto ai modelli parametrici. I metodi in questo gruppo sono ulteriormente suddivisi in due categorie: periodogrammi e correlogrammi. I periodogrammi vengono talvolta definiti metodi diretti, poiché comportano una trasformazione diretta dei dati. Questi includono lo spettro del campione, il metodo di Bartlett, il metodo di Welch e il periodogramma Daniell. I correlogrammi sono talvolta chiamati metodi indiretti, in quanto sfruttano il teorema di Wiener-Khinchin. Pertanto, questi metodi si basano sul prendere la trasformata di Fourier di una sorta di stima della sequenza di autocorrelazione. A causa dell'elevata quantità di varianza associata a ritardi di ordine superiore (a causa di una piccola quantità di campioni di dati utilizzati nelle correlazioni), viene utilizzato il windowing. Il metodo Blackman-Tukey generalizza i metodi del correlogramma.

I metodi parametrici in genere assumono una sorta di modello di segnale prima del calcolo della stima della densità spettrale di potenza. Pertanto, si presume che una certa conoscenza del segnale sia nota in anticipo. Esistono due principali categorie di metodi parametrici: metodi autoregressivi e metodi subspaziali.

I metodi autoregressivi presuppongono che il segnale possa essere modellato come l'uscita di un filtro autoregressivo (come un filtro IIR) guidato da una sequenza di rumore bianco. Pertanto, tutti questi metodi tentano di risolvere i coefficienti IIR, per cui la densità spettrale di potenza risultante viene facilmente calcolata. L'ordine del modello (o il numero di tocchi), tuttavia, deve essere determinato. Se l'ordine del modello è troppo piccolo, lo spettro sarà altamente levigato e non avrà una risoluzione. Se l'ordine del modello è troppo elevato, iniziano a comparire falsi picchi da una quantità abbondante di poli. Se il segnale può essere modellato da un processo AR del modello 'p', l'output del filtro di ordine> = p guidato dal segnale produrrà rumore bianco. Esistono centinaia di metriche per la selezione dell'ordine dei modelli. Si noti che questi metodi sono eccellenti per segnali SNR da alti a moderati, segnali a banda stretta. Il primo è perché il modello si rompe in un rumore significativo ed è meglio modellato come un processo ARMA. Quest'ultimo è dovuto alla natura impulsiva dello spettro risultante dai poli nella trasformata di Fourier del modello risultante. I metodi AR si basano sulla previsione lineare, che è ciò che viene utilizzato per estrapolare il segnale al di fuori dei suoi valori noti. Di conseguenza, non soffrono di spifferi e non richiedono finestre.

I metodi di sottospazio decompongono il segnale in un sottospazio di segnale e sottospazio di rumore. Lo sfruttamento dell'ortogonalità tra i due sottospazi consente di formare uno pseudospettro in cui possono apparire grandi picchi a componenti a banda stretta. Questi metodi funzionano molto bene in ambienti a basso SNR, ma sono computazionalmente molto costosi. Possono essere raggruppati in due categorie: metodi del sottospazio del rumore e metodi del sottospazio del segnale.

Entrambe le categorie possono essere utilizzate in due modi: decomposizione autovalvola della matrice di autocorrelazione o decomposizione a valore singolare della matrice di dati.

I metodi del sottospazio del rumore tentano di risolvere 1 o più autovettori del sottospazio del rumore. Quindi, l'ortogonalità tra il sottospazio del rumore e il sottospazio del segnale produce zeri nel denominatore delle stime di spettro risultanti, risultando in grandi valori o picchi su componenti del segnale reali. Il numero di sinusoidi discreti, o il grado del sottospazio del segnale, deve essere determinato / stimato o conosciuto in anticipo.

I metodi del sottospazio di segnale tentano di scartare il sottospazio di rumore prima della stima spettrale, migliorando il SNR. Una matrice di autocorrelazione di rango ridotto viene formata con solo gli autovettori determinati a appartenere al sottospazio del segnale (di nuovo, un problema di ordine del modello) e la matrice di rango ridotto viene utilizzata in uno qualsiasi degli altri metodi.

Ora proverò a coprire rapidamente il tuo elenco:

  • PSD usando il metodo Burg: Il metodo Burg sfrutta la ricorsione del Levinson in modo leggermente diverso rispetto al metodo Yule-Walker, in quanto stima i coefficienti di riflessione minimizzando la media dell'errore di predizione lineare in avanti e all'indietro. Ciò si traduce in una media armonica dei coefficienti di correlazione parziale dell'errore di predizione lineare avanti e indietro. Produce stime di risoluzione molto elevate, come tutti i metodi autoregressivi, perché utilizza la previsione lineare per estrapolare il segnale al di fuori del suo record di dati noto. Questo rimuove efficacemente tutti i fenomeni laterali. È superiore al metodo YW per brevi record di dati e rimuove anche il compromesso tra l'utilizzo delle stime di autocorrelazione distorte e imparziali, man mano che i fattori di ponderazione si dividono. Uno svantaggio è che può presentare una divisione spettrale della linea. Inoltre, soffre degli stessi problemi che hanno tutti i metodi AR. Cioè, un SNR da basso a moderato degrada gravemente le prestazioni, poiché non è più modellato correttamente da un processo AR, ma piuttosto da un processo ARMA. I metodi ARMA sono usati raramente in quanto generano generalmente un insieme non lineare di equazioni rispetto ai parametri della media mobile.

  • PSD che utilizza il metodo della covarianza : il metodo della covarianza è un caso speciale del metodo dei minimi quadrati, in cui la parte con finestra degli errori di previsione lineare viene scartata. Ciò ha prestazioni superiori al metodo Burg, ma a differenza del metodo YW, la matrice inversa da risolvere non è l'eremitico Toeplitz in generale, ma piuttosto il prodotto di due matrici di Toeplitz. Pertanto, la ricorsione di Levinson non può essere utilizzata per risolvere i coefficienti. Inoltre, non è garantito che il filtro generato da questo metodo sia stabile. Tuttavia, per la stima spettrale questa è una buona cosa, con conseguenti picchi molto grandi per il contenuto sinusoidale.

  • PSD con periodogramma : questo è uno dei peggiori stimatori ed è un caso speciale del metodo Welch con un singolo segmento, finestre rettangolari o triangolari (a seconda della stima di autocorrelazione utilizzata, distorta o imparziale) e senza sovrapposizioni. Tuttavia, è uno dei "più economici" dal punto di vista computazionale. La varianza risultante può essere piuttosto elevata.

  • PSD usando il metodo di covarianza modificato : questo migliora sia il metodo di covarianza che il metodo Burg. Può essere paragonato al metodo Burg, per cui il metodo Burg minimizza solo l'errore di previsione lineare medio avanti / indietro rispetto al coefficiente di riflessione, il metodo MC lo minimizza rispetto a TUTTI i coefficienti AR. Inoltre, non soffre di divisione della linea spettrale e fornisce una distorsione molto inferiore rispetto ai metodi precedentemente elencati. Inoltre, sebbene non garantisca un filtro IIR stabile, la realizzazione del filtro reticolare è stabile. È anche più esigente dal punto di vista computazionale rispetto agli altri due metodi.

  • PSD usando il metodo di Welch: il metodo di Welch migliora il periodogramma affrontando la mancanza della media dell'insieme che è presente nella vera formula PSD. Generalizza il metodo di Barlett usando la sovrapposizione e il windowing per fornire più "campioni" di PSD per la media pseudo-ensemble. Può essere un metodo economico ed efficace a seconda dell'applicazione. Tuttavia, se hai una situazione con sinusoidi ravvicinati, i metodi AR potrebbero essere più adatti. Tuttavia, non richiede la stima dell'ordine del modello come i metodi AR, quindi se si sa poco a priori sul proprio spettro, può essere un ottimo punto di partenza.

  • PSD utilizzando il metodo AR Yule-Walker : questo è un caso speciale del metodo dei minimi quadrati in cui vengono utilizzati i residui di errore completi. Ciò si traduce in una riduzione delle prestazioni rispetto ai metodi di covarianza, ma può essere efficacemente risolto utilizzando la ricorsione di Levinson. È anche noto come metodo di autocorrelazione.

  • Spettrogramma che utilizza la trasformata di Fourier di breve durata : ora stai attraversando un dominio diverso. Questo è usato per spettri variabili nel tempo. Cioè, uno il cui spettro cambia con il tempo. Questo apre tutta un'altra lattina di worm e ci sono tanti metodi quanti ne hai elencati per l'analisi della frequenza temporale. Questo è sicuramente il più economico, motivo per cui è così frequentemente utilizzato.

  • Stima spettrale : questo non è un metodo, ma un termine generale per il resto del tuo post. A volte il periodogramma viene definito "spettro di campionamento" o "periodogramma di Schuster", il primo dei quali può essere quello a cui ti riferisci.

Se sei interessato, puoi anche esaminare i metodi del sottospazio come MUSIC e Pisarenko Harmonic Decomposition. Questi decompongono il segnale nel sottospazio del segnale e del rumore e sfruttano l'ortogonalità tra il sottospazio del rumore e gli autovettori del sottospazio del segnale per produrre uno pseudospettro. Proprio come i metodi AR, potresti non ottenere una stima "vera" di PSD, in quanto molto probabilmente la potenza non viene conservata e l'ampiezza tra i componenti spettrali è relativa. Tuttavia, tutto dipende dalla tua applicazione.

Saluti


Grazie per la magnifica risposta! Potresti aggiungere alcune osservazioni introduttive sulla differenza tra metodi parametrici e non parametrici? Inoltre, potrebbe essere più chiaro raggruppare i metodi che sono strettamente correlati o derivati ​​l'uno dall'altro, cioè periodogramma ⊆ metodo di Bartlett ⊆ metodo di Welch.
nibot,

Certamente. Ho appena aggiunto un'introduzione e alcune categorie.
Bryan,

Benvenuto. Grazie per aver contribuito con una risposta così dettagliata.
Jason R,

Se potessi andare più in dettaglio sui vantaggi / svantaggi, piuttosto che sul modo in cui ognuno è calcolato, ci darebbe un miglior senso di come selezionarne uno per un'applicazione specifica.
CyberMen,

1
Se leggi la risposta, ho fatto proprio questo. Inoltre, per le implementazioni pratiche, il modo in cui ciascuno viene calcolato rappresenta un vantaggio / svantaggio. Alcuni sono molto efficienti dal punto di vista computazionale, ma non funzionano altrettanto bene. Alcuni di loro funzionano molto bene, ma sono molto complessi e difficili da attuare su obiettivi a bassa potenza.
Bryan,

12

Volevo aggiungere l'unica categoria che il primo post non riguardava. Il metodo multitaper è un metodo non parametrico per calcolare uno spettro di potenza simile all'approccio periodogramma. In questo metodo uno spettro di potenza viene calcolato finestrando i dati e calcolando una trasformata di Fourier, prendendo l'entità del risultato e quadrandolo. Il metodo multitaper calcola la media di un numero predeterminato di periodogrammi calcolati ciascuno con una finestra diversa. Questo metodo funziona perché le finestre selezionate hanno due proprietà matematiche. Innanzitutto, le finestre sono ortogonali. Ciò significa che ognuno dei periodogrammi non è correlato, quindi la media di più periodogrammi fornisce una stima con una varianza inferiore rispetto all'uso di un solo cono. In secondo luogo, le finestre hanno la migliore concentrazione possibile nel dominio della frequenza per una lunghezza del segnale fissa.

In matlab, le funzioni della finestra possono essere chiamate usando la funzione dpss. Oltre all'utilizzo di finestre ottimali, è stato derivato un algoritmo per ponderare i diversi periodogrammi in base alla quantità di perdite che aggiungeranno alla stima dello spettro di potenza. L'algoritmo produce una serie di pesi adattativi dei dati. Ottenere una stima dello spettro con una serie di pesi adattativi dei dati può essere fatto in Matlab creando un oggetto spettro.mtm con 'adattivo' usato come opzione di combinazione.

Per quanto riguarda i metodi non parametrici, il metodo MT è senza dubbio il metodo migliore per stimare uno spettro di potenza per una serie storica stazionaria.


Guardando l'ultima frase del tuo post, vorrai sempre utilizzare un calcolo MT rispetto al metodo di Welch.
ncRubert,
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.