1 Introducing evolutionary deep learning


This chapter covers

  • What evolutionary computation is and how it can be integrated into deep learning systems
  • Applications of evolutionary deep learning
  • Establishing patterns for optimizing deep learning networks
  • The role automated machine learning plays in optimizing networks
  • Applications of evolutionary computational methods to enhance deep learning development

Deep learning (DL) has become the ubiquitous technology most associated with artificial intelligence (AI) and the explosion of machine learning (ML). It has grown from being considered a pseudoscience (see The Deep Learning Revolution by Terrence J. Sejnowski, 2018, MIT Press) to being used in mainstream applications for everything from diagnosing breast cancer to driving cars. While many consider it a technology of the future, others take a more pragmatic and practical approach to its growing complexity and thirst for data.

As DL becomes more complex, we force-feed it more and more data, in the hopes of having some grand epiphany in a particular domain. Unfortunately, this is rarely the case, and all too frequently, we are left with bad models, poor results, and angry bosses. This is a problem that will continue to persist until we develop efficient processes for our DL systems.

1.1 What is evolutionary deep learning?

1.1.1 Introducing evolutionary computation

1.2 The why and where of evolutionary deep learning

1.3 The need for deep learning optimization

1.3.1 Optimizing the network architecture

1.4 Automating optimization with automated machine learning

1.4.1 What is automated machine learning?

1.5 Applications of evolutionary deep learning

1.5.1 Model selection: Weight search

1.5.2 Model architecture: Architecture optimization

1.5.3 Hyperparameter tuning/optimization