<<

Modeling and Measuring Graph Similarity: The Case for Distance

Theoretical and Computational Fluid Dynamics Laboratory  Blair Perot

Matthieu Roy1, Stefan Schmid2, Gilles Tredan1

1− Laboratory for Analysis and Architecture of Systems 2− TU-Berlin/Deutsche Telekom

Matthieu Roy, Stefan Schmid, Gilles Tredan Centrality Distance Dynamic Graphs

Everywhere Huge We can't measure them easily

Distance =Root of Dynamism Characterisation Interpolation Extrapolation Coordinate System,....

Which distances for graphs ?

Matthieu Roy, Stefan Schmid, Gilles Tredan Centrality Distance Model

Named Graphs: AliceEveBob ! = AliceBobEve Undirected graphs (should be ok for directed ones) G All nodes present at t = 0 G0 1 "Dynamicity": stream of edge G additions/deletions: 2 G0 = (V , E0), G1 = (V , E1),...

Matthieu Roy, Stefan Schmid, Gilles Tredan Centrality Distance Graph Edit Distance

Graph Edit Distance = dGED Only known proper graph distance

dGED (A, B) = number of graph edit operations from A to B Named graphs ⇔ Cheap Too "blunt"

l

l

Matthieu Roy, Stefan Schmid, Gilles Tredan Centrality Distance

Borgatti,Everett (2006): "the only thing people agree about a centrality is that it isa node-level measure". Loved by SNAnalysts

Denition (Centrality) Camille Jordan + A centrality C is a function C :(G, v) → R that takes a graph G = (V , E) and a v ∈ V (G) and returns a positive value C(G, v).

Degree cd (G, i) = (i) Closeness c G i P d i j c ( , ) = j6=i G ( , ) P Betweenness cc (G, i) = j i k i δi sp j k 6= , 6= ∈ ( , ) "Graph betweenness" - Claudio Rocchini

Matthieu Roy, Stefan Schmid, Gilles Tredan Centrality Distance What About Other Distances ?

Imagine a graph distance d 2 + : G → R G 1 d(G ,G ) 1 2 I can construct you a centrality out of G 2 d it ! cd (G, v) = d(G, G − {i})

G G d(G ,G ) C(G,i) i G-{i} 1 2

Very intriguing: dGED (G, G − {i}) = degreeG (i)

Matthieu Roy, Stefan Schmid, Gilles Tredan Centrality Distance A Connection Between Both Concepts ?

We have many centralities, few distances. Can we construct the other way round ? Yes!

Denition (Centrality Distance)

Given a centrality C, we dene the centrality distance dC (G1, G2) between two neighboring graphs as the -wise dierence: X ∀(G1, G2) ∈ E(G), dC (G1, G2) = |C(G1, v) − C(G2, v)|. v∈V

Natural extension for non-neighboring graph couples: dC (G1, G2) = graph-induced distance on the valued graph G.

Matthieu Roy, Stefan Schmid, Gilles Tredan Centrality Distance 6.3

2.6 8.4

1.2

Matthieu Roy, Stefan Schmid, Gilles Tredan Centrality Distance G0 G1

G2

Matthieu Roy, Stefan Schmid, Gilles Tredan Centrality Distance G0 G1 8.4 1.0

6.3 2.6 3.1 G2 1.2 4.6

Matthieu Roy, Stefan Schmid, Gilles Tredan Centrality Distance G0 G1 8.4 1.0

6.3 2.6 3.1 1.0 G2 1.2

1.7 4.6 0.8 1.5 0.3

Matthieu Roy, Stefan Schmid, Gilles Tredan Centrality Distance Connection Cont.

Denition (Sensitive Centrality) Centrality C is sensitive i

∀G ∈ G, ∀e ∈ E(G), ∃v ∈ V (G) s.t. C(G, v) 6= C(G \{e}, v),

dC is a distance i C is sensitive

Not all sensitive ! Ex: Excentricity Some centralities need adaptations Approximate (cheap) version:

X ∀(G1, G2), dfC (G1, G2) = |C(G1, v) − C2(G2, v)|. v∈V co-central graphs!

Matthieu Roy, Stefan Schmid, Gilles Tredan Centrality Distance Experiments

Matthieu Roy, Stefan Schmid, Gilles Tredan Centrality Distance Topology evolution

Dierentiate between paths using centrality-induced distances

These paths are equivalent wrt dGED Yet they wouldn't impact networks the same way.

Matthieu Roy, Stefan Schmid, Gilles Tredan Centrality Distance Topology evolution Cont.

Order: Dichotomic Incremental

0.3

0.2 BC

0.1

0.0 c

d 0.08

0.06

0.04 CC

0.02

0.00 0 10 20 30 Round

Matthieu Roy, Stefan Schmid, Gilles Tredan Centrality Distance Dynamic Topologies

2 Datasets Facebook like OSN Online messages exchange 4000 FB ≈ 20k users 2000 187 snapshots, 1 day 0 sampling 60 Souk mobility dataset 50 40 Souk Social contacts within Degree Distance 30 a crowd 20 45 individuals 0 100 200 300 300 snapshots, 3 sec. Round sampling

Matthieu Roy, Stefan Schmid, Gilles Tredan Centrality Distance Dynamic Topologies

Can we distinguish "natural" evolutions from articial ones ?

G Methodology i

GED=R For every two consecutive snapshots Gt , Gt+1 G Generate 200 random graphs Gs1 , ....Gs200 1 with d G G d G G GED ( t , t+1) = GED ( t , si ) CD=r Compare d G G with d G G C ( t , t+1) C ( t , si ) G2

Matthieu Roy, Stefan Schmid, Gilles Tredan Centrality Distance Dynamic Topologies/Results

1e+07

1e+05

1e+03 Betweennesss Distance

1e+01

0 25 50 75 100 Round

Matthieu Roy, Stefan Schmid, Gilles Tredan Centrality Distance Dynamic Topologies/Results

1000 Betweennesss Distance

100

0 100 200 300 Round

Matthieu Roy, Stefan Schmid, Gilles Tredan Centrality Distance Dynamic Topologies/Results

1e−01

1e−04 Closeness Distance

1e−07

0 25 50 75 100 Round

Matthieu Roy, Stefan Schmid, Gilles Tredan Centrality Distance Dynamic Topologies/Results

0.100

0.010 Closeness Distance

0.001

0 100 200 300 Round

Matthieu Roy, Stefan Schmid, Gilles Tredan Centrality Distance Dynamic Topologies/Results

10000

1000 100 Ego−Betweenness Distance Ego−Betweenness Distance 100

0 100 200 300 0 25 50 75 100 Round Round

Matthieu Roy, Stefan Schmid, Gilles Tredan Centrality Distance Conclusion

GED fails to capture interesting aspects of the dynamism Moreover, it is overly pessimistic We introduce centrality distances Basically captures the change of roles in the network For each role, a centrality, and therefore a distance

Matthieu Roy, Stefan Schmid, Gilles Tredan Centrality Distance Future Works

Many, interpolation, extrapolation, real link prediction Distances among dierent graphs Measurement errors Find algorithms that leverage on such stability properties Greedy routing & GoG exploration ?

Matthieu Roy, Stefan Schmid, Gilles Tredan Centrality Distance