time series analysis: 2. convolution the power spectrumth- · and periodicity (sic!) of the...

43
Time Series Analysis: 2. Convolution The Power Spectrum P. F. Góra http://th-www.if.uj.edu.pl/zfs/gora/ 2018

Upload: others

Post on 02-Jan-2021

0 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Time Series Analysis: 2. Convolution The Power Spectrumth- · and periodicity (sic!) of the “signals” is used to calculate the coefficients with ne-gative indices: ~b j= ~b2n

Time Series Analysis:

2. Convolution

The Power Spectrum

P. F. Górahttp://th-www.if.uj.edu.pl/zfs/gora/

2018

Page 2: Time Series Analysis: 2. Convolution The Power Spectrumth- · and periodicity (sic!) of the “signals” is used to calculate the coefficients with ne-gative indices: ~b j= ~b2n

Convolution

s(t), r(t) — continuous signals such that ∀t < 0: s(t) = r(t) = 0. Theirconvolution:

z(t) = (s ? r)(t) =

t∫0

s(t′)r(t− t′) dt′ (1)

The Fourier transforms fulfil Z(f) = S(f)R(f).

Copyright c© 2009-18 P. F. Góra 2–2

Page 3: Time Series Analysis: 2. Convolution The Power Spectrumth- · and periodicity (sic!) of the “signals” is used to calculate the coefficients with ne-gative indices: ~b j= ~b2n

The discrete convolution

Likewise, we can define the dicsrete convolution. Let {sn}N1−1n=0 , {rn}N2−1

n=0 beperiodic discrete signals. Their discrete convolution is:

zj = (s ? r)j =M/2∑

k=−M/2+1

sj−krk . (2)

where M = max(N1, N2) and the shorter signal is padded with zeros. (Inmany situations, one of the “signals” is much shorter than the other.) Fouriertransforms fulfil Zk = SkRk.

Copyright c© 2009-18 P. F. Góra 2–3

Page 4: Time Series Analysis: 2. Convolution The Power Spectrumth- · and periodicity (sic!) of the “signals” is used to calculate the coefficients with ne-gative indices: ~b j= ~b2n

Example

If we have a set of linear equations with constant coefficients with an externalforcing

dx

dt= Ax + s(t) (3)

the solution contains a convolution of the internal dynamics of the system andthe forcing:

x(t) = exp (At)x(0) +

t∫0

exp(A(t− t′)

)s(t′) dt′ (4)

(can be generalized to linear equations with time-varying coefficients).

Copyright c© 2009-18 P. F. Góra 2–4

Page 5: Time Series Analysis: 2. Convolution The Power Spectrumth- · and periodicity (sic!) of the “signals” is used to calculate the coefficients with ne-gative indices: ~b j= ~b2n

More examples

If an incoming wave passes through a finite-size slit whose spatial profile is de-scribed by a function, the outgoing wave is a convolution of the incoming waveand the spatial profile of the slit.

If a beam of light passes through a lens whose optical density is described bya function, the outgoing beam is a convolution of the incoming beam and theoptical density profile.

In signal processing, if a signal passes through a linear device, the output signalis a convolution of the input signal and the response function of the device.

We call a linear device a filter .Copyright c© 2009-18 P. F. Góra 2–5

Page 6: Time Series Analysis: 2. Convolution The Power Spectrumth- · and periodicity (sic!) of the “signals” is used to calculate the coefficients with ne-gative indices: ~b j= ~b2n

The response function?

For physical reasons, there are no devices that can respond instantly to an inco-ming signal: any physical device requires a finite time to “warm up” and start torespond to a signal. An instantenous response would require an infinite power.Likewise, any physical device requires a finite time to stop creating output afterthe input has ceased.

The profile along which a filter starts and then stops responding to a signal iscalled the response function of the filter.

Copyright c© 2009-18 P. F. Góra 2–6

Page 7: Time Series Analysis: 2. Convolution The Power Spectrumth- · and periodicity (sic!) of the “signals” is used to calculate the coefficients with ne-gative indices: ~b j= ~b2n

