Search icon CANCEL
Arrow left icon
Explore Products
Best Sellers
New Releases
Books
Videos
Audiobooks
Learning Hub
Conferences
Free Learning
Arrow right icon
Keras Deep Learning Cookbook
Keras Deep Learning Cookbook

Keras Deep Learning Cookbook: Over 30 recipes for implementing deep neural networks in Python

Arrow left icon
Profile Icon Ghotra Profile Icon Dua Profile Icon Sujit Pal
Arrow right icon
$19.99 per month
Full star icon Empty star icon Empty star icon Empty star icon Empty star icon 1 (1 Ratings)
Paperback Oct 2018 252 pages 1st Edition
eBook
$20.98 $29.99
Paperback
$38.99
Subscription
Free Trial
Renews at $19.99p/m
Arrow left icon
Profile Icon Ghotra Profile Icon Dua Profile Icon Sujit Pal
Arrow right icon
$19.99 per month
Full star icon Empty star icon Empty star icon Empty star icon Empty star icon 1 (1 Ratings)
Paperback Oct 2018 252 pages 1st Edition
eBook
$20.98 $29.99
Paperback
$38.99
Subscription
Free Trial
Renews at $19.99p/m
eBook
$20.98 $29.99
Paperback
$38.99
Subscription
Free Trial
Renews at $19.99p/m

What do you get with a Packt Subscription?

Free for first 7 days. $19.99 p/m after that. Cancel any time!
Product feature icon Unlimited ad-free access to the largest independent learning library in tech. Access this title and thousands more!
Product feature icon 50+ new titles added per month, including many first-to-market concepts and exclusive early access to books as they are being written.
Product feature icon Innovative learning tools, including AI book assistants, code context explainers, and text-to-speech.
Product feature icon Thousands of reference materials covering every tech concept you need to stay up to date.
Subscribe now
View plans & pricing
Table of content icon View table of contents Preview book icon Preview Book

Keras Deep Learning Cookbook

Working with Keras Datasets and Models

In this chapter, we will cover the following recipes:

  • CIFAR-10 dataset
  • CIFAR-100 dataset
  • MNIST dataset
  • Load data from a CSV file
  • Models in Keras - getting started
  • Sequential models
  • Shared layer models
  • Keras functional APIs
  • Keras functional APIs - linking the layers
  • Image classification using Keras functional APIs

Introduction

In this chapter, we will explore various datasets available by default in Keras and how to load and use them.

CIFAR-10 dataset

Load the CIFAR-10 small images classification dataset from https://www.cs.toronto.edu/~kriz/cifar-10-python.tar.gz. The CIFAR-10 dataset is made up of 60,000 32 x 32 color images in 10 classes, and there are 6000 images per class. The dataset consists of 50,000 training images and 10,000 test images.

The dataset has been divided into five training batches and one test batch, each with 10,000 images. The test batch contains 1,000 randomly selected images from each class. The training batches contain the rest of the images in a random order; some training batches may contain more images from one class than another. The training batches contain 5,000 images from each class, such as shown in the following image:

Reference: https://www.cs.toronto.edu/~kriz/cifar.html.

...

CIFAR-100 dataset

A training dataset of 50,000 32 x 32 pixel color images labeled over 100 categories and 10,000 test images, this dataset is similar to CIFAR-10, but it has 100 classes with 600 images in each class. Five-hundred training images and 100 testing images are in each class. The 100 classes in CIFAR-100 are grouped into 20 superclasses. Each image comes with a coarse label (the superclass to which it belongs) and a fine label (the class to which it belongs).
A list of classes in CIFAR-100 is as follows:

Superclass Classes
aquatic mammals beaver, dolphin, otter, seal, and whale
fish aquarium fish, flatfish, ray, shark, and trout
flowers orchids, poppies, roses, sunflowers, and tulips
food containers bottles, bowls, cans, cups, and plates
fruit and vegetables apples, mushrooms, oranges, pears, and sweet peppers
household electrical devices clock, computer...

MNIST dataset

MNIST is a dataset of 60,000 28 x 28 pixel grayscale images of 10 digits. It also contains a test set of 10,000 images. The dataset consists of the following four files:

Data in these files is stored in the IDX format. The IDX file format is a format for vectors and multidimensional matrices of various numerical types. You can find more info...

Load data from a CSV file

Keras can take data directly from a numpy array in addition to preexisting datasets.

How to do it...

Let's take an existing .csv file from the internet and use it to create a Keras dataset:

dataset = numpy.loadtxt("https://raw.githubusercontent.com/jbrownlee/Datasets/master/pima-indians-diabetes.data.csv", delimiter=",")
# split into input (X) and output (Y) variables
X = dataset[:,0:8]
Y = dataset[:,8]

