27
Graph Signal Processing (GSP) (or how I started seeing graphs everywhere) Antonio Ortega Signal and Image Processing Institute Department of Electrical Engineering University of Southern California Los Angeles, California Apr 14, 2017

Graph Signal Processing (GSP) - CCIcci.usc.edu/wp-content/uploads/2017/06/Mini-GSP-Overview...\Signal Processing on Graphs: Extending High-Dimensional Data Analysis to Networks and

  • Upload
    others

  • View
    0

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Graph Signal Processing (GSP) - CCIcci.usc.edu/wp-content/uploads/2017/06/Mini-GSP-Overview...\Signal Processing on Graphs: Extending High-Dimensional Data Analysis to Networks and

Graph Signal Processing (GSP)

(or how I started seeing graphs everywhere)

Antonio Ortega

Signal and Image Processing InstituteDepartment of Electrical Engineering

University of Southern CaliforniaLos Angeles, California

Apr 14, 2017

Page 2: Graph Signal Processing (GSP) - CCIcci.usc.edu/wp-content/uploads/2017/06/Mini-GSP-Overview...\Signal Processing on Graphs: Extending High-Dimensional Data Analysis to Networks and

Outline

Graphs Everywhere

GSP basics

Contributions

Discussion

Page 3: Graph Signal Processing (GSP) - CCIcci.usc.edu/wp-content/uploads/2017/06/Mini-GSP-Overview...\Signal Processing on Graphs: Extending High-Dimensional Data Analysis to Networks and

Graphs everywhere ...

Graphs provide a flexible model to represent many datasets:

I Examples in Euclidean domains

(a) (b)

11

.5

(c)

(a) Computer graphics1 (b) Wireless sensor networks 2 (c) image - graphs

Page 4: Graph Signal Processing (GSP) - CCIcci.usc.edu/wp-content/uploads/2017/06/Mini-GSP-Overview...\Signal Processing on Graphs: Extending High-Dimensional Data Analysis to Networks and

... and then some

I Examples in non-Euclidean settings

(a)

Combined ARQ-Queue

0

1

2

3

0 1 2 3

ARQ

Que

ue(b)

(a) Social Networks 3, (b) Finite State Machines(FSM)

Page 5: Graph Signal Processing (GSP) - CCIcci.usc.edu/wp-content/uploads/2017/06/Mini-GSP-Overview...\Signal Processing on Graphs: Extending High-Dimensional Data Analysis to Networks and

Graph Signal Processing

I Given a graph (fixed or learned from data)

I and given signals on the graph (set of scalars associated to vertices)

I define frequency, sampling, transforms, etc

I in order to solve problems such as compression, denoising, interpolation,etc

I Overview papers:[Shuman, Narang, Frossard, Ortega, Vandergheysnt, SPM’2013][Sandryhaila and Moura 2013]

Page 6: Graph Signal Processing (GSP) - CCIcci.usc.edu/wp-content/uploads/2017/06/Mini-GSP-Overview...\Signal Processing on Graphs: Extending High-Dimensional Data Analysis to Networks and

Examples

11

.5

I Sensor network

I Relative positions of sensors(kNN), temperature

I Does temperature varysmoothly?

I Social network

I Friendship relationship, ageI Are friends of similar age?

I Images

I Pixel positions and similarity,pixel values

I Discontinuities and smoothness

Page 7: Graph Signal Processing (GSP) - CCIcci.usc.edu/wp-content/uploads/2017/06/Mini-GSP-Overview...\Signal Processing on Graphs: Extending High-Dimensional Data Analysis to Networks and

Outline

Graphs Everywhere

GSP basics

Contributions

Discussion

Page 8: Graph Signal Processing (GSP) - CCIcci.usc.edu/wp-content/uploads/2017/06/Mini-GSP-Overview...\Signal Processing on Graphs: Extending High-Dimensional Data Analysis to Networks and

Graphs 101

I Graph : vertices (nodes) connected via some links (edges)

I Graph Signal: set of scalar/vector values defined on the vertices.

