graph signal processing - data science reading group 1 graph signal processing background 2 graph...

49
Graph Signal Processing Rahul Singh Data Science Reading Group Iowa State University March 24, 2017

Upload: ngolien

Post on 01-Apr-2018

267 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Graph Signal Processing - Data Science Reading Group 1 Graph Signal Processing Background 2 Graph Signal Processing Frameworks Laplacian Based Discrete Signal Processing on Graphs

Graph Signal Processing

Rahul Singh

Data Science Reading GroupIowa State University

March 24, 2017

Page 2: Graph Signal Processing - Data Science Reading Group 1 Graph Signal Processing Background 2 Graph Signal Processing Frameworks Laplacian Based Discrete Signal Processing on Graphs

Outline

1 Graph Signal Processing Background

2 Graph Signal Processing FrameworksLaplacian BasedDiscrete Signal Processing on Graphs (DSPG) Framework

Weight Matrix Based

Directed Laplacian Based

3 Spectral Graph Wavelets

4 Conclusions

Graph Signal Processing Data Science Reading Group, ISU March 24, 2017 2/39

Page 3: Graph Signal Processing - Data Science Reading Group 1 Graph Signal Processing Background 2 Graph Signal Processing Frameworks Laplacian Based Discrete Signal Processing on Graphs

Background Introduction

Classical Signal Processing

Translation, filtering, convolution, modulation, Fouriertransform, wavelets, sparse representations . . .

t1 t2 t3 tN

Structure behind time-series

Structure behind image

Graph Signal Processing Data Science Reading Group, ISU March 24, 2017 3/39

Page 4: Graph Signal Processing - Data Science Reading Group 1 Graph Signal Processing Background 2 Graph Signal Processing Frameworks Laplacian Based Discrete Signal Processing on Graphs

Background Introduction

Classical Signal Processing

Translation, filtering, convolution, modulation, Fouriertransform, wavelets, sparse representations . . .

t1 t2 t3 tN

Structure behind time-series Structure behind image

Graph Signal Processing Data Science Reading Group, ISU March 24, 2017 3/39

Page 5: Graph Signal Processing - Data Science Reading Group 1 Graph Signal Processing Background 2 Graph Signal Processing Frameworks Laplacian Based Discrete Signal Processing on Graphs

Background Introduction

Classical Signal Processing

Translation, filtering, convolution, modulation, Fouriertransform, wavelets, sparse representations . . .

t1 t2 t3 tN

Structure behind time-series Structure behind image

Graph Signal Processing Data Science Reading Group, ISU March 24, 2017 3/39

Page 6: Graph Signal Processing - Data Science Reading Group 1 Graph Signal Processing Background 2 Graph Signal Processing Frameworks Laplacian Based Discrete Signal Processing on Graphs

Background Introduction

Graph Signal Processing

A graph signal

12

3

4

52

3 2

4

-3

Graph Signal Processing Data Science Reading Group, ISU March 24, 2017 4/39

Page 7: Graph Signal Processing - Data Science Reading Group 1 Graph Signal Processing Background 2 Graph Signal Processing Frameworks Laplacian Based Discrete Signal Processing on Graphs

Background Introduction

Graph Signal Processing

A graph signal

12

3

4

52

3 2

4

-3

Graph Signal Processing Data Science Reading Group, ISU March 24, 2017 4/39

Page 8: Graph Signal Processing - Data Science Reading Group 1 Graph Signal Processing Background 2 Graph Signal Processing Frameworks Laplacian Based Discrete Signal Processing on Graphs

Background Introduction

Graph Signal Processing

A graph signal

12

3

4

52

3 2

4

-3

Graph Signal Processing Data Science Reading Group, ISU March 24, 2017 4/39

Page 9: Graph Signal Processing - Data Science Reading Group 1 Graph Signal Processing Background 2 Graph Signal Processing Frameworks Laplacian Based Discrete Signal Processing on Graphs

Background Introduction

Graph Signal Processing Applications

Graph Signal Processing Data Science Reading Group, ISU March 24, 2017 5/39

Page 10: Graph Signal Processing - Data Science Reading Group 1 Graph Signal Processing Background 2 Graph Signal Processing Frameworks Laplacian Based Discrete Signal Processing on Graphs

Background Introduction

Difficulty in GSP

Translation is simple in classicalsignal processing

0 2 4 6 8 10 12 14 16 18 200

2

4

6

8

10

12

What does it mean to translate thesignal to ‘vertex 50’?

Challenging in GSP

Graph Signal Processing Data Science Reading Group, ISU March 24, 2017 6/39

Page 11: Graph Signal Processing - Data Science Reading Group 1 Graph Signal Processing Background 2 Graph Signal Processing Frameworks Laplacian Based Discrete Signal Processing on Graphs

Background Introduction

Difficulty in GSP

Translation is simple in classicalsignal processing

0 2 4 6 8 10 12 14 16 18 200

2

4

6

8