The response function of a filter

Copyright c© 2009-18 P. F. Góra 2–7

Page 8: Time Series Analysis: 2. Convolution The Power Spectrumth- · and periodicity (sic!) of the “signals” is used to calculate the coefficients with ne-gative indices: ~b j= ~b2n

Input Output011111 0000 00000 0001111 1000 00000 0.125000111 1100 00000 0.625000011 1110 00000 1.625000001 1111 00000 1.75000000 1111 10000 1.75000000 0111 11000 1.625000000 0011 11100 1.125000000 0001 11110 0.125000000 0000 11111 00.125A+ 0.5B + C + 0.125D

Copyright c© 2009-18 P. F. Góra 2–8

Page 9: Time Series Analysis: 2. Convolution The Power Spectrumth- · and periodicity (sic!) of the “signals” is used to calculate the coefficients with ne-gative indices: ~b j= ~b2n

A rectangular signal convoluted with the response function

in

out

t

Copyright c© 2009-18 P. F. Góra 2–9

Page 10: Time Series Analysis: 2. Convolution The Power Spectrumth- · and periodicity (sic!) of the “signals” is used to calculate the coefficients with ne-gative indices: ~b j= ~b2n

A convolution of a signal and a response function

0 0

originalconvolution

response

An unwelcome consequence of the assumed periodicity:the ends are spoiled!

Copyright c© 2009-18 P. F. Góra 2–10

Page 11: Time Series Analysis: 2. Convolution The Power Spectrumth- · and periodicity (sic!) of the “signals” is used to calculate the coefficients with ne-gative indices: ~b j= ~b2n

A convolution of a signal and a response function

0 0

originalconvolution

response

The ends are repaired by padding with zeros

Copyright c© 2009-18 P. F. Góra 2–11

Page 12: Time Series Analysis: 2. Convolution The Power Spectrumth- · and periodicity (sic!) of the “signals” is used to calculate the coefficients with ne-gative indices: ~b j= ~b2n

The procedure

1. Pad the input signal with enough zeros to cover the longer tail of the re-sponse function (remember that the padded signal should have a “magic”length).

2. Calculate the FFT of both the signal and the response in one go.

3. Multiply the transforms termwise, in a linear time O(N).

4. Calculate the inverse FFT.

The total cost ∼ O(2N logN)

Copyright c© 2009-18 P. F. Góra 2–12

Page 13: Time Series Analysis: 2. Convolution The Power Spectrumth- · and periodicity (sic!) of the “signals” is used to calculate the coefficients with ne-gative indices: ~b j= ~b2n

An unexpected (?) application of the convolution

Given two polynomials A(z), B(z) of degrees not larger than n

A(z) = anzn + an−1z

n−1 + · · ·+ a1z + a0 , (5a)B(z) = bnz

n + bn−1zn−1 + · · ·+ b1z + b0 . (5b)

Find the coefficients of their product C(z) = A(z)B(z).

c2n = anbn (6a)c2n−1 = anbn−1 + an−1bn (6b)c2n−2 = anbn−2 + an−1bn−1 + an−2bn (6c). . .

c0 = a0b0 (6d)

The sum of indices in each term on rhs equals to the index on lhs.Copyright c© 2009-18 P. F. Góra 2–13

Page 14: Time Series Analysis: 2. Convolution The Power Spectrumth- · and periodicity (sic!) of the “signals” is used to calculate the coefficients with ne-gative indices: ~b j= ~b2n

We have

cl =2n∑k=0

akbl−k , l = 0,1, . . . ,2n , (7a)

where

as, bs =

as, bs s = 0,1, . . . , n

0 s = n+ 1, n+ 2, . . . ,2n(7b)

and periodicity (sic!) of the “signals” is used to calculate the coefficients with ne-gative indices: b−j = b2n−j+1 = 0 for j = 1,2, . . . , n. The coefficients of theproduct are given by the convolution of the coefficients of the input polynomials.The numerical cost of calculating the coefficients of the product isO(4n log 2n),not O(n2), as it would appear.

