random graph models with fixed degree sequences: choices...

70
Random graph models with fixed degree sequences: choices, consequences and irreducibilty proofs for sampling Joel Nishimura 1 , Bailey K Fosdick 2 , Daniel B Larremore 3 and Johan Ugander 4 1 Arizona State Univ. 2 Colorado State 3 Univ. of Colorado 4 Stanford Univ. ASU Discrete Math Seminar 2018

Upload: others

Post on 21-May-2020

3 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Random graph models with fixed degree sequences: choices ...andrzej/seminar/DiscreteMath2018_vInter.pdf · 1. Merge two cycles into a larger cycle (or do the reverse). 2. Swap two

Random graph models with fixed degree sequences:

choices, consequences and irreducibilty proofs for

sampling

Joel Nishimura1, Bailey K Fosdick2, Daniel B Larremore3 and Johan Ugander4

1Arizona State Univ. 2Colorado State 3Univ. of Colorado 4Stanford Univ.

ASU Discrete Math Seminar 2018

Page 2: Random graph models with fixed degree sequences: choices ...andrzej/seminar/DiscreteMath2018_vInter.pdf · 1. Merge two cycles into a larger cycle (or do the reverse). 2. Swap two

See paper for the numerous literature connections

Page 3: Random graph models with fixed degree sequences: choices ...andrzej/seminar/DiscreteMath2018_vInter.pdf · 1. Merge two cycles into a larger cycle (or do the reverse). 2. Swap two

What is notable about a graph?

Page 4: Random graph models with fixed degree sequences: choices ...andrzej/seminar/DiscreteMath2018_vInter.pdf · 1. Merge two cycles into a larger cycle (or do the reverse). 2. Swap two

Interpretation requires a Null Model

karate club

Page 5: Random graph models with fixed degree sequences: choices ...andrzej/seminar/DiscreteMath2018_vInter.pdf · 1. Merge two cycles into a larger cycle (or do the reverse). 2. Swap two

Interpretation requires a Null Model

model

err

or

implementation difficulty and/or required understanding

replicated experiments

Erdős–Rényi

application specific simulation

fixed degree sequence

Page 6: Random graph models with fixed degree sequences: choices ...andrzej/seminar/DiscreteMath2018_vInter.pdf · 1. Merge two cycles into a larger cycle (or do the reverse). 2. Swap two

Stub Matching

edges to

stubs

join 2

stubs

drop stub

labels

Stub-labeledVertex-labeled

Page 7: Random graph models with fixed degree sequences: choices ...andrzej/seminar/DiscreteMath2018_vInter.pdf · 1. Merge two cycles into a larger cycle (or do the reverse). 2. Swap two

Self-loops

edges to

stubs

join 2

stubs

drop stub

labels

Page 8: Random graph models with fixed degree sequences: choices ...andrzej/seminar/DiscreteMath2018_vInter.pdf · 1. Merge two cycles into a larger cycle (or do the reverse). 2. Swap two

Self-loops and Multiedges

• Self-loops and multiedges are asymptotically rare

(for reasonable degree sequences)

• Have been frequently been ignored, or simply deleted

• BUT – they can also have large impacts on finite sized null models

• AND – in null models which allow self-loops or multiedges, stub matching does not sample adjacency matrices uniformly at random

Page 9: Random graph models with fixed degree sequences: choices ...andrzej/seminar/DiscreteMath2018_vInter.pdf · 1. Merge two cycles into a larger cycle (or do the reverse). 2. Swap two

Interpretation requires a Null Model

model

err

or

implementation difficulty and/or required understanding

replicated experiments

Erdős–Rényi

application specific simulation

fixed degree sequence

??

?

Page 10: Random graph models with fixed degree sequences: choices ...andrzej/seminar/DiscreteMath2018_vInter.pdf · 1. Merge two cycles into a larger cycle (or do the reverse). 2. Swap two

multiedges self-loops

vertex-

labeled

simple

stub-

labeled

Stub labeled graphs are biased

against multiedges and self-loops

Page 11: Random graph models with fixed degree sequences: choices ...andrzej/seminar/DiscreteMath2018_vInter.pdf · 1. Merge two cycles into a larger cycle (or do the reverse). 2. Swap two

Consider “1,2,2,1”Uniformly samples

from d and e are the

same

Uniform samples are

different

Page 12: Random graph models with fixed degree sequences: choices ...andrzej/seminar/DiscreteMath2018_vInter.pdf · 1. Merge two cycles into a larger cycle (or do the reverse). 2. Swap two

