Skip to content

Commit e941b97

Browse files
authored
Merge branch 'main' into graphuniverse-dataset
2 parents b809c7c + 4e25ff1 commit e941b97

269 files changed

Lines changed: 1475 additions & 1536 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.gitattributes

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
*.ipynb linguist-vendored
1+
*.ipynb linguist-vendored

.github/CODE_OF_CONDUCT.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -73,4 +73,4 @@ available at https://www.contributor-covenant.org/version/1/4/code-of-conduct.ht
7373
[homepage]: https://www.contributor-covenant.org
7474

7575
For answers to common questions about this code of conduct, see
76-
https://www.contributor-covenant.org/faq
76+
https://www.contributor-covenant.org/faq

.github/workflows/docs.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -59,4 +59,4 @@ jobs:
5959
token: ${{ secrets.DOCUMENTATION_KEY }}
6060
repository-name: geometric-intelligence/geometric-intelligence.github.io
6161
target-folder: topobench
62-
clean: true
62+
clean: true

.github/workflows/lint.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,4 +22,4 @@ jobs:
2222
# This ensures the ruff version matches what you have in pyproject.toml
2323
version-file: "pyproject.toml"
2424
# Optional: fails the build if the code changes (e.g. formatting)
25-
changed-files: "true"
25+
changed-files: "true"

.github/workflows/test.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -44,4 +44,4 @@ jobs:
4444
with:
4545
token: ${{ secrets.CODECOV_TOKEN }}
4646
file: coverage.xml
47-
fail_ci_if_error: false
47+
fail_ci_if_error: false

.gitignore

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -195,4 +195,4 @@ wandb/
195195

196196
# test temporary
197197
.test_tmp/
198-
uv.lock
198+
uv.lock

.pre-commit-config.yaml

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,10 +5,17 @@ repos:
55
- repo: https://github.com/pre-commit/pre-commit-hooks
66
rev: v5.0.0
77
hooks:
8+
- id: end-of-file-fixer
9+
- id: trailing-whitespace
10+
args:
11+
- --markdown-linebreak-ext=md
812
- id: fix-byte-order-marker
913
- id: check-case-conflict
1014
- id: check-merge-conflict
15+
- id: check-ast
16+
- id: check-json
1117
- id: check-yaml
18+
- id: check-symlinks
1219
- id: mixed-line-ending
1320
args:
1421
- --fix=no

README.md

Lines changed: 13 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -30,19 +30,19 @@ Assess how your model compares against state-of-the-art topological neural netwo
3030
<a href="#gear-neural-networks">Neural Networks</a> •
3131
<a href="#rocket-liftings-and-transforms">Liftings and Transforms</a> •
3232
<a href="#books-datasets">Datasets</a> •
33-
<a href="#mag-references">References</a>
33+
<a href="#mag-references">References</a>
3434
</p>
3535

3636

3737
---
3838