10

12

What does it mean to translate thesignal to ‘vertex 50’?

Challenging in GSP

Graph Signal Processing Data Science Reading Group, ISU March 24, 2017 6/39

Page 12: Graph Signal Processing - Data Science Reading Group 1 Graph Signal Processing Background 2 Graph Signal Processing Frameworks Laplacian Based Discrete Signal Processing on Graphs

Background Notation

Notation

12

3

4

52

3 2

4

-3

A graph signal f

Graph G = (V, W)

f =

234−32

Weight matrix W =

0 1 1 0 01 0 1 1 11 1 0 1 00 1 1 0 10 1 0 1 0

Degree matrix D =

2 0 0 0 00 4 0 0 00 0 3 0 00 0 0 3 00 0 0 0 2

Laplacian matrix

L = D−W =

2 −1 −1 0 0−1 4 −1 −1 −1−1 −1 3 −1 00 −1 −1 3 −10 −1 0 −1 2

Graph Signal Processing Data Science Reading Group, ISU March 24, 2017 7/39

Page 13: Graph Signal Processing - Data Science Reading Group 1 Graph Signal Processing Background 2 Graph Signal Processing Frameworks Laplacian Based Discrete Signal Processing on Graphs

GSP Frameworks

Existing Graph Signal Processing (GSP) Frameworks

GSP based on Laplacian1 Discrete Signal Processing onGraphs (DSPG) Framework2

Shift Operator Not defined The weight matrix

LSI Filters Not applicable Applicable

Applicability Only undirected graphs Directed graphs

Frequencies Eigenvalues of the Laplacian ma-trix Eigenvalues of the weight matrix

Harmonics Eigenvectors of the Laplacianmatrix

Eigenvectors of the weight ma-trix

FrequencyOrdering Laplacian quadratic form Total variation

MultiscaleAnalysis Exists (SGWT) Does not exist

1David K Hammond, Pierre Vandergheynst, and Remi Gribonval. “Wavelets on graphs via spectral graphtheory”. In: Applied and Computational Harmonic Analysis 30.2 (2011), pp. 129–150.

2A. Sandryhaila and J.M.F. Moura. “Discrete Signal Processing on Graphs: Frequency Analysis”. In: SignalProcessing, IEEE Transactions on 62.12 (2014), pp. 3042–3054.

Graph Signal Processing Data Science Reading Group, ISU March 24, 2017 8/39

Page 14: Graph Signal Processing - Data Science Reading Group 1 Graph Signal Processing Background 2 Graph Signal Processing Frameworks Laplacian Based Discrete Signal Processing on Graphs

GSP Frameworks Laplacian Based

Classical vs Graph Signal Processing (Laplacian Based)Operator/ Transform Classical Signal Processing Graph Signal Processing

Fourier Transformx(ω) =

∫∞−∞

x(t)e−jωt dt

Frequency: ω can take any valueFourier basis: Complex exponentialsejωt

f(λ`) =∑N

n=1f(n)u∗

`(n)

Frequency: Eigenvalues of the graphLaplacian (λ`)Fourier basis: Eigenvectors of thegraph Laplacian (u`)

Convolution

In time domain:x(t)∗y(t) =

∫∞−∞

x(τ)y(t−τ)dτ

In frequency domain:x(t) ∗ y(t) = x(ω)y(ω)

Defined through Graph FourierTransform

f ∗ g = U(

f.g)

Translation Can be defined using convolutionTτ x(t) = x(t − τ) = x(t) ∗ δτ (t)

Defined through graph convolutionTi f(n) =

√N(f ∗ δi )(n)

=√N∑N−1

`=0f (λ`)u∗

`(i)u`(n)

Modulation Multiplication with the complexexponentialMωx(t) = ejωt x(t)

Multiplication with the eigenvectorof the graph LaplacianMk f(n) =

√Nuk (n)f(n)

Graph Signal Processing Data Science Reading Group, ISU March 24, 2017 9/39

Page 15: Graph Signal Processing - Data Science Reading Group 1 Graph Signal Processing Background 2 Graph Signal Processing Frameworks Laplacian Based Discrete Signal Processing on Graphs

GSP Frameworks Laplacian Based

Graph Fourier Transform

Analogy from classical signal processingClassical Fourier basis: Complex exponentials

Complex exponentials are Eigenfunctions of 1-D Laplacian operator∆,

−∆(ejωt) = − ∂2

∂t2 ejωt = (ω)2ejωt .

Graph Fourier TransformGraph Fourier basis are Eigenfunctions of the Laplacian matrix(operator)

Graph Frequencies: Eigenvalues of the Laplacian matrix L

Graph Harmonics: Eigenvectors of the Laplacian matrix L

L = UΛUT

GFT f = UTf , IGFT f = Uf

Graph Signal Processing Data Science Reading Group, ISU March 24, 2017 10/39

