network growth and the spectral evolution model
DESCRIPTION
We introduce and study the spectral evolution model, which characterizes the growth of large networks in terms of the eigenvalue decomposition of their adjacency matrices: In large networks, changes over time result in a change of a graph's spectrum, leaving the eigenvectors unchanged. We validate this hypothesis for several large social, collaboration, authorship, rating, citation, communication and tagging networks, covering unipartite, bipartite, signed and unsigned graphs. Following these observations, we introduce a link prediction algorithm based on the extrapolation of a network's spectral evolution. This new link prediction method generalizes several common graph kernels that can be expressed as spectral transformations. In contrast to these graph kernels, the spectral extrapolation algorithm does not make assumptions about specific growth patterns beyond the spectral evolution model. We thus show that it performs particularly well for networks with irregular, but spectral, growth patterns.TRANSCRIPT
Web Science & Technologies
University of Koblenz ▪ Landau, Germany
Network Growth and the Spectral Evolution Model
Jérôme Kunegis¹, Damien Fay², Christian Bauckhage³¹ University of Koblenz-Landau
² University of Cambridge³ Fraunhofer IAIS
CIKM 2010, Toronto, Canada
Jérôme [email protected]
CIKM 20103 / 24
Graph Theory
Known links (A)Unknown links (B)
The users of Facebook are connected by friendship links, forming a graph. This graph is undirected.
Let A be the set of links in the network. Let B be the set of links that will appear in the future.
Task: Find a suitable function f(A) = B.
Jérôme [email protected]
CIKM 20104 / 24
Algebraic Graph Theory
Known links (A)Unknown links (B)
Use adjacency matrices A, B ∈ {0, 1}n×n :
A = B = [0 1 0 0 01 0 1 0 00 1 0 1 00 0 1 0 10 0 0 1 0
] [0 0 1 1 00 0 0 0 01 0 0 0 01 0 0 0 00 0 0 0 0
]
Jérôme [email protected]
CIKM 20105 / 24
Spectral Graph Theory
Use th eigenvalue decomposition :
A = UΛUT
B = VΣVT
U and V are orthogonal and contain eigenvectors Λ and Σ are diagonal and contain eigenvalues
Task : find an f of the following form :f(UΛUT) = VΣVT
In this talk : The observation that U ≈ V Extrapolation of Λ to Σ
Jérôme [email protected]
CIKM 20106 / 24
Outline
Eigenvalue evolution
Eigenvector evolution
Diagonality test
The spectral evolution model
Explanations
Control tests
Spectral extrapolation
Jérôme [email protected]
CIKM 20107 / 24
Eigenvalue Evolution
Wikipedia Facebook
Eigenvectors grow Not all eigenvectors grow at the same speed, even in a single network
Jérôme [email protected]
CIKM 20108 / 24
Eigenvector Evolution
Wikipedia Facebook
Compute the cosine over time between eigenvectors and their initial value.
Some eigenvectors stay constant Some eigenvectors change suddenly
Jérôme [email protected]
CIKM 20109 / 24
Eigenvector Permutation
Wikipedia Facebook
Compute the cosine between all eigenvector pairs at two times.
Eigenvalues get permuted :A = UΛUT
B = VΣVT
Ui = V
j
Jérôme [email protected]
CIKM 201010 / 24
Diagonality Test
A = UΛUT
B = VΣVT
Diagonalize B using U.
B = UDUT
D = U−1B(UT)−1
D = UTBU
UTBU should be diagonal!
Jérôme [email protected]
CIKM 201011 / 24
Diagonality Test
Wikipedia Facebook
D is nearly diagonal The diagonal of D is irregular
Jérôme [email protected]
CIKM 201012 / 24
The Spectral Evolution Model
Networks grow spectrally
Eigenvectors stay constantEigenvalues change
Why?
Jérôme [email protected]
CIKM 201013 / 24
Explanation : Matrix Powers
Known links (A)Unknown links (B)
The square of A constains the number of paths of length two between any node pair:
A² =
Generally, Ak contains the number of k-paths between any node pair.
[1 0 1 0 00 2 0 1 01 0 2 0 10 1 0 2 00 0 1 0 1
]
Jérôme [email protected]
CIKM 201014 / 24
Explanation: Polynomials
p(A) = αA² + βA³ + γA + …⁴
Polynomials are good link prediction functions :
Count parallel paths Weight paths by length (α > β > γ > …)
The matrix power is a spectral transformation, e.g.:A² = (UΛUT)(UΛUT) = UΛ²UT
Polynomials are spectral transformations:p(A) = p(UΛUT) = Up(Λ)UT
Jérôme [email protected]
CIKM 201015 / 24
Explanation: Graph Kernels
Matrix exponential
exp(A) = I + A + ½ A² + … = Uexp(Λ)UT
Von Neumann kernel
(I − αA)−1 = I + αA + α²A² + … = U(I − αΛ)−1UT
Jérôme [email protected]
CIKM 201016 / 24
Explanation: Preferential Attachment
Write A as a sum of rank-1 matrices:
A = A1 + A
2 + …
Ai = λ
iu
iu
iT
Interpret each Ai as the adjacency matrix of one
weighted graph In A
i, vertex j has degree Σ
k λ
iu
iju
ik ~ u
ij
Consider the process of preferential attachment in each latent dimension separately:
Σiu
iu
iT = λ
iu
iu
iT + ε
iu
iu
iT
pa(A) = U(Λ + Ε)UT
Jérôme [email protected]
CIKM 201017 / 24
Control: Matrix Perturbation
Add edges at random to A = UΛUT.
The evolution of A should then be :
A + E = Ũ Λ ŨT
|| Λ − Λ ||F = O(ε²)
| U.k
T Ũ.k | = O(ε)
Using ||E||2 = ε.
Random growth is not spectral.
~
~
Jérôme [email protected]
CIKM 201018 / 24
Control: Random Sampling
Split an Erdős–Rényi random graph into A + B. Apply the diagonality test for transforming A into B.
Only one latent dimension is preserved.
Jérôme [email protected]
CIKM 201019 / 24
Spectral Extrapolation
To predict links, extrapolate the evolution of eigenvalues.
Jérôme [email protected]
CIKM 201020 / 24
Experiments
Methodology :
Retain newest edges as training set Compute link prediction scores Evaluate using the mean average precision (MAP) User over a hundred datasets
Jérôme [email protected]
CIKM 201022 / 24
Experiments: Weighted Networks
Use the weighted adjacency matrix A.
Jérôme [email protected]
CIKM 201023 / 24
Experiments: Bipartite and Directed Networks
Use the singular value decomposition A = UΛVT.
Jérôme [email protected]
CIKM 201024 / 24
Summary & Discussion
Eigenvectors remain constant Eigenvalues grow irregularly Extrapolate the eigenvalues to predict links
Experimental results:
Extrapolation works best for bipartite and directed networks