Authors: Maksim Zhdanov, Nico Hoffmann, Gabriele Cesa
ArXiv | Blog post | Examples | Google Colab
✨ How can we simplify designing equivariant neural networks and make them more expressive? By using implicit parameterization of convolutional kernels! ✨
-
It is theoretically guaranteed that equivariance of the parameterization yields equivariance of the convolutional layer.
-
It is possible now to condition convolutional kernels on arbitrary attributes, improving the expressiveness of the model.
-
In this repository, we provide implementation for any subgroup of the Euclidean group
$E(n)$ . -
New 🚀: if you are interested in a more general case of
$E(p,q)$ , e.g. spacetime isometries, make sure to check this repository.
Steerable convolutional neural networks (CNNs) provide a general framework for building neural networks equivariant to translations and other transformations belonging to an origin-preserving group
- Python 3.8
- torch 1.10
- escnn 1.0.2
- pytorch-lightning 1.4.8
- torch-geometric 1.7.2
Check examples/
for following tutorials:
kernels.ipynb
- how to initialize kernels + validating the corectness of learned bases.grid_conv.ipynb
- initializing SO(2) and O(2)-equivariant convolution with implicit kernels on a regular grid + validating its equivariance.point_conv.ipynb
- initializing SO(2) and O(2)-equivariant convolution with implicit kernels on a point cloud + validating its equivariance.model.ipynb
- creating a simple point cloud model that is O(3)-equivariant.
datasets/
: Data loading modules for N-body, MN-10/40 and QM9 experiments.models/
: Method implementation + a regression model for the QM9 experiment.models/core
: Implementation of implicit kernels in escnn.scripts/
: Training scripts for the experiments.utils/
: Utility scripts.
If you found this code useful, please cite our paper:
@inproceedings{
zhdanov2023implicit,
title={Implicit Convolutional Kernels for Steerable {CNN}s},
author={Zhdanov, Maksim and Hoffmann, Nico and Cesa, Gabriele},
booktitle={Thirty-seventh Conference on Neural Information Processing Systems (NeurIPS)},
year={2023},
url={https://openreview.net/forum?id=2YtdxqvdjX}
}