Awesome
DeepSphere: a spherical convolutional neural network
Janis Fluri, Nathanaël Perraudin, Michaël Defferrard
This is an implementation of DeepSphere using TensorFlow 2.x.
Resources
Code:
- deepsphere-cosmo-tf1: original repository, implemented in TensorFlow v1.
Use to reproducearxiv:1810.12186
. - deepsphere-cosmo-tf2: reimplementation in TFv2.
Use for new developments in TensorFlow targeting HEALPix, including generative models. - deepsphere-tf1: extended to other samplings and experiments, implemented in TFv1.
Use to reproducearxiv:2012.15000
. - deepsphere-pytorch: reimplementation in PyTorch.
Use for new developments in PyTorch.
Papers:
- DeepSphere: Efficient spherical CNN with HEALPix sampling for cosmological applications, 2018.
[paper, blog, slides] - DeepSphere: towards an equivariant graph-based spherical CNN, 2019.
[paper, poster] - DeepSphere: a graph-based spherical CNN, 2020.
[paper, slides, video]
Installation
-
Clone this repository.
git clone https://github.com/deepsphere/deepsphere-cosmo-tf2.git cd deepsphere-cosmo-tf2
-
Install the dependencies.
pip install -r requirements.txt
Note: the code has been developed and tested with Python 3.6. It does not work on Python 2.7!
-
Install the package.
pip install -e .
-
(Optional) Test the installation.
pytest tests
-
Play with the Jupyter notebooks.
jupyter notebook
Notebooks
The below notebooks contain examples and experiments to play with the model.
- Quick Start. The easiest to play with the model by classifying data on the whole sphere.
- Advanced Tutorial. An introduction to various layers, customized training loops, and custom survey masks.
- Generative Models. How to build an auto-encoder using spherical data and the transpose healpy pseudo convolutions.
License & citation
The content of this repository is released under the terms of the MIT license.
Please consider citing our papers if you find it useful.
@article{deepsphere_cosmo,
title = {{DeepSphere}: Efficient spherical Convolutional Neural Network with {HEALPix} sampling for cosmological applications},
author = {Perraudin, Nathana\"el and Defferrard, Micha\"el and Kacprzak, Tomasz and Sgier, Raphael},
journal = {Astronomy and Computing},
volume = {27},
pages = {130-146},
year = {2019},
month = apr,
publisher = {Elsevier BV},
issn = {2213-1337},
doi = {10.1016/j.ascom.2019.03.004},
archiveprefix = {arXiv},
eprint = {1810.12186},
url = {https://arxiv.org/abs/1810.12186},
}
@inproceedings{deepsphere_rlgm,
title = {{DeepSphere}: towards an equivariant graph-based spherical {CNN}},
author = {Defferrard, Micha\"el and Perraudin, Nathana\"el and Kacprzak, Tomasz and Sgier, Raphael},
booktitle = {ICLR Workshop on Representation Learning on Graphs and Manifolds},
year = {2019},
archiveprefix = {arXiv},
eprint = {1904.05146},
url = {https://arxiv.org/abs/1904.05146},
}
@inproceedings{deepsphere_iclr,
title = {{DeepSphere}: a graph-based spherical {CNN}},
author = {Defferrard, Michaël and Milani, Martino and Gusset, Frédérick and Perraudin, Nathanaël},
booktitle = {International Conference on Learning Representations (ICLR)},
year = {2020},
url = {https://openreview.net/forum?id=B1e3OlStPB},
}