Hands-On Deep Learning Algorithms with Python
eBook - ePub

Hands-On Deep Learning Algorithms with Python

Master deep learning algorithms with extensive math by implementing them using TensorFlow

Sudharsan Ravichandiran

Share book
  1. 512 pages
  2. English
  3. ePUB (mobile friendly)
  4. Available on iOS & Android
eBook - ePub

Hands-On Deep Learning Algorithms with Python

Master deep learning algorithms with extensive math by implementing them using TensorFlow

Sudharsan Ravichandiran

Book details
Book preview
Table of contents

About This Book

Understand basic to advanced deep learning algorithms, the mathematical principles behind them, and their practical applications.

Key Features

  • Get up-to-speed with building your own neural networks from scratch
  • Gain insights into the mathematical principles behind deep learning algorithms
  • Implement popular deep learning algorithms such as CNNs, RNNs, and more using TensorFlow

Book Description

Deep learning is one of the most popular domains in the AI space, allowing you to develop multi-layered models of varying complexities.

This book introduces you to popular deep learning algorithms—from basic to advanced—and shows you how to implement them from scratch using TensorFlow. Throughout the book, you will gain insights into each algorithm, the mathematical principles behind it, and how to implement it in the best possible manner. The book starts by explaining how you can build your own neural networks, followed by introducing you to TensorFlow, the powerful Python-based library for machine learning and deep learning. Moving on, you will get up to speed with gradient descent variants, such as NAG, AMSGrad, AdaDelta, Adam, and Nadam. The book will then provide you with insights into RNNs and LSTM and how to generate song lyrics with RNN. Next, you will master the math for convolutional and capsule networks, widely used for image recognition tasks. Then you learn how machines understand the semantics of words and documents using CBOW, skip-gram, and PV-DM. Afterward, you will explore various GANs, including InfoGAN and LSGAN, and autoencoders, such as contractive autoencoders and VAE.

By the end of this book, you will be equipped with all the skills you need to implement deep learning in your own projects.

What you will learn

  • Implement basic-to-advanced deep learning algorithms
  • Master the mathematics behind deep learning algorithms
  • Become familiar with gradient descent and its variants, such as AMSGrad, AdaDelta, Adam, and Nadam
  • Implement recurrent networks, such as RNN, LSTM, GRU, and seq2seq models
  • Understand how machines interpret images using CNN and capsule networks
  • Implement different types of generative adversarial network, such as CGAN, CycleGAN, and StackGAN
  • Explore various types of autoencoder, such as Sparse autoencoders, DAE, CAE, and VAE

Who this book is for

If you are a machine learning engineer, data scientist, AI developer, or simply want to focus on neural networks and deep learning, this book is for you. Those who are completely new to deep learning, but have some experience in machine learning and Python programming, will also find the book very helpful.

Frequently asked questions

How do I cancel my subscription?
Simply head over to the account section in settings and click on “Cancel Subscription” - it’s as simple as that. After you cancel, your membership will stay active for the remainder of the time you’ve paid for. Learn more here.
Can/how do I download books?
At the moment all of our mobile-responsive ePub books are available to download via the app. Most of our PDFs are also available to download and we're working on making the final remaining ones downloadable now. Learn more here.
What is the difference between the pricing plans?
Both plans give you full access to the library and all of Perlego’s features. The only differences are the price and subscription period: With the annual plan you’ll save around 30% compared to 12 months on the monthly plan.
What is Perlego?
We are an online textbook subscription service, where you can get access to an entire online library for less than the price of a single book per month. With over 1 million books across 1000+ topics, we’ve got you covered! Learn more here.
Do you support text-to-speech?
Look out for the read-aloud symbol on your next book to see if you can listen to it. The read-aloud tool reads text aloud for you, highlighting the text as it is being read. You can pause it, speed it up and slow it down. Learn more here.
Is Hands-On Deep Learning Algorithms with Python an online PDF/ePUB?
Yes, you can access Hands-On Deep Learning Algorithms with Python by Sudharsan Ravichandiran in PDF and/or ePUB format, as well as other popular books in Computer Science & Computer Science General. We have over one million books available in our catalogue for you to explore.



Section 1: Getting Started with Deep Learning

In this section, we will get ourselves familiarized with deep learning and will understand the fundamental deep learning concepts. We will also learn about powerful deep learning framework called TensorFlow, and set TensorFlow up for all of our future deep learning tasks.
The following chapters are included in this section:

Introduction to Deep Learning

Deep learning is a subset of machine learning inspired by the neural networks in the human brain. It has been around for a decade, but the reason it is so popular right now is due to the computational advancements and availability of the huge volume of data. With a huge volume of data, deep learning algorithms outperform classic machine learning. It has already been transfiguring and extensively used in several interdisciplinary scientific fields such as computer vision, natural language processing (NLP), speech recognition, and many others.
In this chapter, we will learn about the following topics:
  • Fundamental concepts of deep learning
  • Biological and artificial neurons
  • Artificial neural network and its layers
  • Activation functions
  • Forward and backward propagation in ANN
  • Gradient checking algorithm
  • Building an artificial neural network from scratch

What is deep learning?

Deep learning is just a modern name for artificial neural networks with many layers. What is deep in deep learning though? It is basically due to the structure of the artificial neural network (ANN). ANN consists of some n number of layers to perform any computation. We can build an ANN with several layers where each layer is responsible for learning the intricate patterns in the data. Due to the computational advancements, we can build a network even with 100s or 1000s of layers deep. Since the ANN uses deep layers to perform learning we call it as deep learning and when ANN uses deep layers to learn we call it as a deep network. We have learned that deep learning is a subset of machine learning. How does deep learning differ from machine learning? What makes deep learning so special and popular?
The success of machine learning lies in the right set of features. Feature engineering plays a crucial role in machine learning. If we handcraft the right set of features to predict a certain outcome, then the machine learning algorithms can perform well, but finding and engineering the right set of features is not an easy task.
With deep learning, we don't have to handcraft such features. Since deep ANNs employ several layers, it learns the complex intrinsic features and multi-level abstract representation of data by itself. Let's explore this a bit with an analogy.
Let's suppose we want to perform an image classification task. Say, we are learning to recognize whether an image contains a dog or not. With machine learning, we need to handcraft features that help the model to understand whether the image contains a dog. We send these handcrafted features as inputs to machine learning algorithms which then learn a mapping between the features and the label (dog). But extracting features from an image is a tedious task. With deep learning, we just need ...

Table of contents