Link Prediction via
Subgraph Embedding-Based
Convex Matrix Completion
Link Prediction via
Subgraph Embedding-Based
Convex Matrix Completion
Zhu Cao
Tsinghua University
Linlin Wang
Tsinghua University
Gerard de Melo
http://gerard.demelo.org
Rutgers University
Social NetworksSocial Networks
Image: CC-BY-SA by Tanja Cappell. https://www.flickr.com/photos/frauhoelle/8464661409
Link PredictionLink Prediction
Link PredictionLink Prediction
?
Traditional
Neighbour Overlap Methods
Traditional
Neighbour Overlap Methods
?
Examples:
● Common Neighbours
● Adamic/Adar
(frequency weighted)
● Jaccard coefficient
based on neighbours
Traditional
Neighbour Overlap Methods
Traditional
Neighbour Overlap Methods
?
Examples:
● Common Neighbours
● Adamic/Adar
(frequency weighted)
● Jaccard coefficient
based on neighbours
Previous Work:
Connectivity-Based Methods
Previous Work:
Connectivity-Based Methods
?
Examples:
● PageRank
● SimRank
● Hitting Time
● Commute Time
(roundtrip)
● Katz
Learning RepresentationsLearning Representations
Image: Adapted from Perozzi et al. 2014. DeepWalk: Online Learning of Social Representations
SVDSVD
E.g. Graph's
Adjacency Matrix
Image: Adapted from Tim Roughgarden & Gregory Valiant
SVDSVD
Left Singular Vectors Right Singular Vectors
Singular Values
E.g. Graph's
Adjacency Matrix
Image: Adapted from Tim Roughgarden & Gregory Valiant
Low-Rank Approximation
via SVD
Low-Rank Approximation
via SVD
≈
k
Left Singular Vectors
k
Right Singular Vectors
k Singular
ValuesE.g. Graph's
Adjacency Matrix
Image: Adapted from Tim Roughgarden & Gregory Valiant
k k k
Word Vector Representations:
word2vec
Word Vector Representations:
word2vec
0.02
0.12
0.04
...
0.03
0.08
Prediction
…
the
local
population
of
sparrows
...
Large-Scale
Text
sparrows
population
local
...
word2vec Skip-Gram Model
Previous Work:
DeepWalk
Previous Work:
DeepWalk
0.02
0.12
0.04
...
0.03
0.08
Prediction
…
n15
n382
n49
n729
n23
...
Social
Network
n49
n729
n382
...
word2vec Skip-Gram Model
Random Walk
Perozzi et al. 2014. DeepWalk: Online Learning of Social Representations
Previous Work:
node2vec
Previous Work:
node2vec
Grover & Leskovec (2016). node2vec: Scalable Feature Learning for Networks.
Biased Random Walks
Our Approach:
SEMAC
Our Approach:
SEMAC
Subgraph
Embedding
+
Matrix Completion
Our Approach:
SEMAC
Our Approach:
SEMAC
Our Approach:
SEMAC
Our Approach:
SEMAC
Step 1:
Run Breadth-First Search for different depths d
from each node v
Step 1:
Run Breadth-First Search for different depths d
from each node v
Our Approach:
SEMAC
Our Approach:
SEMAC
Our Approach:
SEMAC
Our Approach:
SEMAC
Our Approach:
SEMAC
Our Approach:
SEMAC
Our Approach:
SEMAC
Our Approach:
SEMAC
Our Approach:
SEMAC
Our Approach:
SEMAC
Step 2:
Create a new graph G'
with edges between
subgraphs
Step 2:
Create a new graph G'
with edges between
subgraphs
Our Approach:
SEMAC
Our Approach:
SEMAC
Step 2:
Create a new graph G'
with edges between
subgraphs
Step 2:
Create a new graph G'
with edges between
subgraphs
Edges:
a) same node,
depth ± 1
b) same depth
neighbour node
Our Approach:
SEMAC
Our Approach:
SEMAC
Edges:
a) same node,
depth ± 1
b) same depth,
neighbour node
Step 2:
Create a new graph G'
with edges between
subgraphs
Step 2:
Create a new graph G'
with edges between
subgraphs
Our Approach:
SEMAC
Our Approach:
SEMAC
Edges:
a) same node,
depth ± 1
b) same depth,
neighbour node
Step 2:
Create a new graph G'
with edges between
subgraphs
Step 2:
Create a new graph G'
with edges between
subgraphs
Our Approach:
SEMAC
Our Approach:
SEMAC
Step 3:
Learn subgraph embeddings
using G'
Step 3:
Learn subgraph embeddings
using G'
Our Approach:
SEMAC
Our Approach:
SEMAC
Step 3:
Learn subgraph embeddings
using G'
Step 3:
Learn subgraph embeddings
using G'
Nuclear Norm
Nuclear Norm Minimization
Find W that
minimizes
Our Approach:
SEMAC
Our Approach:
SEMAC
Step 3:
Learn subgraph embeddings
using G'
Step 3:
Learn subgraph embeddings
using G'
Nuclear Norm
Nuclear Norm Minimization
Find W that
minimizes
Frobenius NormCompare only
non-zero (observed)
entries (unlike SVD)
Our Approach:
SEMAC
Our Approach:
SEMAC
Result of Step 3:
Embedding for
every subgraph
Result of Step 3:
Embedding for
every subgraph
0.32
...
0.27
0.81
...
0.12
Our Approach:
SEMAC
Our Approach:
SEMAC
Step 4:
Create node embeddings
Concatenate embeddings
of subgraphs for different
depths d
Step 4:
Create node embeddings
Concatenate embeddings
of subgraphs for different
depths d
0.32
...
0.27
0.81
...
0.12
...
0.32
...
0.27
0.81
...
0.12
Link PredictionLink Prediction
?
0.32
0.14
0.03
...
0.18
0.09
0.28
0.11
0.08
...
0.24
0.13
Step 5:
Link prediction
via Vector Cosine
Step 5:
Link prediction
via Vector Cosine
ExperimentsExperiments
Image: CC-BY by Marc Smith with NodeXL. https://www.flickr.com/photos/marc_smith/6871711979
ExperimentsExperiments
Facebook
(McAuley &
Leskovec 2012)
ExperimentsExperiments
Facebook
(McAuley &
Leskovec 2012)
Small connected
component
subsets of Facebook
ExperimentsExperiments
Wikipedia Coauthorship
(Leskovec & Krevl 2014)
ExperimentsExperiments
Wikipedia Coauthorship
Protein-Protein Interactions
(Breitkreutz et al. 2008)
(Leskovec & Krevl 2014)
ExperimentsExperiments
AUC based on 5-fold Cross-Validation
SummarySummarySummarySummary
Goal: State-of-the-Art
Link Prediction
Consider Subgraphs
► Different depths
► Graph of subgraphs with links
to related subgraphs
Create Representations
► Nuclear-Norm Minimization
to better account for
unobserved links
► Concatenate, Cosine
Get in Touch!
http://gerard.demelo.org
gdm@demelo.org
Get in Touch!
http://gerard.demelo.org
gdm@demelo.org
Thank
you!
0.32
0.14
...
0.09
0.28
0.11
...
0.13
AcknowledgmentsAcknowledgmentsAcknowledgmentsAcknowledgments
User Icons by
Freepik (CC-BY)
https://www.freepik.com
Title Image: CC-BY by
Chris Potter
https://www.flickr.com/photos/865
Thank
you!
0.32
0.14
...
0.09
0.28
0.11
...
0.13

SEMAC Graph Node Embeddings for Link Prediction