Modeling and Measuring Graph Similarity: The Case for Centrality 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 Centralities
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 vertex v ∈ V (G) and returns a positive value C(G, v).
Degree cd (G, i) = degree(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 component-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