Book Image

Hands-On Deep Learning Architectures with Python

By : Yuxi (Hayden) Liu, Saransh Mehta
Book Image

Hands-On Deep Learning Architectures with Python

By: Yuxi (Hayden) Liu, Saransh Mehta

Overview of this book

Deep learning architectures are composed of multilevel nonlinear operations that represent high-level abstractions; this allows you to learn useful feature representations from the data. This book will help you learn and implement deep learning architectures to resolve various deep learning research problems. Hands-On Deep Learning Architectures with Python explains the essential learning algorithms used for deep and shallow architectures. Packed with practical implementations and ideas to help you build efficient artificial intelligence systems (AI), this book will help you learn how neural networks play a major role in building deep architectures. You will understand various deep learning architectures (such as AlexNet, VGG Net, GoogleNet) with easy-to-follow code and diagrams. In addition to this, the book will also guide you in building and training various deep architectures such as the Boltzmann mechanism, autoencoders, convolutional neural networks (CNNs), recurrent neural networks (RNNs), natural language processing (NLP), GAN, and more—all with practical implementations. By the end of this book, you will be able to construct deep models using popular frameworks and datasets with the required design patterns for each architecture. You will be ready to explore the potential of deep architectures in today's world.
Table of Contents (15 chapters)
Free Chapter
1
Section 1: The Elements of Deep Learning
5
Section 2: Convolutional Neural Networks
8
Section 3: Sequence Modeling
10
Section 4: Generative Adversarial Networks (GANs)
12
Section 5: The Future of Deep Learning and Advanced Artificial Intelligence

Object detection with CNN

Most of the natural images that we come across in everyday life don't consist of a single object covering the whole image. Often, it's a mixture of different objects located at different positions. In such cases, simple object recognition is not going to work. Hence, detecting various objects that are present in an image along with their position becomes challenging. This is where deep learning shines! 

So, object detection can be broken down into two parts:

  • Object localization: Determining the x, y co-ordinates of an object in the image
  • Object recognition: Determining whether the location has an object or not and, if so, what object it is

Thus, object detection networks have two separate sub-networks to perform these two tasks. The first network generates different regions of interest in the image while the second network classifies...