fft-conv-pytorch
fft-conv-pytorch copied to clipboard
Implementation of 1D, 2D, and 3D FFT convolutions in PyTorch. Much faster than direct convolutions for large kernel sizes.
1. Is it possible to perform a transpose in the spectral domain? 2. FFTConv2d(in,out,.......) initializes weights just like conv?
- Calculate padding size based on kernel for stride=1, dilation=1 - Convert half-precision signal and kernel to float, because rfftn does not support half at the moment - Remove unnecessary...
https://github.com/fkodom/fft-conv-pytorch/blob/bbe43cd94c5839b1f11469547187ac1baa2c186c/fft_conv.py#L155 In L184 and L189, why the condition statement is `*_channels % 2 != 0` but not `*_channels % groups != 0`? Seems not match with the error message.
Hi, Thanks for putting this together - complex number support is starting to get pretty advanced in pytorch, is there any chance you'd consider changing things here to allow for...
Hello, Thank you for the effort you put into making this work, however I am very confused. When I want to apply this "FFTCONV2D" layer to a network (Resnet for...
Dear Author: Thank you for your contribution on this work and share it! The FFTConv2d layer is much faster than torch.nn.Conv2d in normal case. However, when I use depthwise convolution...