Reshaping inputs for convolutional neural network: Some common and uncommon methods. (September 2019) - Ghosh, Swarnendu; Das, Nibaran; Nasipuri, Mita
Highlights: 25 techniques for reshaping inputs for convolutional neural networks. Some uncommon methods along with common techniques for reshaping. Tested on six different datasets of multiple domains. Techniques applied on Inception-V3, ResNet 18, and DenseNet-121 architecture. Statistics about relative convergence, accuracy, agreement and chi-square test. Graphical abstract: Abstract: Convolutional Neural Network has become very common in the field of computer vision in recent years. But it comes with a severe restriction regarding the size of the input image. Most convolutional neural networks are designed in a way so that they can only accept images of a fixed size. This creates several challenges during data acquisition and model deployment. The common practice to overcome this limitation is to reshape the input images so that they can be fed into the networks. Many standard pre-trained networks and datasets come with a provision of working with square images. In this work we analyze 25 different reshaping methods across 6 datasets corresponding to different domains trained on three famous architectures namely Inception-V3, which is an extension of GoogLeNet, the Residual Networks (Resent-18) and the 121-Layer deep DenseNet. While some of the reshaping methods like "interpolation" and "cropping" have been commonly used with convolutional neural networks, some uncommon techniques like "containing", "tiling" and "mirroring" have also been demonstrated. In total, 450 neural networks were trained from scratch to provide various analyses regarding the convergence of the validation loss and the accuracy obtained on the test data. Statistical measures have been provided to demonstrate the dependence between parameter choices and datasets. Several key observations were noted such as the benefits of using randomized processes, poor performance of the commonly used "cropping" techniques and so on. The paper intends to provide empirical evidence to guide the reader to choose a proper technique of reshaping inputs for their convolutional neural networks. The official code is available in https://github.com/DVLP-CMATERJU/Reshaping-Inputs-for-CNN.