There’s a choice of graphs – and it matters

Page 13: Random graph models with fixed degree sequences: choices ...andrzej/seminar/DiscreteMath2018_vInter.pdf · 1. Merge two cycles into a larger cycle (or do the reverse). 2. Swap two

Example 1

• Geometer’s collaboration graph n=9,072m=22,577

• Nodes: computational geometry researchers.

• Edges: collaboration on a book or paper

• Degree assortativity

• Do high productivity authors coauthor with other high productivity authors?

Page 14: Random graph models with fixed degree sequences: choices ...andrzej/seminar/DiscreteMath2018_vInter.pdf · 1. Merge two cycles into a larger cycle (or do the reverse). 2. Swap two
Page 15: Random graph models with fixed degree sequences: choices ...andrzej/seminar/DiscreteMath2018_vInter.pdf · 1. Merge two cycles into a larger cycle (or do the reverse). 2. Swap two

Multiedges, self-loops, and labeling?

Page 16: Random graph models with fixed degree sequences: choices ...andrzej/seminar/DiscreteMath2018_vInter.pdf · 1. Merge two cycles into a larger cycle (or do the reverse). 2. Swap two

Stub-labeling isn’t causal

• Node iStub 1: first paper

Stub 2: second paper

• Node iStub 1: first paper

Stub 2: second paper

• Node jStub 1: first paper

Stub 2: second paper

• Node jStub 1: first paper

Stub 2: second paper

Consider a collaboration network, and two potential stub

labelings:

Page 17: Random graph models with fixed degree sequences: choices ...andrzej/seminar/DiscreteMath2018_vInter.pdf · 1. Merge two cycles into a larger cycle (or do the reverse). 2. Swap two

Vertex-Labeling is Causal

• Consider a collaboration network:

• Nodes: authors

• Edges: papers/books with unique title

• Suppose you order each edge’s arrival

• Each vertex labeled graph has m! edge orderings

• i.e. all adjacency matrices correspond to the same number of timelines where papers were produced in different orders.

Page 18: Random graph models with fixed degree sequences: choices ...andrzej/seminar/DiscreteMath2018_vInter.pdf · 1. Merge two cycles into a larger cycle (or do the reverse). 2. Swap two

Example 2

• Swallow graph n=17

• Nodes: barn swallows.

• Edges: bird-bird interactions

• Trait assortativity (based on bird color)

• Do birds of a similar color interact together?

Page 19: Random graph models with fixed degree sequences: choices ...andrzej/seminar/DiscreteMath2018_vInter.pdf · 1. Merge two cycles into a larger cycle (or do the reverse). 2. Swap two
Page 20: Random graph models with fixed degree sequences: choices ...andrzej/seminar/DiscreteMath2018_vInter.pdf · 1. Merge two cycles into a larger cycle (or do the reverse). 2. Swap two

Example 3• South Indian village social support network n=782

• Nodes: villagers Edges: reported social support

• Community detection via modularity maximization

• Modularity has a built in stub-labeled Chung-Lu null model

• Do results change if we use vertex labeled model?

Chung Lu

estimation

# of edges

observed in

configuratio

n models

Page 21: Random graph models with fixed degree sequences: choices ...andrzej/seminar/DiscreteMath2018_vInter.pdf · 1. Merge two cycles into a larger cycle (or do the reverse). 2. Swap two
Page 22: Random graph models with fixed degree sequences: choices ...andrzej/seminar/DiscreteMath2018_vInter.pdf · 1. Merge two cycles into a larger cycle (or do the reverse). 2. Swap two

Sampling graphs uniformly at random…

… is surprisingly difficult (except pseudo-graphs)

Page 23: Random graph models with fixed degree sequences: choices ...andrzej/seminar/DiscreteMath2018_vInter.pdf · 1. Merge two cycles into a larger cycle (or do the reverse). 2. Swap two

Sampling graphs uniformly at random

Page 24: Random graph models with fixed degree sequences: choices ...andrzej/seminar/DiscreteMath2018_vInter.pdf · 1. Merge two cycles into a larger cycle (or do the reverse). 2. Swap two

Sampling via Markov chain Monte Carlo

G0 G1 G2 G3 G4 G5

Goal: A sequence of degree constrained graphs such that subsampling

from this sequence approximates a set of graphs drawn uniformly at

random.

Page 25: Random graph models with fixed degree sequences: choices ...andrzej/seminar/DiscreteMath2018_vInter.pdf · 1. Merge two cycles into a larger cycle (or do the reverse). 2. Swap two

