SlideShare a Scribd company logo
Incremental Lossless
Graph Summarization
Jihoon Ko* Yunbum Kook* Kijung Shin
Large-scale Graphs are Everywhere!
Icon made by Freepik from www.flaticon.com
2B+ active users
600M+ users
1.5B+ users
Large-scale Graphs are Everywhere! (cont.)
4B+ web pages 5M papers 6K+ proteins
Icon made by Freepik from www.flaticon.com
Graph Compression for Efficient Manipulation
โ€ข Handling large-scale graphs as they are...
๏ƒจ heavy disk or network I/O
Graph Compression for Efficient Manipulation
โ€ข Handling large-scale graphs as they are...
๏ƒจ heavy disk or network I/O
โ€ข Their compact representation makes possible efficient manipulation!
Graph Compression for Efficient Manipulation
โ€ข Handling large-scale graphs as they are...
๏ƒจ heavy disk or network I/O
โ€ข Their compact representation makes possible efficient manipulation!
โ€ข A larger portion of original graphs can be stored in main memory or cache
Previous Graph Compression Techniques
โ€ข Various compression techniques have been proposed
โ€ข Relabeling nodes
โ€ข Pattern mining
โ€ข Lossless graph summarization ๏ƒจ One of the most effective compression techniques
โ€ข โ€ฆ
Previous Graph Compression Techniques
โ€ข Various compression techniques have been proposed
โ€ข Relabeling nodes
โ€ข Pattern mining
โ€ข Lossless graph summarization ๏ƒจ One of the most effective compression techniques
โ€ข โ€ฆ
Previous Graph Compression Techniques
โ€ข Various compression techniques have been proposed
โ€ข Relabeling nodes
โ€ข Pattern mining
โ€ข Lossless graph summarization ๏ƒจ One of the most effective compression techniques
โ€ข โ€ฆ
โ€ข Lossless graph summarization is a batch algorithm for โ€œstatic graphsโ€,
which indicate a single or a few snapshots of evolving graphs
Previous Graph Compression Techniques
โ€ข Various compression techniques have been proposed
โ€ข Relabeling nodes
โ€ข Pattern mining
โ€ข Lossless graph summarization ๏ƒจ One of the most effective compression techniques
โ€ข โ€ฆ
โ€ข Lossless graph summarization is a batch algorithm for โ€œstatic graphsโ€,
which indicate a single or a few snapshots of evolving graphs
However, most real-world graphs
go through lots of changes in fact...
Real-world Graphs are Evolving
2B+ users2M+ users
10 years
Real-world Graphs are Evolving
2B+ users2M+ users
10 years
Previous algorithms: not designed to allow for changes in graphs
๏ƒจAlgorithms should be rerun from scratch to reflect changes
Real-world Graphs are Evolving
2B+ users2M+ users
10 years
Previous algorithms: not designed to allow for changes in graphs
๏ƒจAlgorithms should be rerun from scratch to reflect changes
Solution: Incrementally update compressed graphs in fast and
effective manners!
Outline
โ€ข Preliminaries
โ€ข Proposed Algorithm: MoSSo
โ€ข Experimental Results
โ€ข Conclusions
Lossless Graph Summarization: Example
๐‘Ž๐‘Ž
๐‘๐‘๐‘๐‘
๐‘‘๐‘‘
๐‘’๐‘’ ๐‘“๐‘“
๐‘”๐‘”
โ„Ž
๐‘–๐‘–
Input graph with ๐Ÿ๐Ÿ๐Ÿ๐Ÿ edges
Lossless Graph Summarization: Example
๐‘Ž๐‘Ž
๐‘๐‘๐‘๐‘
๐‘‘๐‘‘
๐‘’๐‘’ ๐‘“๐‘“
๐‘”๐‘”
โ„Ž
๐‘–๐‘–
Input graph with ๐Ÿ๐Ÿ๐Ÿ๐Ÿ edges
๐ด๐ด = {๐‘Ž๐‘Ž}
๐ต๐ต = {๐‘๐‘, ๐‘๐‘, ๐‘‘๐‘‘, ๐‘’๐‘’}
๐‘“๐‘“
๐‘”๐‘”
โ„Ž
๐‘–๐‘–
Lossless Graph Summarization: Example
๐‘Ž๐‘Ž
๐‘๐‘๐‘๐‘
๐‘‘๐‘‘
๐‘’๐‘’ ๐‘“๐‘“
๐‘”๐‘”
โ„Ž
๐‘–๐‘–
Input graph with ๐Ÿ๐Ÿ๐Ÿ๐Ÿ edges
๐ด๐ด = {๐‘Ž๐‘Ž}
๐ต๐ต = {๐‘๐‘, ๐‘๐‘, ๐‘‘๐‘‘, ๐‘’๐‘’}
๐‘“๐‘“
๐‘”๐‘”
โ„Ž
๐‘–๐‘–
๐‘“๐‘“
๐‘”๐‘”
โ„Ž
๐‘–๐‘–
๐ด๐ด = {๐‘Ž๐‘Ž}
๐ต๐ต = {๐‘๐‘, ๐‘๐‘, ๐‘‘๐‘‘, ๐‘’๐‘’}
Delete {๐‘“๐‘“, ๐‘–๐‘–}
Lossless Graph Summarization: Example
๐‘Ž๐‘Ž
๐‘๐‘๐‘๐‘
๐‘‘๐‘‘
๐‘’๐‘’ ๐‘“๐‘“
๐‘”๐‘”
โ„Ž
๐‘–๐‘–
Input graph with ๐Ÿ๐Ÿ๐Ÿ๐Ÿ edges
๐ด๐ด = {๐‘Ž๐‘Ž}
๐ต๐ต = {๐‘๐‘, ๐‘๐‘, ๐‘‘๐‘‘, ๐‘’๐‘’}
๐‘“๐‘“
๐‘”๐‘”
โ„Ž
๐‘–๐‘–
๐‘“๐‘“
๐‘”๐‘”
โ„Ž
๐‘–๐‘–
๐ด๐ด = {๐‘Ž๐‘Ž}
๐ต๐ต = {๐‘๐‘, ๐‘๐‘, ๐‘‘๐‘‘, ๐‘’๐‘’}
๐‘“๐‘“
๐‘”๐‘”
โ„Ž
๐‘–๐‘–
๐ด๐ด = {๐‘Ž๐‘Ž}
๐ต๐ต = {๐‘๐‘, ๐‘๐‘, ๐‘‘๐‘‘, ๐‘’๐‘’}
Add {๐‘Ž๐‘Ž, ๐‘“๐‘“} & Delete {๐‘“๐‘“, ๐‘–๐‘–}
Delete {๐‘“๐‘“, ๐‘–๐‘–}
Lossless Graph Summarization: Example
Add {๐‘Ž๐‘Ž, ๐‘“๐‘“} & Delete {๐‘“๐‘“, ๐‘–๐‘–}
๐‘Ž๐‘Ž
๐‘๐‘๐‘๐‘
๐‘‘๐‘‘
๐‘’๐‘’ ๐‘“๐‘“
๐‘”๐‘”
โ„Ž
๐‘–๐‘–
Output with ๐Ÿ’๐Ÿ’ edges
Input graph with ๐Ÿ๐Ÿ๐Ÿ๐Ÿ edges
๐ด๐ด = {๐‘Ž๐‘Ž}
๐ต๐ต = {๐‘๐‘, ๐‘๐‘, ๐‘‘๐‘‘, ๐‘’๐‘’}
๐‘“๐‘“
๐‘”๐‘”
โ„Ž
๐‘–๐‘–
๐‘“๐‘“
๐‘”๐‘”
โ„Ž
๐‘–๐‘–
๐ด๐ด = {๐‘Ž๐‘Ž}
๐ต๐ต = {๐‘๐‘, ๐‘๐‘, ๐‘‘๐‘‘, ๐‘’๐‘’}
๐‘“๐‘“
๐‘”๐‘”
โ„Ž
๐‘–๐‘–
๐ด๐ด = {๐‘Ž๐‘Ž}
๐ต๐ต = {๐‘๐‘, ๐‘๐‘, ๐‘‘๐‘‘, ๐‘’๐‘’}
Add {๐‘Ž๐‘Ž, ๐‘“๐‘“} & Delete {๐‘“๐‘“, ๐‘–๐‘–}
Delete {๐‘“๐‘“, ๐‘–๐‘–}
๐ด๐ด = {๐‘Ž๐‘Ž}
๐ต๐ต = {๐‘๐‘, ๐‘๐‘, ๐‘‘๐‘‘, ๐‘’๐‘’}
๐ถ๐ถ = {๐‘“๐‘“, ๐‘”๐‘”, โ„Ž, ๐‘–๐‘–}
Lossless Graph Summarization: Definition
Lossless
Summarization
Lossless summarization yields (1) a summary graph and (2) edge corrections,
while minimizing the edge count ๐‘ท๐‘ท + ๐‘ช๐‘ช+
+ |๐‘ช๐‘ชโˆ’
|
(โ‰ˆ โ€œdescription costโ€ denoted by ๐‹๐‹)
Input graph
๐†๐† = (๐‘ฝ๐‘ฝ, ๐‘ฌ๐‘ฌ)
๐‘Ž๐‘Ž
๐‘๐‘๐‘๐‘
๐‘‘๐‘‘
๐‘’๐‘’ ๐‘“๐‘“
๐‘”๐‘”
โ„Ž
๐‘–๐‘–
Lossless Graph Summarization: Definition
Lossless
Summarization
Lossless summarization yields (1) a summary graph and (2) edge corrections,
while minimizing the edge count ๐‘ท๐‘ท + ๐‘ช๐‘ช+
+ |๐‘ช๐‘ชโˆ’
|
(โ‰ˆ โ€œdescription costโ€ denoted by ๐‹๐‹)
Summary graph
๐‘ฎ๐‘ฎโˆ— = (๐‘บ๐‘บ, ๐‘ท๐‘ท)
Input graph
๐†๐† = (๐‘ฝ๐‘ฝ, ๐‘ฌ๐‘ฌ)
๐‘Ž๐‘Ž
๐‘๐‘๐‘๐‘
๐‘‘๐‘‘
๐‘’๐‘’ ๐‘“๐‘“
๐‘”๐‘”
โ„Ž
๐‘–๐‘–
๐ด๐ด = {๐‘Ž๐‘Ž}
๐ต๐ต = {๐‘๐‘, ๐‘๐‘, ๐‘‘๐‘‘, ๐‘’๐‘’}
๐ถ๐ถ = {๐‘“๐‘“, ๐‘”๐‘”, โ„Ž, ๐‘–๐‘–}
Lossless Graph Summarization: Definition
Lossless
Summarization
Lossless summarization yields (1) a summary graph and (2) edge corrections,
while minimizing the edge count ๐‘ท๐‘ท + ๐‘ช๐‘ช+
+ |๐‘ช๐‘ชโˆ’
|
(โ‰ˆ โ€œdescription costโ€ denoted by ๐‹๐‹)
๐ถ๐ถ+ = ๐‘Ž๐‘Ž๐‘Ž๐‘Ž
๐ถ๐ถโˆ’
= ๐‘“๐‘“๐‘–๐‘–
Summary graph
๐‘ฎ๐‘ฎโˆ— = (๐‘บ๐‘บ, ๐‘ท๐‘ท)
Edge corrections
(๐‘ช๐‘ช+, ๐‘ช๐‘ชโˆ’)
Input graph
๐†๐† = (๐‘ฝ๐‘ฝ, ๐‘ฌ๐‘ฌ)
๐‘Ž๐‘Ž
๐‘๐‘๐‘๐‘
๐‘‘๐‘‘
๐‘’๐‘’ ๐‘“๐‘“
๐‘”๐‘”
โ„Ž
๐‘–๐‘–
๐ด๐ด = {๐‘Ž๐‘Ž}
๐ต๐ต = {๐‘๐‘, ๐‘๐‘, ๐‘‘๐‘‘, ๐‘’๐‘’}
๐ถ๐ถ = {๐‘“๐‘“, ๐‘”๐‘”, โ„Ž, ๐‘–๐‘–}
Lossless Graph Summarization: Definition
Lossless
Summarization
Lossless summarization yields (1) a summary graph and (2) edge corrections,
while minimizing the edge count ๐‘ท๐‘ท + ๐‘ช๐‘ช+
+ |๐‘ช๐‘ชโˆ’
|
(โ‰ˆ โ€œdescription costโ€ denoted by ๐‹๐‹)
Proposed in [NRS08]
based on โ€œthe Minimum
Description Length principleโ€
๐ถ๐ถ+ = ๐‘Ž๐‘Ž๐‘Ž๐‘Ž
๐ถ๐ถโˆ’
= ๐‘“๐‘“๐‘–๐‘–
Summary graph
๐‘ฎ๐‘ฎโˆ— = (๐‘บ๐‘บ, ๐‘ท๐‘ท)
Edge corrections
(๐‘ช๐‘ช+, ๐‘ช๐‘ชโˆ’)
Input graph
๐†๐† = (๐‘ฝ๐‘ฝ, ๐‘ฌ๐‘ฌ)
๐‘Ž๐‘Ž
๐‘๐‘๐‘๐‘
๐‘‘๐‘‘
๐‘’๐‘’ ๐‘“๐‘“
๐‘”๐‘”
โ„Ž
๐‘–๐‘–
๐ด๐ด = {๐‘Ž๐‘Ž}
๐ต๐ต = {๐‘๐‘, ๐‘๐‘, ๐‘‘๐‘‘, ๐‘’๐‘’}
๐ถ๐ถ = {๐‘“๐‘“, ๐‘”๐‘”, โ„Ž, ๐‘–๐‘–}
Lossless Graph Summarization: Definition
Lossless
Summarization ๐ถ๐ถ+ = ๐‘Ž๐‘Ž๐‘Ž๐‘Ž
๐ถ๐ถโˆ’
= ๐‘“๐‘“๐‘–๐‘–
Summary graph
๐‘ฎ๐‘ฎโˆ— = (๐‘บ๐‘บ, ๐‘ท๐‘ท)
Edge corrections
(๐‘ช๐‘ช+, ๐‘ช๐‘ชโˆ’)
Input graph
๐†๐† = (๐‘ฝ๐‘ฝ, ๐‘ฌ๐‘ฌ)
๐‘Ž๐‘Ž
๐‘๐‘๐‘๐‘
๐‘‘๐‘‘
๐‘’๐‘’ ๐‘“๐‘“
๐‘”๐‘”
โ„Ž
๐‘–๐‘–
๐ด๐ด = {๐‘Ž๐‘Ž}
๐ต๐ต = {๐‘๐‘, ๐‘๐‘, ๐‘‘๐‘‘, ๐‘’๐‘’}
๐ถ๐ถ = {๐‘“๐‘“, ๐‘”๐‘”, โ„Ž, ๐‘–๐‘–}
Lossless Graph Summarization: Definition
1. Summary graph ๐‘ฎ๐‘ฎโˆ— = (๐‘บ๐‘บ, ๐‘ท๐‘ท)
โ€ข Supernodes ๐‘บ๐‘บ = a partition of ๐‘ฝ๐‘ฝ, where each supernode is a set of nodes
โ€ข Superedges ๐‘ท๐‘ท = a set of pairs of supernodes (ex: {๐‘จ๐‘จ, ๐‘ฉ๐‘ฉ} in example above)
Lossless
Summarization ๐ถ๐ถ+ = ๐‘Ž๐‘Ž๐‘Ž๐‘Ž
๐ถ๐ถโˆ’
= ๐‘“๐‘“๐‘–๐‘–
Summary graph
๐‘ฎ๐‘ฎโˆ— = (๐‘บ๐‘บ, ๐‘ท๐‘ท)
Edge corrections
(๐‘ช๐‘ช+, ๐‘ช๐‘ชโˆ’)
Input graph
๐†๐† = (๐‘ฝ๐‘ฝ, ๐‘ฌ๐‘ฌ)
๐‘Ž๐‘Ž
๐‘๐‘๐‘๐‘
๐‘‘๐‘‘
๐‘’๐‘’ ๐‘“๐‘“
๐‘”๐‘”
โ„Ž
๐‘–๐‘–
๐ด๐ด = {๐‘Ž๐‘Ž}
๐ต๐ต = {๐‘๐‘, ๐‘๐‘, ๐‘‘๐‘‘, ๐‘’๐‘’}
๐ถ๐ถ = {๐‘“๐‘“, ๐‘”๐‘”, โ„Ž, ๐‘–๐‘–}
Lossless Graph Summarization: Definition
1. Summary graph ๐‘ฎ๐‘ฎโˆ— = (๐‘บ๐‘บ, ๐‘ท๐‘ท)
โ€ข Supernodes ๐‘บ๐‘บ = a partition of ๐‘ฝ๐‘ฝ, where each supernode is a set of nodes
โ€ข Superedges ๐‘ท๐‘ท = a set of pairs of supernodes (ex: {๐‘จ๐‘จ, ๐‘ฉ๐‘ฉ} in example above)
Lossless
Summarization ๐ถ๐ถ+ = ๐‘Ž๐‘Ž๐‘Ž๐‘Ž
๐ถ๐ถโˆ’
= ๐‘“๐‘“๐‘–๐‘–
Summary graph
๐‘ฎ๐‘ฎโˆ— = (๐‘บ๐‘บ, ๐‘ท๐‘ท)
Edge corrections
(๐‘ช๐‘ช+, ๐‘ช๐‘ชโˆ’)
Input graph
๐†๐† = (๐‘ฝ๐‘ฝ, ๐‘ฌ๐‘ฌ)
๐‘Ž๐‘Ž
๐‘๐‘๐‘๐‘
๐‘‘๐‘‘
๐‘’๐‘’ ๐‘“๐‘“
๐‘”๐‘”
โ„Ž
๐‘–๐‘–
๐ด๐ด = {๐‘Ž๐‘Ž}
๐ต๐ต = {๐‘๐‘, ๐‘๐‘, ๐‘‘๐‘‘, ๐‘’๐‘’}
๐ถ๐ถ = {๐‘“๐‘“, ๐‘”๐‘”, โ„Ž, ๐‘–๐‘–}
Supernode
Lossless Graph Summarization: Definition
1. Summary graph ๐‘ฎ๐‘ฎโˆ— = (๐‘บ๐‘บ, ๐‘ท๐‘ท)
โ€ข Supernodes ๐‘บ๐‘บ = a partition of ๐‘ฝ๐‘ฝ, where each supernode is a set of nodes
โ€ข Superedges ๐‘ท๐‘ท = a set of pairs of supernodes (ex: {๐‘จ๐‘จ, ๐‘ฉ๐‘ฉ} in example above)
Lossless
Summarization ๐ถ๐ถ+ = ๐‘Ž๐‘Ž๐‘Ž๐‘Ž
๐ถ๐ถโˆ’
= ๐‘“๐‘“๐‘–๐‘–
Summary graph
๐‘ฎ๐‘ฎโˆ— = (๐‘บ๐‘บ, ๐‘ท๐‘ท)
Edge corrections
(๐‘ช๐‘ช+, ๐‘ช๐‘ชโˆ’)
Input graph
๐†๐† = (๐‘ฝ๐‘ฝ, ๐‘ฌ๐‘ฌ)
๐‘Ž๐‘Ž
๐‘๐‘๐‘๐‘
๐‘‘๐‘‘
๐‘’๐‘’ ๐‘“๐‘“
๐‘”๐‘”
โ„Ž
๐‘–๐‘–
๐ด๐ด = {๐‘Ž๐‘Ž}
๐ต๐ต = {๐‘๐‘, ๐‘๐‘, ๐‘‘๐‘‘, ๐‘’๐‘’}
๐ถ๐ถ = {๐‘“๐‘“, ๐‘”๐‘”, โ„Ž, ๐‘–๐‘–}
Supernode
Superedge
Lossless Graph Summarization: Definition
1. Summary graph ๐‘ฎ๐‘ฎโˆ— = (๐‘บ๐‘บ, ๐‘ท๐‘ท)
โ€ข Supernodes ๐‘บ๐‘บ = a partition of ๐‘ฝ๐‘ฝ, where each supernode is a set of nodes
โ€ข Superedges ๐‘ท๐‘ท = a set of pairs of supernodes (ex: {๐‘จ๐‘จ, ๐‘ฉ๐‘ฉ} in example above)
2. Edge corrections (๐‘ช๐‘ช+, ๐‘ช๐‘ชโˆ’)
โ€ข Residual graph (Positive) ๐‘ช๐‘ช+
โ€ข Residual graph (Negative) ๐‘ช๐‘ชโˆ’
Lossless
Summarization ๐ถ๐ถ+ = ๐‘Ž๐‘Ž๐‘Ž๐‘Ž
๐ถ๐ถโˆ’
= ๐‘“๐‘“๐‘–๐‘–
Summary graph
๐‘ฎ๐‘ฎโˆ— = (๐‘บ๐‘บ, ๐‘ท๐‘ท)
Edge corrections
(๐‘ช๐‘ช+, ๐‘ช๐‘ชโˆ’)
Input graph
๐†๐† = (๐‘ฝ๐‘ฝ, ๐‘ฌ๐‘ฌ)
๐‘Ž๐‘Ž
๐‘๐‘๐‘๐‘
๐‘‘๐‘‘
๐‘’๐‘’ ๐‘“๐‘“
๐‘”๐‘”
โ„Ž
๐‘–๐‘–
๐ด๐ด = {๐‘Ž๐‘Ž}
๐ต๐ต = {๐‘๐‘, ๐‘๐‘, ๐‘‘๐‘‘, ๐‘’๐‘’}
๐ถ๐ถ = {๐‘“๐‘“, ๐‘”๐‘”, โ„Ž, ๐‘–๐‘–}
Supernode
Superedge
Lossless Graph Summarization: Notation
Supernode containing ๐’–๐’–
Edges between supernodes ๐‘จ๐‘จ and ๐‘ฉ๐‘ฉ
All possible edges between ๐‘จ๐‘จ and ๐‘ฉ๐‘ฉ
Neighborhood of a node ๐’–๐’–
Nodes incident to ๐’–๐’– in ๐‘ช๐‘ช+ (or ๐‘ช๐‘ชโˆ’)
Compression rate
: ๐’๐’๐’–๐’– (i.e. ๐’–๐’– โˆˆ ๐‘บ๐‘บ๐’–๐’–)
: ๐‘ฌ๐‘ฌ๐‘จ๐‘จ๐‘จ๐‘จ = {๐’–๐’–๐’–๐’– โˆˆ ๐‘ฌ๐‘ฌ โˆถ ๐’–๐’– โˆˆ ๐‘จ๐‘จ, ๐’—๐’— โˆˆ ๐‘ฉ๐‘ฉ (๐’–๐’– โ‰  ๐’—๐’—)}
: ๐‘ป๐‘ป๐‘จ๐‘จ๐‘จ๐‘จ = {๐’–๐’–๐’–๐’– โŠ† ๐‘ฝ๐‘ฝ: ๐’–๐’– โˆˆ ๐‘จ๐‘จ, ๐’—๐’— โˆˆ ๐‘ฉ๐‘ฉ (๐’–๐’– โ‰  ๐’—๐’—)}
: ๐‘ต๐‘ต ๐’–๐’– = {๐’—๐’— โˆˆ ๐‘ฝ๐‘ฝ โˆถ ๐’–๐’–๐’–๐’– โˆˆ ๐‘ฌ๐‘ฌ}
: ๐‘ช๐‘ช+(๐’–๐’–) (or ๐‘ช๐‘ชโˆ’(๐’–๐’–))
: ( ๐‘ท๐‘ท + ๐‘ช๐‘ช+
+ ๐‘ช๐‘ชโˆ’
)/|๐‘ฌ๐‘ฌ|
Lossless
Summarization ๐ถ๐ถ+ = ๐‘Ž๐‘Ž๐‘Ž๐‘Ž
๐ถ๐ถโˆ’
= ๐‘“๐‘“๐‘–๐‘–
Summary graph
๐‘ฎ๐‘ฎโˆ— = (๐‘บ๐‘บ, ๐‘ท๐‘ท)
Edge corrections
(๐‘ช๐‘ช+, ๐‘ช๐‘ชโˆ’)
Input graph
๐†๐† = (๐‘ฝ๐‘ฝ, ๐‘ฌ๐‘ฌ)
๐‘Ž๐‘Ž
๐‘๐‘๐‘๐‘
๐‘‘๐‘‘
๐‘’๐‘’ ๐‘“๐‘“
๐‘”๐‘”
โ„Ž
๐‘–๐‘–
๐ด๐ด = {๐‘Ž๐‘Ž}
๐ต๐ต = {๐‘๐‘, ๐‘๐‘, ๐‘‘๐‘‘, ๐‘’๐‘’}
๐ถ๐ถ = {๐‘“๐‘“, ๐‘”๐‘”, โ„Ž, ๐‘–๐‘–}
Lossless Graph Summarization: Optimal Encoding
For summarization, determining supernodes ๐‘บ๐‘บ (a partition of ๐‘ฝ๐‘ฝ) is our main concern
๏ƒจ For given ๐‘บ๐‘บ, superedges ๐‘ท๐‘ท and edge corrections ๐‘ช๐‘ช are optimally determined
Lossless
Summarization ๐ถ๐ถ+ = ๐‘Ž๐‘Ž๐‘Ž๐‘Ž
๐ถ๐ถโˆ’
= ๐‘“๐‘“๐‘–๐‘–
Summary graph
๐‘ฎ๐‘ฎโˆ— = (๐‘บ๐‘บ, ๐‘ท๐‘ท)
Edge corrections
(๐‘ช๐‘ช+, ๐‘ช๐‘ชโˆ’)
Input graph
๐†๐† = (๐‘ฝ๐‘ฝ, ๐‘ฌ๐‘ฌ)
๐‘Ž๐‘Ž
๐‘๐‘๐‘๐‘
๐‘‘๐‘‘
๐‘’๐‘’ ๐‘“๐‘“
๐‘”๐‘”
โ„Ž
๐‘–๐‘–
๐ด๐ด = {๐‘Ž๐‘Ž}
๐ต๐ต = {๐‘๐‘, ๐‘๐‘, ๐‘‘๐‘‘, ๐‘’๐‘’}
๐ถ๐ถ = {๐‘“๐‘“, ๐‘”๐‘”, โ„Ž, ๐‘–๐‘–}
Lossless Graph Summarization: Optimal Encoding
Edges ๐‘ฌ๐‘ฌ๐‘จ๐‘จ๐‘จ๐‘จ between two supernodes:
(1) a superedge with ๐‘ช๐‘ชโˆ’ or (2) no superedge with ๐‘ช๐‘ช+
Case 1: ๐‘ฌ๐‘ฌ๐‘จ๐‘จ๐‘จ๐‘จ โ‰ฅ
๐‘ป๐‘ป๐‘จ๐‘จ๐‘จ๐‘จ +๐Ÿ๐Ÿ
๐Ÿ๐Ÿ
: add superedge ๐‘จ๐‘จ๐‘จ๐‘จ to ๐‘ท๐‘ท and ๐‘ป๐‘ป๐‘จ๐‘จ๐‘จ๐‘จ๐‘ฌ๐‘ฌ๐‘จ๐‘จ๐‘จ๐‘จ to ๐‘ช๐‘ชโˆ’
Case 2: ๐‘ฌ๐‘ฌ๐‘จ๐‘จ๐‘จ๐‘จ <
๐‘ป๐‘ป๐‘จ๐‘จ๐‘จ๐‘จ +๐Ÿ๐Ÿ
๐Ÿ๐Ÿ
: add all edges in ๐‘ฌ๐‘ฌ๐‘จ๐‘จ๐‘จ๐‘จ to ๐‘ช๐‘ช+
Costs: |๐„๐„๐€๐€๐€๐€|Costs: ๐Ÿ๐Ÿ + ๐“๐“๐‘จ๐‘จ๐‘จ๐‘จ โˆ’ |๐„๐„๐€๐€๐€๐€|
Lossless
Summarization ๐ถ๐ถ+ = ๐‘Ž๐‘Ž๐‘Ž๐‘Ž
๐ถ๐ถโˆ’
= ๐‘“๐‘“๐‘–๐‘–
Summary graph
๐‘ฎ๐‘ฎโˆ— = (๐‘บ๐‘บ, ๐‘ท๐‘ท)
Edge corrections
(๐‘ช๐‘ช+, ๐‘ช๐‘ชโˆ’)
Input graph
๐†๐† = (๐‘ฝ๐‘ฝ, ๐‘ฌ๐‘ฌ)
๐‘Ž๐‘Ž
๐‘๐‘๐‘๐‘
๐‘‘๐‘‘
๐‘’๐‘’ ๐‘“๐‘“
๐‘”๐‘”
โ„Ž
๐‘–๐‘–
๐ด๐ด = {๐‘Ž๐‘Ž}
๐ต๐ต = {๐‘๐‘, ๐‘๐‘, ๐‘‘๐‘‘, ๐‘’๐‘’}
๐ถ๐ถ = {๐‘“๐‘“, ๐‘”๐‘”, โ„Ž, ๐‘–๐‘–}
๐‘ฌ๐‘ฌ๐‘จ๐‘จ๐‘จ๐‘จ: Edges between supernodes ๐‘จ๐‘จ and ๐‘ฉ๐‘ฉ
๐‘ป๐‘ป๐‘จ๐‘จ๐‘จ๐‘จ: All possible edges between ๐‘จ๐‘จ and ๐‘ฉ๐‘ฉ
Notation
Lossless Graph Summarization: Optimal Encoding
Superedge ๐‘จ๐‘จ๐‘จ๐‘จ
๐‹๐‹ = ๐Ÿ๐Ÿ + ๐Ÿ๐Ÿ + ๐Ÿ๐Ÿ = ๐Ÿ’๐Ÿ’
๐ถ๐ถ+ = ๐‘Ž๐‘Ž๐‘Ž๐‘Ž
๐ถ๐ถโˆ’
= ๐‘“๐‘“๐‘–๐‘–
Summary graph
๐‘ฎ๐‘ฎโˆ— = (๐‘บ๐‘บ, ๐‘ท๐‘ท)
Edge corrections
(๐‘ช๐‘ช+, ๐‘ช๐‘ชโˆ’)
Input graph
๐†๐† = (๐‘ฝ๐‘ฝ, ๐‘ฌ๐‘ฌ)
๐‘Ž๐‘Ž
๐‘๐‘๐‘๐‘
๐‘‘๐‘‘
๐‘’๐‘’ ๐‘“๐‘“
๐‘”๐‘”
โ„Ž
๐‘–๐‘–
๐ด๐ด = {๐‘Ž๐‘Ž}
๐ต๐ต = {๐‘๐‘, ๐‘๐‘, ๐‘‘๐‘‘, ๐‘’๐‘’}
๐ถ๐ถ = {๐‘“๐‘“, ๐‘”๐‘”, โ„Ž, ๐‘–๐‘–}
Lossless Graph Summarization: Optimal Encoding
Superedge ๐‘จ๐‘จ๐‘จ๐‘จ
๐‘ช๐‘ช+
only
๐‹๐‹ = ๐Ÿ๐Ÿ + ๐Ÿ๐Ÿ + ๐Ÿ๐Ÿ = ๐Ÿ’๐Ÿ’
๐‹๐‹ = ๐Ÿ๐Ÿ + ๐Ÿ“๐Ÿ“ + ๐Ÿ๐Ÿ = ๐Ÿ•๐Ÿ•
๐ถ๐ถ+ = ๐‘Ž๐‘Ž๐‘Ž๐‘Ž
๐ถ๐ถโˆ’
= ๐‘“๐‘“๐‘–๐‘–
Summary graph
๐‘ฎ๐‘ฎโˆ— = (๐‘บ๐‘บ, ๐‘ท๐‘ท)
Edge corrections
(๐‘ช๐‘ช+, ๐‘ช๐‘ชโˆ’)
Input graph
๐†๐† = (๐‘ฝ๐‘ฝ, ๐‘ฌ๐‘ฌ)
๐‘Ž๐‘Ž
๐‘๐‘๐‘๐‘
๐‘‘๐‘‘
๐‘’๐‘’ ๐‘“๐‘“
๐‘”๐‘”
โ„Ž
๐‘–๐‘–
๐ด๐ด = {๐‘Ž๐‘Ž}
๐ต๐ต = {๐‘๐‘, ๐‘๐‘, ๐‘‘๐‘‘, ๐‘’๐‘’}
๐ถ๐ถ = {๐‘“๐‘“, ๐‘”๐‘”, โ„Ž, ๐‘–๐‘–}
๐ถ๐ถ+
= ๐‘Ž๐‘Ž๐‘Ž๐‘Ž, ๐‘Ž๐‘Ž๐‘Ž๐‘Ž, ๐‘Ž๐‘Ž๐‘Ž๐‘Ž, ๐‘Ž๐‘Ž๐‘Ž๐‘Ž, ๐‘Ž๐‘Ž๐‘Ž๐‘Ž
๐ถ๐ถโˆ’ = ๐‘“๐‘“๐‘–๐‘–
๐ด๐ด = {๐‘Ž๐‘Ž}
๐ต๐ต = {๐‘๐‘, ๐‘๐‘, ๐‘‘๐‘‘, ๐‘’๐‘’}
๐ถ๐ถ = {๐‘“๐‘“, ๐‘”๐‘”, โ„Ž, ๐‘–๐‘–}
Recovery: Example
๐ถ๐ถ+ = ๐‘Ž๐‘Ž๐‘Ž๐‘Ž , ๐ถ๐ถโˆ’ = {๐‘“๐‘“๐‘“๐‘“}
๐ด๐ด = {๐‘Ž๐‘Ž}
๐ต๐ต = {๐‘๐‘, ๐‘๐‘, ๐‘‘๐‘‘, ๐‘’๐‘’} ๐ถ๐ถ = {๐‘“๐‘“, ๐‘”๐‘”, โ„Ž, ๐‘–๐‘–}
Recovery: Example
๐ถ๐ถ+ = ๐‘Ž๐‘Ž๐‘Ž๐‘Ž , ๐ถ๐ถโˆ’ = {๐‘“๐‘“๐‘“๐‘“} Add all pairs of nodes
between two adjacent
supernodes
๐ด๐ด = {๐‘Ž๐‘Ž}
๐ต๐ต = {๐‘๐‘, ๐‘๐‘, ๐‘‘๐‘‘, ๐‘’๐‘’} ๐ถ๐ถ = {๐‘“๐‘“, ๐‘”๐‘”, โ„Ž, ๐‘–๐‘–}
๐ถ๐ถ+
= ๐‘Ž๐‘Ž๐‘Ž๐‘Ž , ๐ถ๐ถโˆ’
= {๐‘“๐‘“๐‘“๐‘“}
๐‘’๐‘’
๐‘Ž๐‘Ž
๐‘๐‘๐‘๐‘
๐‘‘๐‘‘
๐‘“๐‘“
๐‘”๐‘”
โ„Ž
๐‘–๐‘–
Recovery: Example
๐ถ๐ถ+ = ๐‘Ž๐‘Ž๐‘Ž๐‘Ž , ๐ถ๐ถโˆ’ = {๐‘“๐‘“๐‘“๐‘“} Add all pairs of nodes
between two adjacent
supernodes
Remove all edges
in ๐‚๐‚โˆ’
๐ด๐ด = {๐‘Ž๐‘Ž}
๐ต๐ต = {๐‘๐‘, ๐‘๐‘, ๐‘‘๐‘‘, ๐‘’๐‘’} ๐ถ๐ถ = {๐‘“๐‘“, ๐‘”๐‘”, โ„Ž, ๐‘–๐‘–}
๐ถ๐ถ+
= ๐‘Ž๐‘Ž๐‘Ž๐‘Ž , ๐ถ๐ถโˆ’
= {๐‘“๐‘“๐‘“๐‘“}
๐‘’๐‘’
๐‘Ž๐‘Ž
๐‘๐‘๐‘๐‘
๐‘‘๐‘‘
๐‘“๐‘“
๐‘”๐‘”
โ„Ž
๐‘–๐‘–
๐ถ๐ถ+ = ๐‘Ž๐‘Ž๐‘Ž๐‘Ž
๐‘’๐‘’
๐‘Ž๐‘Ž
๐‘๐‘๐‘๐‘
๐‘‘๐‘‘
๐‘“๐‘“
๐‘”๐‘”
โ„Ž
๐‘–๐‘–
Recovery: Example
๐ถ๐ถ+ = ๐‘Ž๐‘Ž๐‘Ž๐‘Ž , ๐ถ๐ถโˆ’ = {๐‘“๐‘“๐‘“๐‘“} Add all pairs of nodes
between two adjacent
supernodes
Remove all edges
in ๐‚๐‚โˆ’
Add all edges in ๐‚๐‚+
๐ด๐ด = {๐‘Ž๐‘Ž}
๐ต๐ต = {๐‘๐‘, ๐‘๐‘, ๐‘‘๐‘‘, ๐‘’๐‘’} ๐ถ๐ถ = {๐‘“๐‘“, ๐‘”๐‘”, โ„Ž, ๐‘–๐‘–}
๐ถ๐ถ+
= ๐‘Ž๐‘Ž๐‘Ž๐‘Ž , ๐ถ๐ถโˆ’
= {๐‘“๐‘“๐‘“๐‘“}
๐‘’๐‘’
๐‘Ž๐‘Ž
๐‘๐‘๐‘๐‘
๐‘‘๐‘‘
๐‘“๐‘“
๐‘”๐‘”
โ„Ž
๐‘–๐‘–
๐‘Ž๐‘Ž
๐‘๐‘๐‘๐‘
๐‘‘๐‘‘
๐‘’๐‘’ ๐‘“๐‘“
๐‘”๐‘”
โ„Ž
๐‘–๐‘–
๐ถ๐ถ+ = ๐‘Ž๐‘Ž๐‘Ž๐‘Ž
๐‘’๐‘’
๐‘Ž๐‘Ž
๐‘๐‘๐‘๐‘
๐‘‘๐‘‘
๐‘“๐‘“
๐‘”๐‘”
โ„Ž
๐‘–๐‘–
Why Lossless Graph Summarization?
๐ถ๐ถ+ = ๐‘Ž๐‘Ž๐‘Ž๐‘Ž ๐ถ๐ถโˆ’ = ๐‘“๐‘“๐‘–๐‘–
Summary graph ๐‘ฎ๐‘ฎโˆ— = (๐‘บ๐‘บ, ๐‘ท๐‘ท) Edge corrections (๐‘ช๐‘ช+
, ๐‘ช๐‘ชโˆ’
)
๐ด๐ด = {๐‘Ž๐‘Ž}
๐ต๐ต = {๐‘๐‘, ๐‘๐‘, ๐‘‘๐‘‘, ๐‘’๐‘’}
๐ถ๐ถ = {๐‘“๐‘“, ๐‘”๐‘”, โ„Ž, ๐‘–๐‘–}
Why Lossless Graph Summarization?
โ€ข Queryable (Retrieving the neighborhood of a query node)
๐ถ๐ถ+ = ๐‘Ž๐‘Ž๐‘Ž๐‘Ž ๐ถ๐ถโˆ’ = ๐‘“๐‘“๐‘–๐‘–
Summary graph ๐‘ฎ๐‘ฎโˆ— = (๐‘บ๐‘บ, ๐‘ท๐‘ท) Edge corrections (๐‘ช๐‘ช+
, ๐‘ช๐‘ชโˆ’
)
๐ด๐ด = {๐‘Ž๐‘Ž}
๐ต๐ต = {๐‘๐‘, ๐‘๐‘, ๐‘‘๐‘‘, ๐‘’๐‘’}
๐ถ๐ถ = {๐‘“๐‘“, ๐‘”๐‘”, โ„Ž, ๐‘–๐‘–}
Why Lossless Graph Summarization?
โ€ข Queryable (Retrieving the neighborhood of a query node)
โ€ข Queryability: key building blocks in numerous graph algorithms
(ex: DFS, PageRank, Dijkstraโ€™s, etc)
โ€ข Rapidly done from a summary and corrections
๐ถ๐ถ+ = ๐‘Ž๐‘Ž๐‘Ž๐‘Ž ๐ถ๐ถโˆ’ = ๐‘“๐‘“๐‘–๐‘–
Summary graph ๐‘ฎ๐‘ฎโˆ— = (๐‘บ๐‘บ, ๐‘ท๐‘ท) Edge corrections (๐‘ช๐‘ช+
, ๐‘ช๐‘ชโˆ’
)
๐ด๐ด = {๐‘Ž๐‘Ž}
๐ต๐ต = {๐‘๐‘, ๐‘๐‘, ๐‘‘๐‘‘, ๐‘’๐‘’}
๐ถ๐ถ = {๐‘“๐‘“, ๐‘”๐‘”, โ„Ž, ๐‘–๐‘–}
Why Lossless Graph Summarization?
โ€ข Queryable (Retrieving the neighborhood of a query node)
โ€ข Queryability: key building blocks in numerous graph algorithms
(ex: DFS, PageRank, Dijkstraโ€™s, etc)
โ€ข Rapidly done from a summary and corrections
โ€ข Combinable
โ€ข Its outputs are also graphs ๏ƒจ further compressed via other compression techniques!
๐ถ๐ถ+ = ๐‘Ž๐‘Ž๐‘Ž๐‘Ž ๐ถ๐ถโˆ’ = ๐‘“๐‘“๐‘–๐‘–
Summary graph ๐‘ฎ๐‘ฎโˆ— = (๐‘บ๐‘บ, ๐‘ท๐‘ท) Edge corrections (๐‘ช๐‘ช+
, ๐‘ช๐‘ชโˆ’
)
๐ด๐ด = {๐‘Ž๐‘Ž}
๐ต๐ต = {๐‘๐‘, ๐‘๐‘, ๐‘‘๐‘‘, ๐‘’๐‘’}
๐ถ๐ถ = {๐‘“๐‘“, ๐‘”๐‘”, โ„Ž, ๐‘–๐‘–}
Fully Dynamic Graph Stream
Fully dynamic graphs can be represented by using
a sequence {๐’†๐’†๐’•๐’•}๐’•๐’•=๐ŸŽ๐ŸŽ
โˆž
of edge addition ๐’†๐’†๐’•๐’• = ๐’–๐’–, ๐’—๐’— + and deletion ๐’†๐’†๐’•๐’• = ๐’–๐’–, ๐’—๐’— โˆ’
๏ƒจ The graph at time ๐’•๐’• is constructed by aggregating all edges change until time ๐’•๐’•
Fully Dynamic Graph Stream
Fully dynamic graphs can be represented by using
a sequence {๐’†๐’†๐’•๐’•}๐’•๐’•=๐ŸŽ๐ŸŽ
โˆž
of edge addition ๐’†๐’†๐’•๐’• = ๐’–๐’–, ๐’—๐’— + and deletion ๐’†๐’†๐’•๐’• = ๐’–๐’–, ๐’—๐’— โˆ’
๏ƒจ The graph at time ๐’•๐’• is constructed by aggregating all edges change until time ๐’•๐’•
Stream of changes:
Fully Dynamic Graph Stream
Fully dynamic graphs can be represented by using
a sequence {๐’†๐’†๐’•๐’•}๐’•๐’•=๐ŸŽ๐ŸŽ
โˆž
of edge addition ๐’†๐’†๐’•๐’• = ๐’–๐’–, ๐’—๐’— + and deletion ๐’†๐’†๐’•๐’• = ๐’–๐’–, ๐’—๐’— โˆ’
๏ƒจ The graph at time ๐’•๐’• is constructed by aggregating all edges change until time ๐’•๐’•
Stream of changes:
Empty graph ๐‘ฎ๐‘ฎ๐ŸŽ๐ŸŽ
Time ๐’•๐’• = ๐ŸŽ๐ŸŽ
Fully Dynamic Graph Stream
Fully dynamic graphs can be represented by using
a sequence {๐’†๐’†๐’•๐’•}๐’•๐’•=๐ŸŽ๐ŸŽ
โˆž
of edge addition ๐’†๐’†๐’•๐’• = ๐’–๐’–, ๐’—๐’— + and deletion ๐’†๐’†๐’•๐’• = ๐’–๐’–, ๐’—๐’— โˆ’
๏ƒจ The graph at time ๐’•๐’• is constructed by aggregating all edges change until time ๐’•๐’•
โ€ฆโ€ฆStream of changes:
+ - - + +
Empty graph ๐‘ฎ๐‘ฎ๐ŸŽ๐ŸŽ
Time ๐’•๐’• = ๐ŸŽ๐ŸŽ
Fully Dynamic Graph Stream
Fully dynamic graphs can be represented by using
a sequence {๐’†๐’†๐’•๐’•}๐’•๐’•=๐ŸŽ๐ŸŽ
โˆž
of edge addition ๐’†๐’†๐’•๐’• = ๐’–๐’–, ๐’—๐’— + and deletion ๐’†๐’†๐’•๐’• = ๐’–๐’–, ๐’—๐’— โˆ’
๏ƒจ The graph at time ๐’•๐’• is constructed by aggregating all edges change until time ๐’•๐’•
โ€ฆโ€ฆStream of changes:
+ - - + +
Empty graph ๐‘ฎ๐‘ฎ๐ŸŽ๐ŸŽ
Time ๐’•๐’• = ๐ŸŽ๐ŸŽ
Current graph ๐‘ฎ๐‘ฎ๐’•๐’•
Time ๐’•๐’•
Fully Dynamic Graph Stream
Fully dynamic graphs can be represented by using
a sequence {๐’†๐’†๐’•๐’•}๐’•๐’•=๐ŸŽ๐ŸŽ
โˆž
of edge addition ๐’†๐’†๐’•๐’• = ๐’–๐’–, ๐’—๐’— + and deletion ๐’†๐’†๐’•๐’• = ๐’–๐’–, ๐’—๐’— โˆ’
๏ƒจ The graph at time ๐’•๐’• is constructed by aggregating all edges change until time ๐’•๐’•
โ€ฆโ€ฆStream of changes:
+ - - + -+
โ€ฆโ€ฆ
Empty graph ๐‘ฎ๐‘ฎ๐ŸŽ๐ŸŽ
Time ๐’•๐’• = ๐ŸŽ๐ŸŽ
Current graph ๐‘ฎ๐‘ฎ๐’•๐’•
Time ๐’•๐’•
Problem Formulation
โ€ข Given Fully dynamic graph stream {๐’†๐’†๐’•๐’•}๐’•๐’•=๐ŸŽ๐ŸŽ
โˆž
โ€ข Retain Summary graph ๐‘ฎ๐‘ฎ๐’•๐’•
โˆ—
= ๐‘บ๐‘บ๐’•๐’•, ๐‘ท๐‘ท๐’•๐’• and Edge corrections ๐‘ช๐‘ช๐’•๐’• = (๐‘ช๐‘ช๐’•๐’•
+
, ๐‘ช๐‘ช๐’•๐’•
โˆ’
)
of graph ๐‘ฎ๐‘ฎ๐’•๐’• at time ๐’•๐’•
โ€ข To Minimize the size of output representation ๐‘ท๐‘ท๐’•๐’• + ๐‘ช๐‘ช๐’•๐’•
+
+ ๐‘ช๐‘ช๐’•๐’•
โˆ’
Problem Formulation
โ€ข Given Fully dynamic graph stream {๐’†๐’†๐’•๐’•}๐’•๐’•=๐ŸŽ๐ŸŽ
โˆž
โ€ข Retain Summary graph ๐‘ฎ๐‘ฎ๐’•๐’•
โˆ—
= ๐‘บ๐‘บ๐’•๐’•, ๐‘ท๐‘ท๐’•๐’• and Edge corrections ๐‘ช๐‘ช๐’•๐’• = (๐‘ช๐‘ช๐’•๐’•
+
, ๐‘ช๐‘ช๐’•๐’•
โˆ’
)
of graph ๐‘ฎ๐‘ฎ๐’•๐’• at time ๐’•๐’•
โ€ข To Minimize the size of output representation ๐‘ท๐‘ท๐’•๐’• + ๐‘ช๐‘ช๐’•๐’•
+
+ ๐‘ช๐‘ช๐’•๐’•
โˆ’
Retained at time ๐’•๐’•
๐ถ๐ถ+
= ๐‘Ž๐‘Ž๐‘Ž๐‘Ž
๐ถ๐ถโˆ’ = ๐‘“๐‘“๐‘–๐‘–
Summary graph
๐‘ฎ๐‘ฎโˆ—
= (๐‘บ๐‘บ, ๐‘ท๐‘ท)
Edge corrections
(๐‘ช๐‘ช+
, ๐‘ช๐‘ชโˆ’
)
๐ด๐ด = {๐‘Ž๐‘Ž}
๐ต๐ต = {๐‘๐‘, ๐‘๐‘, ๐‘‘๐‘‘, ๐‘’๐‘’}
๐ถ๐ถ = {๐‘“๐‘“, ๐‘”๐‘”, โ„Ž, ๐‘–๐‘–}
Problem Formulation
โ€ข Given Fully dynamic graph stream {๐’†๐’†๐’•๐’•}๐’•๐’•=๐ŸŽ๐ŸŽ
โˆž
โ€ข Retain Summary graph ๐‘ฎ๐‘ฎ๐’•๐’•
โˆ—
= ๐‘บ๐‘บ๐’•๐’•, ๐‘ท๐‘ท๐’•๐’• and Edge corrections ๐‘ช๐‘ช๐’•๐’• = (๐‘ช๐‘ช๐’•๐’•
+
, ๐‘ช๐‘ช๐’•๐’•
โˆ’
)
of graph ๐‘ฎ๐‘ฎ๐’•๐’• at time ๐’•๐’•
โ€ข To Minimize the size of output representation ๐‘ท๐‘ท๐’•๐’• + ๐‘ช๐‘ช๐’•๐’•
+
+ ๐‘ช๐‘ช๐’•๐’•
โˆ’
+
Retained at time ๐’•๐’•
Edge change ๐’†๐’†๐’•๐’•+๐Ÿ๐Ÿ
๐ถ๐ถ+
= ๐‘Ž๐‘Ž๐‘Ž๐‘Ž
๐ถ๐ถโˆ’ = ๐‘“๐‘“๐‘–๐‘–
Summary graph
๐‘ฎ๐‘ฎโˆ—
= (๐‘บ๐‘บ, ๐‘ท๐‘ท)
Edge corrections
(๐‘ช๐‘ช+
, ๐‘ช๐‘ชโˆ’
)
๐ด๐ด = {๐‘Ž๐‘Ž}
๐ต๐ต = {๐‘๐‘, ๐‘๐‘, ๐‘‘๐‘‘, ๐‘’๐‘’}
๐ถ๐ถ = {๐‘“๐‘“, ๐‘”๐‘”, โ„Ž, ๐‘–๐‘–}
Problem Formulation
โ€ข Given Fully dynamic graph stream {๐’†๐’†๐’•๐’•}๐’•๐’•=๐ŸŽ๐ŸŽ
โˆž
โ€ข Retain Summary graph ๐‘ฎ๐‘ฎ๐’•๐’•
โˆ—
= ๐‘บ๐‘บ๐’•๐’•, ๐‘ท๐‘ท๐’•๐’• and Edge corrections ๐‘ช๐‘ช๐’•๐’• = (๐‘ช๐‘ช๐’•๐’•
+
, ๐‘ช๐‘ช๐’•๐’•
โˆ’
)
of graph ๐‘ฎ๐‘ฎ๐’•๐’• at time ๐’•๐’•
โ€ข To Minimize the size of output representation ๐‘ท๐‘ท๐’•๐’• + ๐‘ช๐‘ช๐’•๐’•
+
+ ๐‘ช๐‘ช๐’•๐’•
โˆ’
+
Retained at time ๐’•๐’•
Edge change ๐’†๐’†๐’•๐’•+๐Ÿ๐Ÿ
๐ถ๐ถ+
= ๐‘Ž๐‘Ž๐‘Ž๐‘Ž
๐ถ๐ถโˆ’ = ๐‘“๐‘“๐‘–๐‘–
Summary graph
๐‘ฎ๐‘ฎโˆ—
= (๐‘บ๐‘บ, ๐‘ท๐‘ท)
Edge corrections
(๐‘ช๐‘ช+
, ๐‘ช๐‘ชโˆ’
)
๐ด๐ด = {๐‘Ž๐‘Ž}
๐ต๐ต = {๐‘๐‘, ๐‘๐‘, ๐‘‘๐‘‘, ๐‘’๐‘’}
๐ถ๐ถ = {๐‘“๐‘“, ๐‘”๐‘”, โ„Ž, ๐‘–๐‘–}
Problem Formulation
โ€ข Given Fully dynamic graph stream {๐’†๐’†๐’•๐’•}๐’•๐’•=๐ŸŽ๐ŸŽ
โˆž
โ€ข Retain Summary graph ๐‘ฎ๐‘ฎ๐’•๐’•
โˆ—
= ๐‘บ๐‘บ๐’•๐’•, ๐‘ท๐‘ท๐’•๐’• and Edge corrections ๐‘ช๐‘ช๐’•๐’• = (๐‘ช๐‘ช๐’•๐’•
+
, ๐‘ช๐‘ช๐’•๐’•
โˆ’
)
of graph ๐‘ฎ๐‘ฎ๐’•๐’• at time ๐’•๐’•
โ€ข To Minimize the size of output representation ๐‘ท๐‘ท๐’•๐’• + ๐‘ช๐‘ช๐’•๐’•
+
+ ๐‘ช๐‘ช๐’•๐’•
โˆ’
+ -+
โ€ฆโ€ฆ
Retained at time ๐’•๐’•
Edge change ๐’†๐’†๐’•๐’•+๐Ÿ๐Ÿ
๐ถ๐ถ+
= ๐‘Ž๐‘Ž๐‘Ž๐‘Ž
๐ถ๐ถโˆ’ = ๐‘“๐‘“๐‘–๐‘–
Summary graph
๐‘ฎ๐‘ฎโˆ—
= (๐‘บ๐‘บ, ๐‘ท๐‘ท)
Edge corrections
(๐‘ช๐‘ช+
, ๐‘ช๐‘ชโˆ’
)
๐ด๐ด = {๐‘Ž๐‘Ž}
๐ต๐ต = {๐‘๐‘, ๐‘๐‘, ๐‘‘๐‘‘, ๐‘’๐‘’}
๐ถ๐ถ = {๐‘“๐‘“, ๐‘”๐‘”, โ„Ž, ๐‘–๐‘–}
Challenge: Fast Update but Good Performance
Outline
โ€ข Preliminaries
โ€ข Proposed Algorithm: MoSSo
โ€ข Experimental Results
โ€ข Conclusions
Scheme for Incremental Summarization
Current graph Lossless summarization
๐ด๐ด
๐‘Ž๐‘Ž
๐ถ๐ถ
๐บ๐บโˆ—
๐‘Ž๐‘Ž
๐‘๐‘
๐‘๐‘
๐‘‘๐‘‘
๐‘’๐‘’ ๐‘“๐‘“
๐‘”๐‘”
โ„Ž
๐‘–๐‘–
๐ต๐ต
๐‘’๐‘’๐‘๐‘ ๐‘๐‘ ๐‘‘๐‘‘
๐‘–๐‘–
๐‘“๐‘“ ๐‘”๐‘”
โ„Ž
๐œ‘๐œ‘ = |๐‘ƒ๐‘ƒ| + |๐ถ๐ถ+
| + |๐ถ๐ถโˆ’
| = 4
๐ถ๐ถ+ ๐ถ๐ถโˆ’
๐‘Ž๐‘Ž ๐‘“๐‘“ ๐‘“๐‘“๐‘–๐‘–
Scheme for Incremental Summarization
Current graph Lossless summarization
๐ด๐ด
๐‘Ž๐‘Ž
๐ถ๐ถ
๐บ๐บโˆ—
๐‘Ž๐‘Ž
๐‘๐‘
๐‘‘๐‘‘
๐‘’๐‘’ ๐‘“๐‘“
๐‘”๐‘”
โ„Ž
๐‘–๐‘–
๐ต๐ต
๐‘’๐‘’๐‘๐‘ ๐‘๐‘ ๐‘‘๐‘‘
๐‘–๐‘–
๐‘“๐‘“ ๐‘”๐‘”
โ„Ž
New edge:
๐‘—๐‘—๐‘๐‘
๐‘Ž๐‘Ž ๐‘—๐‘—
๐‘—๐‘—
๐œ‘๐œ‘ = |๐‘ƒ๐‘ƒ| + |๐ถ๐ถ+
| + |๐ถ๐ถโˆ’
| = 5
๐‘Ž๐‘Ž ๐‘“๐‘“
๐‘“๐‘“๐‘–๐‘–
๐‘Ž๐‘Ž ๐‘—๐‘—
๐ถ๐ถ+ ๐ถ๐ถโˆ’
Scheme for Incremental Summarization
Current graph Lossless summarization
๐ด๐ด
๐‘Ž๐‘Ž
๐ถ๐ถ
๐บ๐บโˆ—
๐‘Ž๐‘Ž
๐‘๐‘
๐‘‘๐‘‘
๐‘’๐‘’ ๐‘“๐‘“
๐‘”๐‘”
โ„Ž
๐‘–๐‘–
๐ต๐ต
๐‘’๐‘’๐‘๐‘ ๐‘๐‘ ๐‘‘๐‘‘
๐‘–๐‘–
๐‘“๐‘“ ๐‘”๐‘”
โ„Ž
New edge:
๐‘—๐‘—๐‘๐‘
How to update
current summarization?
๐‘Ž๐‘Ž ๐‘—๐‘—
๐‘—๐‘—
๐œ‘๐œ‘ = |๐‘ƒ๐‘ƒ| + |๐ถ๐ถ+
| + |๐ถ๐ถโˆ’
| = 5
๐‘Ž๐‘Ž ๐‘“๐‘“
๐‘“๐‘“๐‘–๐‘–
๐‘Ž๐‘Ž ๐‘—๐‘—
๐ถ๐ถ+ ๐ถ๐ถโˆ’
Scheme for Incremental Summarization
Our approach
(1) Attempt to move nodes
among supernodes
(2) Accept the move if ๐‹๐‹
decreases
(3) Reject otherwise
Current graph Lossless summarization
๐ด๐ด
๐‘Ž๐‘Ž
๐ถ๐ถ
๐บ๐บโˆ—
๐‘Ž๐‘Ž
๐‘๐‘
๐‘‘๐‘‘
๐‘’๐‘’ ๐‘“๐‘“
๐‘”๐‘”
โ„Ž
๐‘–๐‘–
๐ต๐ต
๐‘’๐‘’๐‘๐‘ ๐‘๐‘ ๐‘‘๐‘‘
๐‘–๐‘–
๐‘“๐‘“ ๐‘”๐‘”
โ„Ž
๐‘—๐‘—๐‘๐‘
๐‘—๐‘—
๐œ‘๐œ‘ = |๐‘ƒ๐‘ƒ| + |๐ถ๐ถ+
| + |๐ถ๐ถโˆ’
| = 5
๐‘Ž๐‘Ž ๐‘“๐‘“
๐‘“๐‘“๐‘–๐‘–
๐‘Ž๐‘Ž ๐‘—๐‘—
๐ถ๐ถ+ ๐ถ๐ถโˆ’
Scheme for Incremental Summarization
Our approach
(1) Attempt to move nodes
among supernodes
(2) Accept the move if ๐‹๐‹
decreases
(3) Reject otherwise
Testing node
Current graph Lossless summarization
๐ด๐ด
๐‘Ž๐‘Ž
๐ถ๐ถ
๐บ๐บโˆ—
๐‘Ž๐‘Ž
๐‘๐‘
๐‘‘๐‘‘
๐‘’๐‘’ ๐‘“๐‘“
๐‘”๐‘”
โ„Ž
๐‘–๐‘–
๐ต๐ต
๐‘’๐‘’๐‘๐‘ ๐‘๐‘ ๐‘‘๐‘‘
๐‘–๐‘–
๐‘“๐‘“ ๐‘”๐‘”
โ„Ž
๐‘—๐‘—๐‘๐‘
๐‘—๐‘—
๐œ‘๐œ‘ = |๐‘ƒ๐‘ƒ| + |๐ถ๐ถ+
| + |๐ถ๐ถโˆ’
| = 5
๐‘Ž๐‘Ž ๐‘“๐‘“
๐‘“๐‘“๐‘–๐‘–
๐‘Ž๐‘Ž ๐‘—๐‘—
๐ถ๐ถ+ ๐ถ๐ถโˆ’
Scheme for Incremental Summarization
Our approach
(1) Attempt to move nodes
among supernodes
(2) Accept the move if ๐‹๐‹
decreases
(3) Reject otherwise
Testing node
Current graph Lossless summarization
๐ด๐ด
๐‘Ž๐‘Ž
๐ถ๐ถ
๐บ๐บโˆ—
๐‘Ž๐‘Ž
๐‘๐‘
๐‘‘๐‘‘
๐‘’๐‘’ ๐‘“๐‘“
๐‘”๐‘”
โ„Ž
๐‘–๐‘–
๐ต๐ต
๐‘’๐‘’๐‘๐‘ ๐‘๐‘ ๐‘‘๐‘‘
๐‘–๐‘–
๐‘“๐‘“ ๐‘”๐‘”
โ„Ž
๐‘—๐‘—๐‘๐‘
๐‘—๐‘—
Candidate
๐œ‘๐œ‘ = |๐‘ƒ๐‘ƒ| + |๐ถ๐ถ+
| + |๐ถ๐ถโˆ’
| = 5
๐‘Ž๐‘Ž ๐‘“๐‘“
๐‘“๐‘“๐‘–๐‘–
๐‘Ž๐‘Ž ๐‘—๐‘—
๐ถ๐ถ+ ๐ถ๐ถโˆ’
Scheme for Incremental Summarization
Our approach
(1) Attempt to move nodes
among supernodes
(2) Accept the move if ๐‹๐‹
decreases
(3) Reject otherwise
Testing node
Testing
Current graph Lossless summarization
๐ด๐ด
๐‘Ž๐‘Ž
๐ถ๐ถ
๐บ๐บโˆ—
๐‘Ž๐‘Ž
๐‘๐‘
๐‘‘๐‘‘
๐‘’๐‘’ ๐‘“๐‘“
๐‘”๐‘”
โ„Ž
๐‘–๐‘–
๐ต๐ต
๐‘’๐‘’๐‘๐‘ ๐‘๐‘ ๐‘‘๐‘‘
๐‘–๐‘–
๐‘“๐‘“ ๐‘”๐‘”
โ„Ž
๐‘—๐‘—๐‘๐‘
๐‘—๐‘—
Candidate
๐œ‘๐œ‘ = |๐‘ƒ๐‘ƒ| + |๐ถ๐ถ+
| + |๐ถ๐ถโˆ’
| = 5
๐‘Ž๐‘Ž ๐‘“๐‘“
๐‘“๐‘“๐‘–๐‘–
๐‘Ž๐‘Ž ๐‘—๐‘—
๐ถ๐ถ+ ๐ถ๐ถโˆ’
Scheme for Incremental Summarization
MoSSo finds...
(1) Testing nodes
whose move likely
results in ๐›—๐›— โ†“
(2) Candidates for
testing node, likely
resulting in ๐›—๐›— โ†“
Current graph Lossless summarization
๐ด๐ด
๐‘Ž๐‘Ž
๐ถ๐ถ
๐บ๐บโˆ—
๐‘Ž๐‘Ž
๐‘๐‘
๐‘‘๐‘‘
๐‘’๐‘’ ๐‘“๐‘“
๐‘”๐‘”
โ„Ž
๐‘–๐‘–
๐ต๐ต
๐‘’๐‘’๐‘๐‘ ๐‘๐‘ ๐‘‘๐‘‘
๐‘–๐‘–
๐‘“๐‘“ ๐‘”๐‘”
โ„Ž
๐‘—๐‘—๐‘๐‘
๐‘—๐‘—
๐œ‘๐œ‘ = |๐‘ƒ๐‘ƒ| + |๐ถ๐ถ+
| + |๐ถ๐ถโˆ’
| = 5
๐‘Ž๐‘Ž ๐‘“๐‘“
๐‘“๐‘“๐‘–๐‘–
๐‘Ž๐‘Ž ๐‘—๐‘—
๐ถ๐ถ+ ๐ถ๐ถโˆ’
Lossless summarization
Scheme for Incremental Summarization
Current graph
๐ด๐ด
๐‘Ž๐‘Ž
๐ถ๐ถ
๐บ๐บโˆ—
๐ต๐ต
๐‘’๐‘’๐‘๐‘ ๐‘๐‘ ๐‘‘๐‘‘
๐‘–๐‘–
๐‘“๐‘“ ๐‘”๐‘”
โ„Ž
๐‘Ž๐‘Ž
๐‘๐‘
๐‘‘๐‘‘
๐‘’๐‘’ ๐‘“๐‘“
๐‘”๐‘”
โ„Ž
๐‘–๐‘–
๐‘—๐‘—๐‘๐‘
๐‘—๐‘—Testing node
Candidate
๐œ‘๐œ‘ = |๐‘ƒ๐‘ƒ| + |๐ถ๐ถ+
| + |๐ถ๐ถโˆ’
| = 5
๐‘Ž๐‘Ž ๐‘“๐‘“
๐‘“๐‘“๐‘–๐‘–
๐‘Ž๐‘Ž ๐‘—๐‘—
๐ถ๐ถ+ ๐ถ๐ถโˆ’
Scheme for Incremental Summarization
Current graph Lossless summarization
๐ด๐ด
๐‘Ž๐‘Ž
๐ถ๐ถ
๐บ๐บโˆ—
๐‘Ž๐‘Ž
๐‘๐‘
๐‘‘๐‘‘
๐‘’๐‘’ ๐‘“๐‘“
๐‘”๐‘”
โ„Ž
๐‘–๐‘–
๐ต๐ต
๐‘’๐‘’๐‘๐‘ ๐‘๐‘ ๐‘‘๐‘‘
๐‘–๐‘–
๐‘“๐‘“ ๐‘”๐‘”
โ„Ž
๐‘—๐‘—๐‘๐‘
๐‘—๐‘—
๐œ‘๐œ‘ = |๐‘ƒ๐‘ƒ| + |๐ถ๐ถ+
| + |๐ถ๐ถโˆ’
| = 4
๐ถ๐ถ+ ๐ถ๐ถโˆ’๐ถ๐ถ+ ๐ถ๐ถโˆ’
๐‘Ž๐‘Ž ๐‘“๐‘“ ๐‘“๐‘“๐‘–๐‘–
MoSSo: Main Ideas
โ€ข Step 1: Set testing nodes
โ€ข (S1) No restoration from the
current summarization ๐บ๐บ๐‘ก๐‘ก
โˆ—
= ๐‘†๐‘†๐‘ก๐‘ก, ๐‘ƒ๐‘ƒ๐‘ก๐‘ก ,
๐ถ๐ถ๐‘ก๐‘ก = (๐ถ๐ถ๐‘ก๐‘ก
+
, ๐ถ๐ถ๐‘ก๐‘ก
โˆ’
)
โ€ข (S2) Reduce redundant testing by a
stochastic filtering
๐‘ข๐‘ข ๐‘ฃ๐‘ฃ
Changed edge
๐‘’๐‘’ = {๐‘ข๐‘ข, ๐‘ฃ๐‘ฃ}
โ€ข Step 2: Find candidate
โ€ข (S3) Utilize an incremental
coarse clustering
โ€ข (S4) Inject flexibility to
reorganization of supernodes
Which nodes to move?
(testing nodes)
๐‘ข๐‘ข ๐‘ฃ๐‘ฃ
Testing
node
Move into
which supernode?
(candidates)
MoSSo: Main Ideas
โ€ข Step 1: Set testing nodes
โ€ข (S1) No restoration from the
current summarization ๐บ๐บ๐‘ก๐‘ก
โˆ—
= ๐‘†๐‘†๐‘ก๐‘ก, ๐‘ƒ๐‘ƒ๐‘ก๐‘ก ,
๐ถ๐ถ๐‘ก๐‘ก = (๐ถ๐ถ๐‘ก๐‘ก
+
, ๐ถ๐ถ๐‘ก๐‘ก
โˆ’
)
โ€ข (S2) Reduce redundant testing by a
stochastic filtering
Repeated
Time
๐‘ข๐‘ข ๐‘ฃ๐‘ฃ
Changed edge
๐‘’๐‘’ = {๐‘ข๐‘ข, ๐‘ฃ๐‘ฃ}
โ€ข Step 2: Find candidate
โ€ข (S3) Utilize an incremental
coarse clustering
โ€ข (S4) Inject flexibility to
reorganization of supernodes
Performance
Which nodes to move?
(testing nodes)
๐‘ข๐‘ข ๐‘ฃ๐‘ฃ
Testing
node
Move into
which supernode?
(candidates)
MoSSo: Details
Parameters:
โ€ข Sample number ๐’„๐’„
โ€ข Escape prob. ๐’†๐’†
Input:
โ€ข Summary graph ๐‘ฎ๐‘ฎ๐’•๐’•
โˆ—
& Edge corrections ๐‘ช๐‘ช๐’•๐’•
โ€ข Edge change ๐’–๐’–, ๐’—๐’— + (addition) or ๐’–๐’–, ๐’—๐’— โˆ’ (deletion)
Output:
โ€ข Summary graph ๐‘ฎ๐‘ฎ๐’•๐’•+๐Ÿ๐Ÿ
โˆ—
& Edge corrections ๐‘ช๐‘ช๐’•๐’•+๐Ÿ๐Ÿ
MoSSo: Details (Step 1) โ€“ MCMC
๐‘ข๐‘ข
๐‘ฃ๐‘ฃ
Changed edge
๐‘’๐‘’ = {๐‘ข๐‘ข, ๐‘ฃ๐‘ฃ}
๐‘ต๐‘ต(๐’–๐’–): Neighborhood of a node ๐’–๐’–
Notation
MoSSo: Details (Step 1) โ€“ MCMC
Neighborhood ๐‘ต๐‘ต(๐’–๐’–) of input node ๐’–๐’– is more likely affected
๐‘ข๐‘ข
๐‘ฃ๐‘ฃ
Changed edge
๐‘’๐‘’ = {๐‘ข๐‘ข, ๐‘ฃ๐‘ฃ}
๐‘ต๐‘ต(๐’–๐’–): Neighborhood of a node ๐’–๐’–
Notation
MoSSo: Details (Step 1) โ€“ MCMC
Neighborhood ๐‘ต๐‘ต(๐’–๐’–) of input node ๐’–๐’– is more likely affected
๏ƒจ Focus on testings nodes in ๐‘ต๐‘ต(๐’–๐’–)๐‘ข๐‘ข
๐‘ฃ๐‘ฃ
Changed edge
๐‘’๐‘’ = {๐‘ข๐‘ข, ๐‘ฃ๐‘ฃ}
๐‘ต๐‘ต(๐’–๐’–): Neighborhood of a node ๐’–๐’–
Notation
MoSSo: Details (Step 1) โ€“ MCMC
Neighborhood ๐‘ต๐‘ต(๐’–๐’–) of input node ๐’–๐’– is more likely affected
๏ƒจ Focus on testings nodes in ๐‘ต๐‘ต(๐’–๐’–)
P1. To sample neighbors, one should retrieve all ๐‘ต๐‘ต(๐’–๐’–) from
๐‘ฎ๐‘ฎโˆ—
and ๐‘ช๐‘ช, which takes ๐‘ถ๐‘ถ(๐’‚๐’‚๐’‚๐’‚๐’‚๐’‚๐’‚๐’‚๐’‚๐’‚๐’‚๐’‚๐’‚๐’‚ ๐’…๐’…๐’…๐’…๐’…๐’…๐’…๐’…๐’…๐’…๐’…๐’…) time on average
๐‘ข๐‘ข
๐‘ฃ๐‘ฃ
Changed edge
๐‘’๐‘’ = {๐‘ข๐‘ข, ๐‘ฃ๐‘ฃ}
๐‘ต๐‘ต(๐’–๐’–): Neighborhood of a node ๐’–๐’–
Notation
MoSSo: Details (Step 1) โ€“ MCMC
Neighborhood ๐‘ต๐‘ต(๐’–๐’–) of input node ๐’–๐’– is more likely affected
๏ƒจ Focus on testings nodes in ๐‘ต๐‘ต(๐’–๐’–)
P1. To sample neighbors, one should retrieve all ๐‘ต๐‘ต(๐’–๐’–) from
๐‘ฎ๐‘ฎโˆ—
and ๐‘ช๐‘ช, which takes ๐‘ถ๐‘ถ(๐’‚๐’‚๐’‚๐’‚๐’‚๐’‚๐’‚๐’‚๐’‚๐’‚๐’‚๐’‚๐’‚๐’‚ ๐’…๐’…๐’…๐’…๐’…๐’…๐’…๐’…๐’…๐’…๐’…๐’…) time on average
๏ƒจ Deadly to scalabilityโ€ฆ
๐‘ข๐‘ข
๐‘ฃ๐‘ฃ
Changed edge
๐‘’๐‘’ = {๐‘ข๐‘ข, ๐‘ฃ๐‘ฃ}
๐‘ต๐‘ต(๐’–๐’–): Neighborhood of a node ๐’–๐’–
Notation
MoSSo: Details (Step 1) โ€“ MCMC
Neighborhood ๐‘ต๐‘ต(๐’–๐’–) of input node ๐’–๐’– is more likely affected
๏ƒจ Focus on testings nodes in ๐‘ต๐‘ต(๐’–๐’–)
P1. To sample neighbors, one should retrieve all ๐‘ต๐‘ต(๐’–๐’–) from
๐‘ฎ๐‘ฎโˆ—
and ๐‘ช๐‘ช, which takes ๐‘ถ๐‘ถ(๐’‚๐’‚๐’‚๐’‚๐’‚๐’‚๐’‚๐’‚๐’‚๐’‚๐’‚๐’‚๐’‚๐’‚ ๐’…๐’…๐’…๐’…๐’…๐’…๐’…๐’…๐’…๐’…๐’…๐’…) time on average
๏ƒจ Deadly to scalabilityโ€ฆ
๐‘ข๐‘ข
๐‘ฃ๐‘ฃ
Changed edge
๐‘’๐‘’ = {๐‘ข๐‘ข, ๐‘ฃ๐‘ฃ}
Graph densification law [LKF05]:
โ€œThe average degree of real-world graphs increases over time.โ€
๐‘ต๐‘ต(๐’–๐’–): Neighborhood of a node ๐’–๐’–
Notation
MoSSo: Details (Step 1) โ€“ MCMC (cont.)
S1. Without full retrievals of ๐‘ต๐‘ต(๐’–๐’–), sample ๐’„๐’„ neighbors in un
iformly random by using Markov Chain Monte Carlo method
(MCMC)
๏ƒจ MCMC method: sampling from a random variable with its
probability density proportional to a given function
๐‘ข๐‘ข
๐‘ฃ๐‘ฃ
MoSSo: Details (Step 1) โ€“ Probabilistic Filtering
Test all the sampled nodes?
๐‘ฃ๐‘ฃ
๐‘ข๐‘ข
MoSSo: Details (Step 1) โ€“ Probabilistic Filtering
Test all the sampled nodes? ๏ƒจ Better notโ€ฆ
๐‘ฃ๐‘ฃ
๐‘ข๐‘ข
MoSSo: Details (Step 1) โ€“ Probabilistic Filtering
Test all the sampled nodes?
P2. Too frequent testing on high-degree nodes
as ๐‘ƒ๐‘ƒ(๐‘ฃ๐‘ฃ sampled) โˆ ๐‘‘๐‘‘๐‘‘๐‘‘๐‘‘๐‘‘(๐‘ฃ๐‘ฃ)
๏ƒจ Better notโ€ฆ
๐‘ฃ๐‘ฃ
๐‘ข๐‘ข
MoSSo: Details (Step 1) โ€“ Probabilistic Filtering
Test all the sampled nodes?
P2. Too frequent testing on high-degree nodes
as ๐‘ƒ๐‘ƒ(๐‘ฃ๐‘ฃ sampled) โˆ ๐‘‘๐‘‘๐‘‘๐‘‘๐‘‘๐‘‘(๐‘ฃ๐‘ฃ)
Computationally
heavy
(Too many nbrs)
๏ƒจ Better notโ€ฆ
- Updating the optimal encoding
- Computing the change ๐›ฅ๐›ฅ๐›ฅ๐›ฅ in the description cost
๐‘ฃ๐‘ฃ
๐‘ข๐‘ข
MoSSo: Details (Step 1) โ€“ Probabilistic Filtering
Test all the sampled nodes?
P2. Too frequent testing on high-degree nodes
as ๐‘ƒ๐‘ƒ(๐‘ฃ๐‘ฃ sampled) โˆ ๐‘‘๐‘‘๐‘‘๐‘‘๐‘‘๐‘‘(๐‘ฃ๐‘ฃ)
Computationally
heavy
(Too many nbrs)
S2. Test a sampled node ๐‘ฃ๐‘ฃ w.p.
1
๐‘‘๐‘‘๐‘‘๐‘‘๐‘‘๐‘‘(๐‘ฃ๐‘ฃ)
(1) Likely to avoid expensive testing on high-degree nodes
(2) In expectation, ๐‘ƒ๐‘ƒ(๐‘ฃ๐‘ฃ: actually tested) is the same across
all nodes ๐‘ฃ๐‘ฃ (i.e., smoothen unbalance in # of testing)
๏ƒจ Better notโ€ฆ
- Updating the optimal encoding
- Computing the change ๐›ฅ๐›ฅ๐›ฅ๐›ฅ in the description cost
๐‘ฃ๐‘ฃ
๐‘ข๐‘ข
MoSSo: Details (Step 2) โ€“ Coarse Clustering
Testing
node
๐‘ฆ๐‘ฆ
๐‘ฃ๐‘ฃ
๐‘ข๐‘ข
MoSSo: Details (Step 2) โ€“ Coarse Clustering
P3. Among many choices, how do we know โ€goodโ€ candidates?
Testing
node
๐‘ฆ๐‘ฆ
(likely resulting in ๐‹๐‹ โ†“)
๐‘ฃ๐‘ฃ
๐‘ข๐‘ข
MoSSo: Details (Step 2) โ€“ Coarse Clustering
P3. Among many choices, how do we know โ€goodโ€ candidates?
Testing
node
๐‘ฆ๐‘ฆ
(likely resulting in ๐‹๐‹ โ†“)
S3. Utilize an incremental coarse clustering
๏ƒจ Desirable: Nodes with โ€œsimilar connectivityโ€
in the same cluster
๏ƒจ Any incremental coarse clustering with the
desirable property!
๐‘ฃ๐‘ฃ
๐‘ข๐‘ข
MoSSo: Details (Step 2) โ€“ Coarse Clustering
P3. Among many choices, how do we know โ€goodโ€ candidates?
Testing
node
๐‘ฆ๐‘ฆ
(likely resulting in ๐‹๐‹ โ†“)
S3. Utilize an incremental coarse clustering
๏ƒจ Desirable: Nodes with โ€œsimilar connectivityโ€
in the same cluster
๏ƒจ Any incremental coarse clustering with the
desirable property!
(1) Fast with the desirable theoretical property:
๐‘ท๐‘ท ๐’–๐’–, ๐’—๐’— โˆˆ ๐’”๐’”๐’”๐’”๐’”๐’”๐’”๐’” ๐’„๐’„๐’„๐’„๐’„๐’„๐’„๐’„๐’„๐’„๐’„๐’„๐’„๐’„ โˆ ๐‘ฑ๐‘ฑ๐‘ฑ๐‘ฑ๐‘ฑ๐‘ฑ๐‘ฑ๐‘ฑ๐‘ฑ๐‘ฑ๐‘ฑ๐‘ฑ๐‘ฑ๐‘ฑ(๐‘ต๐‘ต ๐’–๐’– , ๐‘ต๐‘ต ๐’—๐’— )
โ‡’ Grouping nodes with similar connectivity
Min-hashing
๐‘ฃ๐‘ฃ
๐‘ข๐‘ข
MoSSo: Details (Step 2) โ€“ Coarse Clustering
P3. Among many choices, how do we know โ€goodโ€ candidates?
Testing
node
๐‘ฆ๐‘ฆ
(likely resulting in ๐‹๐‹ โ†“)
S3. Utilize an incremental coarse clustering
๏ƒจ Desirable: Nodes with โ€œsimilar connectivityโ€
in the same cluster
๏ƒจ Any incremental coarse clustering with the
desirable property!
(1) Fast with the desirable theoretical property:
(2) Clusters from min-hashing: updated rapidly in response to edge changes
๐‘ท๐‘ท ๐’–๐’–, ๐’—๐’— โˆˆ ๐’”๐’”๐’”๐’”๐’”๐’”๐’”๐’” ๐’„๐’„๐’„๐’„๐’„๐’„๐’„๐’„๐’„๐’„๐’„๐’„๐’„๐’„ โˆ ๐‘ฑ๐‘ฑ๐‘ฑ๐‘ฑ๐‘ฑ๐‘ฑ๐‘ฑ๐‘ฑ๐‘ฑ๐‘ฑ๐‘ฑ๐‘ฑ๐‘ฑ๐‘ฑ(๐‘ต๐‘ต ๐’–๐’– , ๐‘ต๐‘ต ๐’—๐’— )
โ‡’ Grouping nodes with similar connectivity
Min-hashing
๐‘ฃ๐‘ฃ
๐‘ข๐‘ข
MoSSo: Details (Step 2) โ€“ Separation of Node
๐‘ฆ๐‘ฆ
๐‘ฃ๐‘ฃ
Testing
node
๐‘ข๐‘ข
MoSSo: Details (Step 2) โ€“ Separation of Node
P4. In this way, moving nodes only decreases or maintains ๐‘บ๐‘บ
๏ƒจ Discourage reorganizing supernodes in the long run
๐‘ฆ๐‘ฆ
๐‘ฃ๐‘ฃ
Testing
node
๐‘ข๐‘ข
MoSSo: Details (Step 2) โ€“ Separation of Node
P4. In this way, moving nodes only decreases or maintains ๐‘บ๐‘บ
๏ƒจ Discourage reorganizing supernodes in the long run
๐‘ฆ๐‘ฆ
S4. Instead of finding a candidate, separate ๐’š๐’š from ๐‘บ๐‘บ๐’š๐’š and
create a singleton supernode ๐‘บ๐‘บ๐’š๐’š w.p. escape probability ๐’†๐’†
๐‘ฃ๐‘ฃ
Testing
node
๐‘ข๐‘ข
MoSSo: Details (Step 2) โ€“ Separation of Node
P4. In this way, moving nodes only decreases or maintains ๐‘บ๐‘บ
๏ƒจ Discourage reorganizing supernodes in the long run
๐‘ฆ๐‘ฆ
S4. Instead of finding a candidate, separate ๐’š๐’š from ๐‘บ๐‘บ๐’š๐’š and
create a singleton supernode ๐‘บ๐‘บ๐’š๐’š w.p. escape probability ๐’†๐’†
๐‘ฃ๐‘ฃ
Testing
node
๐‘ข๐‘ข
MoSSo: Details (Step 2) โ€“ Separation of Node
P4. In this way, moving nodes only decreases or maintains ๐‘บ๐‘บ
๏ƒจ Discourage reorganizing supernodes in the long run
๐‘ฆ๐‘ฆ
S4. Instead of finding a candidate, separate ๐’š๐’š from ๐‘บ๐‘บ๐’š๐’š and
create a singleton supernode ๐‘บ๐‘บ๐’š๐’š w.p. escape probability ๐’†๐’†
๏ƒจ Inject flexibility to supernodes (a partition of ๐‘ฝ๐‘ฝ)
๏ƒจ Empirically significant improvement in compression rates
๐‘ฃ๐‘ฃ
Testing
node
๐‘ข๐‘ข
MoSSo: Details (Step 2) โ€“ Separation of Node
P4. In this way, moving nodes only decreases or maintains ๐‘บ๐‘บ
๏ƒจ Discourage reorganizing supernodes in the long run
๐‘ฆ๐‘ฆ
S4. Instead of finding a candidate, separate ๐’š๐’š from ๐‘บ๐‘บ๐’š๐’š and
create a singleton supernode ๐‘บ๐‘บ๐’š๐’š w.p. escape probability ๐’†๐’†
๏ƒจ Inject flexibility to supernodes (a partition of ๐‘ฝ๐‘ฝ)
๏ƒจ Empirically significant improvement in compression rates
Similar to before,
accept or reject the separation depending on ฮ”๐‹๐‹
๐‘ฃ๐‘ฃ
Testing
node
๐‘ข๐‘ข
Outline
โ€ข Preliminaries
โ€ข Proposed Algorithm: MoSSo
โ€ข Experimental Results
โ€ข Conclusions
Experimental Settings
โ€ข 10 Real-world Graphs (up to 0.3B edges)
Experimental Settings
โ€ข 10 Real-world Graphs (up to 0.3B edges)
Web
Experimental Settings
โ€ข 10 Real-world Graphs (up to 0.3B edges)
Web Social
Experimental Settings
โ€ข 10 Real-world Graphs (up to 0.3B edges)
Web Social Collaboration
Experimental Settings
โ€ข 10 Real-world Graphs (up to 0.3B edges)
Web Social Collaboration Email And others!
Experimental Settings
โ€ข 10 Real-world Graphs (up to 0.3B edges)
โ€ข Batch loseless graph summarization algorithms:
โ€ข Randomized [NSR08], SAGS [KNL15], SWeG [SGKR19]
Web Social Collaboration Email And others!
Baseline Incremental Algorithms
โ€ข MoSSo-Greedy:
โ€ข Greedily moves nodes related to inserted/deleted edge, while fixing the
other nodes so that the objective is minimized
โ€ข MoSSo-MCMC
โ€ข See the paper for details
โ€ข MoSSo-Simple
โ€ข MoSSo without coarse clustering
Experiment results: Speed
โ€ข MoSSo processed each change up to 7 orders of magnitude faster
than running the fastest batch algorithm
Experiment results: Speed
โ€ข MoSSo processed each change up to 7 orders of magnitude faster
than running the fastest batch algorithm
UK (Insertion-only)
Experiment results: Speed
โ€ข MoSSo processed each change up to 7 orders of magnitude faster
than running the fastest batch algorithm
Insertion-only graph streams
Fully-dynamic graph streams
UK (Insertion-only)
Experiment results: Compression Performance
โ€ข The compression ratio of MoSSo was even comparable to those of the
best batch algorithms
โ€ข MoSSo achieved the best compression ratios among the streaming
algorithms
Compression ratio: ( ๐‘ท๐‘ท + ๐‘ช๐‘ช+ + ๐‘ช๐‘ชโˆ’ )/|๐‘ฌ๐‘ฌ|
Notation
Experiment results: Compression Performance
โ€ข The compression ratio of MoSSo was even comparable to those of the
best batch algorithms
โ€ข MoSSo achieved the best compression ratios among the streaming
algorithms
UK
Compression ratio: ( ๐‘ท๐‘ท + ๐‘ช๐‘ช+ + ๐‘ช๐‘ชโˆ’ )/|๐‘ฌ๐‘ฌ|
Notation
Experiment results: Compression Performance
โ€ข The compression ratio of MoSSo was even comparable to those of the
best batch algorithms
โ€ข MoSSo achieved the best compression ratios among the streaming
algorithms
PR EN FB
DB YT SK
LJ EU HW
UK
Compression ratio: ( ๐‘ท๐‘ท + ๐‘ช๐‘ช+ + ๐‘ช๐‘ชโˆ’ )/|๐‘ฌ๐‘ฌ|
Notation
Experiment results: Scalability
โ€ข MoSSo processed each change in near-constant time
Experiment results: Scalability
EU (Insertion-only) SK (Fully-dynamic)
โ€ข MoSSo processed each change in near-constant time
Outline
โ€ข Preliminaries
โ€ข Proposed Algorithm: MoSSo
โ€ข Experimental Results
โ€ข Conclusions
Conclusions
We propose MoSSo, the first algorithm for incremental lossless graph summarization
Conclusions
Fast and โ€˜any timeโ€™
We propose MoSSo, the first algorithm for incremental lossless graph summarization
Conclusions
Fast and โ€˜any timeโ€™ Effective
We propose MoSSo, the first algorithm for incremental lossless graph summarization
Conclusions
Fast and โ€˜any timeโ€™ Effective Scalable
We propose MoSSo, the first algorithm for incremental lossless graph summarization
Conclusions
Fast and โ€˜any timeโ€™ Effective Scalable
The code and datasets used in the paper
are available at http://dmlab.kaist.ac.kr/mosso/
We propose MoSSo, the first algorithm for incremental lossless graph summarization
Incremental Lossless
Graph Summarization
Jihoon Ko* Yunbum Kook* Kijung Shin

More Related Content

Similar to "Incremental Lossless Graph Summarization", KDD 2020

Applied Algorithms and Structures week999
Applied Algorithms and Structures week999Applied Algorithms and Structures week999
Applied Algorithms and Structures week999
fashiontrendzz20
ย 
GraphBLAS: A linear algebraic approach for high-performance graph queries
GraphBLAS: A linear algebraic approach for high-performance graph queriesGraphBLAS: A linear algebraic approach for high-performance graph queries
GraphBLAS: A linear algebraic approach for high-performance graph queries
Gรกbor Szรกrnyas
ย 
Linear regression, costs & gradient descent
Linear regression, costs & gradient descentLinear regression, costs & gradient descent
Linear regression, costs & gradient descent
Revanth Kumar
ย 
Pre-calculus 1, 2 and Calculus I (exam notes)
Pre-calculus 1, 2 and Calculus I (exam notes)Pre-calculus 1, 2 and Calculus I (exam notes)
Pre-calculus 1, 2 and Calculus I (exam notes)
William Faber
ย 
Finding Top-k Similar Graphs in Graph Database @ ReadingCircle
Finding Top-k Similar Graphs in Graph Database @ ReadingCircleFinding Top-k Similar Graphs in Graph Database @ ReadingCircle
Finding Top-k Similar Graphs in Graph Database @ ReadingCircle
charlingual
ย 
GAN in_kakao
GAN in_kakaoGAN in_kakao
GAN in_kakao
Junho Kim
ย 
Paper Study: Melding the data decision pipeline
Paper Study: Melding the data decision pipelinePaper Study: Melding the data decision pipeline
Paper Study: Melding the data decision pipeline
ChenYiHuang5
ย 
Basic calculus (ii) recap
Basic calculus (ii) recapBasic calculus (ii) recap
Basic calculus (ii) recap
Farzad Javidanrad
ย 
Complex differentiation contains analytic function.pptx
Complex differentiation contains analytic function.pptxComplex differentiation contains analytic function.pptx
Complex differentiation contains analytic function.pptx
jyotidighole2
ย 
GraphTransformations.pptx
GraphTransformations.pptxGraphTransformations.pptx
GraphTransformations.pptx
SrideviNagarjuna
ย 
Unit-1 Basic Concept of Algorithm.pptx
Unit-1 Basic Concept of Algorithm.pptxUnit-1 Basic Concept of Algorithm.pptx
Unit-1 Basic Concept of Algorithm.pptx
ssuser01e301
ย 
Method of characteristic for bell nozzle design
Method of characteristic for bell nozzle designMethod of characteristic for bell nozzle design
Method of characteristic for bell nozzle design
Mahdi H. Gholi Nejad
ย 
Max flows via electrical flows (long talk)
Max flows via electrical flows (long talk)Max flows via electrical flows (long talk)
Max flows via electrical flows (long talk)Thatchaphol Saranurak
ย 
Differential Geometry for Machine Learning
Differential Geometry for Machine LearningDifferential Geometry for Machine Learning
Differential Geometry for Machine Learning
SEMINARGROOT
ย 
Differentiation
Differentiation Differentiation
Differentiation
EFREN ARCHIDE
ย 
IJCAI13 Paper review: Large-scale spectral clustering on graphs
IJCAI13 Paper review: Large-scale spectral clustering on graphsIJCAI13 Paper review: Large-scale spectral clustering on graphs
IJCAI13 Paper review: Large-scale spectral clustering on graphs
Akisato Kimura
ย 
Chapter 1 - What is a Function.pdf
Chapter 1 - What is a Function.pdfChapter 1 - What is a Function.pdf
Chapter 1 - What is a Function.pdf
ManarKareem1
ย 
A Non Local Boundary Value Problem with Integral Boundary Condition
A Non Local Boundary Value Problem with Integral Boundary ConditionA Non Local Boundary Value Problem with Integral Boundary Condition
A Non Local Boundary Value Problem with Integral Boundary Condition
IJMERJOURNAL
ย 
Computer Graphics Unit 1
Computer Graphics Unit 1Computer Graphics Unit 1
Computer Graphics Unit 1
aravindangc
ย 
Machine learning introduction lecture notes
Machine learning introduction lecture notesMachine learning introduction lecture notes
Machine learning introduction lecture notes
UmeshJagga1
ย 

Similar to "Incremental Lossless Graph Summarization", KDD 2020 (20)

Applied Algorithms and Structures week999
Applied Algorithms and Structures week999Applied Algorithms and Structures week999
Applied Algorithms and Structures week999
ย 
GraphBLAS: A linear algebraic approach for high-performance graph queries
GraphBLAS: A linear algebraic approach for high-performance graph queriesGraphBLAS: A linear algebraic approach for high-performance graph queries
GraphBLAS: A linear algebraic approach for high-performance graph queries
ย 
Linear regression, costs & gradient descent
Linear regression, costs & gradient descentLinear regression, costs & gradient descent
Linear regression, costs & gradient descent
ย 
Pre-calculus 1, 2 and Calculus I (exam notes)
Pre-calculus 1, 2 and Calculus I (exam notes)Pre-calculus 1, 2 and Calculus I (exam notes)
Pre-calculus 1, 2 and Calculus I (exam notes)
ย 
Finding Top-k Similar Graphs in Graph Database @ ReadingCircle
Finding Top-k Similar Graphs in Graph Database @ ReadingCircleFinding Top-k Similar Graphs in Graph Database @ ReadingCircle
Finding Top-k Similar Graphs in Graph Database @ ReadingCircle
ย 
GAN in_kakao
GAN in_kakaoGAN in_kakao
GAN in_kakao
ย 
Paper Study: Melding the data decision pipeline
Paper Study: Melding the data decision pipelinePaper Study: Melding the data decision pipeline
Paper Study: Melding the data decision pipeline
ย 
Basic calculus (ii) recap
Basic calculus (ii) recapBasic calculus (ii) recap
Basic calculus (ii) recap
ย 
Complex differentiation contains analytic function.pptx
Complex differentiation contains analytic function.pptxComplex differentiation contains analytic function.pptx
Complex differentiation contains analytic function.pptx
ย 
GraphTransformations.pptx
GraphTransformations.pptxGraphTransformations.pptx
GraphTransformations.pptx
ย 
Unit-1 Basic Concept of Algorithm.pptx
Unit-1 Basic Concept of Algorithm.pptxUnit-1 Basic Concept of Algorithm.pptx
Unit-1 Basic Concept of Algorithm.pptx
ย 
Method of characteristic for bell nozzle design
Method of characteristic for bell nozzle designMethod of characteristic for bell nozzle design
Method of characteristic for bell nozzle design
ย 
Max flows via electrical flows (long talk)
Max flows via electrical flows (long talk)Max flows via electrical flows (long talk)
Max flows via electrical flows (long talk)
ย 
Differential Geometry for Machine Learning
Differential Geometry for Machine LearningDifferential Geometry for Machine Learning
Differential Geometry for Machine Learning
ย 
Differentiation
Differentiation Differentiation
Differentiation
ย 
IJCAI13 Paper review: Large-scale spectral clustering on graphs
IJCAI13 Paper review: Large-scale spectral clustering on graphsIJCAI13 Paper review: Large-scale spectral clustering on graphs
IJCAI13 Paper review: Large-scale spectral clustering on graphs
ย 
Chapter 1 - What is a Function.pdf
Chapter 1 - What is a Function.pdfChapter 1 - What is a Function.pdf
Chapter 1 - What is a Function.pdf
ย 
A Non Local Boundary Value Problem with Integral Boundary Condition
A Non Local Boundary Value Problem with Integral Boundary ConditionA Non Local Boundary Value Problem with Integral Boundary Condition
A Non Local Boundary Value Problem with Integral Boundary Condition
ย 
Computer Graphics Unit 1
Computer Graphics Unit 1Computer Graphics Unit 1
Computer Graphics Unit 1
ย 
Machine learning introduction lecture notes
Machine learning introduction lecture notesMachine learning introduction lecture notes
Machine learning introduction lecture notes
ย 

Recently uploaded

ไธ€ๆฏ”ไธ€ๅŽŸ็‰ˆ(Deakinๆฏ•ไธš่ฏไนฆ)่ฟช่‚ฏๅคงๅญฆๆฏ•ไธš่ฏๅฆ‚ไฝ•ๅŠž็†
ไธ€ๆฏ”ไธ€ๅŽŸ็‰ˆ(Deakinๆฏ•ไธš่ฏไนฆ)่ฟช่‚ฏๅคงๅญฆๆฏ•ไธš่ฏๅฆ‚ไฝ•ๅŠž็†ไธ€ๆฏ”ไธ€ๅŽŸ็‰ˆ(Deakinๆฏ•ไธš่ฏไนฆ)่ฟช่‚ฏๅคงๅญฆๆฏ•ไธš่ฏๅฆ‚ไฝ•ๅŠž็†
ไธ€ๆฏ”ไธ€ๅŽŸ็‰ˆ(Deakinๆฏ•ไธš่ฏไนฆ)่ฟช่‚ฏๅคงๅญฆๆฏ•ไธš่ฏๅฆ‚ไฝ•ๅŠž็†
oz8q3jxlp
ย 
FP Growth Algorithm and its Applications
FP Growth Algorithm and its ApplicationsFP Growth Algorithm and its Applications
FP Growth Algorithm and its Applications
MaleehaSheikh2
ย 
1.Seydhcuxhxyxhccuuxuxyxyxmisolids 2019.pptx
1.Seydhcuxhxyxhccuuxuxyxyxmisolids 2019.pptx1.Seydhcuxhxyxhccuuxuxyxyxmisolids 2019.pptx
1.Seydhcuxhxyxhccuuxuxyxyxmisolids 2019.pptx
Tiktokethiodaily
ย 
ไธ€ๆฏ”ไธ€ๅŽŸ็‰ˆ(Adelaideๆฏ•ไธš่ฏไนฆ)้˜ฟๅพท่Žฑๅพทๅคงๅญฆๆฏ•ไธš่ฏๅฆ‚ไฝ•ๅŠž็†
ไธ€ๆฏ”ไธ€ๅŽŸ็‰ˆ(Adelaideๆฏ•ไธš่ฏไนฆ)้˜ฟๅพท่Žฑๅพทๅคงๅญฆๆฏ•ไธš่ฏๅฆ‚ไฝ•ๅŠž็†ไธ€ๆฏ”ไธ€ๅŽŸ็‰ˆ(Adelaideๆฏ•ไธš่ฏไนฆ)้˜ฟๅพท่Žฑๅพทๅคงๅญฆๆฏ•ไธš่ฏๅฆ‚ไฝ•ๅŠž็†
ไธ€ๆฏ”ไธ€ๅŽŸ็‰ˆ(Adelaideๆฏ•ไธš่ฏไนฆ)้˜ฟๅพท่Žฑๅพทๅคงๅญฆๆฏ•ไธš่ฏๅฆ‚ไฝ•ๅŠž็†
slg6lamcq
ย 
Criminal IP - Threat Hunting Webinar.pdf
Criminal IP - Threat Hunting Webinar.pdfCriminal IP - Threat Hunting Webinar.pdf
Criminal IP - Threat Hunting Webinar.pdf
Criminal IP
ย 
Sample_Global Non-invasive Prenatal Testing (NIPT) Market, 2019-2030.pdf
Sample_Global Non-invasive Prenatal Testing (NIPT) Market, 2019-2030.pdfSample_Global Non-invasive Prenatal Testing (NIPT) Market, 2019-2030.pdf
Sample_Global Non-invasive Prenatal Testing (NIPT) Market, 2019-2030.pdf
Linda486226
ย 
ไธ€ๆฏ”ไธ€ๅŽŸ็‰ˆ(CBUๆฏ•ไธš่ฏ)ไธๅˆ—้ข ๆตท่ง’ๅคงๅญฆๆฏ•ไธš่ฏๆˆ็ปฉๅ•
ไธ€ๆฏ”ไธ€ๅŽŸ็‰ˆ(CBUๆฏ•ไธš่ฏ)ไธๅˆ—้ข ๆตท่ง’ๅคงๅญฆๆฏ•ไธš่ฏๆˆ็ปฉๅ•ไธ€ๆฏ”ไธ€ๅŽŸ็‰ˆ(CBUๆฏ•ไธš่ฏ)ไธๅˆ—้ข ๆตท่ง’ๅคงๅญฆๆฏ•ไธš่ฏๆˆ็ปฉๅ•
ไธ€ๆฏ”ไธ€ๅŽŸ็‰ˆ(CBUๆฏ•ไธš่ฏ)ไธๅˆ—้ข ๆตท่ง’ๅคงๅญฆๆฏ•ไธš่ฏๆˆ็ปฉๅ•
nscud
ย 
ไธ€ๆฏ”ไธ€ๅŽŸ็‰ˆ(QUๆฏ•ไธš่ฏ)็š‡ๅŽๅคงๅญฆๆฏ•ไธš่ฏๆˆ็ปฉๅ•
ไธ€ๆฏ”ไธ€ๅŽŸ็‰ˆ(QUๆฏ•ไธš่ฏ)็š‡ๅŽๅคงๅญฆๆฏ•ไธš่ฏๆˆ็ปฉๅ•ไธ€ๆฏ”ไธ€ๅŽŸ็‰ˆ(QUๆฏ•ไธš่ฏ)็š‡ๅŽๅคงๅญฆๆฏ•ไธš่ฏๆˆ็ปฉๅ•
ไธ€ๆฏ”ไธ€ๅŽŸ็‰ˆ(QUๆฏ•ไธš่ฏ)็š‡ๅŽๅคงๅญฆๆฏ•ไธš่ฏๆˆ็ปฉๅ•
enxupq
ย 
ไธ€ๆฏ”ไธ€ๅŽŸ็‰ˆ(NYUๆฏ•ไธš่ฏ)็บฝ็บฆๅคงๅญฆๆฏ•ไธš่ฏๆˆ็ปฉๅ•
ไธ€ๆฏ”ไธ€ๅŽŸ็‰ˆ(NYUๆฏ•ไธš่ฏ)็บฝ็บฆๅคงๅญฆๆฏ•ไธš่ฏๆˆ็ปฉๅ•ไธ€ๆฏ”ไธ€ๅŽŸ็‰ˆ(NYUๆฏ•ไธš่ฏ)็บฝ็บฆๅคงๅญฆๆฏ•ไธš่ฏๆˆ็ปฉๅ•
ไธ€ๆฏ”ไธ€ๅŽŸ็‰ˆ(NYUๆฏ•ไธš่ฏ)็บฝ็บฆๅคงๅญฆๆฏ•ไธš่ฏๆˆ็ปฉๅ•
ewymefz
ย 
ไธ€ๆฏ”ไธ€ๅŽŸ็‰ˆ(YUๆฏ•ไธš่ฏ)็บฆๅ…‹ๅคงๅญฆๆฏ•ไธš่ฏๆˆ็ปฉๅ•
ไธ€ๆฏ”ไธ€ๅŽŸ็‰ˆ(YUๆฏ•ไธš่ฏ)็บฆๅ…‹ๅคงๅญฆๆฏ•ไธš่ฏๆˆ็ปฉๅ•ไธ€ๆฏ”ไธ€ๅŽŸ็‰ˆ(YUๆฏ•ไธš่ฏ)็บฆๅ…‹ๅคงๅญฆๆฏ•ไธš่ฏๆˆ็ปฉๅ•
ไธ€ๆฏ”ไธ€ๅŽŸ็‰ˆ(YUๆฏ•ไธš่ฏ)็บฆๅ…‹ๅคงๅญฆๆฏ•ไธš่ฏๆˆ็ปฉๅ•
enxupq
ย 
Levelwise PageRank with Loop-Based Dead End Handling Strategy : SHORT REPORT ...
Levelwise PageRank with Loop-Based Dead End Handling Strategy : SHORT REPORT ...Levelwise PageRank with Loop-Based Dead End Handling Strategy : SHORT REPORT ...
Levelwise PageRank with Loop-Based Dead End Handling Strategy : SHORT REPORT ...
Subhajit Sahu
ย 
Algorithmic optimizations for Dynamic Levelwise PageRank (from STICD) : SHORT...
Algorithmic optimizations for Dynamic Levelwise PageRank (from STICD) : SHORT...Algorithmic optimizations for Dynamic Levelwise PageRank (from STICD) : SHORT...
Algorithmic optimizations for Dynamic Levelwise PageRank (from STICD) : SHORT...
Subhajit Sahu
ย 
ไธ€ๆฏ”ไธ€ๅŽŸ็‰ˆ(CBUๆฏ•ไธš่ฏ)ๅกๆ™ฎ้กฟๅคงๅญฆๆฏ•ไธš่ฏๅฆ‚ไฝ•ๅŠž็†
ไธ€ๆฏ”ไธ€ๅŽŸ็‰ˆ(CBUๆฏ•ไธš่ฏ)ๅกๆ™ฎ้กฟๅคงๅญฆๆฏ•ไธš่ฏๅฆ‚ไฝ•ๅŠž็†ไธ€ๆฏ”ไธ€ๅŽŸ็‰ˆ(CBUๆฏ•ไธš่ฏ)ๅกๆ™ฎ้กฟๅคงๅญฆๆฏ•ไธš่ฏๅฆ‚ไฝ•ๅŠž็†
ไธ€ๆฏ”ไธ€ๅŽŸ็‰ˆ(CBUๆฏ•ไธš่ฏ)ๅกๆ™ฎ้กฟๅคงๅญฆๆฏ•ไธš่ฏๅฆ‚ไฝ•ๅŠž็†
ahzuo
ย 
standardisation of garbhpala offhgfffghh
standardisation of garbhpala offhgfffghhstandardisation of garbhpala offhgfffghh
standardisation of garbhpala offhgfffghh
ArpitMalhotra16
ย 
ใ€็คพๅ†…ๅ‹‰ๅผทไผš่ณ‡ๆ–™_Octo: An Open-Source Generalist Robot Policyใ€‘
ใ€็คพๅ†…ๅ‹‰ๅผทไผš่ณ‡ๆ–™_Octo: An Open-Source Generalist Robot Policyใ€‘ใ€็คพๅ†…ๅ‹‰ๅผทไผš่ณ‡ๆ–™_Octo: An Open-Source Generalist Robot Policyใ€‘
ใ€็คพๅ†…ๅ‹‰ๅผทไผš่ณ‡ๆ–™_Octo: An Open-Source Generalist Robot Policyใ€‘
NABLASๆ ชๅผไผš็คพ
ย 
ไธ€ๆฏ”ไธ€ๅŽŸ็‰ˆ(UofMๆฏ•ไธš่ฏ)ๆ˜Žๅฐผ่‹่พพๅคงๅญฆๆฏ•ไธš่ฏๆˆ็ปฉๅ•
ไธ€ๆฏ”ไธ€ๅŽŸ็‰ˆ(UofMๆฏ•ไธš่ฏ)ๆ˜Žๅฐผ่‹่พพๅคงๅญฆๆฏ•ไธš่ฏๆˆ็ปฉๅ•ไธ€ๆฏ”ไธ€ๅŽŸ็‰ˆ(UofMๆฏ•ไธš่ฏ)ๆ˜Žๅฐผ่‹่พพๅคงๅญฆๆฏ•ไธš่ฏๆˆ็ปฉๅ•
ไธ€ๆฏ”ไธ€ๅŽŸ็‰ˆ(UofMๆฏ•ไธš่ฏ)ๆ˜Žๅฐผ่‹่พพๅคงๅญฆๆฏ•ไธš่ฏๆˆ็ปฉๅ•
ewymefz
ย 
Q1โ€™2024 Update: MYCIโ€™s Leap Year Rebound
Q1โ€™2024 Update: MYCIโ€™s Leap Year ReboundQ1โ€™2024 Update: MYCIโ€™s Leap Year Rebound
Q1โ€™2024 Update: MYCIโ€™s Leap Year Rebound
Oppotus
ย 
Best best suvichar in gujarati english meaning of this sentence as Silk road ...
Best best suvichar in gujarati english meaning of this sentence as Silk road ...Best best suvichar in gujarati english meaning of this sentence as Silk road ...
Best best suvichar in gujarati english meaning of this sentence as Silk road ...
AbhimanyuSinha9
ย 
ไธ€ๆฏ”ไธ€ๅŽŸ็‰ˆ(UMichๆฏ•ไธš่ฏ)ๅฏ†ๆญ‡ๆ นๅคงๅญฆ|ๅฎ‰ๅจœๅ กๅˆ†ๆ กๆฏ•ไธš่ฏๆˆ็ปฉๅ•
ไธ€ๆฏ”ไธ€ๅŽŸ็‰ˆ(UMichๆฏ•ไธš่ฏ)ๅฏ†ๆญ‡ๆ นๅคงๅญฆ|ๅฎ‰ๅจœๅ กๅˆ†ๆ กๆฏ•ไธš่ฏๆˆ็ปฉๅ•ไธ€ๆฏ”ไธ€ๅŽŸ็‰ˆ(UMichๆฏ•ไธš่ฏ)ๅฏ†ๆญ‡ๆ นๅคงๅญฆ|ๅฎ‰ๅจœๅ กๅˆ†ๆ กๆฏ•ไธš่ฏๆˆ็ปฉๅ•
ไธ€ๆฏ”ไธ€ๅŽŸ็‰ˆ(UMichๆฏ•ไธš่ฏ)ๅฏ†ๆญ‡ๆ นๅคงๅญฆ|ๅฎ‰ๅจœๅ กๅˆ†ๆ กๆฏ•ไธš่ฏๆˆ็ปฉๅ•
ewymefz
ย 
ไธ€ๆฏ”ไธ€ๅŽŸ็‰ˆ(IITๆฏ•ไธš่ฏ)ไผŠๅˆฉ่ฏบไผŠ็†ๅทฅๅคงๅญฆๆฏ•ไธš่ฏๆˆ็ปฉๅ•
ไธ€ๆฏ”ไธ€ๅŽŸ็‰ˆ(IITๆฏ•ไธš่ฏ)ไผŠๅˆฉ่ฏบไผŠ็†ๅทฅๅคงๅญฆๆฏ•ไธš่ฏๆˆ็ปฉๅ•ไธ€ๆฏ”ไธ€ๅŽŸ็‰ˆ(IITๆฏ•ไธš่ฏ)ไผŠๅˆฉ่ฏบไผŠ็†ๅทฅๅคงๅญฆๆฏ•ไธš่ฏๆˆ็ปฉๅ•
ไธ€ๆฏ”ไธ€ๅŽŸ็‰ˆ(IITๆฏ•ไธš่ฏ)ไผŠๅˆฉ่ฏบไผŠ็†ๅทฅๅคงๅญฆๆฏ•ไธš่ฏๆˆ็ปฉๅ•
ewymefz
ย 

Recently uploaded (20)

ไธ€ๆฏ”ไธ€ๅŽŸ็‰ˆ(Deakinๆฏ•ไธš่ฏไนฆ)่ฟช่‚ฏๅคงๅญฆๆฏ•ไธš่ฏๅฆ‚ไฝ•ๅŠž็†
ไธ€ๆฏ”ไธ€ๅŽŸ็‰ˆ(Deakinๆฏ•ไธš่ฏไนฆ)่ฟช่‚ฏๅคงๅญฆๆฏ•ไธš่ฏๅฆ‚ไฝ•ๅŠž็†ไธ€ๆฏ”ไธ€ๅŽŸ็‰ˆ(Deakinๆฏ•ไธš่ฏไนฆ)่ฟช่‚ฏๅคงๅญฆๆฏ•ไธš่ฏๅฆ‚ไฝ•ๅŠž็†
ไธ€ๆฏ”ไธ€ๅŽŸ็‰ˆ(Deakinๆฏ•ไธš่ฏไนฆ)่ฟช่‚ฏๅคงๅญฆๆฏ•ไธš่ฏๅฆ‚ไฝ•ๅŠž็†
ย 
FP Growth Algorithm and its Applications
FP Growth Algorithm and its ApplicationsFP Growth Algorithm and its Applications
FP Growth Algorithm and its Applications
ย 
1.Seydhcuxhxyxhccuuxuxyxyxmisolids 2019.pptx
1.Seydhcuxhxyxhccuuxuxyxyxmisolids 2019.pptx1.Seydhcuxhxyxhccuuxuxyxyxmisolids 2019.pptx
1.Seydhcuxhxyxhccuuxuxyxyxmisolids 2019.pptx
ย 
ไธ€ๆฏ”ไธ€ๅŽŸ็‰ˆ(Adelaideๆฏ•ไธš่ฏไนฆ)้˜ฟๅพท่Žฑๅพทๅคงๅญฆๆฏ•ไธš่ฏๅฆ‚ไฝ•ๅŠž็†
ไธ€ๆฏ”ไธ€ๅŽŸ็‰ˆ(Adelaideๆฏ•ไธš่ฏไนฆ)้˜ฟๅพท่Žฑๅพทๅคงๅญฆๆฏ•ไธš่ฏๅฆ‚ไฝ•ๅŠž็†ไธ€ๆฏ”ไธ€ๅŽŸ็‰ˆ(Adelaideๆฏ•ไธš่ฏไนฆ)้˜ฟๅพท่Žฑๅพทๅคงๅญฆๆฏ•ไธš่ฏๅฆ‚ไฝ•ๅŠž็†
ไธ€ๆฏ”ไธ€ๅŽŸ็‰ˆ(Adelaideๆฏ•ไธš่ฏไนฆ)้˜ฟๅพท่Žฑๅพทๅคงๅญฆๆฏ•ไธš่ฏๅฆ‚ไฝ•ๅŠž็†
ย 
Criminal IP - Threat Hunting Webinar.pdf
Criminal IP - Threat Hunting Webinar.pdfCriminal IP - Threat Hunting Webinar.pdf
Criminal IP - Threat Hunting Webinar.pdf
ย 
Sample_Global Non-invasive Prenatal Testing (NIPT) Market, 2019-2030.pdf
Sample_Global Non-invasive Prenatal Testing (NIPT) Market, 2019-2030.pdfSample_Global Non-invasive Prenatal Testing (NIPT) Market, 2019-2030.pdf
Sample_Global Non-invasive Prenatal Testing (NIPT) Market, 2019-2030.pdf
ย 
ไธ€ๆฏ”ไธ€ๅŽŸ็‰ˆ(CBUๆฏ•ไธš่ฏ)ไธๅˆ—้ข ๆตท่ง’ๅคงๅญฆๆฏ•ไธš่ฏๆˆ็ปฉๅ•
ไธ€ๆฏ”ไธ€ๅŽŸ็‰ˆ(CBUๆฏ•ไธš่ฏ)ไธๅˆ—้ข ๆตท่ง’ๅคงๅญฆๆฏ•ไธš่ฏๆˆ็ปฉๅ•ไธ€ๆฏ”ไธ€ๅŽŸ็‰ˆ(CBUๆฏ•ไธš่ฏ)ไธๅˆ—้ข ๆตท่ง’ๅคงๅญฆๆฏ•ไธš่ฏๆˆ็ปฉๅ•
ไธ€ๆฏ”ไธ€ๅŽŸ็‰ˆ(CBUๆฏ•ไธš่ฏ)ไธๅˆ—้ข ๆตท่ง’ๅคงๅญฆๆฏ•ไธš่ฏๆˆ็ปฉๅ•
ย 
ไธ€ๆฏ”ไธ€ๅŽŸ็‰ˆ(QUๆฏ•ไธš่ฏ)็š‡ๅŽๅคงๅญฆๆฏ•ไธš่ฏๆˆ็ปฉๅ•
ไธ€ๆฏ”ไธ€ๅŽŸ็‰ˆ(QUๆฏ•ไธš่ฏ)็š‡ๅŽๅคงๅญฆๆฏ•ไธš่ฏๆˆ็ปฉๅ•ไธ€ๆฏ”ไธ€ๅŽŸ็‰ˆ(QUๆฏ•ไธš่ฏ)็š‡ๅŽๅคงๅญฆๆฏ•ไธš่ฏๆˆ็ปฉๅ•
ไธ€ๆฏ”ไธ€ๅŽŸ็‰ˆ(QUๆฏ•ไธš่ฏ)็š‡ๅŽๅคงๅญฆๆฏ•ไธš่ฏๆˆ็ปฉๅ•
ย 
ไธ€ๆฏ”ไธ€ๅŽŸ็‰ˆ(NYUๆฏ•ไธš่ฏ)็บฝ็บฆๅคงๅญฆๆฏ•ไธš่ฏๆˆ็ปฉๅ•
ไธ€ๆฏ”ไธ€ๅŽŸ็‰ˆ(NYUๆฏ•ไธš่ฏ)็บฝ็บฆๅคงๅญฆๆฏ•ไธš่ฏๆˆ็ปฉๅ•ไธ€ๆฏ”ไธ€ๅŽŸ็‰ˆ(NYUๆฏ•ไธš่ฏ)็บฝ็บฆๅคงๅญฆๆฏ•ไธš่ฏๆˆ็ปฉๅ•
ไธ€ๆฏ”ไธ€ๅŽŸ็‰ˆ(NYUๆฏ•ไธš่ฏ)็บฝ็บฆๅคงๅญฆๆฏ•ไธš่ฏๆˆ็ปฉๅ•
ย 
ไธ€ๆฏ”ไธ€ๅŽŸ็‰ˆ(YUๆฏ•ไธš่ฏ)็บฆๅ…‹ๅคงๅญฆๆฏ•ไธš่ฏๆˆ็ปฉๅ•
ไธ€ๆฏ”ไธ€ๅŽŸ็‰ˆ(YUๆฏ•ไธš่ฏ)็บฆๅ…‹ๅคงๅญฆๆฏ•ไธš่ฏๆˆ็ปฉๅ•ไธ€ๆฏ”ไธ€ๅŽŸ็‰ˆ(YUๆฏ•ไธš่ฏ)็บฆๅ…‹ๅคงๅญฆๆฏ•ไธš่ฏๆˆ็ปฉๅ•
ไธ€ๆฏ”ไธ€ๅŽŸ็‰ˆ(YUๆฏ•ไธš่ฏ)็บฆๅ…‹ๅคงๅญฆๆฏ•ไธš่ฏๆˆ็ปฉๅ•
ย 
Levelwise PageRank with Loop-Based Dead End Handling Strategy : SHORT REPORT ...
Levelwise PageRank with Loop-Based Dead End Handling Strategy : SHORT REPORT ...Levelwise PageRank with Loop-Based Dead End Handling Strategy : SHORT REPORT ...
Levelwise PageRank with Loop-Based Dead End Handling Strategy : SHORT REPORT ...
ย 
Algorithmic optimizations for Dynamic Levelwise PageRank (from STICD) : SHORT...
Algorithmic optimizations for Dynamic Levelwise PageRank (from STICD) : SHORT...Algorithmic optimizations for Dynamic Levelwise PageRank (from STICD) : SHORT...
Algorithmic optimizations for Dynamic Levelwise PageRank (from STICD) : SHORT...
ย 
ไธ€ๆฏ”ไธ€ๅŽŸ็‰ˆ(CBUๆฏ•ไธš่ฏ)ๅกๆ™ฎ้กฟๅคงๅญฆๆฏ•ไธš่ฏๅฆ‚ไฝ•ๅŠž็†
ไธ€ๆฏ”ไธ€ๅŽŸ็‰ˆ(CBUๆฏ•ไธš่ฏ)ๅกๆ™ฎ้กฟๅคงๅญฆๆฏ•ไธš่ฏๅฆ‚ไฝ•ๅŠž็†ไธ€ๆฏ”ไธ€ๅŽŸ็‰ˆ(CBUๆฏ•ไธš่ฏ)ๅกๆ™ฎ้กฟๅคงๅญฆๆฏ•ไธš่ฏๅฆ‚ไฝ•ๅŠž็†
ไธ€ๆฏ”ไธ€ๅŽŸ็‰ˆ(CBUๆฏ•ไธš่ฏ)ๅกๆ™ฎ้กฟๅคงๅญฆๆฏ•ไธš่ฏๅฆ‚ไฝ•ๅŠž็†
ย 
standardisation of garbhpala offhgfffghh
standardisation of garbhpala offhgfffghhstandardisation of garbhpala offhgfffghh
standardisation of garbhpala offhgfffghh
ย 
ใ€็คพๅ†…ๅ‹‰ๅผทไผš่ณ‡ๆ–™_Octo: An Open-Source Generalist Robot Policyใ€‘
ใ€็คพๅ†…ๅ‹‰ๅผทไผš่ณ‡ๆ–™_Octo: An Open-Source Generalist Robot Policyใ€‘ใ€็คพๅ†…ๅ‹‰ๅผทไผš่ณ‡ๆ–™_Octo: An Open-Source Generalist Robot Policyใ€‘
ใ€็คพๅ†…ๅ‹‰ๅผทไผš่ณ‡ๆ–™_Octo: An Open-Source Generalist Robot Policyใ€‘
ย 
ไธ€ๆฏ”ไธ€ๅŽŸ็‰ˆ(UofMๆฏ•ไธš่ฏ)ๆ˜Žๅฐผ่‹่พพๅคงๅญฆๆฏ•ไธš่ฏๆˆ็ปฉๅ•
ไธ€ๆฏ”ไธ€ๅŽŸ็‰ˆ(UofMๆฏ•ไธš่ฏ)ๆ˜Žๅฐผ่‹่พพๅคงๅญฆๆฏ•ไธš่ฏๆˆ็ปฉๅ•ไธ€ๆฏ”ไธ€ๅŽŸ็‰ˆ(UofMๆฏ•ไธš่ฏ)ๆ˜Žๅฐผ่‹่พพๅคงๅญฆๆฏ•ไธš่ฏๆˆ็ปฉๅ•
ไธ€ๆฏ”ไธ€ๅŽŸ็‰ˆ(UofMๆฏ•ไธš่ฏ)ๆ˜Žๅฐผ่‹่พพๅคงๅญฆๆฏ•ไธš่ฏๆˆ็ปฉๅ•
ย 
Q1โ€™2024 Update: MYCIโ€™s Leap Year Rebound
Q1โ€™2024 Update: MYCIโ€™s Leap Year ReboundQ1โ€™2024 Update: MYCIโ€™s Leap Year Rebound
Q1โ€™2024 Update: MYCIโ€™s Leap Year Rebound
ย 
Best best suvichar in gujarati english meaning of this sentence as Silk road ...
Best best suvichar in gujarati english meaning of this sentence as Silk road ...Best best suvichar in gujarati english meaning of this sentence as Silk road ...
Best best suvichar in gujarati english meaning of this sentence as Silk road ...
ย 
ไธ€ๆฏ”ไธ€ๅŽŸ็‰ˆ(UMichๆฏ•ไธš่ฏ)ๅฏ†ๆญ‡ๆ นๅคงๅญฆ|ๅฎ‰ๅจœๅ กๅˆ†ๆ กๆฏ•ไธš่ฏๆˆ็ปฉๅ•
ไธ€ๆฏ”ไธ€ๅŽŸ็‰ˆ(UMichๆฏ•ไธš่ฏ)ๅฏ†ๆญ‡ๆ นๅคงๅญฆ|ๅฎ‰ๅจœๅ กๅˆ†ๆ กๆฏ•ไธš่ฏๆˆ็ปฉๅ•ไธ€ๆฏ”ไธ€ๅŽŸ็‰ˆ(UMichๆฏ•ไธš่ฏ)ๅฏ†ๆญ‡ๆ นๅคงๅญฆ|ๅฎ‰ๅจœๅ กๅˆ†ๆ กๆฏ•ไธš่ฏๆˆ็ปฉๅ•
ไธ€ๆฏ”ไธ€ๅŽŸ็‰ˆ(UMichๆฏ•ไธš่ฏ)ๅฏ†ๆญ‡ๆ นๅคงๅญฆ|ๅฎ‰ๅจœๅ กๅˆ†ๆ กๆฏ•ไธš่ฏๆˆ็ปฉๅ•
ย 
ไธ€ๆฏ”ไธ€ๅŽŸ็‰ˆ(IITๆฏ•ไธš่ฏ)ไผŠๅˆฉ่ฏบไผŠ็†ๅทฅๅคงๅญฆๆฏ•ไธš่ฏๆˆ็ปฉๅ•
ไธ€ๆฏ”ไธ€ๅŽŸ็‰ˆ(IITๆฏ•ไธš่ฏ)ไผŠๅˆฉ่ฏบไผŠ็†ๅทฅๅคงๅญฆๆฏ•ไธš่ฏๆˆ็ปฉๅ•ไธ€ๆฏ”ไธ€ๅŽŸ็‰ˆ(IITๆฏ•ไธš่ฏ)ไผŠๅˆฉ่ฏบไผŠ็†ๅทฅๅคงๅญฆๆฏ•ไธš่ฏๆˆ็ปฉๅ•
ไธ€ๆฏ”ไธ€ๅŽŸ็‰ˆ(IITๆฏ•ไธš่ฏ)ไผŠๅˆฉ่ฏบไผŠ็†ๅทฅๅคงๅญฆๆฏ•ไธš่ฏๆˆ็ปฉๅ•
ย 

"Incremental Lossless Graph Summarization", KDD 2020

  • 1. Incremental Lossless Graph Summarization Jihoon Ko* Yunbum Kook* Kijung Shin
  • 2. Large-scale Graphs are Everywhere! Icon made by Freepik from www.flaticon.com 2B+ active users 600M+ users 1.5B+ users
  • 3. Large-scale Graphs are Everywhere! (cont.) 4B+ web pages 5M papers 6K+ proteins Icon made by Freepik from www.flaticon.com
  • 4. Graph Compression for Efficient Manipulation โ€ข Handling large-scale graphs as they are... ๏ƒจ heavy disk or network I/O
  • 5. Graph Compression for Efficient Manipulation โ€ข Handling large-scale graphs as they are... ๏ƒจ heavy disk or network I/O โ€ข Their compact representation makes possible efficient manipulation!
  • 6. Graph Compression for Efficient Manipulation โ€ข Handling large-scale graphs as they are... ๏ƒจ heavy disk or network I/O โ€ข Their compact representation makes possible efficient manipulation! โ€ข A larger portion of original graphs can be stored in main memory or cache
  • 7. Previous Graph Compression Techniques โ€ข Various compression techniques have been proposed โ€ข Relabeling nodes โ€ข Pattern mining โ€ข Lossless graph summarization ๏ƒจ One of the most effective compression techniques โ€ข โ€ฆ
  • 8. Previous Graph Compression Techniques โ€ข Various compression techniques have been proposed โ€ข Relabeling nodes โ€ข Pattern mining โ€ข Lossless graph summarization ๏ƒจ One of the most effective compression techniques โ€ข โ€ฆ
  • 9. Previous Graph Compression Techniques โ€ข Various compression techniques have been proposed โ€ข Relabeling nodes โ€ข Pattern mining โ€ข Lossless graph summarization ๏ƒจ One of the most effective compression techniques โ€ข โ€ฆ โ€ข Lossless graph summarization is a batch algorithm for โ€œstatic graphsโ€, which indicate a single or a few snapshots of evolving graphs
  • 10. Previous Graph Compression Techniques โ€ข Various compression techniques have been proposed โ€ข Relabeling nodes โ€ข Pattern mining โ€ข Lossless graph summarization ๏ƒจ One of the most effective compression techniques โ€ข โ€ฆ โ€ข Lossless graph summarization is a batch algorithm for โ€œstatic graphsโ€, which indicate a single or a few snapshots of evolving graphs However, most real-world graphs go through lots of changes in fact...
  • 11. Real-world Graphs are Evolving 2B+ users2M+ users 10 years
  • 12. Real-world Graphs are Evolving 2B+ users2M+ users 10 years Previous algorithms: not designed to allow for changes in graphs ๏ƒจAlgorithms should be rerun from scratch to reflect changes
  • 13. Real-world Graphs are Evolving 2B+ users2M+ users 10 years Previous algorithms: not designed to allow for changes in graphs ๏ƒจAlgorithms should be rerun from scratch to reflect changes Solution: Incrementally update compressed graphs in fast and effective manners!
  • 14. Outline โ€ข Preliminaries โ€ข Proposed Algorithm: MoSSo โ€ข Experimental Results โ€ข Conclusions
  • 15. Lossless Graph Summarization: Example ๐‘Ž๐‘Ž ๐‘๐‘๐‘๐‘ ๐‘‘๐‘‘ ๐‘’๐‘’ ๐‘“๐‘“ ๐‘”๐‘” โ„Ž ๐‘–๐‘– Input graph with ๐Ÿ๐Ÿ๐Ÿ๐Ÿ edges
  • 16. Lossless Graph Summarization: Example ๐‘Ž๐‘Ž ๐‘๐‘๐‘๐‘ ๐‘‘๐‘‘ ๐‘’๐‘’ ๐‘“๐‘“ ๐‘”๐‘” โ„Ž ๐‘–๐‘– Input graph with ๐Ÿ๐Ÿ๐Ÿ๐Ÿ edges ๐ด๐ด = {๐‘Ž๐‘Ž} ๐ต๐ต = {๐‘๐‘, ๐‘๐‘, ๐‘‘๐‘‘, ๐‘’๐‘’} ๐‘“๐‘“ ๐‘”๐‘” โ„Ž ๐‘–๐‘–
  • 17. Lossless Graph Summarization: Example ๐‘Ž๐‘Ž ๐‘๐‘๐‘๐‘ ๐‘‘๐‘‘ ๐‘’๐‘’ ๐‘“๐‘“ ๐‘”๐‘” โ„Ž ๐‘–๐‘– Input graph with ๐Ÿ๐Ÿ๐Ÿ๐Ÿ edges ๐ด๐ด = {๐‘Ž๐‘Ž} ๐ต๐ต = {๐‘๐‘, ๐‘๐‘, ๐‘‘๐‘‘, ๐‘’๐‘’} ๐‘“๐‘“ ๐‘”๐‘” โ„Ž ๐‘–๐‘– ๐‘“๐‘“ ๐‘”๐‘” โ„Ž ๐‘–๐‘– ๐ด๐ด = {๐‘Ž๐‘Ž} ๐ต๐ต = {๐‘๐‘, ๐‘๐‘, ๐‘‘๐‘‘, ๐‘’๐‘’} Delete {๐‘“๐‘“, ๐‘–๐‘–}
  • 18. Lossless Graph Summarization: Example ๐‘Ž๐‘Ž ๐‘๐‘๐‘๐‘ ๐‘‘๐‘‘ ๐‘’๐‘’ ๐‘“๐‘“ ๐‘”๐‘” โ„Ž ๐‘–๐‘– Input graph with ๐Ÿ๐Ÿ๐Ÿ๐Ÿ edges ๐ด๐ด = {๐‘Ž๐‘Ž} ๐ต๐ต = {๐‘๐‘, ๐‘๐‘, ๐‘‘๐‘‘, ๐‘’๐‘’} ๐‘“๐‘“ ๐‘”๐‘” โ„Ž ๐‘–๐‘– ๐‘“๐‘“ ๐‘”๐‘” โ„Ž ๐‘–๐‘– ๐ด๐ด = {๐‘Ž๐‘Ž} ๐ต๐ต = {๐‘๐‘, ๐‘๐‘, ๐‘‘๐‘‘, ๐‘’๐‘’} ๐‘“๐‘“ ๐‘”๐‘” โ„Ž ๐‘–๐‘– ๐ด๐ด = {๐‘Ž๐‘Ž} ๐ต๐ต = {๐‘๐‘, ๐‘๐‘, ๐‘‘๐‘‘, ๐‘’๐‘’} Add {๐‘Ž๐‘Ž, ๐‘“๐‘“} & Delete {๐‘“๐‘“, ๐‘–๐‘–} Delete {๐‘“๐‘“, ๐‘–๐‘–}
  • 19. Lossless Graph Summarization: Example Add {๐‘Ž๐‘Ž, ๐‘“๐‘“} & Delete {๐‘“๐‘“, ๐‘–๐‘–} ๐‘Ž๐‘Ž ๐‘๐‘๐‘๐‘ ๐‘‘๐‘‘ ๐‘’๐‘’ ๐‘“๐‘“ ๐‘”๐‘” โ„Ž ๐‘–๐‘– Output with ๐Ÿ’๐Ÿ’ edges Input graph with ๐Ÿ๐Ÿ๐Ÿ๐Ÿ edges ๐ด๐ด = {๐‘Ž๐‘Ž} ๐ต๐ต = {๐‘๐‘, ๐‘๐‘, ๐‘‘๐‘‘, ๐‘’๐‘’} ๐‘“๐‘“ ๐‘”๐‘” โ„Ž ๐‘–๐‘– ๐‘“๐‘“ ๐‘”๐‘” โ„Ž ๐‘–๐‘– ๐ด๐ด = {๐‘Ž๐‘Ž} ๐ต๐ต = {๐‘๐‘, ๐‘๐‘, ๐‘‘๐‘‘, ๐‘’๐‘’} ๐‘“๐‘“ ๐‘”๐‘” โ„Ž ๐‘–๐‘– ๐ด๐ด = {๐‘Ž๐‘Ž} ๐ต๐ต = {๐‘๐‘, ๐‘๐‘, ๐‘‘๐‘‘, ๐‘’๐‘’} Add {๐‘Ž๐‘Ž, ๐‘“๐‘“} & Delete {๐‘“๐‘“, ๐‘–๐‘–} Delete {๐‘“๐‘“, ๐‘–๐‘–} ๐ด๐ด = {๐‘Ž๐‘Ž} ๐ต๐ต = {๐‘๐‘, ๐‘๐‘, ๐‘‘๐‘‘, ๐‘’๐‘’} ๐ถ๐ถ = {๐‘“๐‘“, ๐‘”๐‘”, โ„Ž, ๐‘–๐‘–}
  • 20. Lossless Graph Summarization: Definition Lossless Summarization Lossless summarization yields (1) a summary graph and (2) edge corrections, while minimizing the edge count ๐‘ท๐‘ท + ๐‘ช๐‘ช+ + |๐‘ช๐‘ชโˆ’ | (โ‰ˆ โ€œdescription costโ€ denoted by ๐‹๐‹) Input graph ๐†๐† = (๐‘ฝ๐‘ฝ, ๐‘ฌ๐‘ฌ) ๐‘Ž๐‘Ž ๐‘๐‘๐‘๐‘ ๐‘‘๐‘‘ ๐‘’๐‘’ ๐‘“๐‘“ ๐‘”๐‘” โ„Ž ๐‘–๐‘–
  • 21. Lossless Graph Summarization: Definition Lossless Summarization Lossless summarization yields (1) a summary graph and (2) edge corrections, while minimizing the edge count ๐‘ท๐‘ท + ๐‘ช๐‘ช+ + |๐‘ช๐‘ชโˆ’ | (โ‰ˆ โ€œdescription costโ€ denoted by ๐‹๐‹) Summary graph ๐‘ฎ๐‘ฎโˆ— = (๐‘บ๐‘บ, ๐‘ท๐‘ท) Input graph ๐†๐† = (๐‘ฝ๐‘ฝ, ๐‘ฌ๐‘ฌ) ๐‘Ž๐‘Ž ๐‘๐‘๐‘๐‘ ๐‘‘๐‘‘ ๐‘’๐‘’ ๐‘“๐‘“ ๐‘”๐‘” โ„Ž ๐‘–๐‘– ๐ด๐ด = {๐‘Ž๐‘Ž} ๐ต๐ต = {๐‘๐‘, ๐‘๐‘, ๐‘‘๐‘‘, ๐‘’๐‘’} ๐ถ๐ถ = {๐‘“๐‘“, ๐‘”๐‘”, โ„Ž, ๐‘–๐‘–}
  • 22. Lossless Graph Summarization: Definition Lossless Summarization Lossless summarization yields (1) a summary graph and (2) edge corrections, while minimizing the edge count ๐‘ท๐‘ท + ๐‘ช๐‘ช+ + |๐‘ช๐‘ชโˆ’ | (โ‰ˆ โ€œdescription costโ€ denoted by ๐‹๐‹) ๐ถ๐ถ+ = ๐‘Ž๐‘Ž๐‘Ž๐‘Ž ๐ถ๐ถโˆ’ = ๐‘“๐‘“๐‘–๐‘– Summary graph ๐‘ฎ๐‘ฎโˆ— = (๐‘บ๐‘บ, ๐‘ท๐‘ท) Edge corrections (๐‘ช๐‘ช+, ๐‘ช๐‘ชโˆ’) Input graph ๐†๐† = (๐‘ฝ๐‘ฝ, ๐‘ฌ๐‘ฌ) ๐‘Ž๐‘Ž ๐‘๐‘๐‘๐‘ ๐‘‘๐‘‘ ๐‘’๐‘’ ๐‘“๐‘“ ๐‘”๐‘” โ„Ž ๐‘–๐‘– ๐ด๐ด = {๐‘Ž๐‘Ž} ๐ต๐ต = {๐‘๐‘, ๐‘๐‘, ๐‘‘๐‘‘, ๐‘’๐‘’} ๐ถ๐ถ = {๐‘“๐‘“, ๐‘”๐‘”, โ„Ž, ๐‘–๐‘–}
  • 23. Lossless Graph Summarization: Definition Lossless Summarization Lossless summarization yields (1) a summary graph and (2) edge corrections, while minimizing the edge count ๐‘ท๐‘ท + ๐‘ช๐‘ช+ + |๐‘ช๐‘ชโˆ’ | (โ‰ˆ โ€œdescription costโ€ denoted by ๐‹๐‹) Proposed in [NRS08] based on โ€œthe Minimum Description Length principleโ€ ๐ถ๐ถ+ = ๐‘Ž๐‘Ž๐‘Ž๐‘Ž ๐ถ๐ถโˆ’ = ๐‘“๐‘“๐‘–๐‘– Summary graph ๐‘ฎ๐‘ฎโˆ— = (๐‘บ๐‘บ, ๐‘ท๐‘ท) Edge corrections (๐‘ช๐‘ช+, ๐‘ช๐‘ชโˆ’) Input graph ๐†๐† = (๐‘ฝ๐‘ฝ, ๐‘ฌ๐‘ฌ) ๐‘Ž๐‘Ž ๐‘๐‘๐‘๐‘ ๐‘‘๐‘‘ ๐‘’๐‘’ ๐‘“๐‘“ ๐‘”๐‘” โ„Ž ๐‘–๐‘– ๐ด๐ด = {๐‘Ž๐‘Ž} ๐ต๐ต = {๐‘๐‘, ๐‘๐‘, ๐‘‘๐‘‘, ๐‘’๐‘’} ๐ถ๐ถ = {๐‘“๐‘“, ๐‘”๐‘”, โ„Ž, ๐‘–๐‘–}
  • 24. Lossless Graph Summarization: Definition Lossless Summarization ๐ถ๐ถ+ = ๐‘Ž๐‘Ž๐‘Ž๐‘Ž ๐ถ๐ถโˆ’ = ๐‘“๐‘“๐‘–๐‘– Summary graph ๐‘ฎ๐‘ฎโˆ— = (๐‘บ๐‘บ, ๐‘ท๐‘ท) Edge corrections (๐‘ช๐‘ช+, ๐‘ช๐‘ชโˆ’) Input graph ๐†๐† = (๐‘ฝ๐‘ฝ, ๐‘ฌ๐‘ฌ) ๐‘Ž๐‘Ž ๐‘๐‘๐‘๐‘ ๐‘‘๐‘‘ ๐‘’๐‘’ ๐‘“๐‘“ ๐‘”๐‘” โ„Ž ๐‘–๐‘– ๐ด๐ด = {๐‘Ž๐‘Ž} ๐ต๐ต = {๐‘๐‘, ๐‘๐‘, ๐‘‘๐‘‘, ๐‘’๐‘’} ๐ถ๐ถ = {๐‘“๐‘“, ๐‘”๐‘”, โ„Ž, ๐‘–๐‘–}
  • 25. Lossless Graph Summarization: Definition 1. Summary graph ๐‘ฎ๐‘ฎโˆ— = (๐‘บ๐‘บ, ๐‘ท๐‘ท) โ€ข Supernodes ๐‘บ๐‘บ = a partition of ๐‘ฝ๐‘ฝ, where each supernode is a set of nodes โ€ข Superedges ๐‘ท๐‘ท = a set of pairs of supernodes (ex: {๐‘จ๐‘จ, ๐‘ฉ๐‘ฉ} in example above) Lossless Summarization ๐ถ๐ถ+ = ๐‘Ž๐‘Ž๐‘Ž๐‘Ž ๐ถ๐ถโˆ’ = ๐‘“๐‘“๐‘–๐‘– Summary graph ๐‘ฎ๐‘ฎโˆ— = (๐‘บ๐‘บ, ๐‘ท๐‘ท) Edge corrections (๐‘ช๐‘ช+, ๐‘ช๐‘ชโˆ’) Input graph ๐†๐† = (๐‘ฝ๐‘ฝ, ๐‘ฌ๐‘ฌ) ๐‘Ž๐‘Ž ๐‘๐‘๐‘๐‘ ๐‘‘๐‘‘ ๐‘’๐‘’ ๐‘“๐‘“ ๐‘”๐‘” โ„Ž ๐‘–๐‘– ๐ด๐ด = {๐‘Ž๐‘Ž} ๐ต๐ต = {๐‘๐‘, ๐‘๐‘, ๐‘‘๐‘‘, ๐‘’๐‘’} ๐ถ๐ถ = {๐‘“๐‘“, ๐‘”๐‘”, โ„Ž, ๐‘–๐‘–}
  • 26. Lossless Graph Summarization: Definition 1. Summary graph ๐‘ฎ๐‘ฎโˆ— = (๐‘บ๐‘บ, ๐‘ท๐‘ท) โ€ข Supernodes ๐‘บ๐‘บ = a partition of ๐‘ฝ๐‘ฝ, where each supernode is a set of nodes โ€ข Superedges ๐‘ท๐‘ท = a set of pairs of supernodes (ex: {๐‘จ๐‘จ, ๐‘ฉ๐‘ฉ} in example above) Lossless Summarization ๐ถ๐ถ+ = ๐‘Ž๐‘Ž๐‘Ž๐‘Ž ๐ถ๐ถโˆ’ = ๐‘“๐‘“๐‘–๐‘– Summary graph ๐‘ฎ๐‘ฎโˆ— = (๐‘บ๐‘บ, ๐‘ท๐‘ท) Edge corrections (๐‘ช๐‘ช+, ๐‘ช๐‘ชโˆ’) Input graph ๐†๐† = (๐‘ฝ๐‘ฝ, ๐‘ฌ๐‘ฌ) ๐‘Ž๐‘Ž ๐‘๐‘๐‘๐‘ ๐‘‘๐‘‘ ๐‘’๐‘’ ๐‘“๐‘“ ๐‘”๐‘” โ„Ž ๐‘–๐‘– ๐ด๐ด = {๐‘Ž๐‘Ž} ๐ต๐ต = {๐‘๐‘, ๐‘๐‘, ๐‘‘๐‘‘, ๐‘’๐‘’} ๐ถ๐ถ = {๐‘“๐‘“, ๐‘”๐‘”, โ„Ž, ๐‘–๐‘–} Supernode
  • 27. Lossless Graph Summarization: Definition 1. Summary graph ๐‘ฎ๐‘ฎโˆ— = (๐‘บ๐‘บ, ๐‘ท๐‘ท) โ€ข Supernodes ๐‘บ๐‘บ = a partition of ๐‘ฝ๐‘ฝ, where each supernode is a set of nodes โ€ข Superedges ๐‘ท๐‘ท = a set of pairs of supernodes (ex: {๐‘จ๐‘จ, ๐‘ฉ๐‘ฉ} in example above) Lossless Summarization ๐ถ๐ถ+ = ๐‘Ž๐‘Ž๐‘Ž๐‘Ž ๐ถ๐ถโˆ’ = ๐‘“๐‘“๐‘–๐‘– Summary graph ๐‘ฎ๐‘ฎโˆ— = (๐‘บ๐‘บ, ๐‘ท๐‘ท) Edge corrections (๐‘ช๐‘ช+, ๐‘ช๐‘ชโˆ’) Input graph ๐†๐† = (๐‘ฝ๐‘ฝ, ๐‘ฌ๐‘ฌ) ๐‘Ž๐‘Ž ๐‘๐‘๐‘๐‘ ๐‘‘๐‘‘ ๐‘’๐‘’ ๐‘“๐‘“ ๐‘”๐‘” โ„Ž ๐‘–๐‘– ๐ด๐ด = {๐‘Ž๐‘Ž} ๐ต๐ต = {๐‘๐‘, ๐‘๐‘, ๐‘‘๐‘‘, ๐‘’๐‘’} ๐ถ๐ถ = {๐‘“๐‘“, ๐‘”๐‘”, โ„Ž, ๐‘–๐‘–} Supernode Superedge
  • 28. Lossless Graph Summarization: Definition 1. Summary graph ๐‘ฎ๐‘ฎโˆ— = (๐‘บ๐‘บ, ๐‘ท๐‘ท) โ€ข Supernodes ๐‘บ๐‘บ = a partition of ๐‘ฝ๐‘ฝ, where each supernode is a set of nodes โ€ข Superedges ๐‘ท๐‘ท = a set of pairs of supernodes (ex: {๐‘จ๐‘จ, ๐‘ฉ๐‘ฉ} in example above) 2. Edge corrections (๐‘ช๐‘ช+, ๐‘ช๐‘ชโˆ’) โ€ข Residual graph (Positive) ๐‘ช๐‘ช+ โ€ข Residual graph (Negative) ๐‘ช๐‘ชโˆ’ Lossless Summarization ๐ถ๐ถ+ = ๐‘Ž๐‘Ž๐‘Ž๐‘Ž ๐ถ๐ถโˆ’ = ๐‘“๐‘“๐‘–๐‘– Summary graph ๐‘ฎ๐‘ฎโˆ— = (๐‘บ๐‘บ, ๐‘ท๐‘ท) Edge corrections (๐‘ช๐‘ช+, ๐‘ช๐‘ชโˆ’) Input graph ๐†๐† = (๐‘ฝ๐‘ฝ, ๐‘ฌ๐‘ฌ) ๐‘Ž๐‘Ž ๐‘๐‘๐‘๐‘ ๐‘‘๐‘‘ ๐‘’๐‘’ ๐‘“๐‘“ ๐‘”๐‘” โ„Ž ๐‘–๐‘– ๐ด๐ด = {๐‘Ž๐‘Ž} ๐ต๐ต = {๐‘๐‘, ๐‘๐‘, ๐‘‘๐‘‘, ๐‘’๐‘’} ๐ถ๐ถ = {๐‘“๐‘“, ๐‘”๐‘”, โ„Ž, ๐‘–๐‘–} Supernode Superedge
  • 29. Lossless Graph Summarization: Notation Supernode containing ๐’–๐’– Edges between supernodes ๐‘จ๐‘จ and ๐‘ฉ๐‘ฉ All possible edges between ๐‘จ๐‘จ and ๐‘ฉ๐‘ฉ Neighborhood of a node ๐’–๐’– Nodes incident to ๐’–๐’– in ๐‘ช๐‘ช+ (or ๐‘ช๐‘ชโˆ’) Compression rate : ๐’๐’๐’–๐’– (i.e. ๐’–๐’– โˆˆ ๐‘บ๐‘บ๐’–๐’–) : ๐‘ฌ๐‘ฌ๐‘จ๐‘จ๐‘จ๐‘จ = {๐’–๐’–๐’–๐’– โˆˆ ๐‘ฌ๐‘ฌ โˆถ ๐’–๐’– โˆˆ ๐‘จ๐‘จ, ๐’—๐’— โˆˆ ๐‘ฉ๐‘ฉ (๐’–๐’– โ‰  ๐’—๐’—)} : ๐‘ป๐‘ป๐‘จ๐‘จ๐‘จ๐‘จ = {๐’–๐’–๐’–๐’– โŠ† ๐‘ฝ๐‘ฝ: ๐’–๐’– โˆˆ ๐‘จ๐‘จ, ๐’—๐’— โˆˆ ๐‘ฉ๐‘ฉ (๐’–๐’– โ‰  ๐’—๐’—)} : ๐‘ต๐‘ต ๐’–๐’– = {๐’—๐’— โˆˆ ๐‘ฝ๐‘ฝ โˆถ ๐’–๐’–๐’–๐’– โˆˆ ๐‘ฌ๐‘ฌ} : ๐‘ช๐‘ช+(๐’–๐’–) (or ๐‘ช๐‘ชโˆ’(๐’–๐’–)) : ( ๐‘ท๐‘ท + ๐‘ช๐‘ช+ + ๐‘ช๐‘ชโˆ’ )/|๐‘ฌ๐‘ฌ| Lossless Summarization ๐ถ๐ถ+ = ๐‘Ž๐‘Ž๐‘Ž๐‘Ž ๐ถ๐ถโˆ’ = ๐‘“๐‘“๐‘–๐‘– Summary graph ๐‘ฎ๐‘ฎโˆ— = (๐‘บ๐‘บ, ๐‘ท๐‘ท) Edge corrections (๐‘ช๐‘ช+, ๐‘ช๐‘ชโˆ’) Input graph ๐†๐† = (๐‘ฝ๐‘ฝ, ๐‘ฌ๐‘ฌ) ๐‘Ž๐‘Ž ๐‘๐‘๐‘๐‘ ๐‘‘๐‘‘ ๐‘’๐‘’ ๐‘“๐‘“ ๐‘”๐‘” โ„Ž ๐‘–๐‘– ๐ด๐ด = {๐‘Ž๐‘Ž} ๐ต๐ต = {๐‘๐‘, ๐‘๐‘, ๐‘‘๐‘‘, ๐‘’๐‘’} ๐ถ๐ถ = {๐‘“๐‘“, ๐‘”๐‘”, โ„Ž, ๐‘–๐‘–}
  • 30. Lossless Graph Summarization: Optimal Encoding For summarization, determining supernodes ๐‘บ๐‘บ (a partition of ๐‘ฝ๐‘ฝ) is our main concern ๏ƒจ For given ๐‘บ๐‘บ, superedges ๐‘ท๐‘ท and edge corrections ๐‘ช๐‘ช are optimally determined Lossless Summarization ๐ถ๐ถ+ = ๐‘Ž๐‘Ž๐‘Ž๐‘Ž ๐ถ๐ถโˆ’ = ๐‘“๐‘“๐‘–๐‘– Summary graph ๐‘ฎ๐‘ฎโˆ— = (๐‘บ๐‘บ, ๐‘ท๐‘ท) Edge corrections (๐‘ช๐‘ช+, ๐‘ช๐‘ชโˆ’) Input graph ๐†๐† = (๐‘ฝ๐‘ฝ, ๐‘ฌ๐‘ฌ) ๐‘Ž๐‘Ž ๐‘๐‘๐‘๐‘ ๐‘‘๐‘‘ ๐‘’๐‘’ ๐‘“๐‘“ ๐‘”๐‘” โ„Ž ๐‘–๐‘– ๐ด๐ด = {๐‘Ž๐‘Ž} ๐ต๐ต = {๐‘๐‘, ๐‘๐‘, ๐‘‘๐‘‘, ๐‘’๐‘’} ๐ถ๐ถ = {๐‘“๐‘“, ๐‘”๐‘”, โ„Ž, ๐‘–๐‘–}
  • 31. Lossless Graph Summarization: Optimal Encoding Edges ๐‘ฌ๐‘ฌ๐‘จ๐‘จ๐‘จ๐‘จ between two supernodes: (1) a superedge with ๐‘ช๐‘ชโˆ’ or (2) no superedge with ๐‘ช๐‘ช+ Case 1: ๐‘ฌ๐‘ฌ๐‘จ๐‘จ๐‘จ๐‘จ โ‰ฅ ๐‘ป๐‘ป๐‘จ๐‘จ๐‘จ๐‘จ +๐Ÿ๐Ÿ ๐Ÿ๐Ÿ : add superedge ๐‘จ๐‘จ๐‘จ๐‘จ to ๐‘ท๐‘ท and ๐‘ป๐‘ป๐‘จ๐‘จ๐‘จ๐‘จ๐‘ฌ๐‘ฌ๐‘จ๐‘จ๐‘จ๐‘จ to ๐‘ช๐‘ชโˆ’ Case 2: ๐‘ฌ๐‘ฌ๐‘จ๐‘จ๐‘จ๐‘จ < ๐‘ป๐‘ป๐‘จ๐‘จ๐‘จ๐‘จ +๐Ÿ๐Ÿ ๐Ÿ๐Ÿ : add all edges in ๐‘ฌ๐‘ฌ๐‘จ๐‘จ๐‘จ๐‘จ to ๐‘ช๐‘ช+ Costs: |๐„๐„๐€๐€๐€๐€|Costs: ๐Ÿ๐Ÿ + ๐“๐“๐‘จ๐‘จ๐‘จ๐‘จ โˆ’ |๐„๐„๐€๐€๐€๐€| Lossless Summarization ๐ถ๐ถ+ = ๐‘Ž๐‘Ž๐‘Ž๐‘Ž ๐ถ๐ถโˆ’ = ๐‘“๐‘“๐‘–๐‘– Summary graph ๐‘ฎ๐‘ฎโˆ— = (๐‘บ๐‘บ, ๐‘ท๐‘ท) Edge corrections (๐‘ช๐‘ช+, ๐‘ช๐‘ชโˆ’) Input graph ๐†๐† = (๐‘ฝ๐‘ฝ, ๐‘ฌ๐‘ฌ) ๐‘Ž๐‘Ž ๐‘๐‘๐‘๐‘ ๐‘‘๐‘‘ ๐‘’๐‘’ ๐‘“๐‘“ ๐‘”๐‘” โ„Ž ๐‘–๐‘– ๐ด๐ด = {๐‘Ž๐‘Ž} ๐ต๐ต = {๐‘๐‘, ๐‘๐‘, ๐‘‘๐‘‘, ๐‘’๐‘’} ๐ถ๐ถ = {๐‘“๐‘“, ๐‘”๐‘”, โ„Ž, ๐‘–๐‘–} ๐‘ฌ๐‘ฌ๐‘จ๐‘จ๐‘จ๐‘จ: Edges between supernodes ๐‘จ๐‘จ and ๐‘ฉ๐‘ฉ ๐‘ป๐‘ป๐‘จ๐‘จ๐‘จ๐‘จ: All possible edges between ๐‘จ๐‘จ and ๐‘ฉ๐‘ฉ Notation
  • 32. Lossless Graph Summarization: Optimal Encoding Superedge ๐‘จ๐‘จ๐‘จ๐‘จ ๐‹๐‹ = ๐Ÿ๐Ÿ + ๐Ÿ๐Ÿ + ๐Ÿ๐Ÿ = ๐Ÿ’๐Ÿ’ ๐ถ๐ถ+ = ๐‘Ž๐‘Ž๐‘Ž๐‘Ž ๐ถ๐ถโˆ’ = ๐‘“๐‘“๐‘–๐‘– Summary graph ๐‘ฎ๐‘ฎโˆ— = (๐‘บ๐‘บ, ๐‘ท๐‘ท) Edge corrections (๐‘ช๐‘ช+, ๐‘ช๐‘ชโˆ’) Input graph ๐†๐† = (๐‘ฝ๐‘ฝ, ๐‘ฌ๐‘ฌ) ๐‘Ž๐‘Ž ๐‘๐‘๐‘๐‘ ๐‘‘๐‘‘ ๐‘’๐‘’ ๐‘“๐‘“ ๐‘”๐‘” โ„Ž ๐‘–๐‘– ๐ด๐ด = {๐‘Ž๐‘Ž} ๐ต๐ต = {๐‘๐‘, ๐‘๐‘, ๐‘‘๐‘‘, ๐‘’๐‘’} ๐ถ๐ถ = {๐‘“๐‘“, ๐‘”๐‘”, โ„Ž, ๐‘–๐‘–}
  • 33. Lossless Graph Summarization: Optimal Encoding Superedge ๐‘จ๐‘จ๐‘จ๐‘จ ๐‘ช๐‘ช+ only ๐‹๐‹ = ๐Ÿ๐Ÿ + ๐Ÿ๐Ÿ + ๐Ÿ๐Ÿ = ๐Ÿ’๐Ÿ’ ๐‹๐‹ = ๐Ÿ๐Ÿ + ๐Ÿ“๐Ÿ“ + ๐Ÿ๐Ÿ = ๐Ÿ•๐Ÿ• ๐ถ๐ถ+ = ๐‘Ž๐‘Ž๐‘Ž๐‘Ž ๐ถ๐ถโˆ’ = ๐‘“๐‘“๐‘–๐‘– Summary graph ๐‘ฎ๐‘ฎโˆ— = (๐‘บ๐‘บ, ๐‘ท๐‘ท) Edge corrections (๐‘ช๐‘ช+, ๐‘ช๐‘ชโˆ’) Input graph ๐†๐† = (๐‘ฝ๐‘ฝ, ๐‘ฌ๐‘ฌ) ๐‘Ž๐‘Ž ๐‘๐‘๐‘๐‘ ๐‘‘๐‘‘ ๐‘’๐‘’ ๐‘“๐‘“ ๐‘”๐‘” โ„Ž ๐‘–๐‘– ๐ด๐ด = {๐‘Ž๐‘Ž} ๐ต๐ต = {๐‘๐‘, ๐‘๐‘, ๐‘‘๐‘‘, ๐‘’๐‘’} ๐ถ๐ถ = {๐‘“๐‘“, ๐‘”๐‘”, โ„Ž, ๐‘–๐‘–} ๐ถ๐ถ+ = ๐‘Ž๐‘Ž๐‘Ž๐‘Ž, ๐‘Ž๐‘Ž๐‘Ž๐‘Ž, ๐‘Ž๐‘Ž๐‘Ž๐‘Ž, ๐‘Ž๐‘Ž๐‘Ž๐‘Ž, ๐‘Ž๐‘Ž๐‘Ž๐‘Ž ๐ถ๐ถโˆ’ = ๐‘“๐‘“๐‘–๐‘– ๐ด๐ด = {๐‘Ž๐‘Ž} ๐ต๐ต = {๐‘๐‘, ๐‘๐‘, ๐‘‘๐‘‘, ๐‘’๐‘’} ๐ถ๐ถ = {๐‘“๐‘“, ๐‘”๐‘”, โ„Ž, ๐‘–๐‘–}
  • 34. Recovery: Example ๐ถ๐ถ+ = ๐‘Ž๐‘Ž๐‘Ž๐‘Ž , ๐ถ๐ถโˆ’ = {๐‘“๐‘“๐‘“๐‘“} ๐ด๐ด = {๐‘Ž๐‘Ž} ๐ต๐ต = {๐‘๐‘, ๐‘๐‘, ๐‘‘๐‘‘, ๐‘’๐‘’} ๐ถ๐ถ = {๐‘“๐‘“, ๐‘”๐‘”, โ„Ž, ๐‘–๐‘–}
  • 35. Recovery: Example ๐ถ๐ถ+ = ๐‘Ž๐‘Ž๐‘Ž๐‘Ž , ๐ถ๐ถโˆ’ = {๐‘“๐‘“๐‘“๐‘“} Add all pairs of nodes between two adjacent supernodes ๐ด๐ด = {๐‘Ž๐‘Ž} ๐ต๐ต = {๐‘๐‘, ๐‘๐‘, ๐‘‘๐‘‘, ๐‘’๐‘’} ๐ถ๐ถ = {๐‘“๐‘“, ๐‘”๐‘”, โ„Ž, ๐‘–๐‘–} ๐ถ๐ถ+ = ๐‘Ž๐‘Ž๐‘Ž๐‘Ž , ๐ถ๐ถโˆ’ = {๐‘“๐‘“๐‘“๐‘“} ๐‘’๐‘’ ๐‘Ž๐‘Ž ๐‘๐‘๐‘๐‘ ๐‘‘๐‘‘ ๐‘“๐‘“ ๐‘”๐‘” โ„Ž ๐‘–๐‘–
  • 36. Recovery: Example ๐ถ๐ถ+ = ๐‘Ž๐‘Ž๐‘Ž๐‘Ž , ๐ถ๐ถโˆ’ = {๐‘“๐‘“๐‘“๐‘“} Add all pairs of nodes between two adjacent supernodes Remove all edges in ๐‚๐‚โˆ’ ๐ด๐ด = {๐‘Ž๐‘Ž} ๐ต๐ต = {๐‘๐‘, ๐‘๐‘, ๐‘‘๐‘‘, ๐‘’๐‘’} ๐ถ๐ถ = {๐‘“๐‘“, ๐‘”๐‘”, โ„Ž, ๐‘–๐‘–} ๐ถ๐ถ+ = ๐‘Ž๐‘Ž๐‘Ž๐‘Ž , ๐ถ๐ถโˆ’ = {๐‘“๐‘“๐‘“๐‘“} ๐‘’๐‘’ ๐‘Ž๐‘Ž ๐‘๐‘๐‘๐‘ ๐‘‘๐‘‘ ๐‘“๐‘“ ๐‘”๐‘” โ„Ž ๐‘–๐‘– ๐ถ๐ถ+ = ๐‘Ž๐‘Ž๐‘Ž๐‘Ž ๐‘’๐‘’ ๐‘Ž๐‘Ž ๐‘๐‘๐‘๐‘ ๐‘‘๐‘‘ ๐‘“๐‘“ ๐‘”๐‘” โ„Ž ๐‘–๐‘–
  • 37. Recovery: Example ๐ถ๐ถ+ = ๐‘Ž๐‘Ž๐‘Ž๐‘Ž , ๐ถ๐ถโˆ’ = {๐‘“๐‘“๐‘“๐‘“} Add all pairs of nodes between two adjacent supernodes Remove all edges in ๐‚๐‚โˆ’ Add all edges in ๐‚๐‚+ ๐ด๐ด = {๐‘Ž๐‘Ž} ๐ต๐ต = {๐‘๐‘, ๐‘๐‘, ๐‘‘๐‘‘, ๐‘’๐‘’} ๐ถ๐ถ = {๐‘“๐‘“, ๐‘”๐‘”, โ„Ž, ๐‘–๐‘–} ๐ถ๐ถ+ = ๐‘Ž๐‘Ž๐‘Ž๐‘Ž , ๐ถ๐ถโˆ’ = {๐‘“๐‘“๐‘“๐‘“} ๐‘’๐‘’ ๐‘Ž๐‘Ž ๐‘๐‘๐‘๐‘ ๐‘‘๐‘‘ ๐‘“๐‘“ ๐‘”๐‘” โ„Ž ๐‘–๐‘– ๐‘Ž๐‘Ž ๐‘๐‘๐‘๐‘ ๐‘‘๐‘‘ ๐‘’๐‘’ ๐‘“๐‘“ ๐‘”๐‘” โ„Ž ๐‘–๐‘– ๐ถ๐ถ+ = ๐‘Ž๐‘Ž๐‘Ž๐‘Ž ๐‘’๐‘’ ๐‘Ž๐‘Ž ๐‘๐‘๐‘๐‘ ๐‘‘๐‘‘ ๐‘“๐‘“ ๐‘”๐‘” โ„Ž ๐‘–๐‘–
  • 38. Why Lossless Graph Summarization? ๐ถ๐ถ+ = ๐‘Ž๐‘Ž๐‘Ž๐‘Ž ๐ถ๐ถโˆ’ = ๐‘“๐‘“๐‘–๐‘– Summary graph ๐‘ฎ๐‘ฎโˆ— = (๐‘บ๐‘บ, ๐‘ท๐‘ท) Edge corrections (๐‘ช๐‘ช+ , ๐‘ช๐‘ชโˆ’ ) ๐ด๐ด = {๐‘Ž๐‘Ž} ๐ต๐ต = {๐‘๐‘, ๐‘๐‘, ๐‘‘๐‘‘, ๐‘’๐‘’} ๐ถ๐ถ = {๐‘“๐‘“, ๐‘”๐‘”, โ„Ž, ๐‘–๐‘–}
  • 39. Why Lossless Graph Summarization? โ€ข Queryable (Retrieving the neighborhood of a query node) ๐ถ๐ถ+ = ๐‘Ž๐‘Ž๐‘Ž๐‘Ž ๐ถ๐ถโˆ’ = ๐‘“๐‘“๐‘–๐‘– Summary graph ๐‘ฎ๐‘ฎโˆ— = (๐‘บ๐‘บ, ๐‘ท๐‘ท) Edge corrections (๐‘ช๐‘ช+ , ๐‘ช๐‘ชโˆ’ ) ๐ด๐ด = {๐‘Ž๐‘Ž} ๐ต๐ต = {๐‘๐‘, ๐‘๐‘, ๐‘‘๐‘‘, ๐‘’๐‘’} ๐ถ๐ถ = {๐‘“๐‘“, ๐‘”๐‘”, โ„Ž, ๐‘–๐‘–}
  • 40. Why Lossless Graph Summarization? โ€ข Queryable (Retrieving the neighborhood of a query node) โ€ข Queryability: key building blocks in numerous graph algorithms (ex: DFS, PageRank, Dijkstraโ€™s, etc) โ€ข Rapidly done from a summary and corrections ๐ถ๐ถ+ = ๐‘Ž๐‘Ž๐‘Ž๐‘Ž ๐ถ๐ถโˆ’ = ๐‘“๐‘“๐‘–๐‘– Summary graph ๐‘ฎ๐‘ฎโˆ— = (๐‘บ๐‘บ, ๐‘ท๐‘ท) Edge corrections (๐‘ช๐‘ช+ , ๐‘ช๐‘ชโˆ’ ) ๐ด๐ด = {๐‘Ž๐‘Ž} ๐ต๐ต = {๐‘๐‘, ๐‘๐‘, ๐‘‘๐‘‘, ๐‘’๐‘’} ๐ถ๐ถ = {๐‘“๐‘“, ๐‘”๐‘”, โ„Ž, ๐‘–๐‘–}
  • 41. Why Lossless Graph Summarization? โ€ข Queryable (Retrieving the neighborhood of a query node) โ€ข Queryability: key building blocks in numerous graph algorithms (ex: DFS, PageRank, Dijkstraโ€™s, etc) โ€ข Rapidly done from a summary and corrections โ€ข Combinable โ€ข Its outputs are also graphs ๏ƒจ further compressed via other compression techniques! ๐ถ๐ถ+ = ๐‘Ž๐‘Ž๐‘Ž๐‘Ž ๐ถ๐ถโˆ’ = ๐‘“๐‘“๐‘–๐‘– Summary graph ๐‘ฎ๐‘ฎโˆ— = (๐‘บ๐‘บ, ๐‘ท๐‘ท) Edge corrections (๐‘ช๐‘ช+ , ๐‘ช๐‘ชโˆ’ ) ๐ด๐ด = {๐‘Ž๐‘Ž} ๐ต๐ต = {๐‘๐‘, ๐‘๐‘, ๐‘‘๐‘‘, ๐‘’๐‘’} ๐ถ๐ถ = {๐‘“๐‘“, ๐‘”๐‘”, โ„Ž, ๐‘–๐‘–}
  • 42. Fully Dynamic Graph Stream Fully dynamic graphs can be represented by using a sequence {๐’†๐’†๐’•๐’•}๐’•๐’•=๐ŸŽ๐ŸŽ โˆž of edge addition ๐’†๐’†๐’•๐’• = ๐’–๐’–, ๐’—๐’— + and deletion ๐’†๐’†๐’•๐’• = ๐’–๐’–, ๐’—๐’— โˆ’ ๏ƒจ The graph at time ๐’•๐’• is constructed by aggregating all edges change until time ๐’•๐’•
  • 43. Fully Dynamic Graph Stream Fully dynamic graphs can be represented by using a sequence {๐’†๐’†๐’•๐’•}๐’•๐’•=๐ŸŽ๐ŸŽ โˆž of edge addition ๐’†๐’†๐’•๐’• = ๐’–๐’–, ๐’—๐’— + and deletion ๐’†๐’†๐’•๐’• = ๐’–๐’–, ๐’—๐’— โˆ’ ๏ƒจ The graph at time ๐’•๐’• is constructed by aggregating all edges change until time ๐’•๐’• Stream of changes:
  • 44. Fully Dynamic Graph Stream Fully dynamic graphs can be represented by using a sequence {๐’†๐’†๐’•๐’•}๐’•๐’•=๐ŸŽ๐ŸŽ โˆž of edge addition ๐’†๐’†๐’•๐’• = ๐’–๐’–, ๐’—๐’— + and deletion ๐’†๐’†๐’•๐’• = ๐’–๐’–, ๐’—๐’— โˆ’ ๏ƒจ The graph at time ๐’•๐’• is constructed by aggregating all edges change until time ๐’•๐’• Stream of changes: Empty graph ๐‘ฎ๐‘ฎ๐ŸŽ๐ŸŽ Time ๐’•๐’• = ๐ŸŽ๐ŸŽ
  • 45. Fully Dynamic Graph Stream Fully dynamic graphs can be represented by using a sequence {๐’†๐’†๐’•๐’•}๐’•๐’•=๐ŸŽ๐ŸŽ โˆž of edge addition ๐’†๐’†๐’•๐’• = ๐’–๐’–, ๐’—๐’— + and deletion ๐’†๐’†๐’•๐’• = ๐’–๐’–, ๐’—๐’— โˆ’ ๏ƒจ The graph at time ๐’•๐’• is constructed by aggregating all edges change until time ๐’•๐’• โ€ฆโ€ฆStream of changes: + - - + + Empty graph ๐‘ฎ๐‘ฎ๐ŸŽ๐ŸŽ Time ๐’•๐’• = ๐ŸŽ๐ŸŽ
  • 46. Fully Dynamic Graph Stream Fully dynamic graphs can be represented by using a sequence {๐’†๐’†๐’•๐’•}๐’•๐’•=๐ŸŽ๐ŸŽ โˆž of edge addition ๐’†๐’†๐’•๐’• = ๐’–๐’–, ๐’—๐’— + and deletion ๐’†๐’†๐’•๐’• = ๐’–๐’–, ๐’—๐’— โˆ’ ๏ƒจ The graph at time ๐’•๐’• is constructed by aggregating all edges change until time ๐’•๐’• โ€ฆโ€ฆStream of changes: + - - + + Empty graph ๐‘ฎ๐‘ฎ๐ŸŽ๐ŸŽ Time ๐’•๐’• = ๐ŸŽ๐ŸŽ Current graph ๐‘ฎ๐‘ฎ๐’•๐’• Time ๐’•๐’•
  • 47. Fully Dynamic Graph Stream Fully dynamic graphs can be represented by using a sequence {๐’†๐’†๐’•๐’•}๐’•๐’•=๐ŸŽ๐ŸŽ โˆž of edge addition ๐’†๐’†๐’•๐’• = ๐’–๐’–, ๐’—๐’— + and deletion ๐’†๐’†๐’•๐’• = ๐’–๐’–, ๐’—๐’— โˆ’ ๏ƒจ The graph at time ๐’•๐’• is constructed by aggregating all edges change until time ๐’•๐’• โ€ฆโ€ฆStream of changes: + - - + -+ โ€ฆโ€ฆ Empty graph ๐‘ฎ๐‘ฎ๐ŸŽ๐ŸŽ Time ๐’•๐’• = ๐ŸŽ๐ŸŽ Current graph ๐‘ฎ๐‘ฎ๐’•๐’• Time ๐’•๐’•
  • 48. Problem Formulation โ€ข Given Fully dynamic graph stream {๐’†๐’†๐’•๐’•}๐’•๐’•=๐ŸŽ๐ŸŽ โˆž โ€ข Retain Summary graph ๐‘ฎ๐‘ฎ๐’•๐’• โˆ— = ๐‘บ๐‘บ๐’•๐’•, ๐‘ท๐‘ท๐’•๐’• and Edge corrections ๐‘ช๐‘ช๐’•๐’• = (๐‘ช๐‘ช๐’•๐’• + , ๐‘ช๐‘ช๐’•๐’• โˆ’ ) of graph ๐‘ฎ๐‘ฎ๐’•๐’• at time ๐’•๐’• โ€ข To Minimize the size of output representation ๐‘ท๐‘ท๐’•๐’• + ๐‘ช๐‘ช๐’•๐’• + + ๐‘ช๐‘ช๐’•๐’• โˆ’
  • 49. Problem Formulation โ€ข Given Fully dynamic graph stream {๐’†๐’†๐’•๐’•}๐’•๐’•=๐ŸŽ๐ŸŽ โˆž โ€ข Retain Summary graph ๐‘ฎ๐‘ฎ๐’•๐’• โˆ— = ๐‘บ๐‘บ๐’•๐’•, ๐‘ท๐‘ท๐’•๐’• and Edge corrections ๐‘ช๐‘ช๐’•๐’• = (๐‘ช๐‘ช๐’•๐’• + , ๐‘ช๐‘ช๐’•๐’• โˆ’ ) of graph ๐‘ฎ๐‘ฎ๐’•๐’• at time ๐’•๐’• โ€ข To Minimize the size of output representation ๐‘ท๐‘ท๐’•๐’• + ๐‘ช๐‘ช๐’•๐’• + + ๐‘ช๐‘ช๐’•๐’• โˆ’ Retained at time ๐’•๐’• ๐ถ๐ถ+ = ๐‘Ž๐‘Ž๐‘Ž๐‘Ž ๐ถ๐ถโˆ’ = ๐‘“๐‘“๐‘–๐‘– Summary graph ๐‘ฎ๐‘ฎโˆ— = (๐‘บ๐‘บ, ๐‘ท๐‘ท) Edge corrections (๐‘ช๐‘ช+ , ๐‘ช๐‘ชโˆ’ ) ๐ด๐ด = {๐‘Ž๐‘Ž} ๐ต๐ต = {๐‘๐‘, ๐‘๐‘, ๐‘‘๐‘‘, ๐‘’๐‘’} ๐ถ๐ถ = {๐‘“๐‘“, ๐‘”๐‘”, โ„Ž, ๐‘–๐‘–}
  • 50. Problem Formulation โ€ข Given Fully dynamic graph stream {๐’†๐’†๐’•๐’•}๐’•๐’•=๐ŸŽ๐ŸŽ โˆž โ€ข Retain Summary graph ๐‘ฎ๐‘ฎ๐’•๐’• โˆ— = ๐‘บ๐‘บ๐’•๐’•, ๐‘ท๐‘ท๐’•๐’• and Edge corrections ๐‘ช๐‘ช๐’•๐’• = (๐‘ช๐‘ช๐’•๐’• + , ๐‘ช๐‘ช๐’•๐’• โˆ’ ) of graph ๐‘ฎ๐‘ฎ๐’•๐’• at time ๐’•๐’• โ€ข To Minimize the size of output representation ๐‘ท๐‘ท๐’•๐’• + ๐‘ช๐‘ช๐’•๐’• + + ๐‘ช๐‘ช๐’•๐’• โˆ’ + Retained at time ๐’•๐’• Edge change ๐’†๐’†๐’•๐’•+๐Ÿ๐Ÿ ๐ถ๐ถ+ = ๐‘Ž๐‘Ž๐‘Ž๐‘Ž ๐ถ๐ถโˆ’ = ๐‘“๐‘“๐‘–๐‘– Summary graph ๐‘ฎ๐‘ฎโˆ— = (๐‘บ๐‘บ, ๐‘ท๐‘ท) Edge corrections (๐‘ช๐‘ช+ , ๐‘ช๐‘ชโˆ’ ) ๐ด๐ด = {๐‘Ž๐‘Ž} ๐ต๐ต = {๐‘๐‘, ๐‘๐‘, ๐‘‘๐‘‘, ๐‘’๐‘’} ๐ถ๐ถ = {๐‘“๐‘“, ๐‘”๐‘”, โ„Ž, ๐‘–๐‘–}
  • 51. Problem Formulation โ€ข Given Fully dynamic graph stream {๐’†๐’†๐’•๐’•}๐’•๐’•=๐ŸŽ๐ŸŽ โˆž โ€ข Retain Summary graph ๐‘ฎ๐‘ฎ๐’•๐’• โˆ— = ๐‘บ๐‘บ๐’•๐’•, ๐‘ท๐‘ท๐’•๐’• and Edge corrections ๐‘ช๐‘ช๐’•๐’• = (๐‘ช๐‘ช๐’•๐’• + , ๐‘ช๐‘ช๐’•๐’• โˆ’ ) of graph ๐‘ฎ๐‘ฎ๐’•๐’• at time ๐’•๐’• โ€ข To Minimize the size of output representation ๐‘ท๐‘ท๐’•๐’• + ๐‘ช๐‘ช๐’•๐’• + + ๐‘ช๐‘ช๐’•๐’• โˆ’ + Retained at time ๐’•๐’• Edge change ๐’†๐’†๐’•๐’•+๐Ÿ๐Ÿ ๐ถ๐ถ+ = ๐‘Ž๐‘Ž๐‘Ž๐‘Ž ๐ถ๐ถโˆ’ = ๐‘“๐‘“๐‘–๐‘– Summary graph ๐‘ฎ๐‘ฎโˆ— = (๐‘บ๐‘บ, ๐‘ท๐‘ท) Edge corrections (๐‘ช๐‘ช+ , ๐‘ช๐‘ชโˆ’ ) ๐ด๐ด = {๐‘Ž๐‘Ž} ๐ต๐ต = {๐‘๐‘, ๐‘๐‘, ๐‘‘๐‘‘, ๐‘’๐‘’} ๐ถ๐ถ = {๐‘“๐‘“, ๐‘”๐‘”, โ„Ž, ๐‘–๐‘–}
  • 52. Problem Formulation โ€ข Given Fully dynamic graph stream {๐’†๐’†๐’•๐’•}๐’•๐’•=๐ŸŽ๐ŸŽ โˆž โ€ข Retain Summary graph ๐‘ฎ๐‘ฎ๐’•๐’• โˆ— = ๐‘บ๐‘บ๐’•๐’•, ๐‘ท๐‘ท๐’•๐’• and Edge corrections ๐‘ช๐‘ช๐’•๐’• = (๐‘ช๐‘ช๐’•๐’• + , ๐‘ช๐‘ช๐’•๐’• โˆ’ ) of graph ๐‘ฎ๐‘ฎ๐’•๐’• at time ๐’•๐’• โ€ข To Minimize the size of output representation ๐‘ท๐‘ท๐’•๐’• + ๐‘ช๐‘ช๐’•๐’• + + ๐‘ช๐‘ช๐’•๐’• โˆ’ + -+ โ€ฆโ€ฆ Retained at time ๐’•๐’• Edge change ๐’†๐’†๐’•๐’•+๐Ÿ๐Ÿ ๐ถ๐ถ+ = ๐‘Ž๐‘Ž๐‘Ž๐‘Ž ๐ถ๐ถโˆ’ = ๐‘“๐‘“๐‘–๐‘– Summary graph ๐‘ฎ๐‘ฎโˆ— = (๐‘บ๐‘บ, ๐‘ท๐‘ท) Edge corrections (๐‘ช๐‘ช+ , ๐‘ช๐‘ชโˆ’ ) ๐ด๐ด = {๐‘Ž๐‘Ž} ๐ต๐ต = {๐‘๐‘, ๐‘๐‘, ๐‘‘๐‘‘, ๐‘’๐‘’} ๐ถ๐ถ = {๐‘“๐‘“, ๐‘”๐‘”, โ„Ž, ๐‘–๐‘–}
  • 53. Challenge: Fast Update but Good Performance
  • 54. Outline โ€ข Preliminaries โ€ข Proposed Algorithm: MoSSo โ€ข Experimental Results โ€ข Conclusions
  • 55. Scheme for Incremental Summarization Current graph Lossless summarization ๐ด๐ด ๐‘Ž๐‘Ž ๐ถ๐ถ ๐บ๐บโˆ— ๐‘Ž๐‘Ž ๐‘๐‘ ๐‘๐‘ ๐‘‘๐‘‘ ๐‘’๐‘’ ๐‘“๐‘“ ๐‘”๐‘” โ„Ž ๐‘–๐‘– ๐ต๐ต ๐‘’๐‘’๐‘๐‘ ๐‘๐‘ ๐‘‘๐‘‘ ๐‘–๐‘– ๐‘“๐‘“ ๐‘”๐‘” โ„Ž ๐œ‘๐œ‘ = |๐‘ƒ๐‘ƒ| + |๐ถ๐ถ+ | + |๐ถ๐ถโˆ’ | = 4 ๐ถ๐ถ+ ๐ถ๐ถโˆ’ ๐‘Ž๐‘Ž ๐‘“๐‘“ ๐‘“๐‘“๐‘–๐‘–
  • 56. Scheme for Incremental Summarization Current graph Lossless summarization ๐ด๐ด ๐‘Ž๐‘Ž ๐ถ๐ถ ๐บ๐บโˆ— ๐‘Ž๐‘Ž ๐‘๐‘ ๐‘‘๐‘‘ ๐‘’๐‘’ ๐‘“๐‘“ ๐‘”๐‘” โ„Ž ๐‘–๐‘– ๐ต๐ต ๐‘’๐‘’๐‘๐‘ ๐‘๐‘ ๐‘‘๐‘‘ ๐‘–๐‘– ๐‘“๐‘“ ๐‘”๐‘” โ„Ž New edge: ๐‘—๐‘—๐‘๐‘ ๐‘Ž๐‘Ž ๐‘—๐‘— ๐‘—๐‘— ๐œ‘๐œ‘ = |๐‘ƒ๐‘ƒ| + |๐ถ๐ถ+ | + |๐ถ๐ถโˆ’ | = 5 ๐‘Ž๐‘Ž ๐‘“๐‘“ ๐‘“๐‘“๐‘–๐‘– ๐‘Ž๐‘Ž ๐‘—๐‘— ๐ถ๐ถ+ ๐ถ๐ถโˆ’
  • 57. Scheme for Incremental Summarization Current graph Lossless summarization ๐ด๐ด ๐‘Ž๐‘Ž ๐ถ๐ถ ๐บ๐บโˆ— ๐‘Ž๐‘Ž ๐‘๐‘ ๐‘‘๐‘‘ ๐‘’๐‘’ ๐‘“๐‘“ ๐‘”๐‘” โ„Ž ๐‘–๐‘– ๐ต๐ต ๐‘’๐‘’๐‘๐‘ ๐‘๐‘ ๐‘‘๐‘‘ ๐‘–๐‘– ๐‘“๐‘“ ๐‘”๐‘” โ„Ž New edge: ๐‘—๐‘—๐‘๐‘ How to update current summarization? ๐‘Ž๐‘Ž ๐‘—๐‘— ๐‘—๐‘— ๐œ‘๐œ‘ = |๐‘ƒ๐‘ƒ| + |๐ถ๐ถ+ | + |๐ถ๐ถโˆ’ | = 5 ๐‘Ž๐‘Ž ๐‘“๐‘“ ๐‘“๐‘“๐‘–๐‘– ๐‘Ž๐‘Ž ๐‘—๐‘— ๐ถ๐ถ+ ๐ถ๐ถโˆ’
  • 58. Scheme for Incremental Summarization Our approach (1) Attempt to move nodes among supernodes (2) Accept the move if ๐‹๐‹ decreases (3) Reject otherwise Current graph Lossless summarization ๐ด๐ด ๐‘Ž๐‘Ž ๐ถ๐ถ ๐บ๐บโˆ— ๐‘Ž๐‘Ž ๐‘๐‘ ๐‘‘๐‘‘ ๐‘’๐‘’ ๐‘“๐‘“ ๐‘”๐‘” โ„Ž ๐‘–๐‘– ๐ต๐ต ๐‘’๐‘’๐‘๐‘ ๐‘๐‘ ๐‘‘๐‘‘ ๐‘–๐‘– ๐‘“๐‘“ ๐‘”๐‘” โ„Ž ๐‘—๐‘—๐‘๐‘ ๐‘—๐‘— ๐œ‘๐œ‘ = |๐‘ƒ๐‘ƒ| + |๐ถ๐ถ+ | + |๐ถ๐ถโˆ’ | = 5 ๐‘Ž๐‘Ž ๐‘“๐‘“ ๐‘“๐‘“๐‘–๐‘– ๐‘Ž๐‘Ž ๐‘—๐‘— ๐ถ๐ถ+ ๐ถ๐ถโˆ’
  • 59. Scheme for Incremental Summarization Our approach (1) Attempt to move nodes among supernodes (2) Accept the move if ๐‹๐‹ decreases (3) Reject otherwise Testing node Current graph Lossless summarization ๐ด๐ด ๐‘Ž๐‘Ž ๐ถ๐ถ ๐บ๐บโˆ— ๐‘Ž๐‘Ž ๐‘๐‘ ๐‘‘๐‘‘ ๐‘’๐‘’ ๐‘“๐‘“ ๐‘”๐‘” โ„Ž ๐‘–๐‘– ๐ต๐ต ๐‘’๐‘’๐‘๐‘ ๐‘๐‘ ๐‘‘๐‘‘ ๐‘–๐‘– ๐‘“๐‘“ ๐‘”๐‘” โ„Ž ๐‘—๐‘—๐‘๐‘ ๐‘—๐‘— ๐œ‘๐œ‘ = |๐‘ƒ๐‘ƒ| + |๐ถ๐ถ+ | + |๐ถ๐ถโˆ’ | = 5 ๐‘Ž๐‘Ž ๐‘“๐‘“ ๐‘“๐‘“๐‘–๐‘– ๐‘Ž๐‘Ž ๐‘—๐‘— ๐ถ๐ถ+ ๐ถ๐ถโˆ’
  • 60. Scheme for Incremental Summarization Our approach (1) Attempt to move nodes among supernodes (2) Accept the move if ๐‹๐‹ decreases (3) Reject otherwise Testing node Current graph Lossless summarization ๐ด๐ด ๐‘Ž๐‘Ž ๐ถ๐ถ ๐บ๐บโˆ— ๐‘Ž๐‘Ž ๐‘๐‘ ๐‘‘๐‘‘ ๐‘’๐‘’ ๐‘“๐‘“ ๐‘”๐‘” โ„Ž ๐‘–๐‘– ๐ต๐ต ๐‘’๐‘’๐‘๐‘ ๐‘๐‘ ๐‘‘๐‘‘ ๐‘–๐‘– ๐‘“๐‘“ ๐‘”๐‘” โ„Ž ๐‘—๐‘—๐‘๐‘ ๐‘—๐‘— Candidate ๐œ‘๐œ‘ = |๐‘ƒ๐‘ƒ| + |๐ถ๐ถ+ | + |๐ถ๐ถโˆ’ | = 5 ๐‘Ž๐‘Ž ๐‘“๐‘“ ๐‘“๐‘“๐‘–๐‘– ๐‘Ž๐‘Ž ๐‘—๐‘— ๐ถ๐ถ+ ๐ถ๐ถโˆ’
  • 61. Scheme for Incremental Summarization Our approach (1) Attempt to move nodes among supernodes (2) Accept the move if ๐‹๐‹ decreases (3) Reject otherwise Testing node Testing Current graph Lossless summarization ๐ด๐ด ๐‘Ž๐‘Ž ๐ถ๐ถ ๐บ๐บโˆ— ๐‘Ž๐‘Ž ๐‘๐‘ ๐‘‘๐‘‘ ๐‘’๐‘’ ๐‘“๐‘“ ๐‘”๐‘” โ„Ž ๐‘–๐‘– ๐ต๐ต ๐‘’๐‘’๐‘๐‘ ๐‘๐‘ ๐‘‘๐‘‘ ๐‘–๐‘– ๐‘“๐‘“ ๐‘”๐‘” โ„Ž ๐‘—๐‘—๐‘๐‘ ๐‘—๐‘— Candidate ๐œ‘๐œ‘ = |๐‘ƒ๐‘ƒ| + |๐ถ๐ถ+ | + |๐ถ๐ถโˆ’ | = 5 ๐‘Ž๐‘Ž ๐‘“๐‘“ ๐‘“๐‘“๐‘–๐‘– ๐‘Ž๐‘Ž ๐‘—๐‘— ๐ถ๐ถ+ ๐ถ๐ถโˆ’
  • 62. Scheme for Incremental Summarization MoSSo finds... (1) Testing nodes whose move likely results in ๐›—๐›— โ†“ (2) Candidates for testing node, likely resulting in ๐›—๐›— โ†“ Current graph Lossless summarization ๐ด๐ด ๐‘Ž๐‘Ž ๐ถ๐ถ ๐บ๐บโˆ— ๐‘Ž๐‘Ž ๐‘๐‘ ๐‘‘๐‘‘ ๐‘’๐‘’ ๐‘“๐‘“ ๐‘”๐‘” โ„Ž ๐‘–๐‘– ๐ต๐ต ๐‘’๐‘’๐‘๐‘ ๐‘๐‘ ๐‘‘๐‘‘ ๐‘–๐‘– ๐‘“๐‘“ ๐‘”๐‘” โ„Ž ๐‘—๐‘—๐‘๐‘ ๐‘—๐‘— ๐œ‘๐œ‘ = |๐‘ƒ๐‘ƒ| + |๐ถ๐ถ+ | + |๐ถ๐ถโˆ’ | = 5 ๐‘Ž๐‘Ž ๐‘“๐‘“ ๐‘“๐‘“๐‘–๐‘– ๐‘Ž๐‘Ž ๐‘—๐‘— ๐ถ๐ถ+ ๐ถ๐ถโˆ’
  • 63. Lossless summarization Scheme for Incremental Summarization Current graph ๐ด๐ด ๐‘Ž๐‘Ž ๐ถ๐ถ ๐บ๐บโˆ— ๐ต๐ต ๐‘’๐‘’๐‘๐‘ ๐‘๐‘ ๐‘‘๐‘‘ ๐‘–๐‘– ๐‘“๐‘“ ๐‘”๐‘” โ„Ž ๐‘Ž๐‘Ž ๐‘๐‘ ๐‘‘๐‘‘ ๐‘’๐‘’ ๐‘“๐‘“ ๐‘”๐‘” โ„Ž ๐‘–๐‘– ๐‘—๐‘—๐‘๐‘ ๐‘—๐‘—Testing node Candidate ๐œ‘๐œ‘ = |๐‘ƒ๐‘ƒ| + |๐ถ๐ถ+ | + |๐ถ๐ถโˆ’ | = 5 ๐‘Ž๐‘Ž ๐‘“๐‘“ ๐‘“๐‘“๐‘–๐‘– ๐‘Ž๐‘Ž ๐‘—๐‘— ๐ถ๐ถ+ ๐ถ๐ถโˆ’
  • 64. Scheme for Incremental Summarization Current graph Lossless summarization ๐ด๐ด ๐‘Ž๐‘Ž ๐ถ๐ถ ๐บ๐บโˆ— ๐‘Ž๐‘Ž ๐‘๐‘ ๐‘‘๐‘‘ ๐‘’๐‘’ ๐‘“๐‘“ ๐‘”๐‘” โ„Ž ๐‘–๐‘– ๐ต๐ต ๐‘’๐‘’๐‘๐‘ ๐‘๐‘ ๐‘‘๐‘‘ ๐‘–๐‘– ๐‘“๐‘“ ๐‘”๐‘” โ„Ž ๐‘—๐‘—๐‘๐‘ ๐‘—๐‘— ๐œ‘๐œ‘ = |๐‘ƒ๐‘ƒ| + |๐ถ๐ถ+ | + |๐ถ๐ถโˆ’ | = 4 ๐ถ๐ถ+ ๐ถ๐ถโˆ’๐ถ๐ถ+ ๐ถ๐ถโˆ’ ๐‘Ž๐‘Ž ๐‘“๐‘“ ๐‘“๐‘“๐‘–๐‘–
  • 65. MoSSo: Main Ideas โ€ข Step 1: Set testing nodes โ€ข (S1) No restoration from the current summarization ๐บ๐บ๐‘ก๐‘ก โˆ— = ๐‘†๐‘†๐‘ก๐‘ก, ๐‘ƒ๐‘ƒ๐‘ก๐‘ก , ๐ถ๐ถ๐‘ก๐‘ก = (๐ถ๐ถ๐‘ก๐‘ก + , ๐ถ๐ถ๐‘ก๐‘ก โˆ’ ) โ€ข (S2) Reduce redundant testing by a stochastic filtering ๐‘ข๐‘ข ๐‘ฃ๐‘ฃ Changed edge ๐‘’๐‘’ = {๐‘ข๐‘ข, ๐‘ฃ๐‘ฃ} โ€ข Step 2: Find candidate โ€ข (S3) Utilize an incremental coarse clustering โ€ข (S4) Inject flexibility to reorganization of supernodes Which nodes to move? (testing nodes) ๐‘ข๐‘ข ๐‘ฃ๐‘ฃ Testing node Move into which supernode? (candidates)
  • 66. MoSSo: Main Ideas โ€ข Step 1: Set testing nodes โ€ข (S1) No restoration from the current summarization ๐บ๐บ๐‘ก๐‘ก โˆ— = ๐‘†๐‘†๐‘ก๐‘ก, ๐‘ƒ๐‘ƒ๐‘ก๐‘ก , ๐ถ๐ถ๐‘ก๐‘ก = (๐ถ๐ถ๐‘ก๐‘ก + , ๐ถ๐ถ๐‘ก๐‘ก โˆ’ ) โ€ข (S2) Reduce redundant testing by a stochastic filtering Repeated Time ๐‘ข๐‘ข ๐‘ฃ๐‘ฃ Changed edge ๐‘’๐‘’ = {๐‘ข๐‘ข, ๐‘ฃ๐‘ฃ} โ€ข Step 2: Find candidate โ€ข (S3) Utilize an incremental coarse clustering โ€ข (S4) Inject flexibility to reorganization of supernodes Performance Which nodes to move? (testing nodes) ๐‘ข๐‘ข ๐‘ฃ๐‘ฃ Testing node Move into which supernode? (candidates)
  • 67. MoSSo: Details Parameters: โ€ข Sample number ๐’„๐’„ โ€ข Escape prob. ๐’†๐’† Input: โ€ข Summary graph ๐‘ฎ๐‘ฎ๐’•๐’• โˆ— & Edge corrections ๐‘ช๐‘ช๐’•๐’• โ€ข Edge change ๐’–๐’–, ๐’—๐’— + (addition) or ๐’–๐’–, ๐’—๐’— โˆ’ (deletion) Output: โ€ข Summary graph ๐‘ฎ๐‘ฎ๐’•๐’•+๐Ÿ๐Ÿ โˆ— & Edge corrections ๐‘ช๐‘ช๐’•๐’•+๐Ÿ๐Ÿ
  • 68. MoSSo: Details (Step 1) โ€“ MCMC ๐‘ข๐‘ข ๐‘ฃ๐‘ฃ Changed edge ๐‘’๐‘’ = {๐‘ข๐‘ข, ๐‘ฃ๐‘ฃ} ๐‘ต๐‘ต(๐’–๐’–): Neighborhood of a node ๐’–๐’– Notation
  • 69. MoSSo: Details (Step 1) โ€“ MCMC Neighborhood ๐‘ต๐‘ต(๐’–๐’–) of input node ๐’–๐’– is more likely affected ๐‘ข๐‘ข ๐‘ฃ๐‘ฃ Changed edge ๐‘’๐‘’ = {๐‘ข๐‘ข, ๐‘ฃ๐‘ฃ} ๐‘ต๐‘ต(๐’–๐’–): Neighborhood of a node ๐’–๐’– Notation
  • 70. MoSSo: Details (Step 1) โ€“ MCMC Neighborhood ๐‘ต๐‘ต(๐’–๐’–) of input node ๐’–๐’– is more likely affected ๏ƒจ Focus on testings nodes in ๐‘ต๐‘ต(๐’–๐’–)๐‘ข๐‘ข ๐‘ฃ๐‘ฃ Changed edge ๐‘’๐‘’ = {๐‘ข๐‘ข, ๐‘ฃ๐‘ฃ} ๐‘ต๐‘ต(๐’–๐’–): Neighborhood of a node ๐’–๐’– Notation
  • 71. MoSSo: Details (Step 1) โ€“ MCMC Neighborhood ๐‘ต๐‘ต(๐’–๐’–) of input node ๐’–๐’– is more likely affected ๏ƒจ Focus on testings nodes in ๐‘ต๐‘ต(๐’–๐’–) P1. To sample neighbors, one should retrieve all ๐‘ต๐‘ต(๐’–๐’–) from ๐‘ฎ๐‘ฎโˆ— and ๐‘ช๐‘ช, which takes ๐‘ถ๐‘ถ(๐’‚๐’‚๐’‚๐’‚๐’‚๐’‚๐’‚๐’‚๐’‚๐’‚๐’‚๐’‚๐’‚๐’‚ ๐’…๐’…๐’…๐’…๐’…๐’…๐’…๐’…๐’…๐’…๐’…๐’…) time on average ๐‘ข๐‘ข ๐‘ฃ๐‘ฃ Changed edge ๐‘’๐‘’ = {๐‘ข๐‘ข, ๐‘ฃ๐‘ฃ} ๐‘ต๐‘ต(๐’–๐’–): Neighborhood of a node ๐’–๐’– Notation
  • 72. MoSSo: Details (Step 1) โ€“ MCMC Neighborhood ๐‘ต๐‘ต(๐’–๐’–) of input node ๐’–๐’– is more likely affected ๏ƒจ Focus on testings nodes in ๐‘ต๐‘ต(๐’–๐’–) P1. To sample neighbors, one should retrieve all ๐‘ต๐‘ต(๐’–๐’–) from ๐‘ฎ๐‘ฎโˆ— and ๐‘ช๐‘ช, which takes ๐‘ถ๐‘ถ(๐’‚๐’‚๐’‚๐’‚๐’‚๐’‚๐’‚๐’‚๐’‚๐’‚๐’‚๐’‚๐’‚๐’‚ ๐’…๐’…๐’…๐’…๐’…๐’…๐’…๐’…๐’…๐’…๐’…๐’…) time on average ๏ƒจ Deadly to scalabilityโ€ฆ ๐‘ข๐‘ข ๐‘ฃ๐‘ฃ Changed edge ๐‘’๐‘’ = {๐‘ข๐‘ข, ๐‘ฃ๐‘ฃ} ๐‘ต๐‘ต(๐’–๐’–): Neighborhood of a node ๐’–๐’– Notation
  • 73. MoSSo: Details (Step 1) โ€“ MCMC Neighborhood ๐‘ต๐‘ต(๐’–๐’–) of input node ๐’–๐’– is more likely affected ๏ƒจ Focus on testings nodes in ๐‘ต๐‘ต(๐’–๐’–) P1. To sample neighbors, one should retrieve all ๐‘ต๐‘ต(๐’–๐’–) from ๐‘ฎ๐‘ฎโˆ— and ๐‘ช๐‘ช, which takes ๐‘ถ๐‘ถ(๐’‚๐’‚๐’‚๐’‚๐’‚๐’‚๐’‚๐’‚๐’‚๐’‚๐’‚๐’‚๐’‚๐’‚ ๐’…๐’…๐’…๐’…๐’…๐’…๐’…๐’…๐’…๐’…๐’…๐’…) time on average ๏ƒจ Deadly to scalabilityโ€ฆ ๐‘ข๐‘ข ๐‘ฃ๐‘ฃ Changed edge ๐‘’๐‘’ = {๐‘ข๐‘ข, ๐‘ฃ๐‘ฃ} Graph densification law [LKF05]: โ€œThe average degree of real-world graphs increases over time.โ€ ๐‘ต๐‘ต(๐’–๐’–): Neighborhood of a node ๐’–๐’– Notation
  • 74. MoSSo: Details (Step 1) โ€“ MCMC (cont.) S1. Without full retrievals of ๐‘ต๐‘ต(๐’–๐’–), sample ๐’„๐’„ neighbors in un iformly random by using Markov Chain Monte Carlo method (MCMC) ๏ƒจ MCMC method: sampling from a random variable with its probability density proportional to a given function ๐‘ข๐‘ข ๐‘ฃ๐‘ฃ
  • 75. MoSSo: Details (Step 1) โ€“ Probabilistic Filtering Test all the sampled nodes? ๐‘ฃ๐‘ฃ ๐‘ข๐‘ข
  • 76. MoSSo: Details (Step 1) โ€“ Probabilistic Filtering Test all the sampled nodes? ๏ƒจ Better notโ€ฆ ๐‘ฃ๐‘ฃ ๐‘ข๐‘ข
  • 77. MoSSo: Details (Step 1) โ€“ Probabilistic Filtering Test all the sampled nodes? P2. Too frequent testing on high-degree nodes as ๐‘ƒ๐‘ƒ(๐‘ฃ๐‘ฃ sampled) โˆ ๐‘‘๐‘‘๐‘‘๐‘‘๐‘‘๐‘‘(๐‘ฃ๐‘ฃ) ๏ƒจ Better notโ€ฆ ๐‘ฃ๐‘ฃ ๐‘ข๐‘ข
  • 78. MoSSo: Details (Step 1) โ€“ Probabilistic Filtering Test all the sampled nodes? P2. Too frequent testing on high-degree nodes as ๐‘ƒ๐‘ƒ(๐‘ฃ๐‘ฃ sampled) โˆ ๐‘‘๐‘‘๐‘‘๐‘‘๐‘‘๐‘‘(๐‘ฃ๐‘ฃ) Computationally heavy (Too many nbrs) ๏ƒจ Better notโ€ฆ - Updating the optimal encoding - Computing the change ๐›ฅ๐›ฅ๐›ฅ๐›ฅ in the description cost ๐‘ฃ๐‘ฃ ๐‘ข๐‘ข
  • 79. MoSSo: Details (Step 1) โ€“ Probabilistic Filtering Test all the sampled nodes? P2. Too frequent testing on high-degree nodes as ๐‘ƒ๐‘ƒ(๐‘ฃ๐‘ฃ sampled) โˆ ๐‘‘๐‘‘๐‘‘๐‘‘๐‘‘๐‘‘(๐‘ฃ๐‘ฃ) Computationally heavy (Too many nbrs) S2. Test a sampled node ๐‘ฃ๐‘ฃ w.p. 1 ๐‘‘๐‘‘๐‘‘๐‘‘๐‘‘๐‘‘(๐‘ฃ๐‘ฃ) (1) Likely to avoid expensive testing on high-degree nodes (2) In expectation, ๐‘ƒ๐‘ƒ(๐‘ฃ๐‘ฃ: actually tested) is the same across all nodes ๐‘ฃ๐‘ฃ (i.e., smoothen unbalance in # of testing) ๏ƒจ Better notโ€ฆ - Updating the optimal encoding - Computing the change ๐›ฅ๐›ฅ๐›ฅ๐›ฅ in the description cost ๐‘ฃ๐‘ฃ ๐‘ข๐‘ข
  • 80. MoSSo: Details (Step 2) โ€“ Coarse Clustering Testing node ๐‘ฆ๐‘ฆ ๐‘ฃ๐‘ฃ ๐‘ข๐‘ข
  • 81. MoSSo: Details (Step 2) โ€“ Coarse Clustering P3. Among many choices, how do we know โ€goodโ€ candidates? Testing node ๐‘ฆ๐‘ฆ (likely resulting in ๐‹๐‹ โ†“) ๐‘ฃ๐‘ฃ ๐‘ข๐‘ข
  • 82. MoSSo: Details (Step 2) โ€“ Coarse Clustering P3. Among many choices, how do we know โ€goodโ€ candidates? Testing node ๐‘ฆ๐‘ฆ (likely resulting in ๐‹๐‹ โ†“) S3. Utilize an incremental coarse clustering ๏ƒจ Desirable: Nodes with โ€œsimilar connectivityโ€ in the same cluster ๏ƒจ Any incremental coarse clustering with the desirable property! ๐‘ฃ๐‘ฃ ๐‘ข๐‘ข
  • 83. MoSSo: Details (Step 2) โ€“ Coarse Clustering P3. Among many choices, how do we know โ€goodโ€ candidates? Testing node ๐‘ฆ๐‘ฆ (likely resulting in ๐‹๐‹ โ†“) S3. Utilize an incremental coarse clustering ๏ƒจ Desirable: Nodes with โ€œsimilar connectivityโ€ in the same cluster ๏ƒจ Any incremental coarse clustering with the desirable property! (1) Fast with the desirable theoretical property: ๐‘ท๐‘ท ๐’–๐’–, ๐’—๐’— โˆˆ ๐’”๐’”๐’”๐’”๐’”๐’”๐’”๐’” ๐’„๐’„๐’„๐’„๐’„๐’„๐’„๐’„๐’„๐’„๐’„๐’„๐’„๐’„ โˆ ๐‘ฑ๐‘ฑ๐‘ฑ๐‘ฑ๐‘ฑ๐‘ฑ๐‘ฑ๐‘ฑ๐‘ฑ๐‘ฑ๐‘ฑ๐‘ฑ๐‘ฑ๐‘ฑ(๐‘ต๐‘ต ๐’–๐’– , ๐‘ต๐‘ต ๐’—๐’— ) โ‡’ Grouping nodes with similar connectivity Min-hashing ๐‘ฃ๐‘ฃ ๐‘ข๐‘ข
  • 84. MoSSo: Details (Step 2) โ€“ Coarse Clustering P3. Among many choices, how do we know โ€goodโ€ candidates? Testing node ๐‘ฆ๐‘ฆ (likely resulting in ๐‹๐‹ โ†“) S3. Utilize an incremental coarse clustering ๏ƒจ Desirable: Nodes with โ€œsimilar connectivityโ€ in the same cluster ๏ƒจ Any incremental coarse clustering with the desirable property! (1) Fast with the desirable theoretical property: (2) Clusters from min-hashing: updated rapidly in response to edge changes ๐‘ท๐‘ท ๐’–๐’–, ๐’—๐’— โˆˆ ๐’”๐’”๐’”๐’”๐’”๐’”๐’”๐’” ๐’„๐’„๐’„๐’„๐’„๐’„๐’„๐’„๐’„๐’„๐’„๐’„๐’„๐’„ โˆ ๐‘ฑ๐‘ฑ๐‘ฑ๐‘ฑ๐‘ฑ๐‘ฑ๐‘ฑ๐‘ฑ๐‘ฑ๐‘ฑ๐‘ฑ๐‘ฑ๐‘ฑ๐‘ฑ(๐‘ต๐‘ต ๐’–๐’– , ๐‘ต๐‘ต ๐’—๐’— ) โ‡’ Grouping nodes with similar connectivity Min-hashing ๐‘ฃ๐‘ฃ ๐‘ข๐‘ข
  • 85. MoSSo: Details (Step 2) โ€“ Separation of Node ๐‘ฆ๐‘ฆ ๐‘ฃ๐‘ฃ Testing node ๐‘ข๐‘ข
  • 86. MoSSo: Details (Step 2) โ€“ Separation of Node P4. In this way, moving nodes only decreases or maintains ๐‘บ๐‘บ ๏ƒจ Discourage reorganizing supernodes in the long run ๐‘ฆ๐‘ฆ ๐‘ฃ๐‘ฃ Testing node ๐‘ข๐‘ข
  • 87. MoSSo: Details (Step 2) โ€“ Separation of Node P4. In this way, moving nodes only decreases or maintains ๐‘บ๐‘บ ๏ƒจ Discourage reorganizing supernodes in the long run ๐‘ฆ๐‘ฆ S4. Instead of finding a candidate, separate ๐’š๐’š from ๐‘บ๐‘บ๐’š๐’š and create a singleton supernode ๐‘บ๐‘บ๐’š๐’š w.p. escape probability ๐’†๐’† ๐‘ฃ๐‘ฃ Testing node ๐‘ข๐‘ข
  • 88. MoSSo: Details (Step 2) โ€“ Separation of Node P4. In this way, moving nodes only decreases or maintains ๐‘บ๐‘บ ๏ƒจ Discourage reorganizing supernodes in the long run ๐‘ฆ๐‘ฆ S4. Instead of finding a candidate, separate ๐’š๐’š from ๐‘บ๐‘บ๐’š๐’š and create a singleton supernode ๐‘บ๐‘บ๐’š๐’š w.p. escape probability ๐’†๐’† ๐‘ฃ๐‘ฃ Testing node ๐‘ข๐‘ข
  • 89. MoSSo: Details (Step 2) โ€“ Separation of Node P4. In this way, moving nodes only decreases or maintains ๐‘บ๐‘บ ๏ƒจ Discourage reorganizing supernodes in the long run ๐‘ฆ๐‘ฆ S4. Instead of finding a candidate, separate ๐’š๐’š from ๐‘บ๐‘บ๐’š๐’š and create a singleton supernode ๐‘บ๐‘บ๐’š๐’š w.p. escape probability ๐’†๐’† ๏ƒจ Inject flexibility to supernodes (a partition of ๐‘ฝ๐‘ฝ) ๏ƒจ Empirically significant improvement in compression rates ๐‘ฃ๐‘ฃ Testing node ๐‘ข๐‘ข
  • 90. MoSSo: Details (Step 2) โ€“ Separation of Node P4. In this way, moving nodes only decreases or maintains ๐‘บ๐‘บ ๏ƒจ Discourage reorganizing supernodes in the long run ๐‘ฆ๐‘ฆ S4. Instead of finding a candidate, separate ๐’š๐’š from ๐‘บ๐‘บ๐’š๐’š and create a singleton supernode ๐‘บ๐‘บ๐’š๐’š w.p. escape probability ๐’†๐’† ๏ƒจ Inject flexibility to supernodes (a partition of ๐‘ฝ๐‘ฝ) ๏ƒจ Empirically significant improvement in compression rates Similar to before, accept or reject the separation depending on ฮ”๐‹๐‹ ๐‘ฃ๐‘ฃ Testing node ๐‘ข๐‘ข
  • 91. Outline โ€ข Preliminaries โ€ข Proposed Algorithm: MoSSo โ€ข Experimental Results โ€ข Conclusions
  • 92. Experimental Settings โ€ข 10 Real-world Graphs (up to 0.3B edges)
  • 93. Experimental Settings โ€ข 10 Real-world Graphs (up to 0.3B edges) Web
  • 94. Experimental Settings โ€ข 10 Real-world Graphs (up to 0.3B edges) Web Social
  • 95. Experimental Settings โ€ข 10 Real-world Graphs (up to 0.3B edges) Web Social Collaboration
  • 96. Experimental Settings โ€ข 10 Real-world Graphs (up to 0.3B edges) Web Social Collaboration Email And others!
  • 97. Experimental Settings โ€ข 10 Real-world Graphs (up to 0.3B edges) โ€ข Batch loseless graph summarization algorithms: โ€ข Randomized [NSR08], SAGS [KNL15], SWeG [SGKR19] Web Social Collaboration Email And others!
  • 98. Baseline Incremental Algorithms โ€ข MoSSo-Greedy: โ€ข Greedily moves nodes related to inserted/deleted edge, while fixing the other nodes so that the objective is minimized โ€ข MoSSo-MCMC โ€ข See the paper for details โ€ข MoSSo-Simple โ€ข MoSSo without coarse clustering
  • 99. Experiment results: Speed โ€ข MoSSo processed each change up to 7 orders of magnitude faster than running the fastest batch algorithm
  • 100. Experiment results: Speed โ€ข MoSSo processed each change up to 7 orders of magnitude faster than running the fastest batch algorithm UK (Insertion-only)
  • 101. Experiment results: Speed โ€ข MoSSo processed each change up to 7 orders of magnitude faster than running the fastest batch algorithm Insertion-only graph streams Fully-dynamic graph streams UK (Insertion-only)
  • 102. Experiment results: Compression Performance โ€ข The compression ratio of MoSSo was even comparable to those of the best batch algorithms โ€ข MoSSo achieved the best compression ratios among the streaming algorithms Compression ratio: ( ๐‘ท๐‘ท + ๐‘ช๐‘ช+ + ๐‘ช๐‘ชโˆ’ )/|๐‘ฌ๐‘ฌ| Notation
  • 103. Experiment results: Compression Performance โ€ข The compression ratio of MoSSo was even comparable to those of the best batch algorithms โ€ข MoSSo achieved the best compression ratios among the streaming algorithms UK Compression ratio: ( ๐‘ท๐‘ท + ๐‘ช๐‘ช+ + ๐‘ช๐‘ชโˆ’ )/|๐‘ฌ๐‘ฌ| Notation
  • 104. Experiment results: Compression Performance โ€ข The compression ratio of MoSSo was even comparable to those of the best batch algorithms โ€ข MoSSo achieved the best compression ratios among the streaming algorithms PR EN FB DB YT SK LJ EU HW UK Compression ratio: ( ๐‘ท๐‘ท + ๐‘ช๐‘ช+ + ๐‘ช๐‘ชโˆ’ )/|๐‘ฌ๐‘ฌ| Notation
  • 105. Experiment results: Scalability โ€ข MoSSo processed each change in near-constant time
  • 106. Experiment results: Scalability EU (Insertion-only) SK (Fully-dynamic) โ€ข MoSSo processed each change in near-constant time
  • 107. Outline โ€ข Preliminaries โ€ข Proposed Algorithm: MoSSo โ€ข Experimental Results โ€ข Conclusions
  • 108. Conclusions We propose MoSSo, the first algorithm for incremental lossless graph summarization
  • 109. Conclusions Fast and โ€˜any timeโ€™ We propose MoSSo, the first algorithm for incremental lossless graph summarization
  • 110. Conclusions Fast and โ€˜any timeโ€™ Effective We propose MoSSo, the first algorithm for incremental lossless graph summarization
  • 111. Conclusions Fast and โ€˜any timeโ€™ Effective Scalable We propose MoSSo, the first algorithm for incremental lossless graph summarization
  • 112. Conclusions Fast and โ€˜any timeโ€™ Effective Scalable The code and datasets used in the paper are available at http://dmlab.kaist.ac.kr/mosso/ We propose MoSSo, the first algorithm for incremental lossless graph summarization
  • 113. Incremental Lossless Graph Summarization Jihoon Ko* Yunbum Kook* Kijung Shin