SaaSHub helps you find the best software and product alternatives Learn more →
Top 23 Python graph-neural-network Projects
-
InfluxDB
Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
-
SuperGluePretrainedNetwork
SuperGlue: Learning Feature Matching with Graph Neural Networks (CVPR 2020, Oral)
-
pytorch_geometric_temporal
PyTorch Geometric Temporal: Spatiotemporal Signal Processing with Neural Machine Learning Models (CIKM 2021)
-
WorkOS
The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.
-
deep_gcns_torch
Pytorch Repo for DeepGCNs (ICCV'2019 Oral, TPAMI'2021), DeeperGCN (arXiv'2020) and GNN1000(ICML'2021): https://www.deepgcns.org
-
graphtransformer
Graph Transformer Architecture. Source code for "A Generalization of Transformer Networks to Graphs", DLG-AAAI'21.
-
EquiBind
EquiBind: geometric deep learning for fast predictions of the 3D structure in which a small molecule binds to a protein
-
pna
Implementation of Principal Neighbourhood Aggregation for Graph Neural Networks in PyTorch, DGL and PyTorch Geometric
-
STEP
Code for our SIGKDD'22 paper Pre-training-Enhanced Spatial-Temporal Graph Neural Network For Multivariate Time Series Forecasting. (by zezhishao)
-
SaaSHub
SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives
Project mention: Please help I'm suffering | RuntimeError: mat1 and mat2 must have the same dtype | /r/StableDiffusion | 2023-12-05
Project mention: anomaly-detection-resources: NEW Extended Research - star count:7507.0 | /r/algoprojects | 2023-10-24
Project mention: RecBole – A unified, comprehensive and efficient recommendation library | news.ycombinator.com | 2024-01-17
Project mention: RAG Using Structured Data: Overview and Important Questions | news.ycombinator.com | 2024-01-10Ok, using ChatGPT and Bard (the irony lol) I learned a bit more about GNNs:
GNNs are probabilistic and can be trained to learn representations in graph-structured data and handling complex relationships, while classical graph algorithms are specialized for specific graph analysis tasks and operate based on predefined rules/steps.
* Why is PyG it called "Geometric" and not "Topologic" ?
Properties like connectivity, neighborhoods, and even geodesic distances can all be considered topological features of a graph. These features remain unchanged under continuous deformations like stretching or bending, which is the defining characteristic of topological equivalence. In this sense, "PyTorch Topologic" might be a more accurate reflection of the library's focus on analyzing the intrinsic structure and connections within graphs.
However, the term "geometric" still has some merit in the context of PyG. While most GNN operations rely on topological principles, some do incorporate notions of Euclidean geometry, such as:
- Node embeddings: Many GNNs learn low-dimensional vectors for each node, which can be interpreted as points in a vector space, allowing geometric operations like distances and angles to be applied.
- Spectral GNNs: These models leverage the eigenvalues and eigenvectors of the graph Laplacian, which encodes information about the geometric structure and distances between nodes.
- Manifold learning: Certain types of graphs can be seen as low-dimensional representations of high-dimensional manifolds. Applying GNNs in this context involves learning geometric properties on the manifold itself.
Therefore, although topology plays a primary role in understanding and analyzing graphs, geometry can still be relevant in certain contexts and GNN operations.
* Real world applications:
- HuggingFace has a few models [0] around things like computational chemistry [1] or weather forecasting.
- PyGod [2] can be used for Outlier Detection (Anomaly Detection).
- Apparently ULTRA [3] can "infer" (in the knowledge graph sense), that Michael Jackson released some disco music :-p (see the paper).
- RGCN [4] can be used for knowledge graph link prediction (recovery of missing facts, i.e. subject-predicate-object triples) and entity classification (recovery of missing entity attributes).
- GreatX [5] tackles removing inherent noise, "Distribution Shift" and "Adversarial Attacks" (ex: noise purposely introduced to hide a node presence) from networks. Apparently this is a thing and the field is called "Graph Reliability" or "Reliable Deep Graph Learning". The author even has a bunch of "awesome" style lists of links! [6]
- Finally this repo has a nice explanation of how/why to run machine learning algorithms "outside of the DB":
"Pytorch Geometric (PyG) has a whole arsenal of neural network layers and techniques to approach machine learning on graphs (aka graph representation learning, graph machine learning, deep graph learning) and has been used in this repo [7] to learn link patterns, also known as link or edge predictions."
--
0: https://huggingface.co/models?pipeline_tag=graph-ml&sort=tre...
1: https://github.com/Microsoft/Graphormer
2: https://github.com/pygod-team/pygod
3: https://github.com/DeepGraphLearning/ULTRA
4: https://huggingface.co/riship-nv/RGCN
5: https://github.com/EdisonLeeeee/GreatX
6: https://edisonleeeee.github.io/projects.html
7: https://github.com/Orbifold/pyg-link-prediction
Python graph-neural-networks related posts
- Please help I'm suffering | RuntimeError: mat1 and mat2 must have the same dtype
- Looking for Point Cloud deep learning, training sources
- Why is the loss not decreasing with Pytorch Geometric GATv2Conv (and GATconv) ??
- MetaPath2Vec from Pytorch geometric with HeteroData Dataset
- [N] PyG 2.3.0 released: PyTorch 2.0 support, native sparse tensor support, explainability and accelerations
- Ask HN: ML Papers to Implement
- Custom Point Cloud semantic segmentation
-
A note from our sponsor - SaaSHub
www.saashub.com | 25 Apr 2024
Index
What are some of the best open-source graph-neural-network projects in Python? This list will help you:
Project | Stars | |
---|---|---|
1 | pytorch_geometric | 20,110 |
2 | dgl | 12,979 |
3 | anomaly-detection-resources | 7,858 |
4 | RecBole | 3,174 |
5 | SuperGluePretrainedNetwork | 2,906 |
6 | pytorch_geometric_temporal | 2,484 |
7 | spektral | 2,344 |
8 | ogb | 1,864 |
9 | torchdrug | 1,389 |
10 | pygod | 1,207 |
11 | deep_gcns_torch | 1,104 |
12 | DeepRobust | 940 |
13 | graphtransformer | 804 |
14 | DGFraud | 655 |
15 | qagnn | 588 |
16 | efficient-gnns | 521 |
17 | EquiBind | 452 |
18 | pna | 323 |
19 | dance | 323 |
20 | STEP | 304 |
21 | DiffSBDD | 290 |
22 | how_attentive_are_gats | 275 |
23 | PyNeuraLogic | 267 |
Sponsored