CVJan 28, 2019

Convolutional Neural Networks with Layer Reuse

arXiv:1901.09615v219 citations
AI Analysis

This addresses efficiency and performance issues in CNNs for image classification, though it is incremental as it builds on existing architectures.

The paper tackles the problem of parameter redundancy in CNNs by proposing Layer Reuse Network (LruNet), which reuses convolutional layers instead of adding new ones, resulting in performance improvements of 5.14% on CIFAR-10, 5.85% on CIFAR-100, and 2.29% on Fashion-MNIST.

A convolutional layer in a Convolutional Neural Network (CNN) consists of many filters which apply convolution operation to the input, capture some special patterns and pass the result to the next layer. If the same patterns also occur at the deeper layers of the network, why wouldn't the same convolutional filters be used also in those layers? In this paper, we propose a CNN architecture, Layer Reuse Network (LruNet), where the convolutional layers are used repeatedly without the need of introducing new layers to get a better performance. This approach introduces several advantages: (i) Considerable amount of parameters are saved since we are reusing the layers instead of introducing new layers, (ii) the Memory Access Cost (MAC) can be reduced since reused layer parameters can be fetched only once, (iii) the number of nonlinearities increases with layer reuse, and (iv) reused layers get gradient updates from multiple parts of the network. The proposed approach is evaluated on CIFAR-10, CIFAR-100 and Fashion-MNIST datasets for image classification task, and layer reuse improves the performance by 5.14%, 5.85% and 2.29%, respectively. The source code and pretrained models are publicly available.

Code Implementations1 repo
Foundations

The foundational work for this paper's niche, ranked by how specifically the neighbourhood builds on it — not by global fame.

Your Notes