chapter ten

10 Fundamental Deep Learning Algorithms

 

This chapter covers

  • Multi-Layer Perceptron
  • Convolutional Neural Nets: LeNet on MNIST and ResNet image search
  • Recurrent Neural Nets: LSTM sequence classification and multi-input neural net
  • Neural Network Optimizers

In the previous chapter, we looked at selected unsupervised ML algorithms to help discover patterns in our data. In this chapter, we introduce deep learning algorithms. Deep learning algorithms are part of supervised learning that we encountered in Chapters 5, 6, and 7. Deep learning algorithms revolutionized the industry and enabled a number of research and business applications that were previously thought to be out of reach by classic ML algorithms. We'll begin this chapter with the fundamentals such as Multi-Layer Perceptron (MLP) and LeNet convolutional model for MNIST digit classification. Followed by more advanced applications such as image search based on ResNet50 Convolutional Neural Network (CNN). We will delve into Recurrent Neural Networks (RNNs) applied to sequence classification using LSTMs and implement from scratch a multi-input model for sequence similarity. We'll then discuss different optimization algorithms used for training neural networks and do a comparative study. We will be using Keras/TensorFlow deep learning library throughout this chapter.

10.1 Multi-Layer Perceptron

10.2 Convolutional Neural Nets

10.2.1 LeNet on MNIST

10.2.2 ResNet Image Search

10.3 Recurrent Neural Nets

10.3.1 LSTM Sequence Classification

10.3.2 Multi-Input Model

10.4 Neural Network Optimizers

10.5 Exercises

10.6 Summary