Page 16: Graph Signal Processing - Data Science Reading Group 1 Graph Signal Processing Background 2 Graph Signal Processing Frameworks Laplacian Based Discrete Signal Processing on Graphs

GSP Frameworks Laplacian Based

Graph Fourier Transform

Analogy from classical signal processingClassical Fourier basis: Complex exponentials

Complex exponentials are Eigenfunctions of 1-D Laplacian operator∆,

−∆(ejωt) = − ∂2

∂t2 ejωt = (ω)2ejωt .

Graph Fourier TransformGraph Fourier basis are Eigenfunctions of the Laplacian matrix(operator)

Graph Frequencies: Eigenvalues of the Laplacian matrix L

Graph Harmonics: Eigenvectors of the Laplacian matrix L

L = UΛUT

GFT f = UTf , IGFT f = Uf

Graph Signal Processing Data Science Reading Group, ISU March 24, 2017 10/39

Page 17: Graph Signal Processing - Data Science Reading Group 1 Graph Signal Processing Background 2 Graph Signal Processing Frameworks Laplacian Based Discrete Signal Processing on Graphs

GSP Frameworks Laplacian Based

Graph Signal in Two Domains

0 1 2 3 4 5 6 7 8 9

−2

0

2

λℓ

f(λ

ℓ)

GFT coefficients

Eigenvalues of graph Laplacian

A graph signal in vertex domain and spectral domain

Graph Signal Processing Data Science Reading Group, ISU March 24, 2017 11/39

Page 18: Graph Signal Processing - Data Science Reading Group 1 Graph Signal Processing Background 2 Graph Signal Processing Frameworks Laplacian Based Discrete Signal Processing on Graphs

GSP Frameworks Laplacian Based

Laplacian Eigenvectors as GFT Basis

1

23

45

6

u0

1

23

45

6

u1

1

23

45

6

u2

1

23

45

6

u3

1

23

45

6

u4

1

23

45

6

u5

Graph Signal Processing Data Science Reading Group, ISU March 24, 2017 12/39

Page 19: Graph Signal Processing - Data Science Reading Group 1 Graph Signal Processing Background 2 Graph Signal Processing Frameworks Laplacian Based Discrete Signal Processing on Graphs

GSP Frameworks Laplacian Based

Graph Convolution

1 3

4

2

5

L =

2 −1 −1 0 0−1 3 −1 −1 0−1 −1 3 −1 00 −1 −1 3 −10 0 0 −1 1

Eigenvalues: 0, 0.8299, 2.6889, 4, 4.4812

U =

0.4472 0.4375 0.7031 0 0.33800.4472 0.2560 −0.2422 0.7071 −0.41930.4472 0.2560 −0.2422 −0.7071 −0.41930.4472 −0.1380 −0.5362 0 0.70240.4472 −0.8115 0.3175 0 −0.2018

Graph Signal Processing Data Science Reading Group, ISU March 24, 2017 13/39

Page 20: Graph Signal Processing - Data Science Reading Group 1 Graph Signal Processing Background 2 Graph Signal Processing Frameworks Laplacian Based Discrete Signal Processing on Graphs

GSP Frameworks Laplacian Based

Graph Convolution(cont’d. . . )

1

23

4 5

3

f = [3, 4, 6, 3, 1]T

1

23

4 5

4

g = [4, 2, 4, 2, 2]T

h = f ∗ g = IGFT(f.g)

1

23

4 5

21.92

h = [21.92, 23.92, 21.08, 21.72, 17.80]T

Graph Signal Processing Data Science Reading Group, ISU March 24, 2017 14/39

Page 21: Graph Signal Processing - Data Science Reading Group 1 Graph Signal Processing Background 2 Graph Signal Processing Frameworks Laplacian Based Discrete Signal Processing on Graphs

GSP Frameworks Laplacian Based

Graph Translation

1

23

4 5

3

f = [3, 4, 6, 3, 1]T

Translation to node i :

Ti (f) =√

N (f ∗ δi ) =√

N IGFT(f.UT (:, i))

1

23

4 5

2.44

T1f = [2.44, 5.08, 5.08, 3.72, 0.69]T

1

23

4 5

5.08

T2f = [5.08, 1.50, 4.66, 3.56, 2.21]T

1

23

4 5

3.72

T4f = [3.72, 3.56, 3.56, 1.08, 5.08]T

Graph Signal Processing Data Science Reading Group, ISU March 24, 2017 15/39

Page 22: Graph Signal Processing - Data Science Reading Group 1 Graph Signal Processing Background 2 Graph Signal Processing Frameworks Laplacian Based Discrete Signal Processing on Graphs

GSP Frameworks DSPG

Discrete Signal Processing on Graphs (DSPG) Framework

Shift Operator

LSI Filters

Total Variation

Graph FourierTransform

Graph Frequencies

Graph Harmonics

FrequencyOrdering

Graph harmonicsare eigenfunctionsof LSI filters

Total Variation isused for frequencyordering

Concepts in the DSPG framework