Copyright c© 2009-18 P. F. Góra 2–14

Page 15: Time Series Analysis: 2. Convolution The Power Spectrumth- · and periodicity (sic!) of the “signals” is used to calculate the coefficients with ne-gative indices: ~b j= ~b2n

Calculating products of large integers

x =n∑

j=0

aj2j , (8a)

y =n∑

j=0

bj2j , (8b)

where aj, bj = {0,1}. The rhs are polynomials of the form (5), evaluated inz = 2. The product xy is also a polynomial, and its coefficients are given by theappropriate convolution. For a large n, calculating the product via FFT becomesefficient! In addition, calculating the FFT of a “signal” consisting of {0,1} isparticularly simple.

Copyright c© 2009-18 P. F. Góra 2–15

Page 16: Time Series Analysis: 2. Convolution The Power Spectrumth- · and periodicity (sic!) of the “signals” is used to calculate the coefficients with ne-gative indices: ~b j= ~b2n

The autocorrelation function

Suppose we have a random series {xn}N−1n=0 .

Question: Having measured a certain value xj, what information do we have onxj+k?Answer: For a stationary series, calculate the autocorrelation function

Ck =⟨xj xj+k

⟩(9a)

or the correlation coefficient

ρk =

⟨xj xj+k

⟩⟨x2j

⟩ . (9b)

The braces 〈· · · 〉 stand for averaging over realizations of the random process.

Copyright c© 2009-18 P. F. Góra 2–16

Page 17: Time Series Analysis: 2. Convolution The Power Spectrumth- · and periodicity (sic!) of the “signals” is used to calculate the coefficients with ne-gative indices: ~b j= ~b2n

Beware!

Usually, only a single realization of a time series is available!

Instead of (9a), calculate

Ck =1

N − k

N−k−1∑j=0

xj xj+k (10)

(similarly for ρk). (10) gives only an estimate of the “true” autocorrelation func-tion.

Copyright c© 2009-18 P. F. Góra 2–17

Page 18: Time Series Analysis: 2. Convolution The Power Spectrumth- · and periodicity (sic!) of the “signals” is used to calculate the coefficients with ne-gative indices: ~b j= ~b2n

Stationarity

A series is stationary if it does not change qualitatively over the time.

Definition: Divide a series into an arbitrary number of section (of arbitrary leng-ths). If statistical distributions of values in every section are identical, the seriesis stationary.

Another definition: A series is stationary if its autocorrelation function (9a) de-pends only on offsets k (in principle, it could depend on both k and j).

A majority of series are not stationary: for example, periodic series, series withtrends or seasonal changes, series where noise parameters vary over the time,or random series superimposed on deterministic (not constant) signals are notstationary.Copyright c© 2009-18 P. F. Góra 2–18

Page 19: Time Series Analysis: 2. Convolution The Power Spectrumth- · and periodicity (sic!) of the “signals” is used to calculate the coefficients with ne-gative indices: ~b j= ~b2n

Remarks

• Ck = C−k.

• ρk = ±1 — a deterministic relation.

• |ρk| < 1 — only statistical information.

– Example: ρk = 0.875: xj+k = 0.875xj + 0.125yk,⟨xj yk

⟩= 0.

Copyright c© 2009-18 P. F. Góra 2–19

Page 20: Time Series Analysis: 2. Convolution The Power Spectrumth- · and periodicity (sic!) of the “signals” is used to calculate the coefficients with ne-gative indices: ~b j= ~b2n

The Wiener-Khinchin Theorem

Theorem: The Fourier transform of the autocorrelation of a stationary series isits power spectrum.

P (f) = |G(f)|2 . (11)

Why not non-stationary? Examples: music, speech, series with trends etc. Weshall return to the problem of non-stationary series later during this course.

Copyright c© 2009-18 P. F. Góra 2–20

Page 21: Time Series Analysis: 2. Convolution The Power Spectrumth- · and periodicity (sic!) of the “signals” is used to calculate the coefficients with ne-gative indices: ~b j= ~b2n

