SLIDE 1
Multiresolution Analysis DS-GA 1013 / MATH-GA 2824 - - PowerPoint PPT Presentation
Multiresolution Analysis DS-GA 1013 / MATH-GA 2824 - - PowerPoint PPT Presentation
Multiresolution Analysis DS-GA 1013 / MATH-GA 2824 Optimization-based Data Analysis http://www.cims.nyu.edu/~cfgranda/pages/OBDA_fall17/index.html Carlos Fernandez-Granda Frames Short-time Fourier transform (STFT) Wavelets Thresholding
SLIDE 2
SLIDE 3
Definition
Let V be an inner-product space A frame of V is a set of vectors F := { v1, v2, . . .} such that for every x ∈ V cL || x||2
·,· ≤
- v∈F
| x, v|2 ≤ cU || x||2
·,·
for fixed positive constants cU ≥ cL ≥ 0 The frame is a tight frame if cL = cU
SLIDE 4
Frames span the whole space
Any frame F := { v1, v2, . . .} of V spans V Proof: Assume y / ∈ span ( v1, v2, . . .)
SLIDE 5
Frames span the whole space
Any frame F := { v1, v2, . . .} of V spans V Proof: Assume y / ∈ span ( v1, v2, . . .) Then Pspan(
v1, v2,...)⊥
y is nonzero and
- v∈F
- Pspan(
v1, v2,...)⊥
y, v
- 2
=
SLIDE 6
Frames span the whole space
Any frame F := { v1, v2, . . .} of V spans V Proof: Assume y / ∈ span ( v1, v2, . . .) Then Pspan(
v1, v2,...)⊥
y is nonzero and
- v∈F
- Pspan(
v1, v2,...)⊥
y, v
- 2
= 0
SLIDE 7
Orthogonal bases are tight frames
Any orthonormal basis B :=
- b1,
b2, . . .
- is a tight frame
Proof:
SLIDE 8
Orthogonal bases are tight frames
Any orthonormal basis B :=
- b1,
b2, . . .
- is a tight frame
Proof: For any vector x ∈ V || x||2
·,·
SLIDE 9
Orthogonal bases are tight frames
Any orthonormal basis B :=
- b1,
b2, . . .
- is a tight frame
Proof: For any vector x ∈ V || x||2
·,· =
- b∈B
- x,
b
- b
- 2
·,·
SLIDE 10
Orthogonal bases are tight frames
Any orthonormal basis B :=
- b1,
b2, . . .
- is a tight frame
Proof: For any vector x ∈ V || x||2
·,· =
- b∈B
- x,
b
- b
- 2
·,·
=
- b∈B
- x,
b
- 2
- b
- 2
·,·
SLIDE 11
Orthogonal bases are tight frames
Any orthonormal basis B :=
- b1,
b2, . . .
- is a tight frame
Proof: For any vector x ∈ V || x||2
·,· =
- b∈B
- x,
b
- b
- 2
·,·
=
- b∈B
- x,
b
- 2
- b
- 2
·,·
=
- b∈B
- x,
b
- 2
SLIDE 12
Analysis operator
The analysis operator Φ of a frame maps a vector to its coefficients Φ ( x) [k] = x, vk For any finite frame { v1, v2, . . . , vm} of Cn the analysis operator is F :=
- v∗
1
- v∗
2
. . .
- v∗
m
SLIDE 13
Frames in finite-dimensional spaces
- v1,
v2, . . . , vm are a frame of Cn if and only F is full rank In that case, cU = σ2
1
cL = σ2
n
Proof: σ2
n ≤ ||F
x||2
2 = m
- j=1
- x,
vj2 ≤ σ2
1
SLIDE 14
Pseudoinverse
If an n × m tall matrix A, m ≥ n, is full rank, then its pseudoinverse A† := (A∗A)−1 A∗ is well defined, is a left inverse of A A†A = I and equals A† = VS−1U∗ where A = USV ∗ is the SVD of A
SLIDE 15
Proof
A† := (A∗A)−1 A∗
SLIDE 16
Proof
A† := (A∗A)−1 A∗ = (VSU∗USV ∗A)−1 VSU∗
SLIDE 17
Proof
A† := (A∗A)−1 A∗ = (VSU∗USV ∗A)−1 VSU∗ =
- VS2V ∗−1 VSU∗
SLIDE 18
Proof
A† := (A∗A)−1 A∗ = (VSU∗USV ∗A)−1 VSU∗ =
- VS2V ∗−1 VSU∗
= VS−2V ∗VSU∗
SLIDE 19
Proof
A† := (A∗A)−1 A∗ = (VSU∗USV ∗A)−1 VSU∗ =
- VS2V ∗−1 VSU∗
= VS−2V ∗VSU∗ = VS−1U
SLIDE 20
Proof
A† := (A∗A)−1 A∗ = (VSU∗USV ∗A)−1 VSU∗ =
- VS2V ∗−1 VSU∗
= VS−2V ∗VSU∗ = VS−1U A†A
SLIDE 21
Proof
A† := (A∗A)−1 A∗ = (VSU∗USV ∗A)−1 VSU∗ =
- VS2V ∗−1 VSU∗
= VS−2V ∗VSU∗ = VS−1U A†A = VS−1UV ∗USV ∗
SLIDE 22
Proof
A† := (A∗A)−1 A∗ = (VSU∗USV ∗A)−1 VSU∗ =
- VS2V ∗−1 VSU∗
= VS−2V ∗VSU∗ = VS−1U A†A = VS−1UV ∗USV ∗ = I
SLIDE 23
Frames Short-time Fourier transform (STFT) Wavelets Thresholding
SLIDE 24
Motivation
Spectrum of speech, music, etc. varies over time Idea: Compute frequency representation of time segments of the signal
SLIDE 25
Short-time Fourier transform
The short-time Fourier transform (STFT) of a function f ∈ L2[−1/2, 1/2] is STFT {f } (k, τ) := 1/2
−1/2
f (t) w (t − τ)e−i2πkt dt where w ∈ L2[−1/2, 1/2] is a window function Frame vectors: vk,τ (t) := w (t − τ) ei2πkt
SLIDE 26
Discrete short-time Fourier transform
The STFT of a vector x ∈ Cn is STFT {f } (k, l) :=
- x ◦
w[l], hk
- where w ∈ Cn is a window vector
Frame vectors: vk,l (t) := w[l] ◦ hk
SLIDE 27
STFT
Length of window and shifts are chosen so that shifted windows overlap In that case the STFT is a frame We can invert it using fast algorithms based on the FFT Window should not produce spurious high-frequency artifacts
SLIDE 28
Rectangular window
Signal Window × = Spectrum ∗ =
SLIDE 29
Hann window
Signal Window × = Spectrum ∗ =
SLIDE 30
Frame vector l = 0, k = 0
Real part Imaginary part Spectrum
SLIDE 31
Frame vector l = 1/32, k = 0
Real part Imaginary part Spectrum
SLIDE 32
Frame vector l = 0, k = 64
Real part Imaginary part Spectrum
SLIDE 33
Frame vector l = 1/32, k = 64
Real part Imaginary part Spectrum
SLIDE 34
Speech signal
SLIDE 35
Spectrum
SLIDE 36
Spectrogram (log magnitude of STFT coefficients)
Time Frequency
SLIDE 37
Frames Short-time Fourier transform (STFT) Wavelets Thresholding
SLIDE 38
Wavelet transform
Motivation: Extracting features at different scales Idea: Frame vectors are scaled, shifted copies of a fixed function An additional function captures low-pass component at largest scale
SLIDE 39
Wavelet transform
The wavelet transform of a function f ∈ L2[−1/2, 1/2] depends on a choice of scaling function (or father wavelet) φ and wavelet function (or mother wavelet) ψ The scaling coefficients are Wφ {f } (τ) := 1 √s
- f (t) φ (t − τ) dt
The wavelet coefficients are Wψ {f } (s, τ) := 1 √s 1 f (t) ψ t − τ s
- dt
Wavelets can be designed to be bases or frames
SLIDE 40
Haar wavelet
Scaling function Mother wavelet Wavelets are band-pass filters, scaling functions are low-pass filters
SLIDE 41
Discrete wavelet transform
The discrete wavelet transform depends on a choice of scaling vector φ and wavelet ψ The scaling coefficients are W
φ {f } (l) :=
- x,
φ[l]
- The wavelet coefficients are
W
ψ {f } (s, l) :=
- x,
ψ[s,l]
- ,
where
- ψ[s,l][j] :=
ψ j − l s
- Wavelets can be designed to be bases or frames
SLIDE 42
Orthonormal wavelet basis
Scale Basis functions 20
SLIDE 43
Orthonormal wavelet basis
Scale Basis functions 20
SLIDE 44
Orthonormal wavelet basis
Scale Basis functions 20
SLIDE 45
Orthonormal wavelet basis
Scale Basis functions 20 21
SLIDE 46
Orthonormal wavelet basis
Scale Basis functions 20 21
SLIDE 47
Orthonormal wavelet basis
Scale Basis functions 20 21
SLIDE 48
Orthonormal wavelet basis
Scale Basis functions 20 21 22
SLIDE 49
Orthonormal wavelet basis
Scale Basis functions 20 21 22
SLIDE 50
Orthonormal wavelet basis
Scale Basis functions 20 21 22 23
SLIDE 51
Orthonormal wavelet basis
Scale Basis functions 20 21 22 23 (scaling vector)
SLIDE 52
Multiresolution decomposition
Sequence of subspaces V0, V1, . . . , VK representing different scales Fix a scaling vector φ and a wavelet ψ
SLIDE 53
Multiresolution decomposition
Sequence of subspaces V0, V1, . . . , VK representing different scales Fix a scaling vector φ and a wavelet ψ VK is the span of φ
SLIDE 54
Multiresolution decomposition
Sequence of subspaces V0, V1, . . . , VK representing different scales Fix a scaling vector φ and a wavelet ψ VK is the span of φ VK
SLIDE 55
Multiresolution decomposition
Vk := Wk ⊕ Vk+1 Wk is the span of ψ dilated by 2k and shifted by multiples of 2k+1
SLIDE 56
Multiresolution decomposition
Vk := Wk ⊕ Vk+1 Wk is the span of ψ dilated by 2k and shifted by multiples of 2k+1 W0
SLIDE 57
Multiresolution decomposition
Vk := Wk ⊕ Vk+1 Wk is the span of ψ dilated by 2k and shifted by multiples of 2k+1 W0 W2
SLIDE 58
Multiresolution decomposition
Vk := Wk ⊕ Vk+1 Wk is the span of ψ dilated by 2k and shifted by multiples of 2k+1 W0 W2 PVk x is an approximation of x at scale 2k
SLIDE 59
Multiresolution decomposition
Properties
◮ V0 = Cn (approximation at scale 20 is perfect) ◮ Vk is invariant to translations of scale 2k ◮ Dilating vectors in Vj by 2 yields vectors in Vj+1
SLIDE 60
Electrocardiogram
Signal Haar transform
SLIDE 61
Scale 29
PW9 x PV9 x
SLIDE 62
Scale 28
PW8 x PV8 x
SLIDE 63
Scale 27
PW7 x PV7 x
SLIDE 64
Scale 26
PW6 x PV6 x
SLIDE 65
Scale 25
PW5 x PV5 x
SLIDE 66
Scale 24
PW4 x PV4 x
SLIDE 67
Scale 23
PW3 x PV3 x
SLIDE 68
Scale 22
PW2 x PV2 x
SLIDE 69
Scale 21
PW1 x PV1 x
SLIDE 70
Scale 20
PW0 x PV0 x
SLIDE 71
2D Wavelets
Extension to 2D by using outer products of 1D atoms ξ2D
s1,s2,k1,k2 := ξ1D s1,k1
- ξ1D
s2,k2
T The JPEG 2000 compression standard is based on 2D wavelets Many extensions: Steerable pyramid, ridgelets, curvelets, bandlets, . . .
SLIDE 72
2D Haar transform
SLIDE 73
2D wavelet transform
SLIDE 74
2D wavelet transform
SLIDE 75
Frames Short-time Fourier transform (STFT) Wavelets Thresholding
SLIDE 76
Denoising
Aim: Extracting information (signal) from data in the presence of uninformative perturbations (noise) Additive noise model data = signal + noise
- y =
x + z Prior knowledge about structure of signal vs structure of noise is required
SLIDE 77
Assumption
◮ Signal is a sparse superposition of basis/frame vectors ◮ Noise is not
SLIDE 78
Assumption
◮ Signal is a sparse superposition of basis/frame vectors ◮ Noise is not
Example: Gaussian noise z with covariance matrix σ2I, distribution of F z?
SLIDE 79
Example
Data Signal
SLIDE 80
Thresholding
Hard-thresholding operator Hη ( v) [j] :=
- v [j]
if | v [j]| > η
- therwise
SLIDE 81
Denoising via hard thresholding
Estimate Signal
SLIDE 82
Multisinusoidal signal
- y
F y
Data Signal Data
SLIDE 83
Denoising via hard thresholding
Data: y = x + z Assumption: F x is sparse, F z is not
- 1. Apply the hard-thresholding operator Hη to F
y
- 2. If F is a basis, then
- xest := F −1Hη (F
y) If F is a frame,
- xest := F †Hη (F
y) , where F † is the pseudoinverse of F (other left inverses of F also work)
SLIDE 84
Denoising via hard thresholding in Fourier basis
- y
F y
Data Signal Data
SLIDE 85
Denoising via hard thresholding in Fourier basis
F −1Hη (F y) Hη (F y)
Estimate Signal Estimate
SLIDE 86
Image denoising
- x
F x
SLIDE 87
Image denoising
- z
F z
SLIDE 88
Data (SNR=2.5)
- y
F y
SLIDE 89
F y
SLIDE 90
Hη (F y)
SLIDE 91
F −1Hη (F y)
SLIDE 92
- y
SLIDE 93
Data (SNR=1)
- y
F y
SLIDE 94
F y
SLIDE 95
Hη (F y)
SLIDE 96
F −1Hη (F y)
SLIDE 97
- y
SLIDE 98
Image denoising
- y
F −1Hη (F y)
- x
SLIDE 99
Denoising via thresholding
- y
F −1Hη (F y)
- x
SLIDE 100
Speech denoising
SLIDE 101
Time thresholding
SLIDE 102
Spectrum
SLIDE 103
Frequency thresholding
SLIDE 104
Frequency thresholding
Data DFT thresholding
SLIDE 105
Spectrogram (STFT)
Time Frequency
SLIDE 106
STFT thresholding
Time Frequency
SLIDE 107
STFT thresholding
Data STFT thresholding
SLIDE 108
Coefficients are structured
Time Frequency
SLIDE 109
Coefficients are structured
- x
F x
SLIDE 110
Block thresholding
Assumption: Coefficients are group sparse, nonzero coefficients cluster together Partition coefficients into blocks I1, I2, . . . , Ik and threshold whole blocks Bη ( v) [j] :=
- v [j]
if j ∈ Ij such that
- vIj
- 2 > η, ,
- therwise,
SLIDE 111
Denoising via block thresholding
- 1. Apply the hard-thresholding operator Bη to F
y
- 2. If F is a basis, then
- xest := F −1Bη (F
y) If F is a frame,
- xest := F †Bη (F
y) , where F † is the pseudoinverse of F (other left inverses of F also work)
SLIDE 112
Image denoising (SNR=2.5)
- y
F y
SLIDE 113
F y
SLIDE 114
Hη (F y)
SLIDE 115
Bη (F y)
SLIDE 116
F −1Hη (F y)
SLIDE 117
F −1Bη (F y)
SLIDE 118
Image denoising (SNR=1)
- y
F y
SLIDE 119
F y
SLIDE 120
Hη (F y)
SLIDE 121
Bη (F y)
SLIDE 122
F −1Hη (F y)
SLIDE 123
F −1Bη (F y)
SLIDE 124
Denoising via thresholding
- y
F −1Hη (F y)
- x
SLIDE 125
Denoising via thresholding
- y
F −1Bη (F y)
- x
SLIDE 126
Denoising via thresholding
- y
F −1Hη (F y)
- x
SLIDE 127
Denoising via thresholding
- y
F −1Bη (F y)
- x
SLIDE 128
Speech denoising
SLIDE 129
Spectrogram (STFT)
Time Frequency
SLIDE 130
STFT thresholding
Time Frequency
SLIDE 131
STFT thresholding
Data STFT thresholding
SLIDE 132
STFT block thresholding
Time Frequency
SLIDE 133