Linear Computation Coding for Convolutional Neural Networks - Müller, Ralf; Rosenberger, Hans; Reichenbach, Marc (2023)
Linear computation coding is a recent method aimed to reduce the computational effort for matrix-vector multiplications. Previous algorithms work especially well for large, dense matrices. These algorithms are adapted here for use in convolutional neural networks, where filter kernels typically consist of small, square matrices. For kernel matrices with a uniform element distribution, the number of additions (multiplications are counted as multiple additions) can be reduced compared to a standard implementation by a factor of two to five depending on the kernel size. For an implementation of LeNet5, the number of adders required is reduced by a factor of up to 2.74 compared to standard methods.<br
Keywords: Convolutional codes; Convolution; Conferences; Signal processing algorithms; Filtering algorithms; Encoding; Convolutional neural networks