Arduino Deep Learning From Ground Up™
3.8 (21 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.
195 students enrolled

Arduino Deep Learning From Ground Up™

Build Artificial Intelligence Sketch from Scratch on Arduino
3.8 (21 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.
195 students enrolled
Last updated 5/2020
English
English [Auto]
Current price: $65.99 Original price: $94.99 Discount: 31% off
5 hours left at this price!
30-Day Money-Back Guarantee
This course includes
  • 13.5 hours on-demand video
  • 4 downloadable resources
  • 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
  • Build Neural Networks from scratch without libraries
  • Master quantization methods for deploying Neural Networks on Arduino
  • Build a Deep Learning Arduino Sketch for Image Classification
  • Build a Deep Learning Arduino Sketch for Speech Recognition
  • Build a Deep Learning Arduino Sketch for Gesture Recognition
  • Deploy TensorFlow Models on Arduino
Requirements
  • Arduino Nano 33 BLE Sense
Description

Welcome to the Arduino Deep Learning From Ground Up™ .

We are going to embark on a very exciting journey together. We are going to learn how to build deep neural networks from scratch on our Arduino.

We shall begin by learning the basics of deep learning with practical code showing each of the basic building  blocks that end up making a giant deep neural network. All of this on our Arduino, both training and inference.

As we begin to deal with large datasets we shall start training our neural networks on our computers and then deploying the the trained models on our microcontrollers. Due to the limited memory and processing power of Arduino we shall learn methods for quantizing our models before deploying them on our resource constrained Arduino without compromising the accuracy of our models.

We shall also learn how to thoroughly take advantage of deep learning libraries such as Keras and Tensorflow as well as Arduino specific deep learning libraries such as TensorFlow Lite.

By the end of this course you will be able to build neural networks from scratch without libraries, be able to master quantization methods for deploying neural networks on microcontrollers, be able to build  deep learning Arduino projects for Image Classification, be able to build  deep learning Arduino projects for gesture recognition,be able to build  deep learning Arduino projects for speech recognition and so much more.


If you are new to machine learning and deep learning, this course is for you. The course starts from the very basic building block of neural networks and teaches you how to build your own neural network using pure c code before we move on to see how to use readily available libraries.

If you already have some experience with deep learning and want to see how to deploy models on Arduino you can also join this course. This course gives an in-depth training on the design methodology that needs to be adopted in order to be to deploy models on resource constrained Arduino.

Sign up and lets start building some intelligent firmware.

Who this course is for:
  • If you are new to machine learning and deep learning, this course is for you. The course starts from the very basic building block of neural network and teaches you how to build your own neural network using pure c code before we move on to see how to use readily available libraries.
  • If you already have some experience with deep learning and want to see how to deploy models on microcontrollers you can also join this course. The course gives in-depth train on the design methodology that needs to be adopted in order to be to deploy models on Arduino.
Course content
Expand all 85 lectures 13:31:33
+ Introduction
5 lectures 19:32
Installing Arduino
02:04
Required Board for the Course
03:57
Testing the Setup
08:02
+ Building Blocks of Neural Networks
14 lectures 01:49:28
The Single Input Single Output Neural Network
01:05
Coding : The Single Input Single Output Neural Network
07:39
Coding : The Multiple Input Single Output Neural Network
18:15
Coding : Single Input Multiple Output Neural Network
32:56
Coding : The Multiple Input - Multiple Output Neural Network
26:03
The Hidden Layer Neural Network
02:37
Comparing and Finding Error
01:52
Understanding data representation in Machine Learning
01:18
Understanding the "Learning" in Machine Learning
04:21
Introduction to Gradient Descent
03:16
Functional Description of a Biological Neuron
02:08
+ Introduction to Neural Network (Part 2)
3 lectures 21:10
Case Study : Building a Neural Network to Predict Muscle Gain
09:04
Basics of Calculus
08:25
Understanding Activation Functions
03:41
+ Logistic Regression
1 lecture 06:39
Case Study : Building a Neural Network to Detect Cats
06:39
+ Deep Neural Networks
10 lectures 32:46
Internals of a 2 layer Neural Network
03:01
Understanding Computational Graphs
08:50
Updating Parameters Effectively
03:33
Understanding the Importance of Vectorization
09:05
Summary of Back-propagation and Forward-propagation
00:39
Initializing Parameters Effectively
00:38
Understanding Broadcasting
01:18
Understanding Layers and Units
01:12
Understanding the Shapes
03:12
Understanding Broadcasting in Programming
01:18
+ Building A Logistic Regression Model
13 lectures 02:55:09
Coding : Installing Python
03:51
Coding : Installing Python Packages
05:29
Coding : Setting up our project
05:02
Coding : Creating a Helper script
08:29
Coding : Inspecting our dataset
10:31
Coding : Inspecting the dataset Dimensions
09:35
Coding : Pre-processing our dataset
09:23
Coding : Implementing Forward and Backward Propagation
15:59
Coding : Implementing Gradient Descent
05:48
Coding : Implementing the Predictor function
05:00
Coding : Training our Model
27:23
Coding : Testing our Model
16:59
Coding : Building A Deep Learning Library ( Version 1 )
51:40
+ Building Deep Neural Networks From Scratch
8 lectures 02:55:19
Coding : Building A Deep Neural Network Library (Version 1)
51:40
Coding : Implementing a Two-Layer Neural Network (Inspecting the Dataset)
15:18
Coding : Implementing a Two-Layer Neural Network ( Pre-processing the Dataset)
04:52
Coding : Implementing a Two-Layer Neural Network ( Building the Model )
26:00
Coding : Implementing a Two-Layer Neural Network ( Testing the Model)
37:26
Coding : Building A Deep Neural Network Library (Version 2)
19:38
Coding : Implementing a Neural Network with an arbitrary number of Layers
12:28
Coding : Testing the Multi-Layer Neural Network
07:57
+ Convolutional Neural Networks (CNN)
10 lectures 27:13
Introduction to Convolution
06:04
Introduction to 2D Convolution
05:05
Describing ConvNet Layers
01:05
Understanding Padding
04:27
Understanding Striding
01:06
Convolution Over Volume
02:36
Single Layer of a Convolutional Neural Network
02:35
Examining a Complete Convolutional Neural Network
01:48
Understanding the Pooling Layer
01:03
Examining a Complete Convolutional Neural Network with a Pooling Layer
01:24
+ Working with TensorFlow Models
8 lectures 02:31:16
Coding : Setting Up Google Colab Notebook
05:56
Exploring our Dataset
13:11
Coding : Training our Model
40:32
Coding : Converting our Model to TensorFlowLite
08:06
Coding : Comparing Quantized Model to Original Model
25:33
Coding : Converting our Model to a C Source File
04:13
Coding : Deploying our Model on Arduino (Part I)
29:27
Coding : Deploying our Model on Arduino (Part II)
24:18