Chapter 14: Deep Computer Vision Using Convolutional Neural Networks

Will Toth
2 min readJun 23, 2021

A Review of Hands-On Machine Learning with Scikit-Learn, Keras & Tensorflow by Aurélien Géron

Summary

This chapter introduced us about the concept of Convolutional Neural Networks and walked us through multiple examples and techniques as they pertain to Computer Vision problems. Convolutional Neural Networks are multi layer perceptron's that build up images into larger and larger blocks that allow the model to recognize and learn about the images. Unlike in dense layers convolutional layers don’t connect their node to every node in the next layer but rather only connect to a few nodes that are near the current node. This is representative of how cnns work to recognize small portions of an image and build their way up rather than just looking at the whole image at first.

Convolutional Layers

Convolutional Layers represent images in small multi-dimensional chunks that the machine can learn to recognize rather than learning directly on one large image, which can cause overfitting or recognizing certain attributes based on where they are located on the page. These chunks are multi-dimensional because they are often defined by the height and width of the image as well as the channel in which the picture is conveyed (usually a rgb value). These images are essentially broken down into bite sized multi-dimensional chunks and rebuilt up throughout the neural network.

Architectures

This chapter introduced us to a number of architectures that have been used in Computer Vision over the last decade. This includes architectures such as Alexnet, GoogLeNet, and SENet among other that were used to win ImageNet challenge. What I liked about providing these examples was how it was simultaneously teaching us about techniques as well as the history of Computer Vision. One of the big things that I picked up on through going through these models is that over time the models have gotten deeper and deeper. The first architecture looked at, only had 8 layers to it while the more recent models included hundreds of layers and included tricks like skipconnections.

My Thoughts

This was an extremely extensive chapter that focused more on examples than technical content like many of the previous chapters. However, these examples were extremely helpful as they demonstrated the techniques that we have built up over the second half of the book and applied them, along with what we have learned about convolutional neural networks, into real world examples that we can model our own models off of in the future.

Thanks for reading!

If you have any questions or feedback please reach out to me on twitter @wtothdev or leave a comment!

Additionally, I wanted to give a huge thanks to Aurélien Géron for writing such an excellent book. You can purchase said book here (non-affiliate).

Disclaimer: I don’t make any money from any of the services referenced and chose to read and review this book under my own free will.

--

--