Convolutional Neural Networks with TensorFlow in Python

Convolutional Neural Networks with TensorFlow in Python

English | MP4 | AVC 1280×720 | AAC 44KHz 2ch | 4.5 Hours | 2.20 GB

Advanced neural networks: Master Computer Vision with Convolutional Neural Networks (CNN) and Deep Learning

Are you a Deep Learning enthusiast who is now looking for their next challenge?

Are you interested in the field of Computer Vision and the ability of machines to extract insightful information from visuals and images?

Do you want to learn a valuable skill to put yourself ahead of the competition in this AI-driven world?

If you answered with “yes” to any of these questions, you have come to the right place and at the right time!

This course is a fantastic training opportunity to help you gain insights into the rapidly expanding field of Machine Learning and Computer Vision through the use of Convolutional Neural Networks.

Convolutional Neural Networks, or CNNs in short, are a subtype of deep neural networks that are extensively used in the field of Computer Vision. These networks specialize in inferring information from spatial-structure data to help computers gain high-level understanding from digital images and videos. That can be as simple a task as classifying an image to be a dog or a cat, but it can also explode in complexity as is the case with self-driving cars, for example.

This is where most of the active Machine Learning research is concentrated right now, and CNNs are a crucial part of it. So, it is high time to up your game and master this piece of the Deep Learning puzzle.

To do just that, we have devised this wonderful and engaging course for you. Although a general understanding of TensorFlow and the main deep learning concepts is required, we will start from the CNNs basics and build our way to proficiency. Moreover, we are firm believers that practice makes perfect, that’s why this course offers a comprehensive practical example of a real-world project. What’s more, it contains plenty of exercises, homework, downloadable files and notebooks, as well as quiz questions and course notes.

We’ll start this course by taking a look at Kernels in the context of image processing. Kernels are an essential tool for working with and understanding Convolutional Neural Networks. We’ll explore how to achieve different image transformations and help you understand the role of the mathematical operation of convolution in this process. This will be the basis for our next topic – convolutional layers.

Armed with all that knowledge, we will introduce the main subject of the course: Convolutional Neural Networks. Here, we’ll discuss intriguing concepts such as feature maps and pooling. In addition, we’ll inspect how such a network transforms the dimensions of the tensors.

Then, what follows is a short and optional neural networks revision. CNNs are simply a subtype of deep neural networks, so a general knowledge of NNs is required. That’s why we’ll revise the basics: activation functions, early stopping, and optimizers.

Once we’ve covered all that, you will have the minimum required knowledge to start putting all this theory to practice – by building your first Convolutional Neural Network.

Working on the MNIST dataset, we’ll help you grasp the general workflow of creating a CNN architecture and build one from scratch. You are going to train it to recognize handwritten digits – a very useful tool in the real world. At this point, you will get the hands-on opportunity to tinker and change the network and see the results for yourself.

And we won’t stop at creating the CNNs. We will also spend a good amount of time exploring them through TensorBoard – the go-to visualization and logging tool when working with TensorFlow. This will make your journey and experimentation in the field more straightforward and definitely more memorable. Neural networks are notorious for their difficult interpretation, so we will examine the Confusion Matrix as a tool to help you understand and interpret the results of your networks. Finally, we’ll show you how to easily tune the hyperparameters of your networks.

But there’s more.

We will show you how to master 3 common techniques to improve the performance of your models. In fact, you will have the opportunity to apply those techniques to the networks we create for the next practical section.

You heard that right! The idea of this course is to give you the real CNN experience. We will have an enormous practical exercise so you can work on a real-world project.

To do that, we’ve created our very own custom data set that comes from the fashion industry. It consists of more than 16,000 images of trousers, jeans, shoes, glasses, and sunglasses. And we will be using these for numerous practical examples and problems. We’ve devised a task to classify the different items with a corresponding label. Not only that, but we will also determine other characteristics, such as the items’ subtype and gender. Given the nature of these, we will be able to try out different techniques to achieve our goal and compare how these approaches fare against each other. You’ll get a taste of the real-world challenges of solving such a task, and gain experience with a real project that you can later add to your portfolio.

Finally, to cap it all off, we end this course with a review of the timeline of Convolutional Neural Networks professional research. We will dive into the workings of some popular CNN architectures, and all-stars like AlexNet, GoogLeNet, as well as ResNet will all make an appearance.

By the end of this course, you will be completely equipped with all the tools you need to confidently work on CNN projects!

What you’ll learn

  • Learn the fundamentals of Convolutional Neural Networks
  • Perform Computer Vision and Machine Learning tasks
  • Master working with TensorFlow and Tensorboard
  • Understand kernels
  • Get the hang of convolution and its role in CNNs
  • Get familiar with L2 regularization and weight decay
  • Grasp the concept of dropout
  • Visualize networks and metrics using Tensorboard
  • Approach multilabel classification
  • Gain experience from a big real-world practical example
  • Convert Images into Tensors
  • Explore the concepts behind popular state-of-the-art CNN architectures

+ Table of Contents

Introduction to the course
1 What does the course cover
2 Why CNNs

3 Introduction to image kernels
4 How do image transformations work
5 Kernels as matrices
6 Convolution – applying kernels
7 Edge handling

CNN Introduction
8 CNNs motivation
9 Feature maps
10 Pooling and Stride
11 Dimensions

Neural networks techniques (revision)
12 Activation functions
13 Overfitting and early stopping
14 Optimizers

Setting up the environment
15 Setting up the environment – Do not skip, please!
16 Why Python and why Jupyter
17 Installing Anaconda
18 Jupyter Dashboard – Part 1
19 Jupyter Dashboard – Part 2
20 Installing the packages

CNN assembling – MNIST
21 Road plan
22 A simple CNN architecture
23 Preprocessing the data
24 Building and training the CNN
25 Testing the trained CNN

Tensorboard Visualization tool for TensorFlow
26 Tensorboard on the MNIST example
27 Confusion matrix and visualizing it with Tensorboard
28 Using Tensorboard to tune hyperparameters

Common techniques for better performance of NN
29 Introduction
30 Regularization
31 L2 Regularization and Weight Decay
32 Dropout
33 Data augmentation

A practical project Labelling fashion items
34 Introduction to the problem
35 The objective and the images
36 Converting images to arrays
37 Getting started with the code concepts
38 Primary classification task – Part 1
39 Primary classification task – Part 2
40 Primary classification task – Part 3
41 Trousers and Jeans – discussion of approaches
42 Trousers and Jeans – All
43 Trousers and Jeans – Gender + Type
44 Trousers and Jeans – comparing the methods
45 L2 regularization and Dropout
46 Data augmentation – Shoes All

Understanding CNNs
47 Unexpected failures

Popular CNN architectures
48 Introduction – the ILSVRC challenge
49 AlexNet – CNN success
50 VGG – more layers
51 GoogleNet – computational efficiency
52 ResNet – revolution of depth