Book Image

Hands-On Mathematics for Deep Learning

By : Jay Dawani
Book Image

Hands-On Mathematics for Deep Learning

By: Jay Dawani

Overview of this book

Most programmers and data scientists struggle with mathematics, having either overlooked or forgotten core mathematical concepts. This book uses Python libraries to help you understand the math required to build deep learning (DL) models. You'll begin by learning about core mathematical and modern computational techniques used to design and implement DL algorithms. This book will cover essential topics, such as linear algebra, eigenvalues and eigenvectors, the singular value decomposition concept, and gradient algorithms, to help you understand how to train deep neural networks. Later chapters focus on important neural networks, such as the linear neural network and multilayer perceptrons, with a primary focus on helping you learn how each model works. As you advance, you will delve into the math used for regularization, multi-layered DL, forward propagation, optimization, and backpropagation techniques to understand what it takes to build full-fledged DL models. Finally, you’ll explore CNN, recurrent neural network (RNN), and GAN models and their application. By the end of this book, you'll have built a strong foundation in neural networks and DL mathematical concepts, which will help you to confidently research and build custom models in DL.
Table of Contents (19 chapters)
1
Section 1: Essential Mathematics for Deep Learning
7
Section 2: Essential Neural Networks
13
Section 3: Advanced Deep Learning Concepts Simplified

Transfer and Meta Learning

So far in this book, we have studied a variety of neural networks and, as we have seen, each of them has its own strengths and weaknesses with regard to a variety of tasks. We have also learned that deep learning architectures require a large amount of training data because of their size and their large number of trainable parameters. As you can imagine, for a lot of the problems that we want to build models for, it may not be possible to collect enough data, and even if we are able to do so, this would be very difficult and time-consuming—perhaps even costly—to carry out. One way to combat this is to use generative models to create synthetic data (something we encountered in Chapter 8, Regularization) that is generated from a small dataset that we collect for our task.

In this chapter, we will cover two topics that have recently grown...