Experiments | Paper | Original library
This is a fork of the e2cnn library that adds support for steerable PDOs, i.e. equivariant partial differential operators. Support for steerable PDOs has been merged into e2cnn, you should simply use the original library rather than this fork.
The main changes are a new diffops
module that plays the analogous role to kernels
but for PDOs, a gspace.build_diffop_basis()
method (analogous to gspace.build_kernel_basis()
)
and the equivariant nn.R2Diffop
module (a drop-in replacement for nn.R2Conv
).
If you have questions specifically about Steerable PDOs and this implementation, please contact me.
The original e2cnn library can be installed with pip install e2cnn
and now contains support for steerable PDOs.
If you want to reproduce our experiments, then do not install the library this way, instead see our experiments repository for instructions.
The original e2cnn library was developed as part of the paper General E(2)-Equivariant Steerable CNNs. Please cite this work if you use the library:
@inproceedings{e2cnn,
title={{General E(2)-Equivariant Steerable CNNs}},
author={Weiler, Maurice and Cesa, Gabriele},
booktitle={Conference on Neural Information Processing Systems (NeurIPS)},
year={2019},
}
For the implementation of steerable PDOs inside this library, please cite our paper:
@inproceedings{jenner2021steerable,
title={Steerable Partial Differential Operators for Equivariant Neural Networks},
author={Erik Jenner and Maurice Weiler},
year={2022},
booktitle={ICLR},
}
e2cnn is distributed under BSD Clear license. See LICENSE file.