The last chapter showed us the limits of evolutionary algorithms when applied to a complex problem like parameter search. As we have seen, genetic algorithms can provide excellent results on a certain class of problems. However, they fail to deliver when employed for larger image classification networks.
In this chapter, we continue looking at larger networks for image classification. However, this time instead of optimizing parameter weights or model hyperparameters, we look at improving network architecture. More specifically, we cover the network architecture of convolutional neural networks (CNNs).
CNNs were instrumental to the adoption of DL for image classification and other tasks. They are a fantastic tool in the DL practitioner’s toolbelt but are often misunderstood and under-utilized. In the next section, we review CNN models and how they are built in TensorFlow and Keras.