Transfer Learning for Image Classification — (4) Visualize VGG-16 Layer-by-Layer
VGG-16 and ResNet made their names in the ImageNet Challenge in 2014 and 2015. Both continue to be used by many practitioners now. In the previous chapter we learned a general Convolutional Neural Network framework, now we want to understand the specifics of VGG-16. In this chapter, we will load the VGG-16 model and the ResNet model. I will visualize the inputs and outputs layer-by-layer to show you what VGG-16 “sees” an image. You will witness how VGG-16 creates features and what they look like. We will use VGG-16 as the primary case. After reading this chapter, you can apply the same approach to understand other pre-trained models.
Here are some basics of the two models. “VGG-16” is named after the Visual Geometry Group from Oxford. The “16” in VGG-16 refers to the 16 weighting layers. They are the 13 convolutional layers and the 3 fully connected layers. The pooling layers do not have parameters to train so are not counted in the 16. How about ResNet? It stands for Residual Network. We have learned the ResNet model in “Chapter 2: The stories of pre-trained models”. Interested readers are recommended to review Chapter 2.
(A) We Will Use Tensorflow & Keras
When people talk about the top modules for deep learning, Tensorflow is one of them. TensorFlow is an…