Reader small image

You're reading from  TensorFlow 2.0 Quick Start Guide

Product typeBook
Published inMar 2019
Reading LevelBeginner
PublisherPackt
ISBN-139781789530759
Edition1st Edition
Languages
Right arrow
Author (1)
Tony Holdroyd
Tony Holdroyd
author image
Tony Holdroyd

Tony Holdroyd's first degree, from Durham University, was in maths and physics. He also has technical qualifications, including MCSD, MCSD.net, and SCJP. He holds an MSc in computer science from London University. He was a senior lecturer in computer science and maths in further education, designing and delivering programming courses in many languages, including C, C+, Java, C#, and SQL. His passion for neural networks stems from research he did for his MSc thesis. He has developed numerous machine learning, neural network, and deep learning applications, and has advised in the media industry on deep learning as applied to image and music processing. Tony lives in Gravesend, Kent, UK, with his wife, Sue McCreeth, who is a renowned musician.
Read more about Tony Holdroyd

Right arrow

Recognizing Images with TensorFlow 2

This chapter is in two sections, but we will be learning about image classification using TensorFlow in both.

In this chapter, we will cover the following main topics:

  • Quick Draw – image classification using TensorFlow
  • CIFAR 10 image classification using TensorFlow

In the first section, we will develop a TensorFlow 2 model for image recognition using the technologies we learned about in the previous chapters—in particular, Chapter 2, Keras, a High-Level API for TensorFlow 2. This will allow us to see how all of the relevant techniques are brought together to create, train, and evaluate a complete model using TensorFlow 2. We will make use of the Quick Draw! image dataset from Google to help with this.

Quick Draw – image classification using TensorFlow

We will be using images taken from Google's Quick Draw! dataset. This is a public, that is, open source, the dataset of 50 million images in 345 categories, all of which were drawn in 20 seconds or less by over 15 million users taking part in the challenge. We will train on 10,000 images in 10 categories, some of which were chosen to be similar so that we can test the discriminatory power of the model. You can see examples of these images at https://quickdraw.withgoogle.com/data. The images are available in a variety of formats, all of which are described at https://github.com/googlecreativelab/quickdraw-dataset.

Here, we will use the images that have been stored as .npy files. The public dataset of .npy files is hosted at https://console.cloud.google.com/storage/browser/quickdraw_dataset/full/numpy_bitmap?pli=1. From...

CIFAR 10 image classification using TensorFlow

In this second section, we will look at training a model to recognize images in the CIFAR10 image dataset. This will give us the chance to exemplify a slightly different style of sequential model creation.

Introduction

The CIFAR 10 image dataset, with 10 categories, is a labeled subset of the 80 million tiny images dataset. These images were collected by Alex Krizhevsky, Vinod Nair, and Geoffrey Hinton. Full details on this dataset can be found at https://www.cs.toronto.edu/~kriz/cifar.html.

In total, there are 60,000 32 x 32 color images in the 10 classes consisting of 50,000 training images and 10,000 test images.

The categories are as follows:

labels = ['airplane&apos...

Summary

This chapter was divided into two sections. In the first section, we investigated the Quick Draw! dataset from Google. We introduced it and then we saw how to load it into memory. This was straightforward as Google has kindly made the dataset available as a set of .npy files, which can be loaded directly into NumPy arrays. Next, we divided the data into training, validation, and test sets. After creating our ConvNet model, we trained it on the data and tested it. In the tests, over 25 epochs, the model achieved an accuracy of just over 90%, and we noted that this could probably be improved upon with further tweaking of the model. Lastly, we saw how to save a trained model and then how to reload it and use it for further inference.

In the second section, we trained a model to recognize images in the CIFAR 10 image dataset. This dataset consists of 10 classes of images and...

lock icon
The rest of the chapter is locked
You have been reading a chapter from
TensorFlow 2.0 Quick Start Guide
Published in: Mar 2019Publisher: PacktISBN-13: 9781789530759
Register for a free Packt account to unlock a world of extra content!
A free Packt account unlocks extra newsletters, articles, discounted offers, and much more. Start advancing your knowledge today.
undefined
Unlock this book and the full library FREE for 7 days
Get unlimited access to 7000+ expert-authored eBooks and videos courses covering every tech area you can think of
Renews at $15.99/month. Cancel anytime

Author (1)

author image
Tony Holdroyd

Tony Holdroyd's first degree, from Durham University, was in maths and physics. He also has technical qualifications, including MCSD, MCSD.net, and SCJP. He holds an MSc in computer science from London University. He was a senior lecturer in computer science and maths in further education, designing and delivering programming courses in many languages, including C, C+, Java, C#, and SQL. His passion for neural networks stems from research he did for his MSc thesis. He has developed numerous machine learning, neural network, and deep learning applications, and has advised in the media industry on deep learning as applied to image and music processing. Tony lives in Gravesend, Kent, UK, with his wife, Sue McCreeth, who is a renowned musician.
Read more about Tony Holdroyd