US 12,073,306 B2
Systems and methods for compression and acceleration of convolutional neural networks
Jiajun Li, Arlington, VA (US); and Ahmed Louri, Vienna, VA (US)
Assigned to THE GEORGE WASHINGTON UNIVERSITY, Washington, DC (US)
Filed by The George Washington University, Washington, DC (US)
Filed on Dec. 15, 2021, as Appl. No. 17/551,967.
Claims priority of provisional application 63/125,804, filed on Dec. 15, 2020.
Prior Publication US 2022/0188600 A1, Jun. 16, 2022
Int. Cl. G06F 17/10 (2006.01); G06F 7/544 (2006.01); G06N 3/045 (2023.01); G06N 3/063 (2023.01)
CPC G06N 3/045 (2023.01) [G06F 7/5443 (2013.01); G06N 3/063 (2013.01)] 16 Claims
OG exemplary drawing
 
1. A centrosymmetric convolutional neural network computer system comprising:
an input activation position buffer,
an input activation value buffer,
a weight value buffer;
a weight position buffer;
a multiplier array that receives a first vector from the input activation value buffer and a second vector from the weight value buffer and calculates a third vector of products; and
a coordinate computation unit that:
receives first associated positions of the first vector from the input activation position buffer and second associated positions of the second vector from the weight position buffer,
calculates a fourth vector of associated positions;
transforms the second associated positions into third associated positions, wherein the third associated positions are centrosymmetric;
combines the second associated positions and the third associated positions into a fifth vector of associated positions.
 
9. A computer-implemented method of operating a centrosymmetric convolutional neural network comprising:
receiving a first vector from an input activation value buffer and a second vector from a weight value buffer at a multiplier array;
calculating a third vector of products at the multiplier array;
receiving first associated positions of the first vector from the input activation position buffer and second associated positions of the second vector from a weight position buffer at a coordinate computation unit;
calculating a fourth vector of associated positions at the coordinate computation unit;
transforming the second associated positions into third associated positions at the coordinate computation unit, wherein the third associated positions are centrosymmetric; and
combining the second associated positions and the third associated positions into a fifth vector of associated positions at the coordinate computation unit.