Introduction to Embedded Machine Learning
- Introduction to Machine Learning
- In this module, we will introduce the concept of machine learning, how it can be used to solve problems, and its limitations. We will also cover how machine learning on embedded systems, such as single board computers and microcontrollers, can be effectively used to solve problems and create new types of computer interfaces. Then, we will introduce the Edge Impulse tool and collect motion data for a "magic wand" demo. Finally, we will examine the various features that can be calculated from this raw motion data, including root mean square (RMS), Fourier transform, and power spectral density (PSD).
- Introduction to Neural Networks
- In this module, we will look at how neural networks work, how to train them, and how to use them to perform inference in an embedded system. We will continue the previous demo of creating a motion classification system using motion data collected from a smartphone or Arduino board. Finally, we will challenge you with a new motion classification project where you will have the opportunity to implement the concepts learning in this module and the previous module.
- Audio classification and Keyword Spotting
- In this module, we cover audio classification on embedded systems. Specifically, we will go over the basics of extracting mel-frequency cepstral coefficients (MFCCs) as features from recorded audio, training a convolutional neural network (CNN) and deploying that neural network to a microcontroller. Additionally, we dive into some of the implementation strategies on embedded systems and talk about how machine learning compares to sensor fusion.