Comment

If we have a finite time series then, under our assumption of periodicity (evenif it is blatantly false), nothing prevents us from calculating its Fourier Transformand then from taking its square modulus. It wouldn’t give us much information,though. The point of Wiener-Khinchin Theorem is that by calculating the powerspectrum, we gen information on the autocorrelation of the series.

For example, when we see a peak at a certain frequency f , we expect someform of periodicity, with the period 1/f , in the autocorrelation.

Therefore, we do not use the autocorrelation to calculate the power spectrum,but we use the power spectrum to get insight on the autocorrelation.

Copyright c© 2009-18 P. F. Góra 2–21

Page 22: Time Series Analysis: 2. Convolution The Power Spectrumth- · and periodicity (sic!) of the “signals” is used to calculate the coefficients with ne-gative indices: ~b j= ~b2n

The power spectrum

Given a stationary time series {xn}N−1n=0 , calculate the autocorrelation (10) and

Fourier transform it to get the power spectrum. Bad idea.

Continuous signals: P (f) — the density of power in the interval (f + df).

Discrete signals: P (fn) — an estimate of the power in the interval(fn − 1/(2N∆), fn + 1/(2N∆)).

Copyright c© 2009-18 P. F. Góra 2–22

Page 23: Time Series Analysis: 2. Convolution The Power Spectrumth- · and periodicity (sic!) of the “signals” is used to calculate the coefficients with ne-gative indices: ~b j= ~b2n

The discrete power spectrum is only an approximation to the “true” powerspectrum

f

channel n-1 channel n+1

channel n

true spectrumdiscrete spectrum

Copyright c© 2009-18 P. F. Góra 2–23

Page 24: Time Series Analysis: 2. Convolution The Power Spectrumth- · and periodicity (sic!) of the “signals” is used to calculate the coefficients with ne-gative indices: ~b j= ~b2n

Periodogram

The most popular estimate of the power spectrum is called the periodogram.Because the power spectrum does not contain any information on the phase, weno longer distinguish the positive and negative frequencies for the purpose ofcalculating the periodogram.

P (0) = |G(0)|2 , (12a)

P (fn) =[|G(fn)|2 + |G(f−n)|2

], n = 1,2,

N

2− 1 (12b)

P (fN/2) = |G(fN/2)|2 . (12c)

Caveat emptor! When calculating the periodogram, it is particularly important to take the proper

care on what components are stored where, what the normalisation is etc. The point of the

formula (12) is to bin together terms with the same “absolute” frequencies, but different pieces of

software may store them differently. And they do.

Copyright c© 2009-18 P. F. Góra 2–24

Page 25: Time Series Analysis: 2. Convolution The Power Spectrumth- · and periodicity (sic!) of the “signals” is used to calculate the coefficients with ne-gative indices: ~b j= ~b2n

A noisy signal

-5

-4

-3

-2

-1

0

1

2

3

4

0 2 4 6 8 10 12 14 16

s(t)

t

Copyright c© 2009-18 P. F. Góra 2–25

Page 26: Time Series Analysis: 2. Convolution The Power Spectrumth- · and periodicity (sic!) of the “signals” is used to calculate the coefficients with ne-gative indices: ~b j= ~b2n

The power spectrum of the above signal

10-2

10-1

10 0

10 1

10 2

10 3

1/8 1/4 1/2 1 2 4 8 16

P(f

)

f

Copyright c© 2009-18 P. F. Góra 2–26

Page 27: Time Series Analysis: 2. Convolution The Power Spectrumth- · and periodicity (sic!) of the “signals” is used to calculate the coefficients with ne-gative indices: ~b j= ~b2n

The power spectrum averaged over 64 realizations of the noise

10-2

10-1

10 0

10 1

10 2

10 3

1/8 1/4 1/2 1 2 4 8 16

P(f

)

fWhen averaging over the realizations, first calculate the periodogram for each realization, andthen take the average for each frequency.

Copyright c© 2009-18 P. F. Góra 2–27

