MOOC List is learner-supported. When you buy through links on our site, we may earn an affiliate commission.
MOOC List is learner-supported. When you buy through links on our site, we may earn an affiliate commission.
This course will give you an understanding of how deep learning with neural networks can be used to classify images and detect objects in images and videos. You will have the opportunity to deploy these machine learning models to embedded systems, which is known as embedded machine learning or TinyML.
Familiarity with the Python programming language and basic ML concepts (such as neural networks, training, inference, and evaluation) is advised to understand some topics as well as complete the projects. Some math (reading plots, arithmetic, algebra) is also required for quizzes and projects. If you have not done so already, taking the "Introduction to Embedded Machine Learning" course is recommended.
This course covers the concepts and vocabulary necessary to understand how convolutional neural networks (CNNs) operate, and it covers how to use them to classify images and detect objects. The hands-on projects will give you the opportunity to train your own CNNs and deploy them to a microcontroller and/or single board computer.
What You Will Learn
- How to train and develop an image classification system using machine learning
- How to train and develop an object detection system using machine learning
- How to deploy a machine learning model to a microcontroller
Syllabus
WEEK 1
Image Classification
In this module, we introduce the concept of computer vision and how it can be used to solve problems. We cover how digital images are created and stored on a computer. Next, we review neural networks and demonstrate how they can be used to classify simple images. Finally, we walk you through a project to train an image classifier and deploy it to an embedded system.
WEEK 2
Convolutional Neural Networks
In this module, we go over the basics of convolutional neural networks (CNNs) and how they can be used to create a more robust image classification model. We look at the internal workings of CNNs (e.g. convolution and pooling) along with some visualization techniques used to see how CNNs make decisions. We introduce the concept of data augmentation to help provide more data to the training process. You will have the opportunity to train your own CNN and deploy it to an embedded system.
WEEK 3
Object Detection
In this module, we will cover the basics of object detection and how it differs from image classification. We will go over the math involved to measure objection detection performance. After, we will introduce several popular object detection models and demonstrate the process required to train such a model in Edge Impulse. Finally, you will be asked to deploy an object detection model to an embedded system.
MOOC List is learner-supported. When you buy through links on our site, we may earn an affiliate commission.
MOOC List is learner-supported. When you buy through links on our site, we may earn an affiliate commission.