Double EdgeSwaps

Page 26: Random graph models with fixed degree sequences: choices ...andrzej/seminar/DiscreteMath2018_vInter.pdf · 1. Merge two cycles into a larger cycle (or do the reverse). 2. Swap two

, the Graph of Graphs

Page 27: Random graph models with fixed degree sequences: choices ...andrzej/seminar/DiscreteMath2018_vInter.pdf · 1. Merge two cycles into a larger cycle (or do the reverse). 2. Swap two

, the Graph of Graphs

Page 28: Random graph models with fixed degree sequences: choices ...andrzej/seminar/DiscreteMath2018_vInter.pdf · 1. Merge two cycles into a larger cycle (or do the reverse). 2. Swap two

Dealing with Constraints

Page 29: Random graph models with fixed degree sequences: choices ...andrzej/seminar/DiscreteMath2018_vInter.pdf · 1. Merge two cycles into a larger cycle (or do the reverse). 2. Swap two

Dealing with Constraints

no self-loops

Page 30: Random graph models with fixed degree sequences: choices ...andrzej/seminar/DiscreteMath2018_vInter.pdf · 1. Merge two cycles into a larger cycle (or do the reverse). 2. Swap two

Dealing with Constraints

Page 31: Random graph models with fixed degree sequences: choices ...andrzej/seminar/DiscreteMath2018_vInter.pdf · 1. Merge two cycles into a larger cycle (or do the reverse). 2. Swap two

MCMC requirements

1. Random walks can reach any graph -Irreducibility/GOG connected

2. Balanced transition probabilities-P(𝐺𝑖 → 𝐺𝑗) = P(𝐺𝑗 → 𝐺𝑖)-i.e. edges will be weighted but undirected

3. Markov chain is aperiodic -otherwise subsampling can be biased

NOTE: There are mixing time results for some degree sequences. There are also numerical methods to gauge convergence. I will not discuss either.

Page 32: Random graph models with fixed degree sequences: choices ...andrzej/seminar/DiscreteMath2018_vInter.pdf · 1. Merge two cycles into a larger cycle (or do the reverse). 2. Swap two

Is the GoG periodic? Nope!

Or

Page 33: Random graph models with fixed degree sequences: choices ...andrzej/seminar/DiscreteMath2018_vInter.pdf · 1. Merge two cycles into a larger cycle (or do the reverse). 2. Swap two

Stub-labeled

GoG

Vertex-labeled

GoG

GoG is an

undirected

simple graph

GoG is a directed

pseudograph

Are transition probabilities balanced?

Page 34: Random graph models with fixed degree sequences: choices ...andrzej/seminar/DiscreteMath2018_vInter.pdf · 1. Merge two cycles into a larger cycle (or do the reverse). 2. Swap two

Stub-labeled

GoG

Vertex-labeled

GoG

GoG is an

undirected

simple graph

Page 35: Random graph models with fixed degree sequences: choices ...andrzej/seminar/DiscreteMath2018_vInter.pdf · 1. Merge two cycles into a larger cycle (or do the reverse). 2. Swap two

Is the GoG connected?• Most difficult of the 3 questions

• Need special proof for each of choice of self-loops/multiedges

• Stub labeled GoG connectivity iff vertex labeled GoG Connectivity,

because the following swap permutes stubs:

Page 36: Random graph models with fixed degree sequences: choices ...andrzej/seminar/DiscreteMath2018_vInter.pdf · 1. Merge two cycles into a larger cycle (or do the reverse). 2. Swap two

Connectivity of Graph of Pseudographs

start target diff

# of stubs per node

# gold = # maroon

Page 37: Random graph models with fixed degree sequences: choices ...andrzej/seminar/DiscreteMath2018_vInter.pdf · 1. Merge two cycles into a larger cycle (or do the reverse). 2. Swap two

Connectivity of Graph of Pseudographs

can always find a graph one edge closer to target

swap

start target

Page 38: Random graph models with fixed degree sequences: choices ...andrzej/seminar/DiscreteMath2018_vInter.pdf · 1. Merge two cycles into a larger cycle (or do the reverse). 2. Swap two

Connectivity on other GoGs?

Page 39: Random graph models with fixed degree sequences: choices ...andrzej/seminar/DiscreteMath2018_vInter.pdf · 1. Merge two cycles into a larger cycle (or do the reverse). 2. Swap two

Disconnectivity of loopy graphs

Consider graphs with self-loops but no multiedges

