The network-untangling problem: From interactions to activity - - PowerPoint PPT Presentation

the network untangling problem from interactions to
SMART_READER_LITE
LIVE PREVIEW

The network-untangling problem: From interactions to activity - - PowerPoint PPT Presentation

The network-untangling problem: From interactions to activity timelines Polina Rozenshtein (Nordea DS Lab, Finland) Nikolaj Tatti (University of Helsinki, Finland) Aristides Gionis (Aalto University, Finland) ECML/PKDD17 + journal extension


slide-1
SLIDE 1

The network-untangling problem: From interactions to activity timelines

Polina Rozenshtein (Nordea DS Lab, Finland) Nikolaj Tatti (University of Helsinki, Finland) Aristides Gionis (Aalto University, Finland)

ECML/PKDD’17 + journal extension

slide-2
SLIDE 2

Temporal networks

  • Temporal graph ! = #, %
  • # – set of entities (e.g. people, sensors, locations.. )
  • Edges &, ', ( ∈ % – instantaneous interactions over entities
  • &, ' ∈ V
  • ( is the time of interaction
  • tweets, emails, comments on social networks..
slide-3
SLIDE 3

Problem setting

  • consider a set of entities
  • entities can become active or inactive
  • entities interact over time, forming a temporal network
  • each interaction is attributed to an active entity
slide-4
SLIDE 4

Problem setting

  • consider a set of entities
  • entities can become active or inactive
  • entities interact over time, forming a temporal network
  • each interaction is attributed to an active entity
  • can we reconstruct the activity timeline that explains best the
  • bserved temporal network?
  • assumption: being active is more costly, thus we want to

minimize total activity time

slide-5
SLIDE 5

Motivating example

  • analyze a discussion in twitter about a topic (e.g., brexit)
  • entities are hashtags
  • two hashtags interact if they appear in the same tweet
  • summarize the discussion by reconstructing a timeline
  • pick a set of important hashtags and the time intervals they

are active

slide-6
SLIDE 6

Motivating example

time #economy #brexit #negotiations #hardbrexit #tory

slide-7
SLIDE 7

Motivating example

time #economy #brexit #negotiations #hardbrexit #tory

slide-8
SLIDE 8

Problem formulation

  • given a temporal network ! = ($, &) with & = {(), *, +)}
  • . = /., 0. – activity interval of ) ∈ $ (starts at /. and ends

at 0.)

  • find a set of activity intervals for all nodes
  • at most 2 per each node ) ∈ $
slide-9
SLIDE 9

Problem formulation: preliminaries

  • given a temporal network ! = ($, &) with & = {(), *, +)}
  • . = /., 0. – activity interval of ) ∈ $ (starts at /. and ends

at 0.)

  • find a set of activity intervals for all nodes
  • at most 2 per each node ) ∈ $
  • Activity timeline of ! is a set of activity intervals 3 =
  • .4 .∈5,4∈[7,8]
  • The timeline 3 covers temporal network !, if for each edge

), *, + ∈ & we have + ∈ -.4 or + ∈ -:4 for some ; ∈ [1, 2].

slide-10
SLIDE 10

Problem formulation

Problem 1. (Sum-Span)

  • Find a timeline ! = #$% $∈',%∈[*,+]that covers - and

minimizes total length of !. Problem 2. (Max-Span)

  • Find a timeline ! = #$% $∈',%∈[*,+]that covers - and

minimizes maximum length of intervals in !.

  • For the ease of analysis consider . = 1 and . > 1 separately
slide-11
SLIDE 11

1-Sum-Span

Problem 1-Sum-Span is NP-hard Consider subproblem Coalesce:

  • Assume we are also given one active time point !" for each

vertex # ∈ %.

  • Find an optimal activity timeline &, which contains the

corresponding active time points !" "∈'.

slide-12
SLIDE 12

1-Sum-Span

  • Coalesce can be solved in linear time with factor 2

approximation, based on Binary LP-formulation.

  • Define a variable !"# ∈ {0,1} for each vertex * ∈ + and time

stamp , ∈ -(*) (moments of interactions of *).

  • !"# = 1 indicates that , is either the beginning or end of the

active interval of *.

  • Binary LP:

