15 Building a real-world CNN: VGG-Face and VGG-Face Lite
This chapter covers
- Selecting and applying techniques to augment data for training a convolution neural network
- Tuning a convolution neural network using dropout and batch normalization and evaluating performance
- Building an accurate convolution neural network for object recognition using CIFAR-10 and facial identification
Convolutional neural network (CNN) architectures are useful tools for analyzing images and for differentiating their features. It could be lines or curves that signify your favorite automobile, or a particular higher-level feature like a green coloring present in most frog pictures. It could also be more complex indicators like a freckle near your left nostril, or the curvature near your chin passed down through generations of your family.
Humans have become adept through the years at picking out these identifying features and it’s fine to wonder why. As it turns out, what humans have grown accustomed to is looking at many millions and billions of example images shown to them since birth, and then receiving feedback about what they are seeing in those images. Remember your mom repeating the word ball while holding up a ball to you? Maybe not the very first time, but there’s a good chance you remember some time she said it. Then, what about the time you saw another ball, slightly different shape or color and asked, “Ball?”