Frédérick Gusset, Nathanaël Perraudin, Michaël Defferrard
The code in this repository is based on DeepSphere and contains all the experiments performed for the master thesis "An empirical study of spherical convolutional neural networks". The project was performed in the LTS2 lab at EPFL during the spring semester of 2019, under the supervision of Nathanaël Perraudin and Michaël Defferrard.
The thesis resulted in a paper published at ICLR'20.
The most up-to-date code is available at https://github.com/deepsphere/code-iclr20.
For a local installation, follow the below instructions.
-
Clone this repository.
git clone https://github.com/Droxef/PDMdeepsphere.git cd PDMdeepSphere
-
Install the dependencies.
pip install -r requirements.txt
Note: if you will be working with a GPU, comment the
tensorflow==1.6.0
line inrequirements.txt
and uncomment thetensorflow-gpu==1.6.0
line.Note: the code has been developed and tested with Python 3.5.
-
Play with the Jupyter notebooks.
jupyter notebook
The different benchmarks are regrouped in the Experiment folder, and each has at least one notebook to rerun the experiment and reproduce the results in the report.
-
SHREC17
- demo_sphere_SHREC17 Shrec17 experiment with TF dataset pipeline
- demo_sphere_SHREC17_equiangular SHREC17 experiment using an equiangular sampling similar as Cohen et al.
-
ModelNet40
- demo MN40 experiment
- analyze rotation Analyze the behaviour when adding different rotation perturbations
-
GHCN
-
Climate
-
Graphs
- equiangular_and_other_graphs Construct an equiangular graph and analyze its properties
-
Irregular pooling
- Irregular_pooling Find ways to use pooling on random part of sphere
The content of this repository is released under the terms of the MIT license.