Track: Track2; Team name: TJPaik; Model: Directed Simplicial Neural Networks (Dir-SNN)#328
Open
TJPaik wants to merge 5 commits into
Open
Track: Track2; Team name: TJPaik; Model: Directed Simplicial Neural Networks (Dir-SNN)#328TJPaik wants to merge 5 commits into
TJPaik wants to merge 5 commits into
Conversation
|
Check out this pull request on See visual diffs & provide feedback on Jupyter Notebooks. Powered by ReviewNB |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
Checklist
Description
This PR adds a TopoBench implementation of Directed Simplicial Neural Networks (Dir-SNN), based on Lecha et al., Higher-Order Topological Directionality and Directed Simplicial Neural Networks (ICASSP 2025 / arXiv:2409.08389).
Paper: https://arxiv.org/pdf/2409.08389
Reference implementation: https://github.com/ManuelLecha/DirSNN
Main changes:
simplicial/dirsnnbackbone, implementing the edge-level Dir-SNN layer with polynomial directed-adjacency propagation.DirSNNWrapper, which forwards directed lower/upper edge adjacencies to the backbone and projects learned edge embeddings back to nodes throughincidence_1for downstream TopoBench readout.DirectedSimplicialLifting, a TopoBench lifting that materializes the four directed lower edge adjacencies from Eq. (3) and six directed upper edge adjacencies from Eq. (4) of the paper.dirsnn_official_lowervariant matching the official lower-adjacency experimental setup.results.jsongenerated by the official 2026 evaluation harness.Challenge requirements covered:
topobench/nn/backbones/simplicial/dirsnn.pyconfigs/model/simplicial/dirsnn.yaml2026_tdl_challenge/outputs/dirsnn/results.jsontrack-2-tnnIssue
This is a submission to the 2026 Topological Deep Learning Challenge. There is no linked issue to close.
Additional context
The default
simplicial/dirsnnconfig uses all ten directed edge adjacencies: four lower and six upper. The additionalsimplicial/dirsnn_official_lowerconfig forwards only the four lower adjacencies, matching the narrower setup used in the reference experiments.The backbone follows the Dir-SNN edge-level propagation mechanism. The final readout is adapted to TopoBench/GraphUniverse tasks by projecting learned edge signals to 0-cells through
incidence_1, because the challenge evaluator expects standard TopoBench node/graph-level outputs. The wrapper first constructs this edge-derived 0-cell signal from the learned edge embedding; in the submitted config, TopoBench's default wrapper residual connection is kept, so the edge-derivedx_0and updatedx_1are combined with the original encoded 0-cell and 1-cell signals before the downstreamPropagateSignalDownreadout. The projection uses signed incidences from the lifting, so orientation-sensitive boundary signs are preserved before the learned downward propagation/readout rather than replaced by an unsigned pooling shortcut.This TopoBench readout is not an exact copy of the official Dir-SNN classifier, which applies its own classifier/readout over edge features after the Dir-SNN propagation. The PR therefore ports the Dir-SNN directed edge-propagation backbone and adapts the output head to TopoBench tasks rather than claiming end-to-end parity with the reference training script.
TopoBench graph inputs are undirected/symmetric, so
DirectedSimplicialLiftinguses a deterministic canonical orientationu -> vwhenu < v. This orientation is a deterministic adaptation for undirected GraphUniverse-style inputs, not a data-provided edge direction. Thedirected_input=Truepath is intentionally guarded for now because raw directed edge ordering would otherwise be misaligned withSimplicialComplexcanonical 1-simplex ordering.Validation:
ruff, Testing /build (3.11), Docs /build (3.11).