This software provides the implementation of convolution layers where the gradient with respect to the weights is approximated by an unbiased estimate. This estimate is obtained via matrix probing. This package contains two implementation:
- A juliaimplementation that overloads NNlib for the computation of∇conv_filter.
- A PyTorch implementation that defines a new convolution layer Xconv2D, Xconv3D.
To install the julia package, you can install it via the standard dev command
>> ]dev https://github.com/slimgroup/XConvThe python source of this package can also be directly install via pip:
pip install git+https://github.com/slimgroup/XConvor if you wish to get access to the experiments and benchmarking script:
git clone https://github.com/slimgroup/XConv
cd XConv
pip install -e .This installation will install the default torch, we recommend to install the version that is best suited for your system following Torch Installation.
This software was developped and tested on GPUs thanks to NVIDIA Academic Hardware Grant.
This package is developpend at Georgia Institute of Technology byt the ML4Seismic Lab. The main autors of this package are:
- Mathias Louboutin: [email protected]
- Ali Siahkoohi
This package is distributed under the MIT license. Please check the LICENSE file for usage.