1

2

3

4

5

6

7

8

9

10

1112

13

14

15

16

17

18

19

20

21 22 23

24 25 26

27

Graph-signal

Graph G = (V,E ,w)

Vertex Set V = {v1, v2, ...}Edge Set E = {(v1, v2), (v1, v3), ...}Weighted edges w , sets of weights aij

Graph Signal x = {x1, x2, ...}Neighborhood, h-hopNh(i) = {j ∈ V : hop dist(i , j) ≤ h}

Page 9: Graph Signal Processing (GSP) - CCIcci.usc.edu/wp-content/uploads/2017/06/Mini-GSP-Overview...\Signal Processing on Graphs: Extending High-Dimensional Data Analysis to Networks and

Multiple algebraic representations

1

2

3

4

5

6

7

8

9

10

1112

13

14

15

16

17

18

19

20

21 22 23

24 25 26

27

I Graph G = (V,E ,w).

I Adjacency A, aij , aji = weights oflinks between i and j (could bedifferent if graph is directed.)

I Degree D = diag{di}, in case ofundirected graph.

I Various algebraic representations

I Normalized adjacency 1|λmax |A

I Laplacian matrix L = D− A.

I Symmetric normalizedLaplacian L = D−1/2LD−1/2

I Discussion:

1. Undirected graphs easier to work with2. Some applications require directed graphs3. Graphs with self loops are useful

Page 10: Graph Signal Processing (GSP) - CCIcci.usc.edu/wp-content/uploads/2017/06/Mini-GSP-Overview...\Signal Processing on Graphs: Extending High-Dimensional Data Analysis to Networks and

Graph Fourier Transform (GFT)

I Different results/insights for different choices of operator

I Laplacian L = D− A = UΛU′

I Eigenvectors of L : U = {uk}k=1:N

I Eigenvalues of L : diag{Λ} = λ1 ≤ λ2 ≤ ... ≤ λN

I Eigen-pair system {(λk , uk)} provides Fourier-like interpretation —Graph Fourier Transform (GFT)

Page 11: Graph Signal Processing (GSP) - CCIcci.usc.edu/wp-content/uploads/2017/06/Mini-GSP-Overview...\Signal Processing on Graphs: Extending High-Dimensional Data Analysis to Networks and

Eigenvectors of graph Laplacian

(a) λ = 0.00 (b) λ = 0.04 (c) λ = 0.20

(d) λ = 0.40 (e) λ = 1.20 (f) λ = 1.49

I Basic idea: increased variation on the graph, e.g., ftLf, as frequencyincreases

Page 12: Graph Signal Processing (GSP) - CCIcci.usc.edu/wp-content/uploads/2017/06/Mini-GSP-Overview...\Signal Processing on Graphs: Extending High-Dimensional Data Analysis to Networks and

Outline

Graphs Everywhere

GSP basics

Contributions

Discussion

Page 13: Graph Signal Processing (GSP) - CCIcci.usc.edu/wp-content/uploads/2017/06/Mini-GSP-Overview...\Signal Processing on Graphs: Extending High-Dimensional Data Analysis to Networks and

Graph Filterbank Designs

I Formulation of critically sampled graph filterbank design problem

I Design filters using spectral techniques [Hammond et al. 2009].

I Orthogonal (not compactly supported) [Narang and O. TSP’12]

I Bi-Orthogonal (compactly supported) [Narang and O. TSP’13]

analysis side synthesis side

filter downsample upsample filter

- -

Page 14: Graph Signal Processing (GSP) - CCIcci.usc.edu/wp-content/uploads/2017/06/Mini-GSP-Overview...\Signal Processing on Graphs: Extending High-Dimensional Data Analysis to Networks and

Example

−1 0 1

−0.1 0 0.1

−1 0 1

−0.05 0 0.05

LL Channel LH Channel

HL Channel HH Channel

Reconstructed graph-signals for each channel.

