AlexNet, ZFNet, VggNet, and GoogLeNet
Last updated
Last updated
AlexNet [50] is the winner of the 2012 ImageNet Large-Scale Visual Recognition Challenge (ILSVRC). The architecture of AlexNet is showed in Figure 2-38. AlexNet used parallelization scheme to spread the network across two GTX 580 3GB GPUs, which takes about five to six days for the training.
Figure 2-39 An illustration of the architecture of our CNN, explicitly showing the delineation of responsibilities between the two GPUs. One GPU runs the layer-parts at the top of the figure while the other runs the layer-parts at the bottom. The GPUs communicate only at certain layers. The network’s input is 150,528-dimensional, and the number of neurons in the network’s remaining layers is given by 253,440–186,624–64,896–64,896–43,264– 4096–4096–1000 [50].
Since AlexNet’s success, CNN becomes the most popular method for the image recognition task. The ILSVRC 2013 winner was also a CNN, known as ZFNet [52]. The VGG-Net [48] is the second place of ILSVRC 2014. It uses multiple 3x3 kernel size filters instead of the first and second convolutional layers in AlexNet which used 11x11 and 5x5 kernel size filters. This change makes the network feasible to learn more complex features at low cost. The VGG-Net which demonstrated that multiple stacked small kernel size filters in convolutional layers is better than one layer of larger kernel size filter.
Continued research has been focused on how to make a network deeper with low computational requirements. However, increasing the depth of layers brings two issues: increasing cost of both time and memory and gradient diffusion which can be understood as unavoidable loss during back-propagation of information through layers. The ReLU function was unable to solve the sparsity in earlier layers of a very deep network, meaning the derivative of most nodes are 0. Dealing with those issues, networks with new architectures were proposed. Inception network was originally proposed by Szegedy, et al. [53]. So far, Inception has four versions. The Inception v1 is also named as GoogLeNet, which introduced a module called Inception that creatively used 1x1 convolutional kernel for dimensionality reduction. This Inception module offered GoogLeNet a better performance than VGG-Net with less computation time and is the winner of ILSVRC 2014. The GoogLeNet is deeper than VGG 16 but with fewer parameters.