Book Image

Python Deep Learning Cookbook

By : Indra den Bakker
Book Image

Python Deep Learning Cookbook

By: Indra den Bakker

Overview of this book

Deep Learning is revolutionizing a wide range of industries. For many applications, deep learning has proven to outperform humans by making faster and more accurate predictions. This book provides a top-down and bottom-up approach to demonstrate deep learning solutions to real-world problems in different areas. These applications include Computer Vision, Natural Language Processing, Time Series, and Robotics. The Python Deep Learning Cookbook presents technical solutions to the issues presented, along with a detailed explanation of the solutions. Furthermore, a discussion on corresponding pros and cons of implementing the proposed solution using one of the popular frameworks like TensorFlow, PyTorch, Keras and CNTK is provided. The book includes recipes that are related to the basic concepts of neural networks. All techniques s, as well as classical networks topologies. The main purpose of this book is to provide Python programmers a detailed list of recipes to apply deep learning to common and not-so-common scenarios.
Table of Contents (21 chapters)
Title Page
About the Author
About the Reviewer
Customer Feedback


This chapter focuses on CNNs and their building blocks. In this chapter, we will provide recipes regarding techniques and optimizations used in CNNs. A convolutional neural network, also known as ConvNet, is a specific type of feed-forward neural network where the network has one or multiple layers. The convolutional layers can be complemented with fully connected layers. If the network only contains layers, we name the network architecture a fully convolutional network (FCN). Convolutional networks and computer vision are inseparable in deep learning. However, CNNs can be used in other applications, such as in a wide variety of NLP problems, as we will introduce in this chapter.

Getting started with filters and parameter sharing

Let's introduce the most part of convolutional networks: convolutional layers. In a layer, we have blocks that convolve over the input data (like a sliding window). This technique shares parameters for each block in such a way that it can detect a...