Page 28: Time Series Analysis: 2. Convolution The Power Spectrumth- · and periodicity (sic!) of the “signals” is used to calculate the coefficients with ne-gative indices: ~b j= ~b2n

A side note: Signal-to-Noise Ratio

Signal-to-Noise ratio measures the “goodness” of the signal, or how easily it canbe distinguished from the noise. The general framework: calculate the ratio ofthe peak to the (local) background in the periodogram. Usually

SNR = 10 log10

(peak power

background power

)[dB] (13)

In the last example, SNR ' 30 dB.

Copyright c© 2009-18 P. F. Góra 2–28

Page 29: Time Series Analysis: 2. Convolution The Power Spectrumth- · and periodicity (sic!) of the “signals” is used to calculate the coefficients with ne-gative indices: ~b j= ~b2n

Leakage

We expect the periodogram to project all the power from the interval(fn− 1/(2N∆), fn + 1/(2N∆)). However, as f 6= fn have non-zero projec-tions onto fm 6=n, the power spectrum leaks to other channels. The leakage toa channel offset by s is given by “the golden formula”:

P (k → s) =1

N2

[sin(πs)

sin(πs/N)

]2

. (14)

Copyright c© 2009-18 P. F. Góra 2–29

Page 30: Time Series Analysis: 2. Convolution The Power Spectrumth- · and periodicity (sic!) of the “signals” is used to calculate the coefficients with ne-gative indices: ~b j= ~b2n

0.0

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1.0

-4 -3 -2 -1 0 1 2 3 4

s

Power leakage, formula (14)

Copyright c© 2009-18 P. F. Góra 2–30

Page 31: Time Series Analysis: 2. Convolution The Power Spectrumth- · and periodicity (sic!) of the “signals” is used to calculate the coefficients with ne-gative indices: ~b j= ~b2n

Window function

To prevent the leakage, sometimes the series is multiplied by a function that killsits ends but is close to unity in the middle; this is supposed to smooth the series.Then the DFT of the modified series is calculated:

Dn =1√N

N−1∑k=0

gkwke2πink/N . (15)

{wk} is the window function.

Note that this is equivalent to taking a convolution of the signal and the windowfunction in the Fourier domain!

Copyright c© 2009-18 P. F. Góra 2–31

Page 32: Time Series Analysis: 2. Convolution The Power Spectrumth- · and periodicity (sic!) of the “signals” is used to calculate the coefficients with ne-gative indices: ~b j= ~b2n

The modified periodogram reads

P (0) =1

W|D0|2 , (16a)

P (fn) =1

W

[|Dn|2 + |D−n|2

], (16b)

P(fNyq

)=

1

W|DN/2|

2 , (16c)

W =N−1∑k=0

w2k . (16d)

Copyright c© 2009-18 P. F. Góra 2–32

Page 33: Time Series Analysis: 2. Convolution The Power Spectrumth- · and periodicity (sic!) of the “signals” is used to calculate the coefficients with ne-gative indices: ~b j= ~b2n

Most popular window functions

Barlett window:

wk = 1−∣∣∣∣∣k −N/2

N/2

∣∣∣∣∣ . (17)

Hann window:

wk =1

2

[1− cos

(2πk

N

)]. (18)

Welch window:

wk = 1−(k −N/2

N/2

)2

. (19)

Copyright c© 2009-18 P. F. Góra 2–33

Page 34: Time Series Analysis: 2. Convolution The Power Spectrumth- · and periodicity (sic!) of the “signals” is used to calculate the coefficients with ne-gative indices: ~b j= ~b2n

Windowing function

0.0

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1.0

0 N/2 N

HannBarlettWelch

Copyright c© 2009-18 P. F. Góra 2–34

Page 35: Time Series Analysis: 2. Convolution The Power Spectrumth- · and periodicity (sic!) of the “signals” is used to calculate the coefficients with ne-gative indices: ~b j= ~b2n

The averaged spectrum, square window

10-2

10-1

10 0

10 1

10 2

