conv_einsum: A Framework for Representation and Fast Evaluation of Multilinear Operations in Convolutional Tensorial Neural Networks
Tahseen Rabbani, Jiahao Su, Xiaoyu Liu, David Chan, Geoffrey Sangston, Furong Huang
TL;DR
The paper tackles the efficiency bottlenecks of tensorized convolutional networks by introducing conv_einsum, an einsum-like framework that represents and optimizes the evaluation of multilinear operations including convolutions. It extends the netcon-based optimal sequencing to handle convolutions, enabling FLOP-minimal execution paths for a wide range of tensor decompositions (CP, Tucker, TT, TR, BT, HT, and reshaped variants) and network designs (e.g., interleaved group and depthwise convolutions). Through theory and extensive experiments, the authors show significant improvements in computational and memory efficiency across tasks such as ASR, video classification, and image classification, with an open-source implementation for training tensorized networks. The work provides a practical, scalable path toward deploying compact, expressive neural nets on resource-constrained devices. Future directions include integrating advanced accelerators and stabilization techniques to further boost performance and stability of tensorized architectures.
Abstract
Modern ConvNets continue to achieve state-of-the-art results over a vast array of vision and image classification tasks, but at the cost of increasing parameters. One strategy for compactifying a network without sacrificing much expressive power is to reshape it into a tensorial neural network (TNN), which is a higher-order tensorization of its layers, followed by a factorization, such as a CP-decomposition, which strips a weight down to its critical basis components. Passes through TNNs can be represented as sequences of multilinear operations (MLOs), where the evaluation path can greatly affect the number of floating point operations (FLOPs) incurred. While functions such as the popular einsum can evaluate simple MLOs such as contractions, existing implementations cannot process multi-way convolutions, resulting in scant assessments of how optimal evaluation paths through tensorized convolutional layers can improve training speed. In this paper, we develop a unifying framework for representing tensorial convolution layers as einsum-like strings and a meta-algorithm conv_einsum which is able to evaluate these strings in a FLOPs-minimizing manner. Comprehensive experiments, using our open-source implementation, over a wide range of models, tensor decompositions, and diverse tasks, demonstrate that conv_einsum significantly increases both computational and memory-efficiency of convolutional TNNs.
