Densità spettrale di potenza: lo spettro di un processo stocastico e come stimarlo
Nell'articolo sui processi stocastici abbiamo descritto un processo stazionario nel tempo, con la media e la funzione di autocovarianza. Per i segnali deterministici c'era anche una descrizione in frequenza, lo spettro. Qui facciamo lo stesso per i processi stocastici.
Dall'autocovarianza allo spettro
La DTFT non si può applicare direttamente a un processo stocastico. Una realizzazione dura per sempre e non si spegne: ha energia infinita. Ha però potenza finita, perché la sua varianza resta costante nel tempo.
L'idea è trasformare la funzione di autocovarianza . Per i processi che ci interessano decade a zero abbastanza in fretta al crescere del lag, quindi è un segnale a energia finita, e la sua DTFT esiste. Si chiama densità spettrale di potenza:
La corrispondente trasformata Zeta si indica con , e vale .
dice come la potenza del processo si distribuisce tra le frequenze: quanto contribuisce, in media sulle realizzazioni, ciascuna componente in frequenza alla variabilità del segnale.
Conoscere lo spettro o l'autocovarianza è equivalente, perché si torna indietro con l'antitrasformata:
Con si ottiene un risultato importante: la varianza del processo è l'area sotto la densità spettrale, divisa per .
La densità spettrale di potenza ha quattro proprietà:
- è reale;
- è non negativa: , come deve essere una potenza;
- è pari: ;
- è periodica di periodo .
Dimostrazioni: le quattro proprietà
Perché è reale. Per la formula di Eulero, ogni esponenziale della somma è un coseno più un seno moltiplicato per :
Il seno è la parte immaginaria. Si prendono insieme i termini in e in . Hanno lo stesso coefficiente, perché . Il coseno è pari e resta uguale, mentre il seno è dispari e cambia segno: . Sommando la coppia, i due seni si cancellano:
Quindi la densità spettrale è una somma di soli coseni, ed è reale:
Perché è pari. Dalla stessa formula, perché .
Perché è periodica. Ogni termine lo è: , perché è intero.
Perché è non negativa. Non si vede dalla formula. Si ricava dal periodogramma, più avanti: è sempre , e il suo valore atteso tende a . Il limite di quantità non negative non può essere negativo.
Per le ultime due proprietà basta guardarla tra e . Come per la DTFT, è una pulsazione normalizzata, in radianti per campione: corrisponde alla frequenza di Nyquist, .
Densità spettrale di un rumore bianco
Per il rumore bianco l'autocovarianza è diversa da zero solo in , dove vale . Nella somma resta un solo termine:
Lo spettro è costante: tutte le frequenze contribuiscono allo stesso modo, e nessuna domina. Il nome viene da qui: come la luce bianca contiene tutti i colori in parti uguali. È lo spettro di un segnale che non ha nessuna regolarità, e che quindi non si può predire.
Processi stazionari a confronto
Il grafico mette a confronto quattro processi stazionari a media nulla, tutti ottenuti dallo stesso rumore bianco :
- rumore bianco: stesso;
- regolare: con ;
- alternante: lo stesso con ;
- risonante: .
Per ciascuno: una realizzazione, l'autocovarianza e la densità spettrale. Ogni pannello ha la sua scala.
Realizzazione, autocovarianza e spettro raccontano la stessa cosa in tre modi.
- Regolare. Ogni campione è il 90% del precedente: il segnale cambia lentamente. L'autocovarianza decade piano, perché campioni lontani restano simili. La potenza è concentrata alle basse frequenze: , .
- Alternante. Il segno si inverte quasi a ogni passo. L'autocovarianza cambia segno a ogni lag. Lo spettro è lo specchio del precedente: dominano le alte frequenze, vicino a .
- Risonante. Il segnale oscilla in modo irregolare, con un periodo di circa 11 campioni. Anche l'autocovarianza oscilla, smorzandosi. Lo spettro ha un picco di risonanza in .
Perché ci sono i picchi. Lo spettro dice a che ritmo si muove il segnale. Se cambia piano, la potenza sta alle frequenze basse, vicino a . Se salta su e giù a ogni passo, sta a quelle alte, vicino a . Se oscilla con un suo ritmo, c'è un picco proprio a quel ritmo.
Più lo spettro è concentrato, più il processo è regolare e prevedibile. Lo spettro piatto del rumore bianco è il caso opposto.
Densità cross-spettrale. Con due processi stazionari e si trasforma allo stesso modo la cross-covarianza: è la DTFT di , e la sua trasformata Zeta. A differenza dell'autocovarianza, la cross-covarianza non è pari, ma vale ; di conseguenza e . Servirà per collegare ingresso e uscita di un sistema.
Stimare dai dati
Nella pratica né l'autocovarianza né lo spettro sono noti: vanno stimati. Le ipotesi sono:
- il processo è stazionario ed ergodico, così basta una sola realizzazione;
- ha media nulla. Se non è così, si stima la media con la media temporale e la si sottrae;
- sono disponibili campioni, .
Autocovarianza campionaria
Siccome , la stima viene naturale: la media dei prodotti delle coppie di campioni a distanza . Le coppie disponibili sono :
Si usa perché, per la simmetria, la stima è la stessa per e . Con si stima la varianza. Questo stimatore è corretto, e consistente per ogni fissato.
Il problema sono i lag grandi. Con vicino a restano pochissime coppie da mediare, e la stima diventa molto incerta. L'alternativa è dividere sempre per :
Questo è distorto: in media vale , e viene schiacciato verso zero tanto più quanto si avvicina a . Ma è asintoticamente corretto, e ai lag grandi ha varianza molto più piccola.
Un esempio con il processo dell'articolo precedente, la cui autocovarianza vera vale . Ripetendo la stima su 3.000 realizzazioni da campioni, ecco la deviazione standard dei due stimatori:
| valore vero | (divide per ) | (divide per ) | |
|---|---|---|---|
| 1 | 2,22 | 0,58 | 0,57 |
| 100 | ≈ 0 | 0,58 | 0,29 |
| 190 | ≈ 0 | 1,73 | 0,09 |
A lag piccoli i due stimatori si equivalgono. A lag grandi lo stimatore corretto dà valori a caso: a lag 190 ha una deviazione standard di 1,7, dove il valore vero è zero, mentre quello distorto resta vicino a zero. È lo stesso compromesso tra bias e varianza visto per i modelli statici: un po' di distorsione in cambio di molta stabilità. E siccome per i processi che ci interessano , schiacciare verso zero è anche la scelta giusta.
Periodogramma
Per stimare lo spettro si prende la definizione e si mette, al posto dell'autocovarianza vera, quella stimata . La somma si ferma a , perché oltre non ci sono dati. Il risultato si chiama periodogramma:
Si dimostra che è il modulo al quadrato della DTFT dei dati, diviso per :
dove è la DTFT dei campioni . In pratica lo si calcola con una FFT, sui bin della DFT .
In media il periodogramma è giusto: per il suo valore atteso tende a . Il problema è quanto oscilla. A ogni frequenza sbaglia, tipicamente, di quanto vale lo spettro stesso, e questo errore non scende con più dati: con più campioni si ottengono più frequenze, non stime migliori. Si dice che lo stimatore non è consistente.
Il grafico lo mostra per il processo risonante. In alto il periodogramma su 4.096 campioni (la scala verticale è logaritmica): segue lo spettro vero, ma è tutto frastagliato.
Per misurare l'errore si divide, frequenza per frequenza, il periodogramma per lo spettro vero, e si calcola la deviazione standard di questi rapporti. Con una stima perfetta varrebbe zero:
| campioni | 1.024 | 4.096 | 16.384 |
|---|---|---|---|
| deviazione standard relativa | 1,01 | 0,99 | 0,99 |
Con sedici volte più dati l'errore resta lo stesso: circa il 100% del valore vero.
Metodo di Bartlett
Il periodogramma però in media è giusto: sbaglia a caso, a volte per eccesso e a volte per difetto. Facendo la media di più periodogrammi indipendenti, gli errori si compensano.
Il metodo di Bartlett divide gli dati in blocchi da campioni, calcola il periodogramma di ogni blocco e ne fa la media:
Se l'autocovarianza decade in fretta, i blocchi sono quasi indipendenti e la varianza si divide per . È la curva in basso nel grafico: 16 blocchi da 256 campioni, molto più regolare.
Il prezzo è che ogni blocco è corto. Con meno campioni le frequenze stimate sono più distanti tra loro (), e i picchi vengono abbassati e allargati. Con 16.384 campioni del processo risonante, il cui picco vero vale 346:
| blocchi | campioni per blocco | picco stimato |
|---|---|---|
| 16 | 1.024 | 400 |
| 64 | 256 | 326 |
| 256 | 64 | 215 |
- Pochi blocchi lunghi: il picco è risolto bene, ma la stima è ancora rumorosa (400, il 15% in più del vero).
- Tanti blocchi corti: la stima è liscia, ma il picco viene spianato (215).
Se lo spettro ha picchi stretti servono blocchi lunghi, proprio come serve una misura lunga per distinguere frequenze vicine con la DFT.
Riepilogo
- La densità spettrale di potenza è la DTFT dell'autocovarianza: dice come la potenza del processo si distribuisce tra le frequenze. È reale, non negativa, pari e periodica, quindi basta guardarla tra 0 e .
- L'area sotto , divisa per , è la varianza del processo.
- Il rumore bianco ha spettro piatto, . Uno spettro concentrato alle basse frequenze indica un processo regolare, alle alte un processo alternante, un picco un'oscillazione dominante.
- Dei due stimatori dell'autocovarianza, quello che divide per è distorto ma ha varianza molto minore ai lag grandi.
- Il periodogramma non è consistente: la sua varianza non scende con più dati. Il metodo di Bartlett fa la media di periodogrammi e divide la varianza per , al prezzo di risoluzione in frequenza.