Applied Tiny Machine Learning (TinyML) for Scale
Offered By: Harvard University via edX
Course Description
Overview
Tiny Machine Learning (TinyML) is a cutting-edge field that brings the transformative power of machine learning (ML) to the performance- and power-constrained domain of tiny devices and embedded systems. Successful deployment in this field requires intimate knowledge of applications, algorithms, hardware, and software.
In this unique Professional Certificate program offered by Harvard University and Google ML, Data and AI Subject Matter experts, you will enhance your knowledge in the emerging field of TinyML, start applying the skills you have developed into real-world applications, and build the future possibilities of this transformative technology at scale.
In the first course of the program, Applications of TinyML, you will see how tools like voice recognition work in practice on small devices and you learn how common algorithms such as neural networks are implemented.
In Deploying TinyML, you will experience an open source hardware and prototyping platform to build your own tiny device. The program features projects based on an Arduino board (the TinyML Program Kit) and emphasizes hands-on experience with training and deploying machine learning into tiny embedded devices. The TinyML Program Kit has everything you need to unlock your imagination and build applications based on image recognition, audio processing, and gesture detection. Before you know it, you’ll be implementing an entire tiny machine learning application of your own design.
The final course of this series (MLOps for Scaling TinyML) focuses on operational concerns for Machine Learning deployment, such as automating the deployment and maintenance of a (tiny) Machine Learning application at scale. Through real-world examples spanning the complete product life cycle, you will learn how tiny devices, such as Google Homes or smartphones, are deployed and updated once they’re with the end consumer.
For learners just getting started with TinyML, we recommend beginning with Fundamentals of TinyML.
This program is a collaboration between expert faculty at Harvard’s John A. Paulson School of Engineering and Applied Sciences (SEAS) and innovative members of Google’s TensorFlow team. Taught by Harvard Professor Vijay Janapa Reddi along with Lead AI Advocate at Google, Laurence Moroney, Technical Lead of Google’s TensorFlow and Micro team, Pete Warden, and Head of Data/AI Practice, Larissa Suzuki, this program offers you the unique opportunity to learn from leaders and subject matter experts in the AI, Data and ML space and how to apply the emerging world of TinyML at scale.
Syllabus
Course 1: Applications of TinyML
Get the opportunity to see TinyML in practice. You will see examples of TinyML applications, and learn first-hand how to train these models for tiny applications such as keyword spotting, visual wake words, and gesture recognition.
Course 2: Deploying TinyML
Learn to program in TensorFlow Lite for microcontrollers so that you can write the code, and deploy your model to your very own tiny microcontroller. Before you know it, you’ll be implementing an entire TinyML application.
Course 3: MLOps for Scaling TinyML
This course introduces learners to Machine Learning Operations (MLOps) through the lens of TinyML (Tiny Machine Learning). Learners explore best practices to deploy, monitor, and maintain (tiny) Machine Learning models in production at scale.
Courses
-
Do you know what happens when you say “OK Google” to a Google device? Is your Google Home always listening?
Following on the Foundations of Tiny ML course, Applications of TinyML will give you the opportunity to see tiny machine learning applications in practice. This course features real-world case studies, guided by industry leaders, that examine deployment challenges on tiny or deeply embedded devices.
Dive into the code for using sensor data for tasks such as gesture detection and voice recognition. Focusing on the neural network of the applications, specifically on training and inference, you will review the code behind “OK Google,” “Alexa,” and smartphone features on Android and Apple . Learn about real-word industry applications of TinyML as well as Keyword Spotting, Visual Wake Words, Anomaly Detection, Dataset Engineering, and Responsible Artificial Intelligence.
Tiny Machine Learning (TinyML) is one of the fastest-growing areas of deep learning and is rapidly becoming more accessible. The second course in the TinyML Professional Certificate program, Applications of TinyML shows you the code behind some of the world’s most widely-used TinyML devices.
-
Have you wanted to build a TinyML device? In Deploying TinyML, you will learn the software, write the code, and deploy the model to your own tiny microcontroller-based device. Before you know it, you’ll be implementing an entire TinyML application.
A one-of-a-kind course, Deploying TinyML is a mix of computer science and electrical engineering. Gain hands-on experience with embedded systems, machine learning training, and machine learning deployment using TensorFlow Lite for Microcontrollers, to make your own microcontroller operational for implementing applications such as voice recognition, sound detection, and gesture detection.
The course features projects based on a TinyML Program Kit that includes an Arduino board with onboard sensors and an ARM Cortex-M4 microcontroller. The kit has everything you need to build applications around image recognition, audio processing, and gesture detection. Before you know it, you’ll be implementing an entire tiny machine learning application. You can preorder your Arduino kit here.
Tiny Machine Learning (TinyML) is one of the fastest-growing areas of deep learning and is rapidly becoming more accessible. The third course in the TinyML Professional Certificate program, Deploying TinyML provides hands-on experience with deploying TinyML to a physical device.
-
Are you ready to scale your (tiny) machine learning application? Do you have the infrastructure in place to grow? Do you know what resources you need to take your product from a proof-of-concept algorithm on a device to a substantial business?
Machine Learning (ML) is more than just technology and an algorithm; it's about deployment, consistent feedback, and optimization. Today, more than 87% of data science projects never make it into production. To support organizations in coming up to speed faster in this critical domain it is essential to understand Machine Learning Operations (MLOps). This course introduces you to MLOps through the lens of TinyML (Tiny Machine Learning) to help you deploy and monitor your applications responsibly at scale.
MLOps is a systematic way of approaching Machine Learning from a business perspective. This course will teach you to consider the operational concerns around Machine Learning deployment, such as automating the deployment and maintenance of a (tiny) Machine Learning application at scale. In addition, you’ll learn about relevant advanced concepts including neural architecture search, allowing you to optimize your models' architectures automatically; federated learning, allowing your devices to learn from each other; and benchmarking, enabling you to performance test your hardware before pushing the models into production.
This course focuses on MLOps for TinyML (Tiny Machine Learning) systems, revealing the unique challenges for TinyML deployments. Through real-world examples, you will learn how tiny devices, such as Google Homes or smartphones, are deployed and updated once they’re with the end consumer, experiencing the complete product life cycle instead of just laboratory examples.
Are you ready for a billion users?
Taught by
Laurence Moroney, Dr. Larissa Suzuki, Pete Warden and Vijay Janapa Reddi
Tags
Related Courses
Arduino y algunas aplicacionesUniversidad Nacional Autónoma de México via Coursera Learn Hardware Programming with CircuitPython
Codecademy Device-based Models with TensorFlow Lite
DeepLearning.AI via Coursera Digital Signal Processing
École Polytechnique Fédérale de Lausanne via Coursera Electronic Interfaces: Bridging the Physical and Digital Worlds
University of California, Berkeley via edX