Triggering patterns of topology changes in dynamic attributed graphs

  • View
    359

  • Download
    2

  • Category

    Science

Preview:

DESCRIPTION

To describe the dynamics taking place in networks that structurally change over time, we propose an approach to search for attributes whose value changes impact the topology of the graph. In several applications, it appears that the variations of a group of attributes are often followed by some structural changes in the graph that one may assume they generate. We formalize the triggering pattern discovery problem as a method jointly rooted in sequence mining and graph analysis. We apply our approach on three real-world dynamic graphs of different natures - a co-authoring network, an airline network, and a social bookmarking system - assessing the relevancy of the triggering pattern mining approach.

Citation preview

Triggering Patterns of Topology Changesin Dynamic Graphs

M. Kaytoue, Y. Pitarch, M. Plantevit, C. Robardet

The 2014 IEEE/ACM International Conference on Advances in Social NetworksAnalysis and Mining (ASONAM)

Beijing, China, August 17-20, 2014

LABORATOIRE D’INFORMATIQUE EN IMAGE ET SYSTÈMES D’INFORMATION

UMR 5205 CNRS / INSA de Lyon / Université Claude Bernard Lyon 1

Context & motivation

Networks structurally change over time:How to describe these dynamics?

a: 2 b: 0 c: 6

deg: 2

u5

u3

u4

u2a: 7 b: 4 c: 5

deg: 1

a: 2 b: 1 c: 6

deg: 2u1

u5

u3

u4

u2a: 7 b: 5 c: 2

deg: 1

a: 5 b: 4 c: 5

deg: 2u1

u5

u3

u4

u2a: 8 b: 5 c: 1

deg: 4

a: 5 b: 5 c: 5

deg: 2

u1

u5

u3

u4

u2a: 9 b: 6 c: 1

deg: 4

a: 6 b: 5 c: 2

deg: 2

u1

u5

u3

u4

u2a: 9 b: 6 c: 0

deg: 4

a: 7 b: 5 c: 1

deg: 4u1

u5

u3

u4

u2

1

a+ b+ c- deg +

a+ b+ c- deg+

u1

a: 4 b: 1 c: 5

deg: 1

2 3 4 5 6

IntuitionConsider attributed graphs evolving through timeThe variation of some attribute values (entities attributes) of anode can lead in several cases to a structural change(topological attributes)

M. Kaytoue, Y. Pitarch, M. Plantevit, C. Robardet Triggering Patterns in Dynamic Graphs 2

Context & motivation

a: 2 b: 0 c: 6

deg: 2

u5

u3

u4

u2a: 7 b: 4 c: 5

deg: 1

a: 2 b: 1 c: 6

deg: 2u1

u5

u3

u4

u2a: 7 b: 5 c: 2

deg: 1

a: 5 b: 4 c: 5

deg: 2u1

u5

u3

u4

u2a: 8 b: 5 c: 1

deg: 4

a: 5 b: 5 c: 5

deg: 2

u1

u5

u3

u4

u2a: 9 b: 6 c: 1

deg: 4

a: 6 b: 5 c: 2

deg: 2

u1

u5

u3

u4

u2a: 9 b: 6 c: 0

deg: 4

a: 7 b: 5 c: 1

deg: 4u1

u5

u3

u4

u2

1

a+ b+ c- deg +

a+ b+ c- deg+

u1

a: 4 b: 1 c: 5

deg: 1

2 3 4 5 6

A new pattern domain

a+ Updating his status more oftenb+ giving positive opinions about othersc− receiving less negative opinions from the others

deg+ is often followed by an increase of user’s popularity

〈{a+,b+},{c+},{deg+}〉 is a triggering pattern

A problem rooted in pattern mining and graph analysis

M. Kaytoue, Y. Pitarch, M. Plantevit, C. Robardet Triggering Patterns in Dynamic Graphs 3

Triggering patterns

Outline

1 Triggering patterns

2 Method and algorithm

3 Experiments

4 Conclusion

M. Kaytoue, Y. Pitarch, M. Plantevit, C. Robardet Triggering Patterns in Dynamic Graphs 4