10 3

1.00 1.25 1.50

P(f

)

f

Copyright c© 2009-18 P. F. Góra 2–35

Page 36: Time Series Analysis: 2. Convolution The Power Spectrumth- · and periodicity (sic!) of the “signals” is used to calculate the coefficients with ne-gative indices: ~b j= ~b2n

The averaged spectrum, Barlett window

10-2

10-1

10 0

10 1

10 2

10 3

1.00 1.25 1.50

P(f

)

f

Copyright c© 2009-18 P. F. Góra 2–36

Page 37: Time Series Analysis: 2. Convolution The Power Spectrumth- · and periodicity (sic!) of the “signals” is used to calculate the coefficients with ne-gative indices: ~b j= ~b2n

The averaged spectrum, Hann window

10-2

10-1

10 0

10 1

10 2

10 3

1.00 1.25 1.50

P(f

)

f

Copyright c© 2009-18 P. F. Góra 2–37

Page 38: Time Series Analysis: 2. Convolution The Power Spectrumth- · and periodicity (sic!) of the “signals” is used to calculate the coefficients with ne-gative indices: ~b j= ~b2n

The averaged spectrum, Welch window

10-2

10-1

10 0

10 1

10 2

10 3

1.00 1.25 1.50

P(f

)

f

Copyright c© 2009-18 P. F. Góra 2–38

Page 39: Time Series Analysis: 2. Convolution The Power Spectrumth- · and periodicity (sic!) of the “signals” is used to calculate the coefficients with ne-gative indices: ~b j= ~b2n

10-2

10-1

10 0

10 1

10 2

10 3

1.00 1.25 1.50

P(f

)

f

okno prostokatne

10-2

10-1

10 0

10 1

10 2

10 3

1.00 1.25 1.50

P(f

)

f

okno Barletta

10-2

10-1

10 0

10 1

10 2

10 3

1.00 1.25 1.50

P(f

)

f

okno Hanna

10-2

10-1

10 0

10 1

10 2

10 3

1.00 1.25 1.50

P(f

)

f

okno Welcha

Copyright c© 2009-18 P. F. Góra 2–39

Page 40: Time Series Analysis: 2. Convolution The Power Spectrumth- · and periodicity (sic!) of the “signals” is used to calculate the coefficients with ne-gative indices: ~b j= ~b2n

Power spectrum of nonstationary signals

To calculate the time-dependent power spectrum of nonstationary signals, dividethe signal into overlapping segments; ideally, each segment should be approxi-mately stationary. Then calculate the powers spectrum for each segment.

Copyright c© 2009-18 P. F. Góra 2–40

Page 41: Time Series Analysis: 2. Convolution The Power Spectrumth- · and periodicity (sic!) of the “signals” is used to calculate the coefficients with ne-gative indices: ~b j= ~b2n

-0.5

0.0

0.5

1.0

0 4 8 12 16 20 24 28 32

g(t)

t

P(f

)

0

8

16

24

32

t0

12

34f

Left — a nonstationary signal. Right — its time dependent spectrum.The power spectrum changes over the time — the autocorrelation depends not

only on the offset, but also on the point around which it is evaluated.

Copyright c© 2009-18 P. F. Góra 2–41

Page 42: Time Series Analysis: 2. Convolution The Power Spectrumth- · and periodicity (sic!) of the “signals” is used to calculate the coefficients with ne-gative indices: ~b j= ~b2n

Another example of nonstationary data

10

20

30

40

50

60

70

80

0 64 128 192 256 320

urod

ziny

dzien

Daily births in California in 1959

Copyright c© 2009-18 P. F. Góra 2–42

Page 43: Time Series Analysis: 2. Convolution The Power Spectrumth- · and periodicity (sic!) of the “signals” is used to calculate the coefficients with ne-gative indices: ~b j= ~b2n

Time dependent spectrum

3264

96128

160192

224256

288

t2-5

2-4

2-3

2-2

2-1

f

P(t,f)

Copyright c© 2009-18 P. F. Góra 2–43