19
Generating networks with arbitrary properties

Generating Networks with Arbitrary Properties

Embed Size (px)

Citation preview

Page 1: Generating Networks with Arbitrary Properties

Generating networks with arbitrary properties

Page 2: Generating Networks with Arbitrary Properties

Jérôme Kunegis Generating Networks with Arbitrary Properties 2

Social Interaction

“You’re my friend”

Page 3: Generating Networks with Arbitrary Properties

Jérôme Kunegis Generating Networks with Arbitrary Properties 3

Many Social Interactions

“You’re my friend”“You’re m

y friend”

“You’re my friend”“You’re my friend”

“You’re

my f

riend”“You’re m

y friend”

“You’re my friend”

Page 4: Generating Networks with Arbitrary Properties

Jérôme Kunegis Generating Networks with Arbitrary Properties 4

Abstract: It's a Network

Page 5: Generating Networks with Arbitrary Properties

Jérôme Kunegis Generating Networks with Arbitrary Properties 5

Problem: Generate Realistic Graphs

Why generate graphs?

● To visualize an existing network: generate a smaller graph with same properties as a large real (note: sampling a subset will skew the properties)

● For testing algorithms: Generate a larger network then those currently known

Page 6: Generating Networks with Arbitrary Properties

Jérôme Kunegis Generating Networks with Arbitrary Properties 6

Basic Idea for Generating Networks: Random Graphs

Each edge has probability p of existing

Paul Erdős

Page 7: Generating Networks with Arbitrary Properties

Jérôme Kunegis Generating Networks with Arbitrary Properties 7

Random Graphs Are Not Realistic

Random graph

Real network

Page 8: Generating Networks with Arbitrary Properties

Jérôme Kunegis Generating Networks with Arbitrary Properties 8

Real Networks Have Special Properties

Many triangles (“clustering”)

Many 2-stars(“preferential attachment”)

● Short paths (“small world”)● Assortativity● Power-law-like degree distributions● Connectivity● Reciprocity● Global structure● Subgraph patterns● etc., etc., etc., etc., etc.

Page 9: Generating Networks with Arbitrary Properties

Jérôme Kunegis Generating Networks with Arbitrary Properties 9

Solution: Exponential Random Graph Models

Example with three statistics:

P(G) = exp( a1 m + a2 t + a3 s + b )

m, t, s: Properties of Gm = Number of edges; t = Number of triangles; s = Number of 2-stars

a1, a2, a3, b: Parameters of the model

Page 10: Generating Networks with Arbitrary Properties

Jérôme Kunegis Generating Networks with Arbitrary Properties 10

Problems of Exponential Random Graph Models

P(G) = exp( a1 x1 + a2 x2 + … + ak xk + b )

Many exponential random graph models are degenerate: They contain mostly almost-empty or almost-full graphs

But on average, they produce the correct statistics!

Page 11: Generating Networks with Arbitrary Properties

Jérôme Kunegis Generating Networks with Arbitrary Properties 11

Explanation of Degeneracy

Consider a variable x between 0 and 1 with expected value 0.3.

An exponential random model for it is given by:

P(x) = exp( ax + b )

We getMode[x] = 0 !!

x

P(x)

0 10.30

Page 12: Generating Networks with Arbitrary Properties

Jérôme Kunegis Generating Networks with Arbitrary Properties 12

Idea

Require not that E[x] = c, but that x follow a normal distribution

x

P(x)

0 10.30

P(G) = Pnorm (x1, x2, …; μ1, μ2, …, σ1, σ2, …)

Page 13: Generating Networks with Arbitrary Properties

Jérôme Kunegis Generating Networks with Arbitrary Properties 13

Real Networks Have a Distribution of Values Anyway

P(G) = Pnorm (x1, x2, …)

Data from konect.uni-koblenz.de

Page 14: Generating Networks with Arbitrary Properties

Jérôme Kunegis Generating Networks with Arbitrary Properties 14

Monte Carlo Markov Chain Methods

x1

x2

Wanted distribution

Random graphs

×

×

×

×

×

×

×

×

×

×××

×

×

×

×

Sampling will be bias towards the distribution of random graphs

P = high

P = low

+

+ Current graphs× Possible next steps

Page 15: Generating Networks with Arbitrary Properties

Jérôme Kunegis Generating Networks with Arbitrary Properties 15

Solution: Integral of Measure of Voronoi Cells

x1

x2

Wanted distribution

Random graphs

×

×

×

×

×

×

×

×

×

×××

×

×

×

×

Page 16: Generating Networks with Arbitrary Properties

Jérôme Kunegis Generating Networks with Arbitrary Properties 16

How To Compute The Integral over Voronoi Cells

Answer: We don't have to.

Sampling strategy:

● Sample point in statistic-space according to our wanted distribution● Find nearest possible network (i.e., nearest “×”)

Claim: This distribution at each step is similar to the underlying measure, giving an unbiased sampling.

Page 17: Generating Networks with Arbitrary Properties

Jérôme Kunegis Generating Networks with Arbitrary Properties 17

Result: Close, But Not Exact

Page 18: Generating Networks with Arbitrary Properties

Jérôme Kunegis Generating Networks with Arbitrary Properties 18

Convergence Speed (σ = 3)

Edge count

2-star count

Triangle count

Page 19: Generating Networks with Arbitrary Properties

Jérôme Kunegis Generating Networks with Arbitrary Properties 19

Example: Generate Network with Same Properties as Zachary's Karate Club