Graph Signal Processing Data Science Reading Group, ISU March 24, 2017 16/39

Page 23: Graph Signal Processing - Data Science Reading Group 1 Graph Signal Processing Background 2 Graph Signal Processing Frameworks Laplacian Based Discrete Signal Processing on Graphs

GSP Frameworks DSPG

DSPG Framework (Cont’d. . . )

Shift operatorWeight matrix W of the graph

Shifted graph signal f = Wf

Example: shifting discrete-timesignal (one unit right)

1 2 3 4 5

x = [9, 7, 5, 0, 6]T

x = Wx =

0 0 0 0 11 0 0 0 00 1 0 0 00 0 1 0 00 0 0 1 0

97506

=

69750

Hfin fout = Hf in

A linear graph filter

Linear Shift Invariant (LSI) filtersH(Wf in) = W(Hf in)

Polynomials in W

H = h(W) =M−1∑m=0

hmWm

= h0I + h1W + . . .+ hM−1WM−1

Graph Signal Processing Data Science Reading Group, ISU March 24, 2017 17/39

Page 24: Graph Signal Processing - Data Science Reading Group 1 Graph Signal Processing Background 2 Graph Signal Processing Frameworks Laplacian Based Discrete Signal Processing on Graphs

GSP Frameworks DSPG

DSPG Framework (Cont’d. . . )

Analogy from classical signal processingClassical Fourier basis: Complex exponentials

Complex exponentials are Eigenfunctions of Linear Time Invariant(LTI) filters

Graph Fourier TransformGraph Fourier basis are Eigenfunctions of Linear Shift Invariant(LSI) graph filters

Graph Frequencies: Eigenvalues of the weight matrix W

Graph Harmonics: Eigenvectors of the weight matrix W

W = VΣV−1

GFT f = V−1f , IGFT f = V−1 f

Graph Signal Processing Data Science Reading Group, ISU March 24, 2017 18/39

Page 25: Graph Signal Processing - Data Science Reading Group 1 Graph Signal Processing Background 2 Graph Signal Processing Frameworks Laplacian Based Discrete Signal Processing on Graphs

GSP Frameworks DSPG

DSPG Framework (Cont’d. . . )Total Variation in classical signal processing

TV(x) =∑

n x [n]− x [n − 1] = ||x− x||1 , where x [n] = x [n − 1]

Analogy from classical signal processing

Total Variation on graphs TVG(f) = ||f − f||1 = ||f −Wf||1

Frequency ordering: Based on TotalVariationEigenvalue with largest magnitude:Lowest frquency

Re

Im

σN−1|σmax|−|σmax|

σ1

σ2σ0

LFHF

Graph Signal Processing Data Science Reading Group, ISU March 24, 2017 19/39

Page 26: Graph Signal Processing - Data Science Reading Group 1 Graph Signal Processing Background 2 Graph Signal Processing Frameworks Laplacian Based Discrete Signal Processing on Graphs

GSP Frameworks DSPG

Problems in Weight Matrix based DSPG

Re

Im

σN−1|σmax|−|σmax|

σ1

σ2σ0

LFHF

Constant graph signal

12

3

4

5

11

1

1

1

Graph frequencies:-1.62, -1.47, -0.46, 0.62, 2.94

f =

0

0.360.16

02.20

Weight matrix based DSPG

Does not provide “natural” frequency ordering

Even a constant signal has high frequency components

Graph Signal Processing Data Science Reading Group, ISU March 24, 2017 20/39

Page 27: Graph Signal Processing - Data Science Reading Group 1 Graph Signal Processing Background 2 Graph Signal Processing Frameworks Laplacian Based Discrete Signal Processing on Graphs

Graph Fourier Transform based on Directed Laplacian

Page 28: Graph Signal Processing - Data Science Reading Group 1 Graph Signal Processing Background 2 Graph Signal Processing Frameworks Laplacian Based Discrete Signal Processing on Graphs

Graph Fourier Transform based on Directed Laplacian

Graph Fourier Transform based on Directed Laplacian3

Redefines Graph Fourier Transform under DSPG

Shift operator: Derived from directed LaplacianLinear Shift Invariant filters: Polynomials in the directed LaplacianGraph frequencies: Eigenvalues of the directed LaplacianGraph harmonics: Eigenvectors of the directed Laplacian

“Natural” frequency ordering

Better intuition of frequency as compared to the weightmatrix based approach

Coincides with the Laplacian based approach for undirectedgraphs

3Rahul Singh, Abhishek Chakraborty, and BS Manoj. “Graph Fourier transform based on directed Laplacian”.In: Signal Processing and Communications (SPCOM), 2016 International Conference on. IEEE. 2016, pp. 1–5.

Graph Signal Processing Data Science Reading Group, ISU March 24, 2017 21/39

Page 29: Graph Signal Processing - Data Science Reading Group 1 Graph Signal Processing Background 2 Graph Signal Processing Frameworks Laplacian Based Discrete Signal Processing on Graphs

