diff --git a/GNNGraphs/README.md b/GNNGraphs/README.md index aadfe7936..c54c5614b 100644 --- a/GNNGraphs/README.md +++ b/GNNGraphs/README.md @@ -1,7 +1,36 @@ # GNNGraphs.jl +[![](https://img.shields.io/badge/docs-stable-blue.svg)](https://juliagraphs.org/GraphNeuralNetworks.jl/docs/GraphNeuralNetworks.jl/) + A package implementing graph types for graph deep learning. -This package is currently under development and may break frequentely. -It is not meant for final users but for GNN libraries developers. -Final user should use GraphNeuralNetworks.jl instead. +The package is part of the [GraphNeuralNetworks.jl ecosystem](https://github.com/JuliaGraphs/GraphNeuralNetworks.jl) and is re-exported by the frontend packages [GraphNeuralNetworks.jl](https://juliagraphs.org/GraphNeuralNetworks.jl/docs/GraphNeuralNetworks.jl/) and [GNNLux.jl](https://juliagraphs.org/GraphNeuralNetworks.jl/docs/GNNLux.jl/). + +## Installation + +Install through the Julia package manager. + +```julia +pkg> add GNNGraphs +``` + +## Usage + +For a comprehensive introduction to the library, refer to the [Documentation](https://juliagraphs.org/GraphNeuralNetworks.jl/docs/GNNGraphs.jl/). + + +## Citing + +If you use GraphNeuralNetworks.jl in a scientific publication, we would appreciate a reference +to [our paper](https://arxiv.org/abs/2412.06354): + +``` +@article{lucibello2024graphneuralnetworks, + title={GraphNeuralNetworks.jl: Deep Learning on Graphs with Julia}, + author={Lucibello, Carlo and Rossi, Aurora}, + journal={arXiv preprint arXiv:2412.06354}, + url={https://arxiv.org/abs/2412.06354}, + year={2024} +} +``` + diff --git a/GNNLux/README.md b/GNNLux/README.md index 9970a88a8..5a77316b0 100644 --- a/GNNLux/README.md +++ b/GNNLux/README.md @@ -1,2 +1,48 @@ + + # GNNLux.jl +[![](https://img.shields.io/badge/docs-stable-blue.svg)](https://juliagraphs.org/GraphNeuralNetworks.jl/docs/GNNLux.jl/) + +Graph convolutional layers based on the deep learning framework [Lux.jl](https://lux.csail.mit.edu/stable/). +This is the frontend package for Lux users of the [GraphNeuralNetworks.jl ecosystem](https://github.com/JuliaGraphs/GraphNeuralNetworks.jl). + + +### Features + +**GNNLux.jl** supports the following features: + +- Implementation of common graph convolutional layers. +- Computation on batched graphs. +- Custom layer definitions. +- Support for CUDA and AMDGPU. +- Integration with [Graphs.jl](https://github.com/JuliaGraphs/Graphs.jl). +- [Examples](https://github.com/JuliaGraphs/GraphNeuralNetworks.jl/tree/master/GraphNeuralNetworks/examples) of node, edge, and graph-level machine learning tasks. +- Heterogeneous and dynamical graphs and convolutions. + +## Installation + +Install through the Julia package manager. + +```julia +pkg> add GNNLux +``` + +## Usage + +For a comprehensive introduction to the library, refer to the [Documentation](https://juliagraphs.org/GraphNeuralNetworks.jl/docs/GNNLux.jl/). + +## Citing + +If you use GraphNeuralNetworks.jl in a scientific publication, we would appreciate a reference +to [our paper](https://arxiv.org/abs/2412.06354): + +``` +@article{lucibello2024graphneuralnetworks, + title={GraphNeuralNetworks.jl: Deep Learning on Graphs with Julia}, + author={Lucibello, Carlo and Rossi, Aurora}, + journal={arXiv preprint arXiv:2412.06354}, + url={https://arxiv.org/abs/2412.06354}, + year={2024} +} +``` \ No newline at end of file diff --git a/GNNlib/README.md b/GNNlib/README.md index adc9991ab..22f75f8b4 100644 --- a/GNNlib/README.md +++ b/GNNlib/README.md @@ -1,13 +1,8 @@ # GNNlib.jl -This package contains a collection deep-learning framework agnostic -building blocks for graph neural networks such as message passing operators and implementations of graph convolutional layers. +This package contains a collection framework-agnostic +building blocks for deep learning on graphs such as message passing operators and implementations of graph convolutional layers. -In the future it will serve as the foundation of GraphNeuralNetworks.jl (based on Flux,jl). -GNNlib.jl will be to GraphNeuralNetworks.jl what NNlib.jl is to Flux.jl and Lux.jl. - -This package is currently under development and may break frequentely. -It is not meant for final users but for GNN libraries developers. -Final user should use GraphNeuralNetworks.jl instead. +See [GraphNeuralNetworks.jl](https://juliagraphs.org/GraphNeuralNetworks.jl/docs/GraphNeuralNetworks.jl/) for a Flux-based frontend package that uses this library and [GNNLux.jl](https://juliagraphs.org/GraphNeuralNetworks.jl/docs/GNNLux.jl/) for a Lux-based one. diff --git a/GraphNeuralNetworks/README.md b/GraphNeuralNetworks/README.md index 565ee8f42..a57e542b9 100644 --- a/GraphNeuralNetworks/README.md +++ b/GraphNeuralNetworks/README.md @@ -1,29 +1,28 @@ - - + # GraphNeuralNetworks.jl -[![](https://img.shields.io/badge/docs-stable-blue.svg)](https://JuliaGraphs.github.io/GraphNeuralNetworks.jl/stable) -[![](https://img.shields.io/badge/docs-dev-blue.svg)](https://JuliaGraphs.github.io/GraphNeuralNetworks.jl/dev) -![](https://github.com/JuliaGraphs/GraphNeuralNetworks.jl/actions/workflows/ci.yml/badge.svg) -[![codecov](https://codecov.io/gh/JuliaGraphs/GraphNeuralNetworks.jl/branch/master/graph/badge.svg)](https://codecov.io/gh/JuliaGraphs/GraphNeuralNetworks.jl) +[![](https://img.shields.io/badge/docs-stable-blue.svg)](https://juliagraphs.org/GraphNeuralNetworks.jl/docs/GraphNeuralNetworks.jl/) + +Graph convolutional layers based on the deep learning framework [Flux.jl](https://fluxml.ai/). +This is the frontend package for Flux users of the [GraphNeuralNetworks.jl ecosystem](https://github.com/JuliaGraphs/GraphNeuralNetworks.jl). -GraphNeuralNetworks.jl is a graph neural network library written in Julia and based on the deep learning framework [Flux.jl](https://github.com/FluxML/Flux.jl). +### Features -Among its features: +**GraphNeuralNetworks.jl** supports the following features: -* Implements common graph convolutional layers. -* Supports computations on batched graphs. -* Easy to define custom layers. -* CUDA support. -* Integration with [Graphs.jl](https://github.com/JuliaGraphs/Graphs.jl). -* [Examples](https://github.com/JuliaGraphs/GraphNeuralNetworks.jl/tree/master/examples) of node, edge, and graph level machine learning tasks. -* Heterogeneous and temporal graphs. +- Implementation of common graph convolutional layers. +- Computation on batched graphs. +- Custom layer definitions. +- Support for CUDA and AMDGPU. +- Integration with [Graphs.jl](https://github.com/JuliaGraphs/Graphs.jl). +- [Examples](https://github.com/JuliaGraphs/GraphNeuralNetworks.jl/tree/master/GraphNeuralNetworks/examples) of node, edge, and graph-level machine learning tasks. +- Heterogeneous and dynamical graphs and convolutions. -## Installation +## Installation -GraphNeuralNetworks.jl is a registered Julia package. You can easily install it through the package manager: +Install the package through the Julia package manager. ```julia pkg> add GraphNeuralNetworks @@ -31,25 +30,19 @@ pkg> add GraphNeuralNetworks ## Usage -Usage examples can be found in the [examples](https://github.com/JuliaGraphs/GraphNeuralNetworks.jl/tree/master/examples) and in the [notebooks](https://github.com/JuliaGraphs/GraphNeuralNetworks.jl/tree/master/notebooks) folder. Also, make sure to read the [documentation](https://JuliaGraphs.github.io/GraphNeuralNetworks.jl/dev) for a comprehensive introduction to the library. - +For a comprehensive introduction to the library, refer to the [Documentation](https://juliagraphs.org/GraphNeuralNetworks.jl/docs/GraphNeuralNetworks.jl/). ## Citing -If you use GraphNeuralNetworks.jl in a scientific publication, we would appreciate the following reference: +If you use GraphNeuralNetworks.jl in a scientific publication, we would appreciate a reference +to [our paper](https://arxiv.org/abs/2412.06354): ``` -@misc{Lucibello2021GNN, - author = {Carlo Lucibello and other contributors}, - title = {GraphNeuralNetworks.jl: a geometric deep learning library for the Julia programming language}, - year = 2021, - url = {https://github.com/JuliaGraphs/GraphNeuralNetworks.jl} +@article{lucibello2024graphneuralnetworks, + title={GraphNeuralNetworks.jl: Deep Learning on Graphs with Julia}, + author={Lucibello, Carlo and Rossi, Aurora}, + journal={arXiv preprint arXiv:2412.06354}, + url={https://arxiv.org/abs/2412.06354}, + year={2024} } -``` - -## Acknowledgments - -GraphNeuralNetworks.jl is largely inspired by [PyTorch Geometric](https://pytorch-geometric.readthedocs.io/en/latest/), [Deep Graph Library](https://docs.dgl.ai/), -and [GeometricFlux.jl](https://fluxml.ai/GeometricFlux.jl/stable/). - - +``` \ No newline at end of file diff --git a/README.md b/README.md index 6ab514c8a..b8f39cfa1 100644 --- a/README.md +++ b/README.md @@ -9,13 +9,13 @@ [![codecov](https://codecov.io/gh/JuliaGraphs/GraphNeuralNetworks.jl/branch/master/graph/badge.svg)](https://codecov.io/gh/JuliaGraphs/GraphNeuralNetworks.jl) -**Libraries for deep learning on graphs in Julia**, using either [Flux.jl](https://fluxml.ai/Flux.jl/stable/) or [Lux.jl](https://lux.csail.mit.edu/stable/) as backend frameworks. +**Libraries for deep learning on graphs in Julia**, using either [Flux.jl](https://fluxml.ai/) or [Lux.jl](https://lux.csail.mit.edu/stable/) as backend frameworks. This repository contains the following packages: -- **GraphNeuralNetworks.jl**: Provides graph convolutional layers based on the deep learning framework [Flux.jl](https://fluxml.ai/Flux.jl/stable/). This is the frontend package for Flux users. +- **GraphNeuralNetworks.jl**: Provides graph convolutional layers based on the deep learning framework [Flux.jl](https://fluxml.ai/). This is the frontend package for Flux users. -- **GNNLux.jl**: Offers graph convolutional layers based on the deep learning framework [Lux.jl](https://lux.csail.mit.edu/stable/). This is the frontend package for Lux users. +- **GNNLux.jl**: Offers graph convolutional layers based on the deep learning framework [Lux.jl](https://lux.csail.mit.edu/). This is the frontend package for Lux users. - **GNNGraphs.jl**: Provides graph data structures and helper functions for working with graph data. This package is re-exported by the frontend packages. @@ -31,7 +31,7 @@ Both **GraphNeuralNetworks.jl** and **GNNLux.jl** support the following features - Support for CUDA and AMDGPU. - Integration with [Graphs.jl](https://github.com/JuliaGraphs/Graphs.jl). - [Examples](https://github.com/JuliaGraphs/GraphNeuralNetworks.jl/tree/master/GraphNeuralNetworks/examples) of node, edge, and graph-level machine learning tasks. -- Support for heterogeneous and temporal graphs. +- Heterogeneous and dynamical graphs and convolutions. ## Installation @@ -57,14 +57,16 @@ For a comprehensive introduction to the library, refer to the [Documentation](ht ## Citing -If you use GraphNeuralNetworks.jl in a scientific publication, we would appreciate the following reference: +If you use GraphNeuralNetworks.jl in a scientific publication, we would appreciate a reference +to [our paper](https://arxiv.org/abs/2412.06354): ``` -@misc{Lucibello2021GNN, - author = {Carlo Lucibello and other contributors}, - title = {GraphNeuralNetworks.jl: a geometric deep learning library for the Julia programming language}, - year = 2021, - url = {https://github.com/JuliaGraphs/GraphNeuralNetworks.jl} +@article{lucibello2024graphneuralnetworks, + title={GraphNeuralNetworks.jl: Deep Learning on Graphs with Julia}, + author={Lucibello, Carlo and Rossi, Aurora}, + journal={arXiv preprint arXiv:2412.06354}, + url={https://arxiv.org/abs/2412.06354}, + year={2024} } ```