Searching for Winograd-aware Quantized Networks
  Lightweight architectural designs of Convolutional Neural Networks (CNNs)
together with quantization have paved the way for the deployment of demanding
computer vision applications on mobile devices. Parallel to this, alternative
formulations to the convolution operation such as FFT, Strassen and Winograd,
have been adapted for use in CNNs offering further speedups. Winograd
convolutions are the fastest known algorithm for spatially small convolutions,
but exploiting their full potential comes with the burden of numerical error,
rendering them unusable in quantized contexts. In this work we propose a
Winograd-aware formulation of convolution layers which exposes the numerical
inaccuracies introduced by the Winograd transformations to the learning of the
model parameters, enabling the design of competitive quantized models without
impacting model size. We also address the source of the numerical error and
propose a relaxation on the form of the transformation matrices, resulting in
up to 10% higher classification accuracy on CIFAR-10. Finally, we propose
wiNAS, a neural architecture search (NAS) framework that jointly optimizes a
given macro-architecture for accuracy and latency leveraging Winograd-aware
layers. A Winograd-aware ResNet-18 optimized with wiNAS for CIFAR-10 results in
2.66x speedup compared to im2row, one of the most widely used optimized
convolution implementations, with no loss in accuracy.