Note that the dataset can be directly loaded from the URL with the .csv file.

The output of the preceding code is listed in the following snippet:

[ 6. 148. 72. 35. 0. 33.6 0.627 50. ]
1.0

Models in Keras – getting started

Let's look at creating a basic model in Keras.

Anatomy of a model

Model is a subclass of NetworkThe Model class adds training and evaluation routines to a Network. The following diagram shows the relationship between the various classes.

A network is not a class that developers use directly, so some info in this section is for your information only.

Types of models

There are two types of models in Keras:

  • Sequential models
  • Models created using functional APIs
...

Sequential models

A Sequential model can be created by passing a stack of layers to the constructor of a class called Sequential

How to do it...

Creating a basic Sequential mode involves specifying one or more layers.

Create a Sequential model

We will create a Sequential network with four layers.

  1. Layer 1 is a dense layer which has input_shape of (*, 784) and an output_shape of (*, 32)
A dense layer is a regular densely-connected neural network layer. A Dense layer implements the operation output = activation(dot(input, kernel) + bias), where activation...

Shared layer models

Multiple layers in Keras can share the output from one layer. There can be multiple different feature extraction layers from an input, or multiple layers can be used to predict the output from a feature extraction layer.

Let's look at both of these examples.

Introduction – shared input layer

In this section, we show how multiple convolutional layers with differently sized kernels interpret an image input. The model takes colored CIFAR images with a size of 32 x 32 x 3 pixels. There are two CNN feature extraction submodels that share this input; the first has a kernel size of 4, the second a kernel size of 8. The outputs from these feature extraction sub-models are flattened into vectors and...

Introduction


In this chapter, we will explore various datasets available by default in Keras and how to load and use them.

CIFAR-10 dataset


Load the CIFAR-10 small images classification dataset from https://www.cs.toronto.edu/~kriz/cifar-10-python.tar.gz. The CIFAR-10 dataset is made up of 60,000 32 x 32 color images in 10 classes, and there are 6000 images per class. The dataset consists of 50,000 training images and 10,000 test images.

 

The dataset has been divided into five training batches and one test batch, each with 10,000 images. The test batch contains 1,000 randomly selected images from each class. The training batches contain the rest of the images in a random order; some training batches may contain more images from one class than another. The training batches contain 5,000 images from each class, such as shown in the following image:

Reference: https://www.cs.toronto.edu/~kriz/cifar.html.

How to do it...

Let's load this dataset using the Keras APIs and print the shape and size:

from keras.datasets import cifar10