Graph Fourier Transform based on Directed Laplacian Directed Laplacian Matrix

Directed Laplacian Matrix

Basic matrices of a directed graphWeight matrix: W

wij is the weight of the directed edge from node j to node i

In-degree matrix: Din = diag({d ini }i=1,2,...,N), d in

i =∑N

j=1 wij

Out-degree matrix: Dout = diag({douti }i=1,2,...,N), dout

i =∑N

i=1 wij

Directed Laplacian matrix L = Din −WSum of each row is zeroλ = 0 is surely an eigenvalue

1

2

3

4

1

1

11

1

1

1

A directed graph

W =

[0 0 0 11 0 1 11 1 0 01 0 0 0

]Weight matrix

Din =

[1 0 0 00 3 0 00 0 2 00 0 0 1

]In-degree matrix

L =

[1 0 0 −1−1 3 −1 −1−1 −1 2 0−1 0 0 1

]Directed Laplacian matrix

Graph Signal Processing Data Science Reading Group, ISU March 24, 2017 22/39

Page 30: Graph Signal Processing - Data Science Reading Group 1 Graph Signal Processing Background 2 Graph Signal Processing Frameworks Laplacian Based Discrete Signal Processing on Graphs

Graph Fourier Transform based on Directed Laplacian Shift Operator

Shift Operator (Proposed)

1 2 3 4 5

A directed cyclic (ring) graph

L =

1 0 0 0 −1−1 1 0 0 00 −1 1 0 00 0 −1 1 00 0 0 −1 1

Laplacian matrix

A signal x = [9 7 1 0 6]T ; shifted by one unit to the right x = [6 9 7 1 0]T

x = Sx = (I− L)x =

0 0 0 0 11 0 0 0 00 1 0 0 00 0 1 0 00 0 0 1 0

97106

=

69710

S = (I− L) is the shift operator

Shifted graph signal: f = Sf = (I− L)f

Graph Signal Processing Data Science Reading Group, ISU March 24, 2017 23/39

Page 31: Graph Signal Processing - Data Science Reading Group 1 Graph Signal Processing Background 2 Graph Signal Processing Frameworks Laplacian Based Discrete Signal Processing on Graphs

Graph Fourier Transform based on Directed Laplacian LSI Filters

LSI Filters

Hfin fout = Hf in

A linear graph filter

Linear Shift-Invariant (LSI) filter: S(fout) = H(Sfin)

TheoremA graph filter H is LSI if the following conditions are satisfied.

1 Geometric multiplicity of each distinct eigenvalue of the graphLaplacian is one.

2 The graph filter H is a polynomial in L, i.e., if H can be written as

H = h(L) = h0I + h1L + . . .+ hmLm

where, h0, h1, . . . , hm ∈ C are called filter taps.Graph Signal Processing Data Science Reading Group, ISU March 24, 2017 24/39

Page 32: Graph Signal Processing - Data Science Reading Group 1 Graph Signal Processing Background 2 Graph Signal Processing Frameworks Laplacian Based Discrete Signal Processing on Graphs

Graph Fourier Transform based on Directed Laplacian Graph Frequencies and Harmonics

Graph Fourier Transform based on Directed Laplacian

Jordan decomposition of the directed Laplacian: L = VJV−1

Graph Fourier basis: Columns of V (Jordan Eigenvectors of L)

Graph frequencies: Eigenvalues of L (diagonal entries of Jordanblocks in J)

GFT f = V−1f and IGFT: f = Vf

Frequency Ordering: based on Total Variation

Total Variation: TVG(f) = ||f − Sf||1 = ||f − (I− L)f||1TVG(f) = ||Lf||1

TheoremTV of an eigenvector vr is proportional to the absolute value of thecorresponding eigenvalue

TV(vr ) ∝ |λr |

Graph Signal Processing Data Science Reading Group, ISU March 24, 2017 25/39

Page 33: Graph Signal Processing - Data Science Reading Group 1 Graph Signal Processing Background 2 Graph Signal Processing Frameworks Laplacian Based Discrete Signal Processing on Graphs

Graph Fourier Transform based on Directed Laplacian Frequency Ordering

Frequency Ordering

Re

Im

λ0 λ1

λ2

λ3

λN−1

λN−2

LFHF

HF

Arbitrary graph

Re

Im

λ0 λ1

λ2

λ3

λN−1

λN−2

LF HF

Graph with positive edge weights

Re

Im

λ0λ1λN−1 λN−2

LFHFHF

Undirected graph with real edge weights.

Re

Im

λ0 λ1 λN−1λN−2

LFHF

Undirected graph with real andnon-negative edge weights.

Graph Signal Processing Data Science Reading Group, ISU March 24, 2017 26/39

Page 34: Graph Signal Processing - Data Science Reading Group 1 Graph Signal Processing Background 2 Graph Signal Processing Frameworks Laplacian Based Discrete Signal Processing on Graphs

