IP Library Granted Patent US 12,657,437
Granted Patent B2
US 12,657,437 · App. 18/337,177 · Granted Jun 16, 2026

Spatial frequency splitting for convolutional neural networks

Inventor: Sebastien Gilbert (Granby, CA)
Assignee: Internaional Business Machines Corporation
G06N3/0464
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,657,437
App. No.
18/337,177
Granted
Jun 16, 2026
Kind
B2
Abstract

A system may allocate, in response to receiving an input tensor of a predetermined shape, a portion of convolution kernels to a predetermined number of spatial frequency bands; replace the convolution layer in a convolutional neural network with a sequence of band splitting, parallel convolutions, and concatenation; and form, in response to completing stages for the predetermined number of spatial frequency bands, a final output tensor.

Claims (55)

1 . A system comprising:

a memory storing program instructions; and

a processor in communication with the memory, the processor being configured to execute the program instructions to perform processes comprising:

allocating, in response to receiving an input tensor of a predetermined shape, a portion of convolution kernels to a predetermined number of spatial frequency bands;

replacing a convolution layer in a convolutional neural network with a sequence of band splitting, parallel convolutions, and concatenation; and

forming, in response to completing stages for the predetermined number of spatial frequency bands, a final output tensor.

2 . The system of claim 1 , wherein the memory stores further program instructions, and wherein the processor is configured to execute the further program instructions to perform the processes further comprising:

splitting the input tensor for the convolution layer into different spatial spectral bands using a trained spatial frequency filter for the stage of the convolutional neural network to exploit frequency features while maintaining information of the input tensor.

3 . The system of claim 2 , wherein the memory stores further program instructions, and wherein the processor is configured to execute the further program instructions to perform the processes further comprising:

allocating, for the spatial spectral band, parallel convolutions as one of a set of convolution layers to a respective spatial spectral band.

4 . The system of claim 3 , wherein the memory stores further program instructions, and wherein the processor is configured to execute the further program instructions to perform the processes further comprising:

generating an output from the parallel convolutions.

5 . The system of claim 4 , wherein the memory stores further program instructions, and wherein the processor is configured to execute the further program instructions to perform the processes further comprising:

stacking the output into a single tensor.

6 . The system of claim 5 , wherein the memory stores further program instructions, and wherein the processor is configured to execute the further program instructions to perform the processes further comprising:

forming, based on the single tensor using concatenation along a channel axis, a concatenated tensor.

7 . The system of claim 6 , wherein the memory stores further program instructions, and wherein the processor is configured to execute the further program instructions to perform the processes further comprising:

passing the concatenated tensor to a next stage, including a pooling layer, and a non-linearity layer;

classifying an object in an input image related to the input tensor; and

storing the classification as metadata for the input image.

8 . A method comprising:

allocating, in response to receiving an input tensor of a predetermined shape, a portion of convolution kernels to a predetermined number of spatial frequency bands;

replacing a convolution layer in a convolutional neural network with a sequence of band splitting, parallel convolutions, and concatenation; and

forming, in response to completing stages for the predetermined number of spatial frequency bands, a final output tensor.

9 . The method of claim 8 , wherein the method further comprises:

splitting the input tensor for the convolution layer into different spatial spectral bands using a trained spatial frequency filter for the stage of the convolutional neural network to exploit frequency features while maintaining information of the input tensor.

10 . The method of claim 9 , wherein the method further comprises:

allocating, for the spatial spectral band, parallel convolutions as one of a set of convolution layers to a respective spatial spectral band.

11 . The method of claim 10 , wherein the method further comprises:

generating an output from the parallel convolutions.

12 . The method of claim 11 , wherein the method further comprises:

stacking the output into a single tensor.

13 . The method of claim 12 , wherein the method further comprises:

forming, based on the single tensor using concatenation along a channel axis, a concatenated tensor.

14 . The method of claim 13 , wherein the method further comprises:

passing the concatenated tensor to a next stage, including a pooling layer, and a non-linearity layer;

classifying an object in an input image related to the input tensor; and

storing the classification as metadata for the input image.

15 . A computer program product comprising a computer readable storage medium having program instructions embodied therewith, the program instructions executable by a processor to cause the processor to perform a method, the method comprising:

allocating, in response to receiving an input tensor of a predetermined shape, a portion of convolution kernels to a predetermined number of spatial frequency bands;

replacing a convolution layer in a convolutional neural network with a sequence of band splitting, parallel convolutions, and concatenation; and

forming, in response to completing stages for the predetermined number of spatial frequency bands, a final output tensor.

16 . The computer program product of claim 15 , further comprising additional program instructions stored on the computer readable storage medium and configured to cause the processor to perform the method further comprising:

splitting the input tensor for the convolution layer into different spatial spectral bands using a trained spatial frequency filter for the stage of the convolutional neural network to exploit frequency features while maintaining information of the input tensor.

17 . The computer program product of claim 16 , further comprising additional program instructions stored on the computer readable storage medium and configured to cause the processor to perform the method further comprising:

allocating, for the spatial spectral band, parallel convolutions as one of a set of convolution layers to a respective spatial spectral band.

18 . The computer program product of claim 17 , further comprising additional program instructions stored on the computer readable storage medium and configured to cause the processor to perform the method further comprising:

generating an output from the parallel convolutions.

19 . The computer program product of claim 18 , further comprising additional program instructions stored on the computer readable storage medium and configured to cause the processor to perform the method further comprising:

stacking the output into a single tensor.

20 . The computer program product of claim 19 , further comprising additional program instructions stored on the computer readable storage medium and configured to cause the processor to perform the method further comprising:

forming, based on the single tensor using concatenation along a channel axis, a concatenated tensor;

passing the concatenated tensor to a next stage, including a pooling layer, and a non-linearity layer;

classifying an object in an input image related to the input tensor; and

storing the classification as metadata for the input image.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 19, 2023
From: GILBERT, SEBASTIEN
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 063985/0193 →
Continuity (1)
Related Publication 20240419948A1 · Dec 19, 2024
References Cited (13)
US 9734824B2 · Penn · 2017 [cited by applicant]
US 11762990B2 · Gururajan · 2023 [cited by examiner]
US 20180349759A1 · Isogawa · 2018 [cited by applicant]
US 20190258917A1 · Chai · 2019 [cited by applicant]
US 20190373589A1 · Hwang · 2019 [cited by examiner]
US 20220004810A1 · Sinha · 2022 [cited by applicant]
US 20220114424A1 · Quader · 2022 [cited by applicant]
US 20220223144A1 · Sun · 2022 [cited by applicant]
US 20230230369A1 · Kamon · 2023 [cited by examiner]
Geirhos et al., “ImageNet-Trained CNN's Are Biased Towards Texture; Increasing Shape Bias Improves Accuracy and Robustness,” arXiv:1811.12231v2 [cs.CV] Jan. 14, 2019, 22 pages. [cited by applicant]
Malekhosseini et al., “Splitting Convolutional Neural Network Structures for Efficient Inference,” arXiv 2002.03302 [cs.CV], Feb. 9, 2020, 5 pages. [cited by applicant]
Yedla et al., “On the Performance of Convolutional Neural Networks Under High and Low Frequency Information,” Springer Nature Singapore Pte Ltd., 2021, pp. 214-224. [cited by applicant]
Szegedy et al., “Intriguing properties of neural networks,” arXiv:1312.6199v4 [cs.CV], Feb. 19, 2014, 10 pages. [cited by applicant]