FFT-свертка. Свернуть 4D-изображение с помощью 4D-фильтра

#python #numpy #fft #convolution

#python #numpy #fft #свертка

Вопрос:

Я хочу создать сеть CNN на Python только в обычном NumPy. Для оптимизации времени свертки (фактически корреляции) в сети я хочу попробовать использовать свертку на основе FFT. Данные, которые необходимо свернуть (сопоставить), представляют собой тензор изображения 4D с формой [batch_size, width, height, channels] и тензор фильтра 4D [filter_width, filter_height, in_channel, out_channel] . Я прочитал много статей о свертке на основе FFT, но они не работают на моем пути. Таким образом, мне нужна ваша помощь.