Page 15: Graph Signal Processing (GSP) - CCIcci.usc.edu/wp-content/uploads/2017/06/Mini-GSP-Overview...\Signal Processing on Graphs: Extending High-Dimensional Data Analysis to Networks and

Graph Sampling?

I Measure a few nodes to estimate information throughout the graph

I Reconstruct signal in whole graph

Questions:

I What properties enable recovery? Need to define frequency

I How to sample? No obvious regular sampling

I How to reconstruct? Filtering is needed

Page 16: Graph Signal Processing (GSP) - CCIcci.usc.edu/wp-content/uploads/2017/06/Mini-GSP-Overview...\Signal Processing on Graphs: Extending High-Dimensional Data Analysis to Networks and

Graph Sampling?

I Measure a few nodes to estimate information throughout the graph

I Reconstruct signal in whole graph

Questions:

I What properties enable recovery? Need to define frequency

I How to sample? No obvious regular sampling

I How to reconstruct? Filtering is needed

Page 17: Graph Signal Processing (GSP) - CCIcci.usc.edu/wp-content/uploads/2017/06/Mini-GSP-Overview...\Signal Processing on Graphs: Extending High-Dimensional Data Analysis to Networks and

Results: Real Datasets

1 2 3 4 5 6 7 8 9 100.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

Percentage of labeled data

Accu

racy

RandomLLGC BoundMETISLLRProposed

I USPS: handwritten digits

I xi = 16× 16 image

I number of classes = 10

I K -NN graph with K = 10

I wij = exp

(−‖xi−xj‖

2

2σ2

)

2 3 4 5 6 7 8 9 100.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

Percentage of labeled dataA

ccu

racy

I ISOLET: spoken letters

I xi ∈ R617 speech features.

I number of classes = 26

I K -NN graph with K = 10

I wij = exp

(−‖xi−xj‖

2

2σ2

)

1 2 3 4 5 6 7 8 9 100.1

0.2

0.3

0.4

0.5

0.6

0.7

Percentage of labeled data

Accu

racy

I Newsgroups: documents

I xi ∈ R3000 tf-idf of words

I number of classes = 10

I K -NN graph with K = 10

I wij =x>i xj‖xi‖‖xj‖

Page 18: Graph Signal Processing (GSP) - CCIcci.usc.edu/wp-content/uploads/2017/06/Mini-GSP-Overview...\Signal Processing on Graphs: Extending High-Dimensional Data Analysis to Networks and

Assumptions

I Given data matrix X = [x1, · · · , xN ] ∈ Rn×N .

I The k-th row of X (k-th variable) is attached to k-th vertex of the graph.

I Each xi is a graph signal in an unknown graph.

I Sensor network: each vertex is a sensor, signal is a measurement/timeseries

I Data model: attractive Gaussian Markov Random Field (a-GMRF) ⇔Gaussian with a Generalized Laplacian (GL) for precision matrix.

I Q = P + L with P diagonal (self loop matrix) and L a combinatorialLaplacian.

I Q = (qij) and qij ≤ 0 for all i 6= j

I Graph estimation: Max. Likelihood under aGMRF model.

Use block coordinate descent to solve

minQ is GL

− log det(Q) + tr(QS),

with S = 1N

XXT .

Page 19: Graph Signal Processing (GSP) - CCIcci.usc.edu/wp-content/uploads/2017/06/Mini-GSP-Overview...\Signal Processing on Graphs: Extending High-Dimensional Data Analysis to Networks and

Experiment: Texture graphWe consider wood textures from Brodatz dataset, with 0 and with 60 degreerotation. For each texture of Brodatz dataset, take 8× 8 blocks, compute theircovariance matrix S and solve GL estimation rho = 0.

2.7539e−05 1

wood060

0.053489 1

Texture graphs using our GL estimation (only off diagonal elements of Q). The graphshave |E | = 130 and |E | = 117 edges respectively

.

Page 20: Graph Signal Processing (GSP) - CCIcci.usc.edu/wp-content/uploads/2017/06/Mini-GSP-Overview...\Signal Processing on Graphs: Extending High-Dimensional Data Analysis to Networks and

