  Network compression reduces the computational complexity and memory
consumption of deep neural networks by reducing the number of parameters. In
SVD-based network compression, the right rank needs to be decided for every
layer of the network. In this paper, we propose an efficient method for
obtaining the rank configuration of the whole network. Unlike previous methods
which consider each layer separately, our method considers the whole network to
choose the right rank configuration. We propose novel accuracy metrics to
represent the accuracy and complexity relationship for a given neural network.
We use these metrics in a non-iterative fashion to obtain the right rank
configuration which satisfies the constraints on FLOPs and memory while
maintaining sufficient accuracy. Experiments show that our method provides
better compromise between accuracy and computational complexity/memory
consumption while performing compression at much higher speed. For VGG-16 our
network can reduce the FLOPs by 25% and improve accuracy by 0.7% compared to
the baseline, while requiring only 3 minutes on a CPU to search for the right
rank configuration. Previously, similar results were achieved in 4 hours with 8
GPUs. The proposed method can be used for lossless compression of a neural
network as well. The better accuracy and complexity compromise, as well as the
extremely fast speed of our method makes it suitable for neural network
compression.