39-
> 🏆 The **TAG-DS Topological Deep Learning Challenge 2025** has concluded! A huge shotout to all participants. Check out the winners and honorable mentions on [`the challenge website`](https://geometric-intelligence.github.io/topobench/tdl-challenge/index.html).
39+
> 🏆 The **TAG-DS Topological Deep Learning Challenge 2025** has concluded! A huge shout-out to all participants. Check out the winners and honorable mentions on [`the challenge website`](https://geometric-intelligence.github.io/topobench/tdl-challenge/index.html).
4040
4141
---
4242

4343
## :pushpin: Overview
4444

45-
`TopoBench` (TB) is a modular Python library designed to standardize benchmarking and accelerate research in Topological Deep Learning (TDL). In particular, TB allows to train and compare the performances of all sorts of Topological Neural Networks (TNNs) across the different topological domains, where by _topological domain_ we refer to a graph, a simplicial complex, a cellular complex, or a hypergraph. For detailed information, please refer to the [`TopoBench: A Framework for Benchmarking Topological Deep Learning`](https://arxiv.org/pdf/2406.06642) paper.
45+
`TopoBench` (TB) is a modular Python library designed to standardize benchmarking and accelerate research in Topological Deep Learning (TDL). In particular, TB allows training and comparing the performances of all sorts of Topological Neural Networks (TNNs) across the different topological domains, where by _topological domain_ we refer to a graph, a simplicial complex, a cellular complex, or a hypergraph. For detailed information, please refer to the [`TopoBench: A Framework for Benchmarking Topological Deep Learning`](https://arxiv.org/pdf/2406.06642) paper.
4646

4747
<p align="center">
4848
<img src="resources/workflow.jpg" width="700">
@@ -94,7 +94,7 @@ uv sync --all-extras
9494
Once the environment is active, you can launch the TopoBench pipeline:
9595
```bash
9696
# Using the activated virtual environment
97-
python -m topobench
97+
python -m topobench
9898
9999
# Or execute directly via uv without manual activation
100100
uv run python -m topobench
@@ -201,7 +201,7 @@ bash scripts/reproduce.sh
201201

202202
## :anchor: Tutorials
203203

204-
Explore our [tutorials](https://github.com/geometric-intelligence/TopoBench/tree/main/tutorials) for further details on how to add new datasets, transforms/liftings, and benchmark tasks.
204+
Explore our [tutorials](https://github.com/geometric-intelligence/TopoBench/tree/main/tutorials) for further details on how to add new datasets, transforms/liftings, and benchmark tasks.
205205

206206
## :gear: Neural Networks
207207

@@ -264,13 +264,13 @@ We list the neural networks trained and evaluated by `TopoBench`, organized by t
264264

265265
## :rocket: Liftings and Transforms
266266

267-
We list the liftings used in `TopoBench` to transform datasets. Here, a _lifting_ refers to a function that transforms a dataset defined on a topological domain (_e.g._, on a graph) into the same dataset but supported on a different topological domain (_e.g._, on a simplicial complex).
267+
We list the liftings used in `TopoBench` to transform datasets. Here, a _lifting_ refers to a function that transforms a dataset defined on a topological domain (_e.g._, on a graph) into the same dataset but supported on a different topological domain (_e.g._, on a simplicial complex).
268268

269269
### <a name="structural_liftings"></a> Structural Liftings
270270

271271
The structural lifting is responsible for the transformation of the underlying relationships or elements of the data. For instance, it might determine how nodes and edges in a graph are mapped into triangles and tetrahedra in a simplicial complex. This structural transformation can be further categorized into connectivity-based, where the mapping relies solely on the existing connections within the data, and feature-based, where the data's inherent properties or features guide the new structure.
272272

273-
We enumerate below the structural liftings currently implemented in `TopoBench`; please check out the provided description links for further details.
273+
We enumerate below the structural liftings currently implemented in `TopoBench`; please check out the provided description links for further details.
274274

275275
**Remark:**: Most of these liftings are adaptations of winner submissions of the ICML TDL Challenge 2024 ([paper](https://proceedings.mlr.press/v251/bernardez24a.html) | [repo](https://github.com/pyt-team/challenge-icml-2024)); see the [Structural Liftings wiki](https://github.com/geometric-intelligence/TopoBench/wiki/Structural-Liftings) for a complete list of compatible liftings.
276276

@@ -338,11 +338,11 @@ Feature liftings address the transfer of data attributes or features during mapp
338338
| ProjectionSum | Projects r-cell features of a graph to r+1-cell structures utilizing incidence matrices \(B_{r}\). | All |
339339
| ConcatenationLifting | Concatenate r-cell features to obtain r+1-cell features. | Simplicial |
340340

341-
### Data Transformations
341+
### Data Transformations
342342

343343
Specially useful in pre-processing steps, these are the general data manipulations currently implemented in `TopoBench`:
344344

345-
| Transform | Description |
345+
| Transform | Description |
346346
| --- | --- |
347347
| OneHotDegreeFeatures | Adds the node degree as one hot encodings to the node features. |
348348
| NodeFeaturesToFloat |Converts the node features of the input graph to float. |
@@ -473,12 +473,12 @@ If you find `TopoBench` useful, we would appreciate if you cite us!
473473
474474
<details>
475475
<summary><b> More information regarding Topological Deep Learning </b></summary>
476-
476+
477477
[Topological Graph Signal Compression](https://arxiv.org/pdf/2308.11068)
478-
478+
479479
[Architectures of Topological Deep Learning: A Survey on Topological Neural Networks](https://par.nsf.gov/servlets/purl/10477141)
480-
481-
[TopoX: a suite of Python packages for machine learning on topological domains](https://arxiv.org/pdf/2402.02441)
480+
481+
[TopoX: a suite of Python packages for machine learning on topological domains](https://arxiv.org/pdf/2402.02441)
482482
</details>
483483
484484
---
@@ -490,4 +490,3 @@ Feel free to reach out via email if you want to collaborate, do your thesis with
490490
491491
📧 **Contact Email:** [topological.intelligence@gmail.com](mailto:topological.intelligence@gmail.com)
492492
▶️ **YouTube Channel:** [Topological Intelligence](https://www.youtube.com/@TopologicalIntelligence)
493-

codecov.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,4 +5,4 @@ coverage:
55
precision: 2
66
ignore:
77
- "test/"
8-
- "topobench/run.py"
8+
- "topobench/run.py"

configs/callbacks/default.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,4 +25,4 @@ model_summary:
2525

2626
learning_rate_monitor:
2727
_target_: lightning.pytorch.callbacks.LearningRateMonitor
28-
logging_interval: "epoch"
28+
logging_interval: "epoch"

0 commit comments

Comments
 (0)