Outline

Graphs Everywhere

GSP basics

Contributions

Discussion

Page 21: Graph Signal Processing (GSP) - CCIcci.usc.edu/wp-content/uploads/2017/06/Mini-GSP-Overview...\Signal Processing on Graphs: Extending High-Dimensional Data Analysis to Networks and

Discussion

I Research Question (Twitter Edition):

I GSP 4 CPS + IOT @USC-CCI ?

I Systems are large and irregular in space/time

I Sampling and interpolation (sensors)I Variable topology communication networksI Data reduction to reduce complexity; multiresolution representationsI Control and optimization of large scale systems

Page 22: Graph Signal Processing (GSP) - CCIcci.usc.edu/wp-content/uploads/2017/06/Mini-GSP-Overview...\Signal Processing on Graphs: Extending High-Dimensional Data Analysis to Networks and

Discussion

I Research Question (Twitter Edition):

I GSP 4 CPS + IOT @USC-CCI ?

I Systems are large and irregular in space/time

I Sampling and interpolation (sensors)I Variable topology communication networksI Data reduction to reduce complexity; multiresolution representationsI Control and optimization of large scale systems

Page 23: Graph Signal Processing (GSP) - CCIcci.usc.edu/wp-content/uploads/2017/06/Mini-GSP-Overview...\Signal Processing on Graphs: Extending High-Dimensional Data Analysis to Networks and

Discussion

I Research Question (Twitter Edition):

I GSP 4 CPS + IOT @USC-CCI ?

I Systems are large and irregular in space/time

I Sampling and interpolation (sensors)

I Variable topology communication networksI Data reduction to reduce complexity; multiresolution representationsI Control and optimization of large scale systems

Page 24: Graph Signal Processing (GSP) - CCIcci.usc.edu/wp-content/uploads/2017/06/Mini-GSP-Overview...\Signal Processing on Graphs: Extending High-Dimensional Data Analysis to Networks and

Discussion

I Research Question (Twitter Edition):

I GSP 4 CPS + IOT @USC-CCI ?

I Systems are large and irregular in space/time

I Sampling and interpolation (sensors)I Variable topology communication networks

I Data reduction to reduce complexity; multiresolution representationsI Control and optimization of large scale systems

Page 25: Graph Signal Processing (GSP) - CCIcci.usc.edu/wp-content/uploads/2017/06/Mini-GSP-Overview...\Signal Processing on Graphs: Extending High-Dimensional Data Analysis to Networks and

Discussion

I Research Question (Twitter Edition):

I GSP 4 CPS + IOT @USC-CCI ?

I Systems are large and irregular in space/time

I Sampling and interpolation (sensors)I Variable topology communication networksI Data reduction to reduce complexity; multiresolution representations

I Control and optimization of large scale systems

Page 26: Graph Signal Processing (GSP) - CCIcci.usc.edu/wp-content/uploads/2017/06/Mini-GSP-Overview...\Signal Processing on Graphs: Extending High-Dimensional Data Analysis to Networks and

Discussion

I Research Question (Twitter Edition):

I GSP 4 CPS + IOT @USC-CCI ?

I Systems are large and irregular in space/time

I Sampling and interpolation (sensors)I Variable topology communication networksI Data reduction to reduce complexity; multiresolution representationsI Control and optimization of large scale systems

Page 27: Graph Signal Processing (GSP) - CCIcci.usc.edu/wp-content/uploads/2017/06/Mini-GSP-Overview...\Signal Processing on Graphs: Extending High-Dimensional Data Analysis to Networks and

References I

D. Shuman, S. K. Narang, P. Frossard, A. Ortega, P. Vandergheynst,

“Signal Processing on Graphs: Extending High-Dimensional Data Analysis to Networks and Other Irregular Data Domains”Signal Processing Magazine, May 2013

A. Sandryhaila and J. Moura,

“Discrete Signal Processing on Graphs”IEEE Transactions on Signal Processing, 2013