There are no swaps between these graphs

Two directions for generalizations: cycles and cliques

Page 40: Random graph models with fixed degree sequences: choices ...andrzej/seminar/DiscreteMath2018_vInter.pdf · 1. Merge two cycles into a larger cycle (or do the reverse). 2. Swap two
Page 41: Random graph models with fixed degree sequences: choices ...andrzej/seminar/DiscreteMath2018_vInter.pdf · 1. Merge two cycles into a larger cycle (or do the reverse). 2. Swap two

Degree sequence: “2,2,…,2}Swaps can:

1. Merge two cycles into a larger cycle (or do the reverse).

2. Swap two edges inside a cycles, preserving cycle length

3. Make a self-loop & reduce cycle length by 1 (or do the reverse), but only for cycles of length 4 or more.

Swaps cannot make every edge a self-loop

This can be further generalized

Page 42: Random graph models with fixed degree sequences: choices ...andrzej/seminar/DiscreteMath2018_vInter.pdf · 1. Merge two cycles into a larger cycle (or do the reverse). 2. Swap two

3) Vk are vertices

k distance from a

vertex in V0

1) Let V0 be

vertices without a

self-loop

2) Vertices in V1

have a neighbor in V0

A taxonomy of V

Page 43: Random graph models with fixed degree sequences: choices ...andrzej/seminar/DiscreteMath2018_vInter.pdf · 1. Merge two cycles into a larger cycle (or do the reverse). 2. Swap two

Let Vk be

vertices k hops

from a vertex

without a

selfloop

Page 44: Random graph models with fixed degree sequences: choices ...andrzej/seminar/DiscreteMath2018_vInter.pdf · 1. Merge two cycles into a larger cycle (or do the reverse). 2. Swap two
Page 45: Random graph models with fixed degree sequences: choices ...andrzej/seminar/DiscreteMath2018_vInter.pdf · 1. Merge two cycles into a larger cycle (or do the reverse). 2. Swap two

Deg seq: “n+1,…n+1,n-1,…,n-1”

No swaps are possible

Page 46: Random graph models with fixed degree sequences: choices ...andrzej/seminar/DiscreteMath2018_vInter.pdf · 1. Merge two cycles into a larger cycle (or do the reverse). 2. Swap two
Page 47: Random graph models with fixed degree sequences: choices ...andrzej/seminar/DiscreteMath2018_vInter.pdf · 1. Merge two cycles into a larger cycle (or do the reverse). 2. Swap two
Page 48: Random graph models with fixed degree sequences: choices ...andrzej/seminar/DiscreteMath2018_vInter.pdf · 1. Merge two cycles into a larger cycle (or do the reverse). 2. Swap two

Q1 and Q2 are exactly the problems

Page 49: Random graph models with fixed degree sequences: choices ...andrzej/seminar/DiscreteMath2018_vInter.pdf · 1. Merge two cycles into a larger cycle (or do the reverse). 2. Swap two

Proof of 4.20 outline

increasing

number of

self-loops

connected components

graphs with a fixed

degree sequence

Page 50: Random graph models with fixed degree sequences: choices ...andrzej/seminar/DiscreteMath2018_vInter.pdf · 1. Merge two cycles into a larger cycle (or do the reverse). 2. Swap two

increasing

number of

self-loops

connected components

graphs with most self-loops

in ‘yellow’ ‘m*-loopy’

graphs: graphs with

the most self-loops

Page 51: Random graph models with fixed degree sequences: choices ...andrzej/seminar/DiscreteMath2018_vInter.pdf · 1. Merge two cycles into a larger cycle (or do the reverse). 2. Swap two

increasing

number of

self-loops

connected components

graphs with most self-loops

in ‘yellow’ ‘m*-loopy’

graphs: graphs with

the most self-loops

Note: connectivity of

follows from connectivity

of simple graphs and an

exchange lemma.

Page 52: Random graph models with fixed degree sequences: choices ...andrzej/seminar/DiscreteMath2018_vInter.pdf · 1. Merge two cycles into a larger cycle (or do the reverse). 2. Swap two

increasing

number of

self-loops

connected components

graphs with most self-loops

in ‘yellow’ ‘m*-loopy’

graphs: graphs with

the most self-loops

The GoG is disconnected

iff there is some

component where:

U

Page 53: Random graph models with fixed degree sequences: choices ...andrzej/seminar/DiscreteMath2018_vInter.pdf · 1. Merge two cycles into a larger cycle (or do the reverse). 2. Swap two