– Cost function min ∑",# |, − 7"| !"# – Constraints to ensure feasibility

slide-13
SLIDE 13

1-Sum-Span

  • Relax the integrality and write the dual
  • Maximal solution to the dual program is a 2-approximation for

Coalesce

  • Maximal solution can be found in one pass (! " , Alg.

Maximal) Iterate to solve 1-Sum-Span (Alg. Inner):

  • Start with "$ = ("'( ) * + ",- ) * )/2
  • Run Maximal and update "$
  • Repeat until no improvement.
slide-14
SLIDE 14

k-Sum-Span

k-Sum-Span is are inapproximable Consider subproblem k-Coalesce:

  • Assume we are also given k active time points !"# for each

vertex $ ∈ &

  • One for each of activity intervals of $
  • Find an optimal activity timeline ', which contains the

corresponding active time points !"# "∈(,#∈[+,,].

  • Similar BLP and Alg. k-Maximal, . !
slide-15
SLIDE 15

k-Sum-Span

Iterate to solve k-Sum-Span (Alg. k-Inner):

  • Start with !"# as centroids of a k-clustering algorithm
  • Run k-Maximal and update !"
  • Repeat until no improvement
slide-16
SLIDE 16

1-Max-Span

1-Max-Span can be solved efficiently Subproblem Budget:

  • Assume we are also given a set of budgets !" "∈$ of interval

durations for each vertex.

  • Find an optimal activity timeline % = '" "∈$, such that

length of each activity interval '" is at most !".

slide-17
SLIDE 17

1-Max-Span

Budget can be solved optimally in linear time Map Budget into 2-SAT:

  • Variable !"# for each vertex $ and timestamp % ∈ '($).
  • Clause (!"# ∨ !+#) – cover each edge ,, $, % .
  • Clause (!"/ ∨ !"#) – ensure budget:

for each 0, % ∈ '($), such that 0 − % > 3"

  • Solution for Budget : time intervals where all boolean

variables are True.

slide-18
SLIDE 18

1-Max-Span

Linear time:

  • 2-SAT is solved in linear-time of the number of clauses (Aspvall

et all [1]). We have ! "# clauses.

  • Bottleneck: SCC decomposition !("# + ")
  • algorithm by Kosaraju [2] for SCC decomposition
  • Use of temporal structure → perform DFS in !(").

Solve 1-Max-Span by binary search to find the optimal maximum length for intervals (Algorithm Budget, !(" log("))).

slide-19
SLIDE 19

k-Max-Span

k-Max-Span inapproximable

  • consider two nested subproblems

Subproblem k-Partition:

  • Assume we are also given k-1 inactive time points !"# for

each vertex $ ∈ &

  • One for each of gap between the activity intervals of $
  • Find an optimal activity timeline ', which interleaves with

corresponding gap points !"( "∈),(+[-,./-]

slide-20
SLIDE 20

k-Max-Span

  • Problem k-Partition can be solved in polynomial time through

iteration of Problem k-Budget, which sets a budget for each interval. Subproblem k-Budget:

  • Assume we are given a set of budgets !" "∈$ of interval durations

for each vertex;

  • k-1 inactive time points %"& for each vertex
  • Find an optimal activity timeline ' = )" "∈$, such that length of

each activity interval )"& is at most !"& and the gap points are interleaved k-Budget can be solved *(,), similarly to Budget

slide-21
SLIDE 21

k-Max-Span

Iterate to solve k-Sum-Span (Alg. k-Budget):

  • Start with !"# as mean points of the largest intervals with no

activity of node $

  • Solve k-Partition:

– do binary search on budgets with solving k-Budget – update !"#

  • Repeat until no improvement
slide-22
SLIDE 22

Summary

Problem 1: Sum-Span

  • ! = 1 NP-hard
  • ! > 1 inapproximable
  • Subproblem (k-)Partition with inner points
  • 2-approximation in linear time via BLP dual for (k-)Partition
slide-23
SLIDE 23

Summary

Problem 2: Max-Span

  • ! = 1 polynomially solvable
  • ! > 1 inapproximable
  • Subproblem (k-)Budget with budgets
  • Exact solution in linear time via 2-SAT for (k-)Budget
slide-24
SLIDE 24

Experiments: case study

  • Tweets from Helsinki region, November 2013
  • Inner algorithm (1-Sum-Span)

winwin xbone yandex webdesign vision walkbase winner younited zenrobotics slush13 pureview nuijankopautus nokiaegm illuusio here kirkkonummi nokia typaikka elop nordis mtvema bestvideo bron emaazing ema2013 exo bestpop emazing worldwideactexo voteaustinmahone Nov 1 3 6 9 12 15 18 21 24 27 30

slide-25
SLIDE 25

Experiments: case study

  • Helsinki Twitter, years 2011-2013
  • k-Inner algorithm with k = 3 (k-Max-S)

slush2013 uutisraivaaja slushpitstop slush13 comingtoslush pelotoncamp slush12 tediili sailfish jolla digitalist aller startups garage48 slush11 startupsauna aaltoes startup padlette crowdfunding slush lumia sxsw digasell ipad supercell tivitforesight slush2012 slush2008 Jan, 11 Apr Jul Oct Jan, 12 Apr Jul Oct Jan, 13 Apr Jul Oct Jan, 14

slide-26
SLIDE 26

Performance: Inner

1 2 3 4 5 6 7 8 9 10

iterations

0.86 0.88 0.90 0.92 0.94 0.96 0.98 1.00

Quality

P R F

1 2 3 4 5 6 7 8 9 10

iterations

1.5 2.0 2.5 3.0 3.5 4.0 4.5 5.0 5.5

Relative total length

  • Synthetic dataset, with planted ground truth
  • overlap ! is set to 0.5
  • values are averaged over 100 runs.
slide-27
SLIDE 27

Performance : k-Inner

1 2 3 4 5 6 7 8 9 10

iterations

0.76 0.78 0.80 0.82 0.84 0.86

Quality

P R F

1 2 3 4 5 6 7 8 9 10

iterations

4.5 5.0 5.5 6.0 6.5 7.0 7.5 8.0 8.5

Relative total length

  • Synthetic dataset, k=10 intervals
slide-28
SLIDE 28

Performance : k-Budget

1 2 3 4 5 6 7 8 9 10

iterations

0.65 0.70 0.75 0.80 0.85 0.90 0.95

Quality

P R F

1 2 3 4 5 6 7 8 9 10

iterations

38 40 42 44 46 48 50 52 54

Relative max length

  • Synthetic dataset, k=10 intervals
slide-29
SLIDE 29

Baseline comparison

2 3 4 5 6 7 8 9 10

number of intervals

0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9

F-measure

k-Inner k-Budget k-Baseline

2 3 4 5 6 7 8 9 10

number of intervals

20 40 60 80 100 120 140 160

Relative max length

k-Inner k-Budget k-Baseline

2 3 4 5 6 7 8 9 10

number of intervals

4 6 8 10 12 14 16 18 20

Relative total length

k-Inner k-Budget k-Baseline

  • Baseline: greedily ’cover’ the

longest activity intervals of the nodes.

slide-30
SLIDE 30

Running time

10 3 10 4 10 5 10 6 10 7 10 8 10 9

number of temporal edges

10 -3 10 -2 10 -1 10 0 10 1 10 2 10 3 10 4

Running time (minutes) k-Inner k-Budget k-Baseline

  • k=10, synthetic dataset
slide-31
SLIDE 31

Conclusions

  • Novel problem of network untangling:

Discover activity time intervals for the network entities to explain the observed interactions.

  • A possible Temporal extension of Vertex Cover Problem
  • Two settings: (k-)Sum-Span (minimize sum of interval lengths)

and (k-)Max-Span (minimize maximum length).

  • Some hardness and inapproximability results
  • Efficient algorithms
slide-32
SLIDE 32

Future work

  • Approximation for 1-Sum-Span?
  • Consider different activity levels for each entity.
  • Consider hyperedges.
slide-33
SLIDE 33

References

  • 1. B. Aspvall, M. F. Plass, and R. E. Tarjan. A linear-time

algorithm for testing the truth of certain quantified Boolean

  • formulas. 1982.
  • 2. J. E. Hopcroft and J. D. Ullman. Data structures and

algorithms.1983.

slide-34
SLIDE 34

Thank you!