Deep Learning: Convolutional Neural Networks in Python
4.6 (1,887 ratings)
Course Ratings are calculated from individual students’ ratings and a variety of other signals, like age of rating and reliability, to ensure that they reflect course quality fairly and accurately.
17,247 students enrolled

Deep Learning: Convolutional Neural Networks in Python

Computer Vision and Data Science and Machine Learning combined! In Theano and TensorFlow
4.6 (1,887 ratings)
Course Ratings are calculated from individual students’ ratings and a variety of other signals, like age of rating and reliability, to ensure that they reflect course quality fairly and accurately.
17,247 students enrolled
Last updated 10/2018
English
English [Auto-generated], Indonesian [Auto-generated], 6 more
  • Italian [Auto-generated]
  • Polish [Auto-generated]
  • Portuguese [Auto-generated]
  • Romanian [Auto-generated]
  • Spanish [Auto-generated]
  • Thai [Auto-generated]
Current price: $9.99 Original price: $119.99 Discount: 92% off
30-Day Money-Back Guarantee
This course includes
  • 7.5 hours on-demand video
  • Full lifetime access
  • Access on mobile and TV
  • Certificate of Completion
Training 5 or more people?

Get your team access to Udemy's top 3,000+ courses anytime, anywhere.

Try Udemy for Business
What you'll learn
  • Understand convolution
  • Understand how convolution can be applied to audio effects

  • Understand how convolution can be applied to image effects

  • Implement Gaussian blur and edge detection in code
  • Implement a simple echo effect in code
  • Understand how convolution helps image classification
  • Understand and explain the architecture of a convolutional neural network (CNN)
  • Implement a convolutional neural network in Theano
  • Implement a convolutional neural network in TensorFlow
Requirements
  • Install Python, Numpy, Scipy, Matplotlib, Scikit Learn, Theano, and TensorFlow
  • Learn about backpropagation from Deep Learning in Python part 1
  • Learn about Theano and TensorFlow implementations of Neural Networks from Deep Learning part 2
Description

This is the 3rd part in my Data Science and Machine Learning series on Deep Learning in Python. At this point, you already know a lot about neural networks and deep learning, including not just the basics like backpropagation, but how to improve it using modern techniques like momentum and adaptive learning rates. You've already written deep neural networks in Theano and TensorFlow, and you know how to run code using the GPU.

This course is all about how to use deep learning for computer vision using convolutional neural networks. These are the state of the art when it comes to image classification and they beat vanilla deep networks at tasks like MNIST.

In this course we are going to up the ante and look at the StreetView House Number (SVHN) dataset - which uses larger color images at various angles - so things are going to get tougher both computationally and in terms of the difficulty of the classification task. But we will show that convolutional neural networks, or CNNs, are capable of handling the challenge!

Because convolution is such a central part of this type of neural network, we are going to go in-depth on this topic. It has more applications than you might imagine, such as modeling artificial organs like the pancreas and the heart. I'm going to show you how to build convolutional filters that can be applied to audio, like the echo effect, and I'm going to show you how to build filters for image effects, like the Gaussian blur and edge detection.

We will also do some biology and talk about how convolutional neural networks have been inspired by the animal visual cortex.

After describing the architecture of a convolutional neural network, we will jump straight into code, and I will show you how to extend the deep neural networks we built last time (in part 2) with just a few new functions to turn them into CNNs. We will then test their performance and show how convolutional neural networks written in both Theano and TensorFlow can outperform the accuracy of a plain neural network on the StreetView House Number dataset.

All the materials for this course are FREE. You can download and install Python, Numpy, Scipy, Theano, and TensorFlow with simple commands shown in previous courses.

This course focuses on "how to build and understand", not just "how to use". Anyone can learn to use an API in 15 minutes after reading some documentation. It's not about "remembering facts", it's about "seeing for yourself" via experimentation. It will teach you how to visualize what's happening in the model internally. If you want more than just a superficial look at machine learning models, this course is for you.



