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

Leveraging pretrained VGG models for new classes

In 2014, the paper Very Deep Convolutional Networks for Large-Scale Image Recognition ( was published. At that time, both the in the paper, VGG16 and VGG19, were considered very deep, with 16 and 19 layers, respectively. That included weights, in addition to the input and output layers, and a couple of max pooling layers. The network architecture of VGG stacks multiple 3×3 convolutional layers on top of each other. In total, the VGG16 network architecture has 13 convolutional layers and three fully connected layers. The 19-layer variant has 16 convolutional layers and the same three fully connected layers. In this recipe, we will use the bottleneck features of VGG16 and add our own layers on top of it. We will freeze the weights of the original model and train only the top layers. 

How to do it...

  1. We start by importing all libraries, as follows:
import numpy as np
import matplotlib.pyplot as plt

from keras.models...