Triggering patterns

Dynamic attributed graphs

Dynamic attributed graph

Let G = {G1, . . . ,Gt} be a sequence of t static attributed graphsGi = (V,Ei,F) with T = {1, . . . , t} the set of timestampsV the set of verticesEi the set of edges that connect vertices of V at time i ∈ T(Ei ⊆ V×V)F the set of numerical attributes that map each vertex-timepair to a real value: ∀f ∈ F, f : V×T→ R.

a: 2 b: 0 c: 6

deg: 2

u5

u3

u4

u2a: 7 b: 4 c: 5

deg: 1

a: 2 b: 1 c: 6

deg: 2u1

u5

u3

u4

u2a: 7 b: 5 c: 2

deg: 1

a: 5 b: 4 c: 5

deg: 2u1

u5

u3

u4

u2a: 8 b: 5 c: 1

deg: 4

a: 5 b: 5 c: 5

deg: 2

u1

u5

u3

u4

u2a: 9 b: 6 c: 1

deg: 4

a: 6 b: 5 c: 2

deg: 2

u1

u5

u3

u4

u2a: 9 b: 6 c: 0

deg: 4

a: 7 b: 5 c: 1

deg: 4u1

u5

u3

u4

u2

1

a+ b+ c- deg +

a+ b+ c- deg+

u1

a: 4 b: 1 c: 5

deg: 1

2 3 4 5 6

M. Kaytoue, Y. Pitarch, M. Plantevit, C. Robardet Triggering Patterns in Dynamic Graphs 5

Triggering patterns

Characterizing vertices behaviors

Vertex descriptive sequenceA discretization function gives a variation symbol to avertex/attribute/time triple, e.g.

discr(v,d, i) =

+ if d(v, i)−d(v, i−1)≥ 2 and i > 1− if d(v, i)−d(v, i−1)≤−2 and i > 1/0 otherwise

The set of all variations for a vertex v at time i is an itemsetvars(v, i) = {ddiscr(v,d,i),∀d ∈ D}.A vertex v is described by a sequenceδ (v) = 〈vars(v,1), . . . ,vars(v, t)〉.∆ = {δ (v) | v ∈ V} is the set of all sequences.

Example

δ (u1) = 〈{a+,b+},{c−},{deg+}〉∆ = {δ (u1),δ (u2),δ (u3),δ (u4),δ (u5)}

M. Kaytoue, Y. Pitarch, M. Plantevit, C. Robardet Triggering Patterns in Dynamic Graphs 6

Triggering patterns

Pattern domain

Triggering pattern

A triggering pattern is a sequence P = 〈L,R〉L is a sequence of sets of descriptor variations:L = 〈X1, . . . ,Xk〉 with ∀j≤ k, Xj ⊆ (D×S)

R a single topological variation, R ∈ (M×S)

Its support is SUPP(P,∆) = {v ∈ V | P� δ (v)}where p� q means that p is a super-sequence of q

Example

L = 〈{a+,b+},{c−}〉R = 〈{deg+}〉SUPP(〈L,R〉,∆) = {u1,u3}

M. Kaytoue, Y. Pitarch, M. Plantevit, C. Robardet Triggering Patterns in Dynamic Graphs 7

Triggering patterns

Assessing the strength of a pattern?

Triggering pattern growth rate

Let P = 〈L,R〉, we denote by ∆R ⊆ ∆ the set of vertex descriptivesequences that contain R. The growth rate of P is given by:

GR(P,∆R) =|SUPP(L,∆R)|

|∆R|× |∆\∆R||SUPP(L,∆\∆R)|

G. Dong and J. Li.Efficient mining of emerging patterns: Discovering trendsand differences.In KDD, pages 43–52, 1999.

M. Kaytoue, Y. Pitarch, M. Plantevit, C. Robardet Triggering Patterns in Dynamic Graphs 8

Triggering patterns

Assessing the diffusion potential of a pattern?

Coverage of a triggering pattern

Gaggr = (V,Eaggr) an aggregated graph of the dynamic graphThe coverage of a pattern P is defined by:

