Spectral Lifting (Graph to Hypergraph) #68
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR implements a new Graph ➡️ Hypergraph lifting method inspired by the spectral clustering algorithm proposed by Ng, Jordan, and Weiss (2002) [1], which leverages the graph's spectral properties.
We provide a formal definition of the spectral lifting method below, following the notation introduced by von Luxburg in [2].
Algorithm: Spectral Lifting (Graph ➡️ Hypergraph)
Input: Graph (weighted) adjacency matrix$W \in \mathbb{R}^{n \times n}$ , where $n$ is the number of nodes
Output: Hypergraph incidence matrix$M \in \mathbb{R}^{n \times k}$ , where $k$ is the number of hyperedges
Notes
Note₁: the number of hyperedges$k$ can be automatically determined by using a heuristic based on the eigengaps (i.e., spectral gaps), which estimates the number of connected components in the original graph, or provided by the user.
Note₂: hyperedges with overlapping hypernodes can be obtained by using soft clustering methods, while some degree of randomness can be introduced by using non-deterministc clutering methods.
References
[1] Ng, Andrew, Michael Jordan, and Yair Weiss. "On spectral clustering: Analysis and an algorithm." Advances in neural information processing systems 14 (2001).
[2] Von Luxburg, Ulrike. "A tutorial on spectral clustering." Statistics and computing 17 (2007): 395-416.