Zooming into

Page 54: Random graph models with fixed degree sequences: choices ...andrzej/seminar/DiscreteMath2018_vInter.pdf · 1. Merge two cycles into a larger cycle (or do the reverse). 2. Swap two

Easy case:

Harder case:

Page 55: Random graph models with fixed degree sequences: choices ...andrzej/seminar/DiscreteMath2018_vInter.pdf · 1. Merge two cycles into a larger cycle (or do the reverse). 2. Swap two

What do we know about ?

Maximum number of self-loops

implies no open wedges in V0.

No sequence of swaps can net

create open wedges in V0.

&

Page 56: Random graph models with fixed degree sequences: choices ...andrzej/seminar/DiscreteMath2018_vInter.pdf · 1. Merge two cycles into a larger cycle (or do the reverse). 2. Swap two

Example: V4 is empty in any

Open Wedge

Page 57: Random graph models with fixed degree sequences: choices ...andrzej/seminar/DiscreteMath2018_vInter.pdf · 1. Merge two cycles into a larger cycle (or do the reverse). 2. Swap two
Page 58: Random graph models with fixed degree sequences: choices ...andrzej/seminar/DiscreteMath2018_vInter.pdf · 1. Merge two cycles into a larger cycle (or do the reverse). 2. Swap two

Q2

Q1

Page 59: Random graph models with fixed degree sequences: choices ...andrzej/seminar/DiscreteMath2018_vInter.pdf · 1. Merge two cycles into a larger cycle (or do the reverse). 2. Swap two

is m*-loopy

Decreasing any degree in K0

leaves Vu1 with excess degree.

Page 60: Random graph models with fixed degree sequences: choices ...andrzej/seminar/DiscreteMath2018_vInter.pdf · 1. Merge two cycles into a larger cycle (or do the reverse). 2. Swap two

is also m*-loopy

By an alternating cycle/path argument.

Thus

Q: Can a different swap connect loopy-graphs?

Page 61: Random graph models with fixed degree sequences: choices ...andrzej/seminar/DiscreteMath2018_vInter.pdf · 1. Merge two cycles into a larger cycle (or do the reverse). 2. Swap two

Triangle swaps connect the GoG

Page 62: Random graph models with fixed degree sequences: choices ...andrzej/seminar/DiscreteMath2018_vInter.pdf · 1. Merge two cycles into a larger cycle (or do the reverse). 2. Swap two

Bonus: other constraints

• Connected Graphs

• GoG known to be connected, but algorithms require complicated data-structures to track effect of edge changes.

• Graphs with the same clustering coefficients

• Or, triangle constraints

Page 63: Random graph models with fixed degree sequences: choices ...andrzej/seminar/DiscreteMath2018_vInter.pdf · 1. Merge two cycles into a larger cycle (or do the reverse). 2. Swap two

Triangle MCMC constraints

• Total number of triangles

• Number of triangles incident at each node

Do these affect connectedness in simple graphs?

Page 64: Random graph models with fixed degree sequences: choices ...andrzej/seminar/DiscreteMath2018_vInter.pdf · 1. Merge two cycles into a larger cycle (or do the reverse). 2. Swap two

Can we constrain number of triangles

Page 65: Random graph models with fixed degree sequences: choices ...andrzej/seminar/DiscreteMath2018_vInter.pdf · 1. Merge two cycles into a larger cycle (or do the reverse). 2. Swap two

How about triangle sequence

Page 66: Random graph models with fixed degree sequences: choices ...andrzej/seminar/DiscreteMath2018_vInter.pdf · 1. Merge two cycles into a larger cycle (or do the reverse). 2. Swap two

And more!

Page 67: Random graph models with fixed degree sequences: choices ...andrzej/seminar/DiscreteMath2018_vInter.pdf · 1. Merge two cycles into a larger cycle (or do the reverse). 2. Swap two

Thanks for listening!

Page 68: Random graph models with fixed degree sequences: choices ...andrzej/seminar/DiscreteMath2018_vInter.pdf · 1. Merge two cycles into a larger cycle (or do the reverse). 2. Swap two
Page 69: Random graph models with fixed degree sequences: choices ...andrzej/seminar/DiscreteMath2018_vInter.pdf · 1. Merge two cycles into a larger cycle (or do the reverse). 2. Swap two
Page 70: Random graph models with fixed degree sequences: choices ...andrzej/seminar/DiscreteMath2018_vInter.pdf · 1. Merge two cycles into a larger cycle (or do the reverse). 2. Swap two