Graph Fourier Transform based on Directed Laplacian Frequency Ordering

Example

Graph signal f = [0.1189 0.3801 0.8128 0.2441 0.8844]T defined onthe directed graph

1

2

3

4

5

1

2

3

1

2

33

4

3

A weighted directed graph 02

46

8

−10

−5

0

5

100

0.5

1

1.5

Re(λℓ)Im(λℓ)

|f(λ

ℓ)|

High frequency component

Equal TV

Low frequency component

Spectrum of the signal f = [0.1189 0.3801 0.8128 0.2441 0.8844]T

Graph Signal Processing Data Science Reading Group, ISU March 24, 2017 27/39

Page 35: Graph Signal Processing - Data Science Reading Group 1 Graph Signal Processing Background 2 Graph Signal Processing Frameworks Laplacian Based Discrete Signal Processing on Graphs

Graph Fourier Transform based on Directed Laplacian Frequency Ordering

Example

Graph signal f = [0.1189 0.3801 0.8128 0.2441 0.8844]T defined onthe directed graph

1

2

3

4

5

1

2

3

1

2

33

4

3

A weighted directed graph 02

46

8

−10

−5

0

5

100

0.5

1

1.5

Re(λℓ)Im(λℓ)

|f(λ

ℓ)|

High frequency component

Equal TV

Low frequency component

Spectrum of the signal f = [0.1189 0.3801 0.8128 0.2441 0.8844]T

Graph Signal Processing Data Science Reading Group, ISU March 24, 2017 27/39

Page 36: Graph Signal Processing - Data Science Reading Group 1 Graph Signal Processing Background 2 Graph Signal Processing Frameworks Laplacian Based Discrete Signal Processing on Graphs

Graph Fourier Transform based on Directed Laplacian Frequency Ordering

Example: Zero Frequency

Eigenvector corresponding to λ0 is v0 = 1√N [1, 1, . . . 1]T

TV of v0 is zeroFor a constant graph signal f = [k, k, . . .]T , GFT is f = [(k

√N), 0, . . .]T

Only zero frequency component

The weight matrix based approach of GFT fails to give this basicintuition

1

2

3

4

5

1

2

3

1

2

33

4

3

A weighted directed graph0

24

68

−10

−5

0

5

100

1

2

3

Re(λℓ)Im(λℓ)

|f(λ

ℓ)|

Only zero frequency component

Spectrum of the constant signal f = [1 1 1 1 1]T

Graph Signal Processing Data Science Reading Group, ISU March 24, 2017 28/39

Page 37: Graph Signal Processing - Data Science Reading Group 1 Graph Signal Processing Background 2 Graph Signal Processing Frameworks Laplacian Based Discrete Signal Processing on Graphs

Graph Fourier Transform based on Directed Laplacian Frequency Ordering

Example: Zero Frequency

Eigenvector corresponding to λ0 is v0 = 1√N [1, 1, . . . 1]T

TV of v0 is zeroFor a constant graph signal f = [k, k, . . .]T , GFT is f = [(k

√N), 0, . . .]T

Only zero frequency componentThe weight matrix based approach of GFT fails to give this basicintuition

1

2

3

4

5

1

2

3

1

2

33

4

3

A weighted directed graph0

24

68

−10

−5

0

5

100

1

2

3

Re(λℓ)Im(λℓ)

|f(λ

ℓ)|

Only zero frequency component

Spectrum of the constant signal f = [1 1 1 1 1]T

Graph Signal Processing Data Science Reading Group, ISU March 24, 2017 28/39

Page 38: Graph Signal Processing - Data Science Reading Group 1 Graph Signal Processing Background 2 Graph Signal Processing Frameworks Laplacian Based Discrete Signal Processing on Graphs

Graph Fourier Transform based on Directed Laplacian Comparison

Comparison of the GSP Frameworks

GSP based on LaplacianDSPG Framework

Based on WeightMatrix

Based on DirectedLaplacian

ShiftOperator

Not defined The weight matrix W Derived from directedLaplacian (I− L)

LSI Filters Not applicable Applicable Applicable

Applicability Only undirected graphs Directed graphs Directed graphs

Frequencies Eigenvalues of theLaplacian (real)

Eigenvalues of theweight matrix

Eigenvalues of the di-rected Laplacian

Harmonics Eigenvectors of theLaplacian matrix (real)

Eigenvectors of theweight matrix

Eigenvectors of thedirected Laplacian

FrequencyOrdering

Laplacian quadraticform (natural)

Total variation(not natural)

Total variation(natural)

MultiscaleAnalysis

Exists (Spectral GraphWavelet Transform)

Does not exist Possible

Graph Signal Processing Data Science Reading Group, ISU March 24, 2017 29/39

Page 39: Graph Signal Processing - Data Science Reading Group 1 Graph Signal Processing Background 2 Graph Signal Processing Frameworks Laplacian Based Discrete Signal Processing on Graphs