(X_train, y_train), (X_test, y_test) = cifar10.load_data()
print("X_train shape: " + str...

CIFAR-100 dataset


A training dataset of 50,000 32 x 32 pixel color images labeled over 100 categories and 10,000 test images, this dataset is similar to CIFAR-10, but it has 100 classes with 600 images in each class. Five-hundred training images and 100 testing images are in each class. The 100 classes in CIFAR-100 are grouped into 20 superclasses. Each image comes with a coarse label (the superclass to which it belongs) and a fine label (the class to which it belongs). A list of classes in CIFAR-100 is as follows:

Superclass

Classes

aquatic mammals

beaver, dolphin, otter, seal, and whale

fish

aquarium fish, flatfish, ray, shark, and trout

flowers

orchids, poppies, roses, sunflowers, and tulips

food containers

bottles, bowls, cans, cups, and plates

fruit and vegetables

apples, mushrooms, oranges, pears, and sweet peppers

household electrical devices

clock, computer keyboard, lamp, telephone, and television

household furniture

bed, chair, couch, table, and wardrobe

insects

bee, beetle, butterfly, caterpillar...

Left arrow icon Right arrow icon
Download code icon Download Code

Key benefits

  • Understand different neural networks and their implementation using Keras
  • Explore recipes for training and fine-tuning your neural network models
  • Put your deep learning knowledge to practice with real-world use-cases, tips, and tricks

Description

Keras has quickly emerged as a popular deep learning library. Written in Python, it allows you to train convolutional as well as recurrent neural networks with speed and accuracy. The Keras Deep Learning Cookbook shows you how to tackle different problems encountered while training efficient deep learning models, with the help of the popular Keras library. Starting with installing and setting up Keras, the book demonstrates how you can perform deep learning with Keras in the TensorFlow. From loading data to fitting and evaluating your model for optimal performance, you will work through a step-by-step process to tackle every possible problem faced while training deep models. You will implement convolutional and recurrent neural networks, adversarial networks, and more with the help of this handy guide. In addition to this, you will learn how to train these models for real-world image and language processing tasks. By the end of this book, you will have a practical, hands-on understanding of how you can leverage the power of Python and Keras to perform effective deep learning

Who is this book for?

Keras Deep Learning Cookbook is for you if you are a data scientist or machine learning expert who wants to find practical solutions to common problems encountered while training deep learning models. A basic understanding of Python and some experience in machine learning and neural networks is required for this book.

What you will learn

  • Install and configure Keras in TensorFlow
  • Master neural network programming using the Keras library
  • Understand the different Keras layers
  • Use Keras to implement simple feed-forward neural networks, CNNs and RNNs
  • Work with various datasets and models used for image and text classification
  • Develop text summarization and reinforcement learning models using Keras

Product Details

Country selected
Publication date, Length, Edition, Language, ISBN-13
Publication date : Oct 31, 2018
Length: 252 pages
Edition : 1st
Language : English
ISBN-13 : 9781788621755
Vendor :
Google
Category :
Languages :
Concepts :
Tools :

What do you get with a Packt Subscription?

Free for first 7 days. $19.99 p/m after that. Cancel any time!
Product feature icon Unlimited ad-free access to the largest independent learning library in tech. Access this title and thousands more!
Product feature icon 50+ new titles added per month, including many first-to-market concepts and exclusive early access to books as they are being written.
Product feature icon Innovative learning tools, including AI book assistants, code context explainers, and text-to-speech.
Product feature icon Thousands of reference materials covering every tech concept you need to stay up to date.
Subscribe now
View plans & pricing

Product Details

Publication date : Oct 31, 2018
Length: 252 pages
Edition : 1st
Language : English
ISBN-13 : 9781788621755
Vendor :
Google
Category :
Languages :
Concepts :
Tools :

Packt Subscriptions

See our plans and pricing
Modal Close icon
$19.99 billed monthly
Feature tick icon Unlimited access to Packt's library of 7,000+ practical books and videos
Feature tick icon Constantly refreshed with 50+ new titles a month
Feature tick icon Exclusive Early access to books as they're written
Feature tick icon Solve problems while you work with advanced search and reference features
Feature tick icon Offline reading on the mobile app
Feature tick icon Simple pricing, no contract
$199.99 billed annually
Feature tick icon Unlimited access to Packt's library of 7,000+ practical books and videos
Feature tick icon Constantly refreshed with 50+ new titles a month
Feature tick icon Exclusive Early access to books as they're written
Feature tick icon Solve problems while you work with advanced search and reference features
Feature tick icon Offline reading on the mobile app
Feature tick icon Choose a DRM-free eBook or Video every month to keep
Feature tick icon PLUS own as many other DRM-free eBooks or Videos as you like for just $5 each
Feature tick icon Exclusive print discounts
$279.99 billed in 18 months
Feature tick icon Unlimited access to Packt's library of 7,000+ practical books and videos
Feature tick icon Constantly refreshed with 50+ new titles a month
Feature tick icon Exclusive Early access to books as they're written
Feature tick icon Solve problems while you work with advanced search and reference features
Feature tick icon Offline reading on the mobile app
Feature tick icon Choose a DRM-free eBook or Video every month to keep
Feature tick icon PLUS own as many other DRM-free eBooks or Videos as you like for just $5 each
Feature tick icon Exclusive print discounts

Frequently bought together


Stars icon
Total $ 131.97
Advanced Deep Learning with Keras
$43.99
Python Deep Learning Projects
$48.99
Keras Deep Learning Cookbook
$38.99
Total $ 131.97 Stars icon

Table of Contents

11 Chapters
Keras Installation Chevron down icon Chevron up icon
Working with Keras Datasets and Models Chevron down icon Chevron up icon
Data Preprocessing, Optimization, and Visualization Chevron down icon Chevron up icon
Classification Using Different Keras Layers Chevron down icon Chevron up icon
Implementing Convolutional Neural Networks Chevron down icon Chevron up icon
Generative Adversarial Networks Chevron down icon Chevron up icon
Recurrent Neural Networks Chevron down icon Chevron up icon
Natural Language Processing Using Keras Models Chevron down icon Chevron up icon
Text Summarization Using Keras Models Chevron down icon Chevron up icon
Reinforcement Learning Chevron down icon Chevron up icon
Other Books You May Enjoy Chevron down icon Chevron up icon

Customer reviews

Rating distribution
Full star icon Empty star icon Empty star icon Empty star icon Empty star icon 1
(1 Ratings)
5 star 0%
4 star 0%
3 star 0%
2 star 0%
1 star 100%
Anubhav Srivastava Nov 16, 2018
Full star icon Empty star icon Empty star icon Empty star icon Empty star icon 1
Pretty much the worst book I have come across on this subject. There is literally no explanation of any of the code - this is just a massive dump of the author's Github. While I understand this is a "cookbook", you still need to explain some of the intricacies of the code. for e.g. why is the input share of LSTM different than say Dense layer? When do you want to use return_sequences=True or False? There is very little commentary on the logic behind why a certain code or variable is used.Very low effort work and super disappointing.
Amazon Verified review Amazon
Get free access to Packt library with over 7500+ books and video courses for 7 days!
Start Free Trial

FAQs

What is included in a Packt subscription? Chevron down icon Chevron up icon

A subscription provides you with full access to view all Packt and licnesed content online, this includes exclusive access to Early Access titles. Depending on the tier chosen you can also earn credits and discounts to use for owning content

How can I cancel my subscription? Chevron down icon Chevron up icon

To cancel your subscription with us simply go to the account page - found in the top right of the page or at https://subscription.packtpub.com/my-account/subscription - From here you will see the ‘cancel subscription’ button in the grey box with your subscription information in.

What are credits? Chevron down icon Chevron up icon

Credits can be earned from reading 40 section of any title within the payment cycle - a month starting from the day of subscription payment. You also earn a Credit every month if you subscribe to our annual or 18 month plans. Credits can be used to buy books DRM free, the same way that you would pay for a book. Your credits can be found in the subscription homepage - subscription.packtpub.com - clicking on ‘the my’ library dropdown and selecting ‘credits’.

What happens if an Early Access Course is cancelled? Chevron down icon Chevron up icon

Projects are rarely cancelled, but sometimes it's unavoidable. If an Early Access course is cancelled or excessively delayed, you can exchange your purchase for another course. For further details, please contact us here.

Where can I send feedback about an Early Access title? Chevron down icon Chevron up icon

If you have any feedback about the product you're reading, or Early Access in general, then please fill out a contact form here and we'll make sure the feedback gets to the right team. 

Can I download the code files for Early Access titles? Chevron down icon Chevron up icon

We try to ensure that all books in Early Access have code available to use, download, and fork on GitHub. This helps us be more agile in the development of the book, and helps keep the often changing code base of new versions and new technologies as up to date as possible. Unfortunately, however, there will be rare cases when it is not possible for us to have downloadable code samples available until publication.

When we publish the book, the code files will also be available to download from the Packt website.

How accurate is the publication date? Chevron down icon Chevron up icon

The publication date is as accurate as we can be at any point in the project. Unfortunately, delays can happen. Often those delays are out of our control, such as changes to the technology code base or delays in the tech release. We do our best to give you an accurate estimate of the publication date at any given time, and as more chapters are delivered, the more accurate the delivery date will become.

How will I know when new chapters are ready? Chevron down icon Chevron up icon

We'll let you know every time there has been an update to a course that you've bought in Early Access. You'll get an email to let you know there has been a new chapter, or a change to a previous chapter. The new chapters are automatically added to your account, so you can also check back there any time you're ready and download or read them online.

I am a Packt subscriber, do I get Early Access? Chevron down icon Chevron up icon

Yes, all Early Access content is fully available through your subscription. You will need to have a paid for or active trial subscription in order to access all titles.

How is Early Access delivered? Chevron down icon Chevron up icon

Early Access is currently only available as a PDF or through our online reader. As we make changes or add new chapters, the files in your Packt account will be updated so you can download them again or view them online immediately.

How do I buy Early Access content? Chevron down icon Chevron up icon

Early Access is a way of us getting our content to you quicker, but the method of buying the Early Access course is still the same. Just find the course you want to buy, go through the check-out steps, and you’ll get a confirmation email from us with information and a link to the relevant Early Access courses.

What is Early Access? Chevron down icon Chevron up icon

Keeping up to date with the latest technology is difficult; new versions, new frameworks, new techniques. This feature gives you a head-start to our content, as it's being created. With Early Access you'll receive each chapter as it's written, and get regular updates throughout the product's development, as well as the final course as soon as it's ready.We created Early Access as a means of giving you the information you need, as soon as it's available. As we go through the process of developing a course, 99% of it can be ready but we can't publish until that last 1% falls in to place. Early Access helps to unlock the potential of our content early, to help you start your learning when you need it most. You not only get access to every chapter as it's delivered, edited, and updated, but you'll also get the finalized, DRM-free product to download in any format you want when it's published. As a member of Packt, you'll also be eligible for our exclusive offers, including a free course every day, and discounts on new and popular titles.