COV(P,∆,Gaggr)= SUPP(P,∆)∪{v∈V | ∃w∈ SUPP(P,∆)s.t.(w,v)∈Eaggr}

It naturally follows that SUPP(P,∆)⊆ COV(P,∆).

Example

ρ(P,∆) =COV(P,∆,Gaggr)

SUPP(P,∆)∈ [1, |V|]

To distinguish the patterns supported by a group of isolatedvertices (values close to 1) to the ones supported by veryconnected vertices (much higher values than 1).

M. Kaytoue, Y. Pitarch, M. Plantevit, C. Robardet Triggering Patterns in Dynamic Graphs 9

Triggering patterns

The problem

The triggering pattern mining problem

Givena dynamic attributed graph G

a minimum growth rate threshold minGR

a minimum coverage threshold minCov

the problem is to find all triggering patterns P = 〈L,R〉 with|COV(P,∆)| ≥ minCov

GR(P,∆R)≥ minGR.

M. Kaytoue, Y. Pitarch, M. Plantevit, C. Robardet Triggering Patterns in Dynamic Graphs 10

Method and algorithm

Outline

1 Triggering patterns

2 Method and algorithm

3 Experiments

4 Conclusion

M. Kaytoue, Y. Pitarch, M. Plantevit, C. Robardet Triggering Patterns in Dynamic Graphs 11

Method and algorithm

Methodology

Dynamic attributed graph↓ Choice of an appropriate discretization procedure↓ Transformation

Database of vertex descriptive sequences↓ Mining closed sequential patterns w.r.t. coverage↓ Build triggering pattern candidates

Triggering pattern candidates↓ Growth rate computation

Triggering patternsInterpretation & vizualisation

M. Kaytoue, Y. Pitarch, M. Plantevit, C. Robardet Triggering Patterns in Dynamic Graphs 12

Method and algorithm

TRIGAT

Algorithm TRIGATRequire: G = {(V,Ei,F)}, minGr, minCov, GaggrEnsure: P the set of closed triggering patterns

∆←{δ (v)|v ∈ V}I← all covering 1-item sequencesFilter ∆ with only covering 1-item sequencesfor all s ∈ I do

C←TRIGAT_enum(s,∆|s,Gaggr,minCov)end forEliminate non-closed sequences from CC← prefix closed patterns 〈s,Xk〉 ∈ C, s.t.Xk ∈ (M×S)for all P = 〈s,Xk〉 ∈ C do

Add P to P if GR(〈s,Xk〉,∆Xk)≥ minGr

end for

M. Kaytoue, Y. Pitarch, M. Plantevit, C. Robardet Triggering Patterns in Dynamic Graphs 13

Method and algorithm

TRIGAT

