  We propose a novel approach to reduce the computational cost of evaluation of
convolutional neural networks, a factor that has hindered their deployment in
low-power devices such as mobile phones. Inspired by the loop perforation
technique from source code optimization, we speed up the bottleneck
convolutional layers by skipping their evaluation in some of the spatial
positions. We propose and analyze several strategies of choosing these
positions. We demonstrate that perforation can accelerate modern convolutional
networks such as AlexNet and VGG-16 by a factor of 2x - 4x. Additionally, we
show that perforation is complementary to the recently proposed acceleration
method of Zhang et al.
