In Chapter 1, Computer Vision and Neural Networks, we presented how recent neural networks, which are more suitable for image processing, surpassed previous computer vision methods of the past decade. However, limited by how much we can reimplement from scratch, we only covered basic architectures. Now, with TensorFlow's powerful APIs at our fingertips, it is time to discover what convolutional neural networks (CNNs) are, and how these modern methods are trained to further improve their robustness.
The following topics will be covered in this chapter:
- CNNs and their relevance to computer vision
- Implementing these modern networks with TensorFlow and Keras
- Advanced optimizers and how to train CNNs efficiently
- Regularization methods and how to avoid overfitting