HARD PREREQUISITES / KNOWLEDGE YOU ARE ASSUMED TO HAVE:

  • calculus

  • linear algebra

  • probability

  • Python coding: if/else, loops, lists, dicts, sets

  • Numpy coding: matrix and vector operations, loading a CSV file

  • Can write a feedforward neural network in Theano and TensorFlow


TIPS (for getting through the course):

  • Watch it at 2x.

  • Take handwritten notes. This will drastically increase your ability to retain the information.

  • Write down the equations. If you don't, I guarantee it will just look like gibberish.

  • Ask lots of questions on the discussion board. The more the better!

  • Realize that most exercises will take you days or weeks to complete.

  • Write code yourself, don't just sit there and look at my code.


WHAT ORDER SHOULD I TAKE YOUR COURSES IN?:

  • Check out the lecture "What order should I take your courses in?" (available in the Appendix of any of my courses, including the free Numpy course)



Who this course is for:
  • Students and professional computer scientists
  • Software engineers
  • Data scientists who work on computer vision tasks
  • Those who want to apply deep learning to images
  • Those who want to expand their knowledge of deep learning past vanilla deep networks
  • People who don't know what backpropagation is or how it works should not take this course, but instead, take parts 1 and 2.
  • People who are not comfortable with Theano and TensorFlow basics should take part 2 before taking this course.
Course content
Expand all 52 lectures 07:20:35
+ Outline and Review
6 lectures 20:48
Review of Important Concepts
03:41
Where to get the code and data for this course
02:52
How to Succeed in this Course
03:13
Tensorflow or Theano - Your Choice!
04:09
How to load the SVHN data and benchmark a vanilla deep network
05:03
+ Convolution
8 lectures 52:14
Beginner's Guide to Convolution
06:27
What is convolution?
05:18
Convolution example with audio: Echo
06:39
Convolution example with images: Gaussian Blur
05:41
Convolution example with images: Edge Detection
03:21
Write Convolution Yourself
09:14
Alternative Views on Convolution
06:42
+ Convolutional Neural Network Description
7 lectures 52:44
Translational Invariance
02:22
Architecture of a CNN
05:08
Convolution on 3-D Images
10:49
Tracking Shapes in a CNN
16:37
Relationship to Biology
02:18
Convolution and Pooling Gradients
02:39
LeNet - How the Shapes Go Together
12:51
+ Convolutional Neural Network in Theano
3 lectures 25:20
Theano - Building the CNN components
04:19
Theano - Full CNN and Test on SVHN
17:26
Visualizing the Learned Filters
03:35
+ Convolutional Neural Network in TensorFlow
2 lectures 14:17
TensorFlow - Building the CNN components
03:39
TensorFlow - Full CNN and Test on SVHN
10:38
+ Practical Tips
2 lectures 14:16
Practical Image Processing Tips
03:07
Advanced CNNs and how to Design your Own
11:09
+ Project: Facial Expression Recognition
7 lectures 01:10:24
Facial Expression Recognition Project Introduction
04:51
Facial Expression Recognition Problem Description
12:21
The class imbalance problem
06:01
Utilities walkthrough
05:45
Convolutional Net in Theano
21:03
Convolutional Net in TensorFlow
19:03
Facial Expression Recognition Project Summary
01:20
+ Basics Review
4 lectures 34:14
(Review) Theano Basics
07:47
(Review) Theano Neural Network in Code
09:17
(Review) Tensorflow Basics
07:27
(Review) Tensorflow Neural Network in Code
09:43
+ Appendix
13 lectures 02:36:18
What is the Appendix?
02:48
Windows-Focused Environment Setup 2018
20:20
How to install Numpy, Scipy, Matplotlib, Pandas, IPython, Theano, and TensorFlow
17:32
How to Code by Yourself (part 1)
15:54
How to Code by Yourself (part 2)
09:23
How to Uncompress a .tar.gz file
03:18
How to Succeed in this Course (Long Version)
10:24
Is this for Beginners or Experts? Academic or Practical? Fast or slow-paced?
22:04
Proof that using Jupyter Notebook is the same as not using it
12:29
Python 2 vs Python 3
04:38
Is Theano Dead?
10:03
What order should I take your courses in? (part 1)
11:18
What order should I take your courses in? (part 2)
16:07