SGWT

Spectral Graph Wavelet Transform

Classical waveletsWavelets at different scales and locations are constructed by scalingand translating a single “mother” wavelet ψψs,a(x) = 1

sψ( x−a

s

)Scaling in Fourier domain ψs,a(x) = 1

∫∞−∞ ejωx ψ(sω)e−jωadω

Scaling ψ by 1/s corresponds to scaling ψ with sTerm e−jωa comes from localization of the wavelet at location a

Spectral Graph WaveletsGraph wavelet at scale t and centered at node n

ψt,n(m) =N−1∑`=0

u`(m)g(tλ`)u∗` (n)

Frequency ω is replaced with eigenvalues of graph Laplacian λ`Translating to node n corresponds to multiplication by u∗` (n)g acts as a scaled bandpass filter, replacing ψ

Graph Signal Processing Data Science Reading Group, ISU March 24, 2017 30/39

Page 40: Graph Signal Processing - Data Science Reading Group 1 Graph Signal Processing Background 2 Graph Signal Processing Frameworks Laplacian Based Discrete Signal Processing on Graphs

SGWT Generating Kernel

Wavelet Generating Kernel

ψt,n(m) =N−1∑`=0

u`(m)g(tλ`)u∗` (n)

g acts as a scaled bandpass filter: wavelet generating kernel

g(x ;α, β, x1, x2) =

x−α1 xα for x < x1

p(x) for x1 ≤ x ≤ x1

xβ2 x−β for x > x2,

x is the distance from origin (zero frequency)α and β are integer parameters of gx1 and x2 determine transition regionsp(x) is a cubic spline that ensures continuity in g

A possible choice of these parameters: α = β = 2, x1 = 1,x2 = 2, and p(x) = −5 + 11x − 6x2 + x3

Graph Signal Processing Data Science Reading Group, ISU March 24, 2017 31/39

Page 41: Graph Signal Processing - Data Science Reading Group 1 Graph Signal Processing Background 2 Graph Signal Processing Frameworks Laplacian Based Discrete Signal Processing on Graphs

SGWT Generating Kernel

Wavelet Generating Kernel cont’d. . .

ψt,n(m) =N−1∑`=0

u`(m)g(tλ`)u∗` (n)

Scale t is a continuous variable

For practical purposes, choose J number of logarithmicallyequally spaced scales t1, . . . , tJ

tmin = |λmax |/K , λmax is the eigenvalue of L with largest magnitudeand K is a design parameter

tJ = x2/|λmax | and t1 = x2/tmin

Graph Signal Processing Data Science Reading Group, ISU March 24, 2017 32/39

Page 42: Graph Signal Processing - Data Science Reading Group 1 Graph Signal Processing Background 2 Graph Signal Processing Frameworks Laplacian Based Discrete Signal Processing on Graphs

SGWT Generating Kernel

Wavelet Generating Kernel cont’d. . .|λmax | = 10, α = β = 2, x1 = 1, x2 = 2, K = 20, and J = 4

0 1 2 3 4 5 6 70

0.5

1

(λ)

g(tλ)

Kernel at t1 = 4.0000.

0 1 2 3 4 5 6 70

0.5

1

(λ)

g(tλ)

Kernel at t2 = 1.4736.

0 1 2 3 4 5 6 70

0.5

1

(λ)

g(tλ)

Kernel at t3 = 0.5429.

0 1 2 3 4 5 6 70

0.5

1

(λ)

g(tλ)

Kernel at t4 = 0.2.

As t increases, the kernel becomes increasingly confined to low frequenciesGraph Signal Processing Data Science Reading Group, ISU March 24, 2017 33/39

Page 43: Graph Signal Processing - Data Science Reading Group 1 Graph Signal Processing Background 2 Graph Signal Processing Frameworks Laplacian Based Discrete Signal Processing on Graphs

SGWT Examples

SGWT ExamplesWavelets at different scales

−0.06 0 0.06

t = 5.0742

−0.2 0 0.2

t = 1.8693

−0.5 0 0.5

t = 0.6887

−0.8 0 0.8

t = 0.2537

Large scale ≡ Low frequency ≡ Spread of the wavelet overthe graph is high

Graph Signal Processing Data Science Reading Group, ISU March 24, 2017 34/39

Page 44: Graph Signal Processing - Data Science Reading Group 1 Graph Signal Processing Background 2 Graph Signal Processing Frameworks Laplacian Based Discrete Signal Processing on Graphs

SGWT Examples

SGWT Examples

Wavelets at different scales

0.0656

t = 5.0742

0.2173

t = 1.8693

0.5050

t = 0.6887

0.8993

t = 0.2537

Large scale ≡ Low frequency ≡ Spread of the wavelet overthe graph is high

Graph Signal Processing Data Science Reading Group, ISU March 24, 2017 35/39

Page 45: Graph Signal Processing - Data Science Reading Group 1 Graph Signal Processing Background 2 Graph Signal Processing Frameworks Laplacian Based Discrete Signal Processing on Graphs

SGWT Examples

SGWT Examples

0 10 20 30 40 50 60 70 80−0.04

−0.02

0

0.02

0.04

0.06

0.08

index

wavelet

ψ(t)

t = 5.0742

0 10 20 30 40 50 60 70 80−0.1

−0.05

0

0.05

0.1

0.15

0.2

0.25

index

wavelet

ψ(t)

t = 1.8693

0 10 20 30 40 50 60 70 80−0.2

0

0.2

0.4

0.6

index

wavelet

ψ(t)

t = 0.6887

0 10 20 30 40 50 60 70 80−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

index

wavelet

ψ(t)

t = 0.2537

Graph Signal Processing Data Science Reading Group, ISU March 24, 2017 36/39

Page 46: Graph Signal Processing - Data Science Reading Group 1 Graph Signal Processing Background 2 Graph Signal Processing Frameworks Laplacian Based Discrete Signal Processing on Graphs

SGWT Matrix Form

Matrix Form of SGWTWavelet basis at scale t = collection of N number of wavelets(each wavelet centered at a particular node of the graph)

Ψt = [ψt,1|ψt,2| . . . |ψt,N ]

= U

g(tλ0)

g(tλ1). . .

g(tλN−1)

UT

= UGtUT

Column of U are eigenvectors of Lg(tλ`) is the sampled value of g(tλ) at frequency λ`Wavelet coefficient at scale t and centered at node n of agraph signal f

Wf (t, n) = 〈ψt,n, f〉 = ψTt,nf

Graph Signal Processing Data Science Reading Group, ISU March 24, 2017 37/39

Page 47: Graph Signal Processing - Data Science Reading Group 1 Graph Signal Processing Background 2 Graph Signal Processing Frameworks Laplacian Based Discrete Signal Processing on Graphs

Conclusions

Conclusions

Introduction to Graph Signal Processing (GSP)

Graph Signal Processing FrameworksLaplacian BasedDiscrete Signal Processing on Graphs (DSPG) Framework

Weight Matrix Based

Directed Laplacian Based

Spectral Graph Wavelet Transform (SGWT)Research oppurtunities are plenty

Graph Signal Processing Data Science Reading Group, ISU March 24, 2017 38/39

Page 48: Graph Signal Processing - Data Science Reading Group 1 Graph Signal Processing Background 2 Graph Signal Processing Frameworks Laplacian Based Discrete Signal Processing on Graphs

Conclusions

References

[1] Fan RK Chung. Spectral graph theory. Vol. 92. American Mathematical Soc., 1997.

[2] David K Hammond, Pierre Vandergheynst, and Remi Gribonval. “Wavelets on graphs via spectral graphtheory”. In: Applied and Computational Harmonic Analysis 30.2 (2011), pp. 129–150.

[3] Sunil K Narang and Antonio Ortega. “Perfect reconstruction two-channel wavelet filter banks for graphstructured data”. In: Signal Processing, IEEE Transactions on 60.6 (2012), pp. 2786–2799.

[4] A. Sandryhaila and J.M.F. Moura. “Big Data Analysis with Signal Processing on Graphs: Representationand processing of massive data sets with irregular structure”. In: Signal Processing Magazine, IEEE 31.5(2014), pp. 80–90.

[5] A. Sandryhaila and J.M.F. Moura. “Discrete Signal Processing on Graphs”. In: Signal Processing, IEEETransactions on 61.7 (2013), pp. 1644–1656.

[6] A. Sandryhaila and J.M.F. Moura. “Discrete Signal Processing on Graphs: Frequency Analysis”. In: SignalProcessing, IEEE Transactions on 62.12 (2014), pp. 3042–3054.

[7] Aliaksei Sandryhaila and Jose MF Moura. “Discrete signal processing on graphs: Graph fourier transform.”In: ICASSP. 2013, pp. 6167–6170.

[8] David I Shuman, Benjamin Ricaud, and Pierre Vandergheynst. “Vertex-frequency analysis on graphs”. In:Applied and Computational Harmonic Analysis 40.2 (2016), pp. 260–291.

[9] David I Shuman et al. “The emerging field of signal processing on graphs: Extending high-dimensional dataanalysis to networks and other irregular domains”. In: Signal Processing Magazine, IEEE 30.3 (2013),pp. 83–98.

[10] Rahul Singh, Abhishek Chakraborty, and BS Manoj. “Graph Fourier transform based on directedLaplacian”. In: Signal Processing and Communications (SPCOM), 2016 International Conference on.IEEE. 2016, pp. 1–5.

Graph Signal Processing Data Science Reading Group, ISU March 24, 2017 39/39

Page 49: Graph Signal Processing - Data Science Reading Group 1 Graph Signal Processing Background 2 Graph Signal Processing Frameworks Laplacian Based Discrete Signal Processing on Graphs

Thank [email protected]