Deep Learning with Google Colab
3.5 (36 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.
7,251 students enrolled

Deep Learning with Google Colab

Implementing and training deep learning models in a free, integrated environment
3.5 (36 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.
7,251 students enrolled
Last updated 2/2020
English
English [Auto-generated]
Current price: $13.99 Original price: $19.99 Discount: 30% off
5 hours left at this price!
30-Day Money-Back Guarantee
This course includes
  • 5.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 4,000+ top Udemy courses anytime, anywhere.

Try Udemy for Business
What you'll learn
  • This course covers the general workflow of a deep learning project, implemented using PyTorch in Google Colab. At the end of the course, students will be proficient at using Google Colab as well as PyTorch in their own projects. Students will also learn about the theoretical foundations for various deep learning models and techniques, as well as how to implement them using PyTorch. Finally, the course ends by offering an overview on general deep learning and how to think about problems in the field; students will gain a high-level understanding of the role deep learning plays in the field of AI.
  • Learn how to utilize Google Colab as an online computing platform in deep learning projects, including running Python code, using a free GPU, and working with external files and folders
  • Understand the general workflow of a deep learning project
  • Examine the various APIs (datasets, modeling, training) PyTorch offers to facilitate deep learning
  • Learn about the theoretical basis for various deep learning models such as convolutional networks or residual networks and what problems they address
  • Gain an overview understanding of deep learning in the context of the artificial intelligence field and its best practices
Course content
Expand all 61 lectures 05:42:57
+ Getting started in Google Colab
10 lectures 21:11

1. This lecture discusses the initial process of creating a Google account. As most Google applications are tied to this account, students will also have access to Google Drive, Gmail, etc.

- Know how to register for a Google account

- Know how to navigate to the Colab application

Preview 02:52

A hands-on tutorial on how to register for a Google account.

Preview 01:17

How to navigate to the Google Colab application within the Google workspace.

Preview 01:50

Exploration of various features in a Google Colab notebook.

Preview 02:06

Introduction to the concept of a computer notebook.

Preview 01:07

Executing Python code in a Colab notebook.

Preview 04:20

Introduction to the markup language Markdown.

The markup language Markdown
02:00

How to write Markdown code in a Colab notebook.

Writing Markdown in Google Colab
02:58

How to write LaTeX code in a Colab notebook.

Writing LaTeX in Google Colab
01:40
Section conclusion
01:01
+ The ecosystem of Google Colab
6 lectures 30:23

How to install external packages in a Colab notebook.

Installing packages in Google Colab
04:49

How to work with files via Google Drive in a Colab notebook.

Working with files using Google Drive
04:53

How to work with files via Python code in a Colab notebook.

Working with files directly in Google Colab
05:22

How to share files with other users.

Sharing files via Google Drive
04:04

Introduction to the concept of version control with Git and GitHub.

Introduction to version control with Git and GitHub
04:15

How to facilitate version control with a Colab notebooks.

Sending Google Colab notebooks to GitHub
07:00
+ Introduction to PyTorch
12 lectures 01:14:10

How to create a tensor object in PyTorch.

Creating a tensor
07:48

How to apply operations on tensor objects in PyTorch.

Tensor operations
06:44

Introduction to Graphical Processing Units and why they can be used in deep learning.

GPUs in the context of deep learning
05:30

How to utilize the free GPU provided in each Colab notebook.

Turning on your Colab GPU
04:55

Various limitations that the free GPU has.

Limits of the Colab GPU
03:22

Introduction to neural networks.

Neural network basics
03:30

Gradients and how neural networks learn.

Gradients and backpropagation
08:19

How to facilitate automatic differentiation in PyTorch.

Automatic differentiation in PyTorch
07:08

How to train a PyTorch model from scratch.

Training a model
08:23

How to save a trained model and load it back in a Python program.

Saving and loading models
07:43

Introduction to a sample curve-fitting problem.

Problem statement and setup
03:31

Discussion of potential solutions to the curve-fitting problem.

Approaches and solutions
07:17
+ Working with datasets
6 lectures 43:22

How to download a built-in dataset with PyTorch.

Downloading a built-in dataset
05:41

Introduction to API provided by PyTorch datasets.

Working with PyTorch datasets
07:04

The procedure of loading a custom dataset into Google Colab.

Loading a dataset into Colab
04:42

The procedure of building a custom PyTorch dataset.

Building a PyTorch dataset
09:03

Introduction to image augmentation methods.

Image augmentation fundamentals
07:10

How to utilize PyTorch’s API to facilitate image augmentation.

Image augmentation in PyTorch
09:42
+ Recognizing handwritten digits
9 lectures 01:00:04

How to import in the dataset used for this project.

Downloading the dataset
04:07

Exploration of various characteristics of the dataset.

Understanding the dataset
05:38

The design of a starting neural network to recognize handwritten digits.

Implementing a starting solution
08:12

The process of training and evaluating deep learning models.

Training and evaluating
05:00

The intuition behind choosing the size of input and output layers of a neural network.

Choosing the size of input and output layers
04:54

The intuition behind choosing the size of hidden layers of a neural network.

Choosing the size of hidden layers
09:40

Discussion regarding and comparisons between loss functions.

Loss functions
06:32

Discussion regarding activation functions and weight initialization to avoid the vanishing gradient problem.

Activation functions and weight initialization
07:47

Discussion regarding and comparisons between optimizers.

Optimizers
08:14
+ Transfer learning for object recognition
6 lectures 40:56

How to import in the dataset used for this project.

Downloading the dataset
06:21

Exploration of various characteristics of the dataset.

Understanding the dataset
06:40

Explanation of the practice of transfer learning.

What is transfer learning?
08:20

Detailed procedure of a transfer learning workflow.

The transfer learning workflow
06:57

The process of training and evaluating deep learning models.

Training and evaluating
06:25

Discussion regarding and comparisons between pretrained models provided in PyTorch.

Pretrained models for transfer learning
06:13
+ Recognizing fashion items
7 lectures 43:08

How to import in the dataset used for this project.

Downloading the dataset
05:16

Exploration of various characteristics of the dataset.

Understanding the dataset
05:30

Introduction of convolutional neural networks and the problems they try to address.

Convolutional network fundamentals
08:41

The procedure of implementing a convolutional neural network in PyTorch.

Implementation in PyTorch
07:26

Introduction of residual neural networks and the problems they try to address.

Residual network fundamentals
05:38

Discussions regarding and comparisons between different residual blocks.

Residual blocks in convolutional networks
05:09

The procedure of implementing a residual neural network in PyTorch.

Implementation in PyTorch
05:28
+ Deep learning best practices
5 lectures 29:43

Introduction to the concept of ensembling in general machine learning.

General ensembling in machine learning
06:33

Unique methods of ensembling in deep learning with neural networks.

Ensembling in deep learning
08:02

Introduction to data version in deep learning and why it is important.

Data versioning
05:20

Introduction to reproducibility in deep learning and why it is important.

Reproducibility
03:20

Discussions of various situations where deep learning is not desirable.

When not to use deep learning
06:28
Requirements
  • Familiarity with Python programming (including classes, functions, context managers)
  • Basic linear algebra and calculus (briefly used during the discussions on various deep learning models and techniques)
Description

This course covers the general workflow of a deep learning project, implemented using PyTorch in Google Colab. At the end of the course, students will be proficient at using Google Colab as well as PyTorch in their own projects. Students will also learn about the theoretical foundations for various deep learning models and techniques, as well as how to implement them using PyTorch. Finally, the course ends by offering an overview on general deep learning and how to think about problems in the field; students will gain a high-level understanding of the role deep learning plays in the field of AI.

  • Learn how to utilize Google Colab as an online computing platform in deep learning projects, including running Python code, using a free GPU, and working with external files and folders


  • Understand the general workflow of a deep learning project


  • Examine the various APIs (datasets, modeling, training) PyTorch offers to facilitate deep learning


  • Learn about the theoretical basis for various deep learning models such as convolutional networks or residual networks and what problems they address


  • Gain an overview understanding of deep learning in the context of the artificial intelligence field and its best practices

Who this course is for:
  • AI enthusiasts interested in getting started on deep learning
  • Programmers familiar with deep learning looking to gain a comprehensive understanding of various deep learning models and techniques