Procedure TRIGAT_ENUMRequire: s = 〈S1, . . . ,S`〉,∆|s,Gaggr, minCovEnsure: C the set of covering sequences of prefix s1: if not closed_based_prunnable(s) then2: insert s in C3: end if4: Scan ∆|s, find every covering item α ∈ (D×S) such that s can be

extended to 〈S1, . . . ,S`−1,{S`∪α}〉 or 〈S1, . . . ,S`,α〉5: for all valid α do6: s← 〈S1, . . . ,S`−1,{S`∪α}〉7: TRIGAT_enum(s,D|s,Gaggr,minCov)8: s← 〈S1, . . . ,S`,α〉9: TRIGAT_enum(s,D|s,Gaggr,minCov)

10: end for

M. Kaytoue, Y. Pitarch, M. Plantevit, C. Robardet Triggering Patterns in Dynamic Graphs 14

Experiments

Outline

1 Triggering patterns

2 Method and algorithm

3 Experiments

4 Conclusion

M. Kaytoue, Y. Pitarch, M. Plantevit, C. Robardet Triggering Patterns in Dynamic Graphs 15

Experiments

Quantitative experimentsRunning timesDistribution of support, GR, ...Scalability

First qualitative assessmentsSynchronous/asynchronous eventsDense/sparse yet covering

|V| |F| |T| |D | S I degsum densitysum

DBLP 2723 45 9 360 34.4 6.6 14.7 0.005RITA1 220 8 30 30 16.3 5.1 15.7 0.07RITA2 234 8 24 39 4.5 1.8 17 0.07RITA3 280 6 8 87 28.3 6.5 15.9 0.05

del.icio.us 1867 121 5 400 31 1.6 11 0.003

M. Kaytoue, Y. Pitarch, M. Plantevit, C. Robardet Triggering Patterns in Dynamic Graphs 16

Experiments

Quantitative results

M. Kaytoue, Y. Pitarch, M. Plantevit, C. Robardet Triggering Patterns in Dynamic Graphs 17

Experiments

The DBLP dataset

Detecting asynchronous events

Scientific careers of researchers with different experiencesRank Pattern Support Coverage Growth rate ρ

1 {closeness−1 },{IEEETransKnowlDtEn+},{numCliques+1 }→ {numCliques−1 } 15 578 87.4 38.52 {clustering++

1 ,degree++1 },{Journal++,eigenvector++

2 }→ {eigenvector++3 } 31 546 71.6 17.6

3 {ICDE+,numCliques+1 }→ {numCliques−1 } 22 606 64.1 274 {eigenvector++

1 ,degree++1 },{VLDB++,degree++

2 }→ {degree++3 } 29 580 63.8 20

5 {eigenvector++1 ,clustering++

1 },{Journal++,eigenvector++2 }→ {eigenvector++

3 } 36 619 59.3 17.196 {ACMTransDBSys+},{numCliques+1 }→ {numCliques−1 } 20 547 58.3 27.357 {eigenvector++

1 },{Journal++,betweennes++3 }→ {betweennes++

4 } 20 587 58.4 29.358 {eigenvector++

1 },{VLDB++,degree++2 }→ {degree++

3 } 30 623 56.47 20.79 {SIGMOD−},{numCliques+1 }→ {numCliques−1 } 32 754 53.3 23.5610 {closeness−1 },{SIGMOD−},{numCliques+1 }→ {numCliques−1 } 18 552 52.4 30.6

M. Kaytoue, Y. Pitarch, M. Plantevit, C. Robardet Triggering Patterns in Dynamic Graphs 18

Experiments

The R.I.T.A. dataset

Synchronous eventsRITA1: daily in September 2001{#Canceled+}{Degree−,Closeness−,NumCliques−,Pagerank−,Betweennes−}→ Degree+ with sup = 5, cov = 144AIRPORTS THAT ABSORB THE TRAFFIC TWO DAYS AFTER

RITA2: monthly in (sept. 2000 ; Sept. 2002 ){#Canceled+}{#Canceled−},{numCliques−,Betweeness+}→ numCliques+ with sup = 8, cov = 61A "BACK TO NORMAL" AROUND MARCH 2002RITA3: Aug./Sept. 2005 (Katrina Hurricane)THE MOST DISCRIMINANT APPEARS DURING KATRINA

M. Kaytoue, Y. Pitarch, M. Plantevit, C. Robardet Triggering Patterns in Dynamic Graphs 19

Experiments

The del.ico.us dataset

What are the most triggering attributes?how-to, tutorial, web design, visualization“teaching triggering”video, community“social triggering”

M. Kaytoue, Y. Pitarch, M. Plantevit, C. Robardet Triggering Patterns in Dynamic Graphs 20

Conclusion

Outline

1 Triggering patterns

2 Method and algorithm

3 Experiments

4 Conclusion

M. Kaytoue, Y. Pitarch, M. Plantevit, C. Robardet Triggering Patterns in Dynamic Graphs 21

Conclusion

Conclusion

Triggering patterns in dynamic graphs

Sequences of variation of vertex attribute values that maytrigger topological changesClosed sequential pattern mining

Growth rate: gives the discrimination power of a sequenceto explain a topological changeCoverage: tells us about the diffusion potential

Main challengeWhich aggregated graph to choose when computing thecoverage?Patterns image can have (a)-synchronous sequences2|T| aggregated graphs are possible!!

M. Kaytoue, Y. Pitarch, M. Plantevit, C. Robardet Triggering Patterns in Dynamic Graphs 22

Recommended